Watchman - Kayan aikin Kallon Fayil da Directory don Canje-canje


Watchman shine buɗaɗɗen tushe da sabis na kallon fayil ɗin dandamali wanda ke ba da damar amfanin Linux kernel don samar da sanarwa mai ƙarfi.

  • Ana maimaitawa yana kallon kallo ɗaya ko fiye da bishiyoyi.
  • Kowace kundin adireshi da ake kallo ana kiransa tushen.
  • Ana iya daidaita shi ta hanyar layin umarni ko fayil ɗin daidaitawa da aka rubuta a tsarin JSON.
  • Yana rubuta canje-canje zuwa fayilolin log.
  • yana goyan bayan biyan kuɗin shiga ga canje-canjen fayil da ke faruwa a tushen.
  • Yana ba ku damar bincika tushen canje-canjen fayil tun lokacin da kuka bincika ƙarshe, ko yanayin bishiyar na yanzu.
  • Yana iya kallon gaba dayan aikin.

A cikin wannan labarin, za mu yi bayanin yadda ake shigar da amfani da mai tsaro don kallon (lura) fayiloli da rikodin lokacin da suka canza a cikin Linux. Hakanan za mu ɗan nuna yadda ake kallon kundin adireshi da kiran rubutun lokacin da ya canza.

Sanya Sabis na Kallon Fayil na Watchman a cikin Linux

Za mu shigar da sabis na mai gadi daga tushe, don haka da farko shigar da waɗannan abubuwan dogaro da ake buƙata libssl-dev, autoconf, automake libtool, setuptools, python-devel da libfolly ta amfani da bin umarni akan rarraba Linux ɗinku.

----------- 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'  

Da zarar an shigar da abubuwan dogaro da ake buƙata, zaku iya fara ginin mai gadi ta zazzage ma'ajiyar github, matsa cikin ma'ajiyar gida, daidaitawa, ginawa da shigar da shi ta amfani da bin umarni.

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

Kallon Fayiloli da adireshi tare da Watchman a cikin Linux

Ana iya saita mai tsaro ta hanyoyi biyu: (1) ta hanyar layin umarni yayin da daemon ke gudana a bango ko (2) ta hanyar fayil ɗin sanyi da aka rubuta a cikin tsarin JSON.

Don kallon kundin adireshi (misali ~/bin) don canje-canje, gudanar da umarni mai zuwa.

$ watchman watch ~/bin/

Umurni mai zuwa yana rubuta fayil ɗin daidaitawa da ake kira state ƙarƙashin /usr/local/var/run/watchman/-state/, a tsarin JSON da kuma fayil ɗin log da ake kira log a wuri guda.

Kuna iya duba fayilolin biyu ta amfani da umarnin cat azaman nuni.

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

Hakanan zaka iya ayyana abin da za a kunna lokacin da ake kallon kundin adireshi don canje-canje. Misali a cikin umarni mai zuwa, 'test-trigger' shine sunan mai kunnawa kuma ~bin/pav.sh shine rubutun da za'a kira lokacin da aka gano canje-canje. a cikin littafin da ake sa ido.

Don dalilai na gwaji, rubutun pav.sh kawai yana ƙirƙirar fayil tare da tambarin lokaci (watau fayil.$time.txt) a cikin wannan kundin adireshi inda aka adana rubutun.

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

Ajiye fayil ɗin kuma sanya rubutun aiwatarwa kamar yadda aka nuna.

$ chmod +x ~/bin/pav.sh

Don ƙaddamar da fararwa, gudanar da umarni mai zuwa.

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

Lokacin da kuka aiwatar da mai gadi don sa ido kan kundin adireshi, an saka shi cikin jerin agogo kuma don duba shi, gudanar da umarni mai zuwa.

$ watchman watch-list 

Don duba jerin abubuwan da ke jawo tushen tushen, gudanar da umarni mai zuwa (maye gurbin ~/bin tare da sunan tushen).

$ watchman trigger-list ~/bin

Dangane da tsarin da ke sama, duk lokacin da kundin adireshin ~/bin ya canza, an ƙirƙiri fayil kamar file.2019-03-13.23:14:17.txt a ciki. kuma zaka iya duba su ta amfani da umarnin ls.

$ ls

Ana cire Sabis na Watchman a cikin Linux

Idan kana son cire mai tsaro, matsa zuwa cikin kundin tushe kuma gudanar da umarni masu zuwa:

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

Don ƙarin bayani, ziyarci wurin ajiyar Watchman Github: https://github.com/facebook/watchman.

Hakanan kuna iya son karanta waɗannan labarai masu alaƙa.

  1. Swatchdog – Mai Sauƙaƙe Mai Kallon Fayil ɗin Log in Real-Time a Linux
  2. Hanyoyi 4 don Kallon ko Kula da Fayilolin Log in Real Time
  3. fswatch - Yana Kula da Fayiloli da Canje-canje na Darakta a cikin Linux
  4. Pyintify – Saka idanu Canje-canjen Tsarin Fayil a Gaske a Linux
  5. Inav - Kalli Logs Apache a cikin Lokaci na Gaskiya a Linux

Watchman sabis ne na kallon fayil mai buɗewa wanda ke kallon fayiloli da rikodin, ko jawo ayyuka, lokacin da suka canza. Yi amfani da fom ɗin amsa da ke ƙasa don yin tambayoyi ko raba tunanin ku tare da mu.