Watchman - Alat menonton fail dan direktori untuk perubahan
- 1084
- 338
- Ronnie Hermann
Watchman adalah sumber terbuka dan perkhidmatan menonton fail rentas platform yang menonton fail dan rekod atau melakukan tindakan apabila mereka menukar. Ia dibangunkan oleh Facebook dan berjalan di Linux, OS X, FreeBSD, dan Solaris. Ia berjalan dalam model pelayan pelanggan dan menggunakan utiliti inotify kernel Linux untuk memberikan pemberitahuan yang lebih kuat.
Konsep Watchman Berguna
- Ia secara rekursif menonton menonton satu atau lebih pokok direktori.
- Setiap direktori yang ditonton dipanggil akar.
- Ia boleh dikonfigurasikan melalui baris arahan atau fail konfigurasi yang ditulis dalam format json.
- Ia merekodkan perubahan pada fail log.
- Menyokong langganan untuk perubahan fail yang berlaku dalam akar.
- Membolehkan anda menanyakan akar untuk perubahan fail sejak anda terakhir diperiksa, atau keadaan pokok semasa.
- Ia dapat menonton keseluruhan projek.
Dalam artikel ini, kami akan menerangkan cara memasang dan menggunakan Watchman untuk menonton (memantau) fail dan rekod apabila mereka menukar di Linux. Kami juga akan menunjukkan secara ringkas bagaimana menonton direktori dan memohon skrip apabila ia berubah.
Memasang Perkhidmatan Menonton Fail Watchman di Linux
Kami akan memasang Watchman perkhidmatan dari sumber, jadi pasang terlebih dahulu ini dependensi yang diperlukan libssl-dev, Autoconf, Automake libtool, setuptools, python-devel dan libfolly Menggunakan arahan berikut pada taburan Linux anda.
----------- Di Debian/Ubuntu ----------- $ sudo apt pemasangan autoconf automake binaan python-setuptools python-dev libssl-dev libool ----------- Pada rhel/centos ----------- # yum Pasang autoconf automake python-setuptools python-devel openssl-devel libssl-devel libtool # yum groupinstall 'development tools' ----------- Di Fedora ----------- $ sudo dnf memasang autoconf automake python-setuptools openssl-devel libssl-devel libtool $ sudo dnf groupinstall 'development' alat '
Setelah dikehendaki dikehendaki, anda boleh memulakan Bangunan Watchman dengan memuat turun repositori GitHubnya, bergerak ke repositori tempatan, mengkonfigurasi, membina dan memasangnya menggunakan arahan berikut.
$ git clone https: // github.com/Facebook/Watchman.Git $ CD Watchman $ git checkout v4.9.0 $ ./autogen.sh $ ./konfigurasikan $ membuat $ sudo buat pemasangan
Menonton fail dan direktori dengan Watchman di Linux
Watchman boleh dikonfigurasikan dalam dua cara: (1) melalui baris arahan sementara daemon berjalan di latar belakang atau (2) melalui fail konfigurasi yang ditulis dalam format json.
Untuk menonton direktori (e.g ~/bin
) untuk perubahan, jalankan arahan berikut.
$ Watchman Watch ~/bin/Tonton Direktori di Linux
Perintah berikut menulis fail konfigurasi yang dipanggil Negeri
di bawah /usr/local/var/run/watchman/-state/, dalam format JSON serta fail log yang dipanggil log
Di lokasi yang sama.
Anda boleh melihat kedua -dua fail menggunakan perintah kucing sebagai persembahan.
$ Cat/usr/local/var/run/watchman/aaronkilik-state/state $ Cat/usr/local/var/run/watchman/aaronkilik-state/log
Anda juga boleh menentukan tindakan apa yang dicetuskan apabila direktori ditonton untuk perubahan. Contohnya dalam perintah berikut, 'Test-Trigger
'adalah nama pencetus dan ~ bin/pav.sh
adalah skrip yang akan digunakan apabila perubahan dikesan dalam direktori yang dipantau.
Untuk tujuan ujian, Pav.sh
skrip hanya membuat fail dengan Timestamp (i.e fail.$ masa.txt
) dalam direktori yang sama di mana skrip disimpan.
masa = 'tarikh +%y-%m-%d.%H:%m:%s 'sentuh fail.$ masa.txt
Simpan fail dan buat skrip boleh dilaksanakan seperti yang ditunjukkan.
$ chmod +x ~/bin/pav.sh
Untuk melancarkan pencetus, jalankan arahan berikut.
$ Watchman-Trigger ~/bin 'Test-Trigger'-~/bin/Pav.shBuat pencetus di direktori
Semasa anda melaksanakan Watchman Untuk mengawasi direktori, ditambah ke senarai jam tangan dan melihatnya, jalankan arahan berikut.
$ Watchman Watch-listLihat senarai menonton
Untuk melihat senarai pencetus untuk a akar, jalankan arahan berikut (ganti ~/bin
dengan akar
nama).
$ Watchman Trigger-List ~/BinTunjukkan senarai pencetus untuk akar
Berdasarkan konfigurasi di atas, setiap kali ~/bin
Direktori berubah, fail seperti fail.2019-03-13.23:14:17.txt
dibuat di dalamnya dan anda boleh melihatnya menggunakan arahan LS.
$ lsKonfigurasi Watchman Test
Nyahpasang Perkhidmatan Watchman di Linux
Sekiranya anda mahu menyahpasang Watchman, Pindah ke direktori sumber dan jalankan arahan berikut:
$ sudo membuat uninstall $ cd '/usr/local/bin' && rm -f watchman $ cd '/usr/local/share/doc/watchman -4.9.0 '&& rm -f Readme.Markdown
Untuk maklumat lanjut, lawati Repositori Watchman Github: https: // github.com/Facebook/Watchman.
Anda mungkin juga ingin membaca artikel berkaitan berikut.
- Swatchdog - Pemantau fail log mudah dalam masa nyata di Linux
- 4 cara untuk menonton atau memantau fail log dalam masa nyata
- fswatch - memantau fail dan perubahan direktori di linux
- Pyintify - Pantau perubahan sistem fail dalam masa nyata di linux
- INAV - Tonton Log Apache dalam masa nyata di Linux
Watchman adalah perkhidmatan menonton fail sumber terbuka yang menonton fail dan rekod, atau mencetuskan tindakan, ketika mereka menukar. Gunakan borang maklum balas di bawah untuk mengemukakan soalan atau kongsi pendapat anda dengan kami.
- « Ketahui pengendali identiti python dan perbezaan antara == dan is operator
- Cara Menyiapkan Kluster Redis di Centos 8 - Bahagian 3 »