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/astynda state atly konfigurasiýa faýly, şeýle hem log şol bir ýerde.

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.

  1. Swatchdog - Linux-da hakyky wagtda ýönekeý log faýl synçysy
  2. Log faýllaryny hakyky wagtda görmegiň ýa-da gözegçilik etmegiň 4 usuly
  3. fswatch - Linux-daky faýllara we katalog üýtgemelerine gözegçilik edýär
  4. Pyintify - Linux-da hakyky wagtda faýl ulgamynyň üýtgemegine gözegçilik ediň
  5. 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ň.