Watchman - narzędzie do oglądania plików i katalogu do zmian

Watchman - narzędzie do oglądania plików i katalogu do zmian

Stróż to usługa oglądania plików typu open source i crossplatform, która ogląda pliki i rejestruje lub wykonuje działania po zmianie. Jest opracowywany przez Facebook i działa na Linux, OS X, FreeBSD i Solaris. Działa w modelu klienta-serwera i wykorzystuje użyteczność INotify jądra Linux, aby zapewnić mocniejsze powiadomienie.

Przydatne koncepcje stróża

  • Rekurencyjnie ogląda oglądać jedno lub więcej drzew katalogowych.
  • Każdy z oglądania katalogu nazywa się korzeniem.
  • Można go skonfigurować za pomocą linii polecenia lub pliku konfiguracyjnego zapisanego w formacie JSON.
  • Rejestruje zmiany w plikach dziennika.
  • Obsługuje subskrypcję zmian plików, które występują w korzeni.
  • Umożliwia zapytanie o zmiany plików od czasu ostatnie sprawdzone lub bieżący stan drzewa.
  • Może obejrzeć cały projekt.

W tym artykule wyjaśnimy, jak zainstalować i używać stróż Aby oglądać (monitorowanie) plików i rejestrować, gdy zmieniają się w Linux. Krótko pokażemy również, jak obejrzeć katalog i wywołać skrypt po zmianie.

Instalowanie usługi obserwowania plików Watchman w Linux

Zainstalujemy stróż usługa ze źródeł, więc najpierw zainstaluj te wymagane zależności Libssl-dev, Autoconf, Automake libtool, setuptools, Python-devel I libfolly Korzystanie z następującego polecenia w dystrybucji Linux.

----------- Na Debian/Ubuntu ----------- $ sudo apt Zainstaluj Autoconf Automake Issenle Python-SeTuptools Python-dev libssl-dev libtool ----------- Na RHEL/CENTOS ----------- # Yum Zainstaluj Autoconf Automake Python-SeTuptools Python-Devel Openssl-Devel Libssl-Devel Libtool # Yum GroupInstall „Narzędzia programistyczne” ----------- Na Fedorze ----------- $ sudo dnf instaluj autoconf Automake python-seTuptools openssl-devel libssl-devel libtool $ sudo dnf groupInstall „Narzędzia programistyczne” 

Po zainstalowanych zależności, możesz rozpocząć budowanie Watchman, pobierając jego repozytorium GitHub, przejść do lokalnego repozytorium, konfiguruj, zbuduj i zainstaluj go za pomocą następujących poleceń.

$ git clone https: // github.com/Facebook/Watchman.Git $ cd Watchman $ git kector v4.9.0 $ ./Autogen.sh $ ./skonfiguruj $, aby $ sudo tworzy instalację 

Oglądanie plików i katalogów z Watchman w Linux

Stróż Można skonfigurować na dwa sposoby: (1) za pomocą wiersza polecenia, podczas gdy demon działa w tle lub (2) za pomocą pliku konfiguracyjnego zapisanego w formacie JSON.

Aby obejrzeć katalog (e.G ~/bin) W przypadku zmian uruchom następujące polecenie.

$ Watchman Watch ~/bin/ 
Obejrzyj katalog w Linux

Poniższe polecenie zapisuje plik konfiguracyjny wywoływany państwo pod /usr/local/var/run/strażnik/-state/, w formacie JSON, a także plik dziennika o nazwie dziennik w tej samej lokalizacji.

Możesz wyświetlić dwa pliki za pomocą polecenia CAT jako pokaz.

$ cat/usr/local/var/run/strażnik/aaronkilik-State/State $ cat/usr/local/var/run/strażnik/aaronkilik-state/log 

Możesz także zdefiniować, jakie działanie wywołać, gdy katalog jest obserwowany w poszukiwaniu zmian. Na przykład w następującym poleceniu ”wyzwalacz testowy'to nazwa spustu i ~ Bin/Pav.cii to skrypt, który zostanie wywołany po wykryciu zmian w monitorowanym katalogu.

Do celów testowych Pav.cii Skrypt po prostu tworzy plik z znak czasu (I.mi plik.$ czas.tekst) w tym samym katalogu, w którym skrypt jest przechowywany.

czas = 'data +%y-%m-%d.%H:%m:%s 'plik dotykowy.$ czas.tekst 

Zapisz plik i uczyń skrypt wykonywalny jak pokazano.

$ chmod +x ~/bin/pav.cii 

Aby uruchomić spust, uruchom następujące polecenie.

$ Watchman-Trigger ~/bin 'Test-wyzwalacz'-~/bin/pav.cii 
Utwórz spust w katalogu

Kiedy wykonujesz stróż Aby mieć oko na katalog, dodano do listy zegarków i wyświetlić go, uruchom następujące polecenie.

$ Watchman Watch-List 
Zobacz listę oglądania

Aby wyświetlić listę spustu dla źródło, Uruchom następujące polecenie (wymień ~/bin z źródło nazwa).

$ Watchman Trigger-list ~/bin 
Pokaż listę spustu dla korzenia

Na podstawie powyższej konfiguracji, za każdym razem ~/bin Zmienia się katalogu, plik taki jak plik.2019-03-13.23:14:17.tekst jest utworzony w nim i możesz je wyświetlić za pomocą polecenia LS.

$ ls 
Przetestuj konfigurację stróża

Odinstalowanie usługi stróżów w Linux

Jeśli chcesz odinstalować stróż, Przejdź do katalogu źródłowego i uruchom następujące polecenia:

$ sudo Make odinstall $ cd '/usr/local/bin' && Rm -f Watchman $ cd '/usr/local/share/doc/strażnik -4.9.0 '&& rm -f readme.obniżka cen 

Aby uzyskać więcej informacji, odwiedź repozytorium Watchman Github: https: // github.com/Facebook/Watchman.

Możesz także przeczytać następujące powiązane artykuły.

  1. SWATCHDOG - Prosty obserwator plików dziennika w czasie rzeczywistym w Linux
  2. 4 sposoby oglądania lub monitorowania plików dziennika w czasie rzeczywistym
  3. FSWatch - monitoruje zmiany i katalogu w Linux
  4. PyIntify - Monitoruj zmiany systemu plików w czasie rzeczywistym w Linux
  5. InaV - oglądaj dzienniki Apache w czasie rzeczywistym w Linux

Stróż to usługa oglądania plików typu open source, która obserwuje pliki i rejestruje lub wyzwala akcje, gdy się zmieniają. Skorzystaj z poniższego formularza opinii, aby zadawać pytania lub podziel się z nami swoimi przemyśleniami.