Watchman - failide ja kataloogide jälgimise tööriist muudatuste jaoks


Watchman on avatud lähtekoodiga ja platvormidevaheline failide vaatamise teenus, mis pakub Linuxi tuuma kasulikkust, et pakkuda võimsamat märguannet.

  • Rekursiivselt jälgib see ühe või mitme kataloogipuu vaatamist.
  • Iga vaadatud kataloogi nimetatakse juureks.
  • Seda saab konfigureerida käsurea või JSON-vormingus kirjutatud konfiguratsioonifaili kaudu.
  • See salvestab muudatused logifailides.
  • Toetab juurte toimuvate failimuudatuste tellimist.
  • Võimaldab juurida faili muudatusi pärast viimast kontrollimist või puu praegust olekut.
  • See võib vaadata tervet projekti.

Selles artiklis selgitame, kuidas Watchmani installida ja kasutada failide vaatamiseks (jälgimiseks) ja salvestamiseks, kui need Linuxis muutuvad. Samuti näitame lühidalt, kuidas vaadata kataloogi ja kutsuda skripti, kui see muutub.

Watchmani failide vaatamise teenuse installimine Linuxi

Paigaldame valvuriteenuse allikatest, nii et kõigepealt installige need vajalikud sõltuvused libssl-dev, autoconf, automake libtool, setuptools, python-devel ja libfolly, kasutades oma Linuxi jaotises järgmist käsku.

----------- On Debian/Ubuntu ----------- 
$ sudo apt install autoconf automake build-essential python-setuptools python-dev libssl-dev libtool 

----------- On RHEL/CentOS -----------
# yum install autoconf automake python-setuptools python-devel openssl-devel libssl-devel libtool 
# yum groupinstall 'Development Tools' 

----------- On Fedora -----------
$ sudo dnf install autoconf automake python-setuptools openssl-devel libssl-devel libtool 
$ sudo dnf groupinstall 'Development Tools'  

Kui vajalikud sõltuvused on installitud, võite hakata valvurit üles ehitama, laadides alla selle githubi hoidla, liikuma kohalikku hoidlasse, konfigureerima, ehitama ja installima järgmiste käskude abil.

$ git clone https://github.com/facebook/watchman.git
$ cd watchman
$ git checkout v4.9.0  
$ ./autogen.sh
$ ./configure
$ make
$ sudo make install

Failide ja kataloogide vaatamine koos Watchmaniga Linuxis

Watchmani saab konfigureerida kahel viisil: (1) käsurea kaudu, kui deemon töötab taustal, või (2) konfiguratsioonifaili kaudu, mis on kirjutatud JSON-vormingus.

Kataloogi (nt ~/bin ) muudatuste vaatamiseks käivitage järgmine käsk.

$ watchman watch ~/bin/

Järgmine käsk kirjutab konfiguratsioonifaili nimega state /usr/local/var/run/watchman/ -state/JSON-vormingus kui ka logifaili nimega log samas asukohas.

Kahte faili saate vaadata käsu kass näitusena.

$ cat /usr/local/var/run/watchman/aaronkilik-state/state
$ cat /usr/local/var/run/watchman/aaronkilik-state/log

Samuti saate määratleda, mis toimingu käivitada, kui kataloogi muudatusi vaadatakse. Näiteks järgmises käsus on ' test-trigger ' päästiku nimi ja ~ bin/pav.sh on skript, mida käivitatakse muudatuste tuvastamisel. jälgitavas kataloogis.

Testi jaoks loob skript pav.sh lihtsalt ajatempliga faili (st fail. $Time.txt ) samasse kataloogi, kuhu skript on salvestatud.

time=`date +%Y-%m-%d.%H:%M:%S`
touch file.$time.txt

Salvestage fail ja tehke skript käivitatavaks, nagu näidatud.

$ chmod +x ~/bin/pav.sh

Päästiku käivitamiseks käivitage järgmine käsk.

$ watchman -- trigger ~/bin 'test-trigger' -- ~/bin/pav.sh

Kui käivitate valvuri, et silma peal hoida kataloogil, mis on lisatud jälgimisloendisse ja selle vaatamiseks, käivitage järgmine käsk.

$ watchman watch-list 

Juurte käivitamisloendi kuvamiseks käivitage järgmine käsk (asendage ~/bin nimega root ).

$ watchman trigger-list ~/bin

Ülaltoodud konfiguratsiooni põhjal luuakse iga kord, kui kataloog ~/bin muutub, selle sisse selline fail nagu file.2019-03-13.23: 14: 17.txt ja saate neid vaadata käsuga ls.

$ ls

Watchmani teenuse desinstallimine Linuxis

Watchmani desinstallimiseks minge lähtekataloogi ja käivitage järgmised käsud:

$ sudo make uninstall
$ cd '/usr/local/bin' && rm -f watchman 
$ cd '/usr/local/share/doc/watchman-4.9.0 ' && rm -f README.markdown 

Lisateabe saamiseks külastage Watchman Githubi hoidlat: https://github.com/facebook/watchman.

Samuti võiksite lugeda neid järgmisi seotud artikleid.

  1. Swatchdog - lihtne logifailide jälgija reaalajas Linuxis
  2. 4 viisi logifailide vaatamiseks või jälgimiseks reaalajas
  3. fswatch - jälgib Linuxi faile ja kataloogimuudatusi
  4. Pyintify - jälgige failisüsteemi muudatusi reaalajas Linuxis
  5. Inav - vaadake Linuxis Apache'i logisid reaalajas

Watchman on avatud lähtekoodiga failide vaatamise teenus, mis jälgib faile ja salvestusi või käivitab toiminguid, kui need muutuvad. Kasutage allolevat tagasisidevormi, et esitada küsimusi või jagada oma mõtteid meiega.