Watchman - Alat menonton file dan direktori untuk perubahan
- 3536
- 959
- Dwayne Hackett
Penjaga adalah layanan menonton file open source dan cross-platform yang menonton file dan merekam atau melakukan tindakan saat mereka berubah. Itu dikembangkan oleh Facebook dan berjalan di Linux, OS X, Freebsd, dan Solaris. Ini berjalan dalam model klien-server dan menggunakan utilitas inotify dari kernel Linux untuk memberikan pemberitahuan yang lebih kuat.
Konsep penjaga yang berguna
- Itu secara rekursif menonton menonton satu atau lebih pohon direktori.
- Setiap direktori yang ditonton disebut root.
- Itu dapat dikonfigurasi melalui baris perintah atau file konfigurasi yang ditulis dalam format JSON.
- Itu mencatat perubahan pada file log.
- Mendukung langganan untuk perubahan file yang terjadi di root.
- Memungkinkan Anda untuk menanyakan root untuk perubahan file sejak terakhir kali Anda memeriksa, atau keadaan pohon saat ini.
- Itu bisa menonton seluruh proyek.
Di artikel ini, kami akan menjelaskan cara menginstal dan menggunakan penjaga untuk menonton (memantau) file dan merekam saat mereka berubah di Linux. Kami juga akan secara singkat menunjukkan cara menonton direktori dan memohon skrip saat berubah.
Menginstal layanan menonton file Watchman di Linux
Kami akan menginstal penjaga Layanan dari sumber, jadi pertama -tama pasang dependensi yang diperlukan ini libssl-dev, autoconf, Automake libtool, setuptools, Python-devel Dan libfolly Menggunakan perintah berikut pada distribusi Linux Anda.
----------- Di debian/ubuntu ----------- $ sudo apt instal autoconf autoconf membangun python-secuptools python-dev libssl-dev libtool ----------- Di rhel/centos ----------- # yum instal autoconf automake python-setuptools python-devel openssl-devel-devel-devel-devel libtool # yum groupinstall 'alat pengembangan' ----------- Di Fedora ----------- $ sudo dnf menginstal autoconf automake python-secuptools openssl-devel libssl-devel libtool $ sudo dnf groupinstall 'alat pengembangan'
Setelah dependensi yang diperlukan diinstal, Anda dapat mulai membangun penjaga dengan mengunduh repositori github -nya, pindah ke repositori lokal, konfigurasikan, buat dan instal menggunakan perintah berikut.
$ git clone https: // github.com/facebook/watchman.git $ cd watchman $ git checkout v4.9.0 $ ./Autogen.sh $ ./Konfigurasikan $ Make $ sudo Make Install
Menonton file dan direktori dengan penjaga di Linux
Penjaga dapat dikonfigurasi dalam dua cara: (1) melalui baris perintah saat daemon berjalan di latar belakang atau (2) melalui file konfigurasi yang ditulis dalam format JSON.
Untuk menonton direktori (e.G ~/bin
) Untuk perubahan, jalankan perintah berikut.
$ Watchman Watch ~/bin/Tonton Direktori di Linux
Perintah berikut menulis file konfigurasi yang dipanggil negara
di bawah /usr/local/var/run/watchman/-state/, dalam format JSON serta file log yang dipanggil catatan
di lokasi yang sama.
Anda dapat melihat dua file menggunakan perintah CAT sebagai tampilan.
$ cat/usr/local/var/run/watchman/aaronkilis-state/state $ cat/usr/local/var/run/watchman/aaronkilik-state/log/log
Anda juga dapat mendefinisikan tindakan apa yang harus dipicu ketika direktori diawasi untuk perubahan. Misalnya dalam perintah berikut, 'Pemicu uji
'adalah nama pemicu dan ~ bin/pav.SH
adalah skrip yang akan dipanggil ketika perubahan terdeteksi di direktori sedang dipantau.
Untuk tujuan tes, pav.SH
Script cukup membuat file dengan a cap waktu (Saya.e mengajukan.$ waktu.txt
) dalam direktori yang sama di mana skrip disimpan.
waktu = 'tanggal +%y-%m-%d.%H:%m:%s 'file sentuh.$ waktu.txt
Simpan file dan buat skrip dapat dieksekusi seperti yang ditunjukkan.
$ chmod +x ~/bin/pav.SH
Untuk meluncurkan pemicu, jalankan perintah berikut.
$ Watchman-Trigger ~/bin 'Test-Trigger'-~/bin/pav.SHBuat pemicu di direktori
Saat Anda mengeksekusi penjaga Untuk mengawasi direktori, ditambahkan ke daftar jam tangan dan untuk melihatnya, jalankan perintah berikut.
$ Watchman Watch-ListLihat Daftar Pengawasan
Untuk melihat daftar pemicu untuk a akar, Jalankan perintah berikut (ganti ~/bin
dengan akar
nama).
$ Watchman Trigger-List ~/binTampilkan daftar pemicu untuk root
Berdasarkan konfigurasi di atas, setiap kali ~/bin
Direktori berubah, file seperti mengajukan.2019-03-13.23:14:17.txt
dibuat di dalamnya dan Anda dapat melihatnya menggunakan perintah LS.
$ lsKonfigurasi Test Watchman
Layanan Pengawas Menghapus Instalasi di Linux
Jika Anda ingin menghapus instalasi penjaga, Pindah ke direktori sumber dan jalankan perintah berikut:
$ sudo membuat uninstall $ cd '/usr/local/bin' && rm -f watchman $ cd '/usr/local/share/doc/watchman -4.9.0 '&& rm -f readme.penurunan harga
Untuk informasi lebih lanjut, kunjungi Watchman Github Repository: https: // github.com/facebook/watchman.
Anda mungkin juga ingin membaca artikel terkait berikut ini.
- SwatchDog - Pengamat File Log Sederhana di Real -Time di Linux
- 4 cara untuk menonton atau memantau file log secara real time
- Fswatch - Memantau file dan perubahan direktori di Linux
- Pyintify - Monitor Perubahan Sistem File dalam Waktu Nyata di Linux
- Inav - Tonton log Apache secara real time di Linux
Penjaga adalah layanan menonton file open source yang menonton file dan catatan, atau memicu tindakan, saat mereka berubah. Gunakan formulir umpan balik di bawah ini untuk mengajukan pertanyaan atau membagikan pemikiran Anda kepada kami.
- « Pelajari operator identitas Python dan perbedaan antara operator == dan is
- Cara Mengatur Cluster Redis di Centos 8 - Bagian 3 »