Gözegçi - Üýtgeşmeler üçin faýl we katalog gözegçilik guraly
Gözegçi, has güýçli habarnamany bermek üçin Linux ýadrosynyň peýdalydygyny görkezýän açyk çeşme we platforma faýl synlaýyş hyzmatydyr.
- Bir ýa-da birnäçe katalog agaçlaryna tomaşa edýär.
- Her synlanan kataloga kök diýilýär.
- Buýruk setiri ýa-da JSON formatda ýazylan konfigurasiýa faýly arkaly düzülip bilner.
- logurnal faýllaryna üýtgeşmeleri ýazýar.
- Kökde bolup geçýän üýtgeşmelere abuna ýazylmagyny goldaýar.
- Iň soňky gezek barlanyňyzdan ýa-da agajyň häzirki ýagdaýyndan faýl üýtgemeleriniň köküni soramaga mümkinçilik berýär.
- Tutuş taslama tomaşa edip biler.
Bu makalada faýllara tomaşa etmek (gözegçilik etmek) we Linux-da üýtgänlerinde ýazmak üçin gözegçini nädip gurmalydygyny we ulanmalydygyny düşündireris. Şeýle hem, bir katalogy nädip görmelidigini we üýtgän mahaly skriptini nädip ulanmalydygyny gysgaça görkezeris.
Linux-da Gözegçi faýlyna gözegçilik hyzmatyny gurmak
Gözegçi hyzmatyny çeşmelerden gurarys, şonuň üçin ilki bilen Linux paýlanyşyňyzdaky aşakdaky buýrugy ulanyp, libssl-dev, autoconf, awtomatiki libtool, setuptools, python-devel we libfolly zerur garaşlylygy guruň.
----------- 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'
Gerekli baglylyklar gurlansoň, github ammaryny göçürip alyp, ýerli ammarlara geçip, aşakdaky buýruklary ulanyp sazlap, gurup we gurup bilersiňiz.
$ git clone https://github.com/facebook/watchman.git $ cd watchman $ git checkout v4.9.0 $ ./autogen.sh $ ./configure $ make $ sudo make install
Linux-da Watchman bilen faýllary we direktoriýalary görmek
Gözegçi iki görnüşde düzülip bilner: (1) buýruk setiri arkaly, daemon fonda işleýärkä ýa-da (2) JSON formatda ýazylan konfigurasiýa faýly arkaly.
Üýtgeşmeler üçin bir katalogy (meselem ~/bin
) görmek üçin aşakdaky buýrugy işlediň.
$ watchman watch ~/bin/
Aşakdaky buýruk JSON formatda/usr/ýerli/var/run/watchman/ state
atly konfigurasiýa faýly, şeýle hem log
Pişik buýrugyny ulanyp, iki faýly görkezip bilersiňiz.
$ cat /usr/local/var/run/watchman/aaronkilik-state/state $ cat /usr/local/var/run/watchman/aaronkilik-state/log
Üýtgeşmeler üçin bir katalog görlende haýsy herekete başlamalydygyny kesgitläp bilersiňiz. Mysal üçin, aşakdaky buýrukda ' test-trigger
' triggeriň ady we ~ bin/pav.sh
üýtgeşmeler ýüze çykarylanda ulanyljak skriptdir. gözegçilik edilýän katalogda.
Synag maksady bilen, pav.sh
skript, skript saklanýan şol bir katalogda wagt belligi (ýagny faýly. $Time.txt
) faýly döredýär.
time=`date +%Y-%m-%d.%H:%M:%S` touch file.$time.txt
Faýly ýazdyryň we skripti görkezilişi ýaly ýerine ýetiriň.
$ chmod +x ~/bin/pav.sh
Trigeri işe girizmek üçin aşakdaky buýrugy işlediň.
$ watchman -- trigger ~/bin 'test-trigger' -- ~/bin/pav.sh
Gözegçini bir kataloga gözegçilik etmek üçin ýerine ýetireniňizde, gözegçilik sanawyna goşuldy we ony görmek üçin aşakdaky buýrugy işlediň.
$ watchman watch-list
Bir kök üçin trigger sanawyny görmek üçin aşakdaky buýrugy işlediň ( ~/bin
kök
ady bilen çalşyň).
$ watchman trigger-list ~/bin
Aboveokardaky konfigurasiýa esaslanyp, her gezek bin/bin
bukjasy üýtgese, içinde file.2019-03-13.23: 14: 17.txt
ýaly bir faýl döredilýär. we ls buýrugyny ulanyp görüp bilersiňiz.
$ ls
Linux-da Gözegçi hyzmatyny aýyrmak
Gözegçini aýyrmak isleseňiz, çeşme katalogyna geçiň we aşakdaky buýruklary işlediň:
$ sudo make uninstall $ cd '/usr/local/bin' && rm -f watchman $ cd '/usr/local/share/doc/watchman-4.9.0 ' && rm -f README.markdown
Has giňişleýin maglumat üçin “Watchman Github” ammaryna baryp görüň: https://github.com/facebook/watchman.
Şeýle hem aşakdaky degişli makalalary okamak isläp bilersiňiz.
- Swatchdog - Linux-da hakyky wagtda ýönekeý log faýl synçysy
- Log faýllaryny hakyky wagtda görmegiň ýa-da gözegçilik etmegiň 4 usuly
- fswatch - Linux-daky faýllara we katalog üýtgemelerine gözegçilik edýär
- Pyintify - Linux-da hakyky wagtda faýl ulgamynyň üýtgemegine gözegçilik ediň
- Inav - Apache surnallaryny hakyky wagtda Linux-da görüň
Gözegçi, faýllary we ýazgylary görýän ýa-da üýtgän mahaly hereketlere itergi berýän açyk çeşme faýl hyzmatydyr. Sorag bermek ýa-da pikirleriňizi biziň bilen paýlaşmak üçin aşakdaky seslenme formasyny ulanyň.