Petiti - Alat za analizu dnevnika otvorenog koda za Linux SysAdmins


Petit je besplatni i otvoreni izvor Cygwin sustava, dizajniran za brzu analizu datoteka dnevnika u poslovnim okruženjima.

Namijenjen je slijediti Unixovu filozofiju malih brzih i jednostavnih za upotrebu, a može se koristiti za inspekciju/podršku različitim formatima datoteka dnevnika, uključujući syslog i Apache datoteke dnevnika.

  • Podrške za analizu dnevnika.
  • Automatski otkriva i podržava različite formate datoteka dnevnika (npr. Syslog, Apache Access, Apache Error, Snort Log, Linux Secure Log i sirove datoteke dnevnika).
  • Podrška za raspršivanje zapisnika.
  • Podržava grafikone naredbenog retka.
  • Podržava otkrivanje riječi i brojanje pomoću uobičajenih zaustavnih riječi unutar podataka dnevnika.
  • Podržava smanjenje dnevnika radi jednostavnog čitanja.
  • Pruža razne zadane i posebno izrađene filtre.
  • Podržava otiske prstiju, korisne u prepoznavanju i isključivanju potpisa ponovnog pokretanja.
  • Nudi nekoliko izlaznih opcija za terminale za široki zaslon i odabir znakova te još mnogo toga.

U ovom vodiču pokazat ćemo vam kako instalirati i koristiti alat za analizu dnevnika Petit u Linuxu za izvlačenje korisnih informacija iz sistemskih dnevnika na razne načine.

Kako instalirati i koristiti alat za analizu petit dnevnika u Linuxu

Petit se može instalirati iz zadanih spremišta Debiana/Ubuntu-a i njegovih derivata, pomoću alata za upravljanje apt paketima kao što je prikazano u nastavku.

$ sudo apt install petit

Na RHEL/CentOS/Fedora sustavima preuzmite i instalirajte .rpm paket poput ovog.

# wget http://crunchtools.com/wp-content/files/petit/petit-current.rpm
# rpm -i petit-current.rpm

Jednom instalirano, vrijeme je da pogledate osnovnu uporabu Petita s primjerima ..

Ovo je izravna petit funkcija - zbraja broj linija otkrivenih u datoteci dnevnika. Izlaz se sastoji od broja sličnih redaka pronađenih u zapisniku i izgleda grupe u cjelini kao što je prikazano u nastavku.

# petit --hash /var/log/yum.log
OR
# petit --hash --fingerprint /var/log/messages
2:	Mar 18 14:35:54 Installed: libiec61883-1.2.0-4.el6.x86_64
2:	Mar 18 15:25:18 Installed: xorg-x11-drv-i740-1.3.4-11.el6.x86_64
1:	Dec 16 12:36:23 Installed: 5:mutt-1.5.20-7.20091214hg736b6a.el6.x86_64
1:	Dec 16 12:36:22 Installed: mailcap-2.1.31-2.el6.noarch
1:	Dec 16 12:40:49 Installed: mailx-12.4-8.el6_6.x86_64
1:	Dec 16 12:40:20 Installed: man-1.6f-32.el6.x86_64
1:	Dec 16 12:43:33 Installed: sysstat-9.0.4-31.el6.x86_64
1:	Dec 16 12:36:22 Installed: tokyocabinet-1.4.33-6.el6.x86_64
1:	Dec 16 12:36:22 Installed: urlview-0.9-7.el6.x86_64
1:	Dec 16 12:40:19 Installed: xz-4.999.9-0.5.beta.20091007git.el6.x86_64
1:	Dec 16 12:40:19 Installed: xz-lzma-compat-4.999.9-0.5.beta.20091007git.el6.x86_64
1:	Dec 16 12:43:31 Updated: 2:tar-1.23-15.el6_8.x86_64
1:	Dec 16 12:43:31 Updated: procps-3.2.8-36.el6.x86_64
1:	Feb 18 12:40:27 Erased: mysql
1:	Feb 18 12:40:28 Erased: mysql-libs
1:	Feb 18 12:40:22 Installed: MariaDB-client-10.1.21-1.el6.x86_64
1:	Feb 18 12:40:12 Installed: MariaDB-common-10.1.21-1.el6.x86_64
1:	Feb 18 12:40:10 Installed: MariaDB-compat-10.1.21-1.el6.x86_64
1:	Feb 18 12:54:50 Installed: apr-1.3.9-5.el6_2.x86_64
......

Korištenje opcije --daemon pomaže u izlazu osnovnog izvješća o linijama koje je proizveo određeni demon sustava, kao što je prikazano u donjem primjeru.

# petit --hash --daemon /var/log/syslog
847:	vmunix:
48:	CRON[#]:
30:	dhclient[#]:
26:	nm-dispatcher:
14:	rtkit-daemon[#]:
6:	smartd[#]:
5:	ntfs-#g[#]:
4:	udisksd[#]:
3:	mdm[#]:
2:	ag[#]:
2:	syslogd
1:	cinnamon-killer-daemon:
1:	cinnamon-session[#]:
1:	pulseaudio[#]:

Da biste pronašli sav broj linija koje generira određeni domaćin, upotrijebite zastavicu --host kako je prikazano dolje. To može biti korisno pri analiziranju datoteka dnevnika za više od jednog hosta.

# petit --host /var/log/syslog

999:	tecmint

Ova se funkcija koristi za pretraživanje i prikaz kvalitativno značajnih riječi u datoteci dnevnika.

# petit --wordcount /var/log/syslog
845:	[
97:	[mem
75:	ACPI:
64:	pci
62:	debian-sa#
62:	to
51:	USB
50:	of
49:	device
47:	&&
47:	(root)
47:	CMD
47:	usb
41:	systemd#
36:	ACPI
32:	>
32:	driver
32:	reserved
31:	(comm#
31:	-v

Ovo radi u formatu trakastog grafikona ključ/vrijednost, za usporednu usporedbu distribucija, kao što je prikazano u primjerima u nastavku.

Da biste grafički prikazali prvih 60 sekundi u syslog-u, upotrijebite oznaku --sgrapg poput ove.

# petit --sgraph /var/log/syslog
#                                                           
#                                                           
#                                                           
#                                                           
#                                                           
############################################################
59                            29                           58 

Start Time:	2017-06-08 09:45:59 		Minimum Value: 0
End Time:	2017-06-08 09:46:58 		Maximum Value: 1
Duration:	60 seconds 			Scale: 0.166666666667

Ovaj primjer pokazuje kako pratiti i grafički prikazati određenu riječ (npr. "Dhcp" u naredbi u nastavku) u datoteci dnevnika.

# cat /var/log/messages | grep error | petit --mgraph
#                        #                          #       
#                        #                          #       
#                        #                          #       
#                        #                          #       
#                        #                          #       
############################################################
10                            40                           09 

Start Time:	2017-06-08 10:10:00 		Minimum Value: 0
End Time:	2017-06-08 11:09:00 		Maximum Value: 2
Duration:	60 minutes 			Scale: 0.333333333333

Uz to, da biste prikazali uzorke za svaki unos u datoteci dnevnika, upotrijebite opciju –allsamples poput ove.

# petit --hash --allsample /var/log/syslog

Važne datoteke Petit:

  • /var/lib/petit/fingerprint_library - koristi se za izradu prilagođenih datoteka otiska prsta.
  • /var/lib/petit/otisci prstiju (zbirne datoteke otiska prsta) - koristi se za filtriranje ponovnog pokretanja i ostalih događaja koje administrator sustava ne smatra vitalnima.
  • /var/lib/petit/filters/

Za više informacija i mogućnosti korištenja pročitajte malu stranicu za petit poput ove.

# man petit
OR
# petit -h

Petit početna stranica: http://crunchtools.com/software/petit/

Također pročitajte ove korisne vodiče koji se odnose na nadzor i upravljanje zapisima u Linuxu:

  1. 4 dobra alata za nadzor i upravljanje zapisima otvorenog koda za Linux
  2. Kako upravljati dnevnicima sustava (konfigurirati, rotirati i uvesti u bazu podataka) u Linuxu
  3. Kako postaviti i upravljati rotacijom dnevnika pomoću Logrotatea u Linuxu
  4. Praćenje dnevnika poslužitelja u stvarnom vremenu pomoću alata "Log.io" na Linuxu

Možete nam poslati bilo kakva pitanja putem donjeg obrasca za povratne informacije ili možda podijeliti s nama informacije o korisnim alatima za analizu dnevnika za Linux za koje ste čuli ili ste naišli.