Watchman - failu un direktoriju skatīšanās rīks izmaiņām
Watchman ir atvērtā koda un starpplatformu failu vērošanas pakalpojums, kas inotificē Linux kodola lietderību, lai sniegtu jaudīgāku paziņojumu.
- Tas rekursīvi vēro viena vai vairāku direktoriju koku skatīšanos.
- Katru skatīto direktoriju sauc par sakni.
- To var konfigurēt, izmantojot komandrindu vai konfigurācijas failu, kas rakstīts JSON formātā.
- Tas reģistrē izmaiņas žurnālfailos.
- Atbalsta sakņu faila izmaiņu abonēšanu.
- ļauj vaicāt saknei faila izmaiņas kopš pēdējās pārbaudes vai koka pašreizējā stāvokļa.
- Tas var skatīties visu projektu.
Šajā rakstā mēs paskaidrosim, kā instalēt un izmantot watchman, lai skatītos (uzraudzītu) failus un ierakstītu, kad tie mainās Linux. Mēs arī īsi parādīsim, kā skatīties direktoriju un izsaukt skriptu, kad tas mainās.
Watchman File Watching Service instalēšana Linux
Mēs instalēsim sargservisu no avotiem, tāpēc vispirms instalējiet šīs nepieciešamās atkarības libssl-dev, autoconf, automake libtool, setuptools, python-devel un libfolly, izmantojot šādu Linux izplatīšanas komandu.
----------- 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'
Kad nepieciešamās atkarības ir instalētas, varat sākt veidot sargu, lejupielādējot tā github repozitoriju, pārvietoties uz vietējo repozitoriju, konfigurēt, izveidot un instalēt to, izmantojot šādas komandas.
$ git clone https://github.com/facebook/watchman.git $ cd watchman $ git checkout v4.9.0 $ ./autogen.sh $ ./configure $ make $ sudo make install
Failu un direktoriju skatīšanās kopā ar Watchman operētājsistēmā Linux
Watchman var konfigurēt divējādi: (1) izmantojot komandrindu, kamēr dēmons darbojas fonā, vai (2) izmantojot konfigurācijas failu, kas rakstīts JSON formātā.
Lai skatītos direktoriju (piemēram, ~/bin
) izmaiņām, izpildiet šo komandu.
$ watchman watch ~/bin/
Šī komanda raksta konfigurācijas failu ar nosaukumu state
zem/usr/local/var/run/watchman/ log
tajā pašā vietā.
Abus failus varat apskatīt, izmantojot komandu cat kā show.
$ cat /usr/local/var/run/watchman/aaronkilik-state/state $ cat /usr/local/var/run/watchman/aaronkilik-state/log
Varat arī definēt, kādu darbību aktivizēt, ja direktorijā tiek skatītas izmaiņas. Piemēram, šajā komandā ' test-trigger
' ir trigera nosaukums, un ~ bin/pav.sh
ir skripts, kas tiks izsaukts, kad tiks atklātas izmaiņas direktorijā, kuru uzrauga.
Pārbaudes vajadzībām skripts pav.sh
vienkārši izveido failu ar laika zīmogu (t.i., file. $Time.txt
) tajā pašā direktorijā, kurā tiek glabāts skripts.
time=`date +%Y-%m-%d.%H:%M:%S` touch file.$time.txt
Saglabājiet failu un izveidojiet skriptu izpildāmu, kā parādīts.
$ chmod +x ~/bin/pav.sh
Lai palaistu trigeri, palaidiet šādu komandu.
$ watchman -- trigger ~/bin 'test-trigger' -- ~/bin/pav.sh
Izpildot sargu, lai sekotu direktorijai, tas ir pievienots novērošanas sarakstam un lai to skatītu, izpildiet šo komandu.
$ watchman watch-list
Lai skatītu saknes aktivizētāju sarakstu, izpildiet šo komandu (aizstājiet ~/bin
ar root
nosaukumu).
$ watchman trigger-list ~/bin
Pamatojoties uz iepriekšminēto konfigurāciju, katru reizi, kad mainās direktorija ~/bin
, tajā tiek izveidots fails, piemēram, fails.2019-03-13.23: 14: 17.txt
un tos var apskatīt, izmantojot komandu ls.
$ ls
Watchman Service atinstalēšana Linux
Ja vēlaties atinstalēt watchman, pārejiet uz avota direktoriju un izpildiet šādas komandas:
$ sudo make uninstall $ cd '/usr/local/bin' && rm -f watchman $ cd '/usr/local/share/doc/watchman-4.9.0 ' && rm -f README.markdown
Lai iegūtu papildinformāciju, apmeklējiet Watchman Github krātuvi: https://github.com/facebook/watchman.
Jūs varētu vēlēties arī izlasīt šos saistītos rakstus.
- Swatchdog - vienkāršs žurnālfailu vērotājs Linux reāllaikā
- 4 veidi, kā reāllaikā skatīties vai pārraudzīt žurnālfailus
- fswatch - uzrauga failus un direktoriju izmaiņas operētājsistēmā Linux
- Pyintify - monitorējiet failu sistēmas izmaiņas reāllaikā Linux
- Inav - skatiet Apache žurnālus reāllaikā operētājsistēmā Linux
Watchman ir atvērta pirmkoda failu skatīšanas pakalpojums, kas skatās failus un ierakstus vai izraisa darbības, kad tie mainās. Izmantojiet tālāk sniegto atsauksmju veidlapu, lai uzdotu jautājumus vai dalītos savās domās.