Petiti - odprtokodno orodje za analizo dnevnika za Linux SysAdmins
Petit je brezplačen in odprtokodni sistem Cygwin, zasnovan za hitro analizo dnevniških datotek v okolju podjetja.
Zasnovan je tako, da sledi Unixovi filozofiji majhne hitrosti in enostavnosti uporabe, uporablja pa se lahko za pregled/podporo različnih formatov datotek dnevnika, vključno s datotekami syslog in Apache.
- Podpore za analizo dnevnika.
- Samodejno zazna in podpira različne formate dnevniških datotek (npr. Syslog, Apache Access, Apache Error, Snort Log, Linux Secure Log in surove dnevniške datoteke).
- Podpora za razprševanje dnevnikov.
- Podpira grafikoniranje ukazne vrstice.
- Podpira odkrivanje besed in štetje s pogostimi zaklepnimi besedami v podatkih dnevnika.
- Podpora za zmanjšanje dnevnika za enostavno branje.
- Ponuja različne privzete in posebej izdelane filtre.
- Podpira prstne odtise, uporabne pri prepoznavanju in izključevanju podpisov za ponovni zagon.
- Ponuja več izhodnih možnosti za širokozaslonske terminale in izbiro znakov ter še veliko več.
V tej vadnici vam bomo pokazali, kako namestite in uporabite orodje za analizo dnevnikov Petit v Linuxu, da na različne načine iz sistemskih dnevnikov izvlečete koristne informacije.
Kako namestiti in uporabljati orodje Petit Log Analysis v Linuxu
Petit lahko namestite iz privzetih repozitorijev Debian/Ubuntu in njegovih izpeljank z uporabo orodja za upravljanje apt paketov, kot je prikazano spodaj.
$ sudo apt install petit
V sistemih RHEL/CentOS/Fedora prenesite in namestite paket .rpm, kot je ta.
# wget http://crunchtools.com/wp-content/files/petit/petit-current.rpm # rpm -i petit-current.rpm
Ko je nameščen, je čas, da si ogledate osnovno uporabo Petit s primeri.
To je preprosta majhna funkcija - povzame število vrstic, odkritih v dnevniški datoteki. Rezultat obsega število podobnih vrstic v dnevniku in kako je bila skupina na splošno videti, kot je prikazano spodaj.
# 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 ......
Z možnostjo --daemon
lahko prikažete osnovno poročilo o vrsticah, ki jih ustvari določen sistemski demon, kot je prikazano v spodnjem primeru.
# 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[#]:
Če želite najti vse število vrstic, ki jih ustvari določen gostitelj, uporabite zastavico --host
, kot je prikazano spodaj. To je lahko koristno pri analiziranju dnevniških datotek za več kot enega gostitelja.
# petit --host /var/log/syslog 999: tecmint
Ta funkcija se uporablja za iskanje in prikaz kakovostno pomembnih besed v datoteki 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
To deluje v obliki grafikona vrstice ključ/vrednost za primerjavo porazdelitev, kot je prikazano v spodnjih primerih.
Če želite grafično prikazati prvih 60 sekund v sistemskem dnevniku, uporabite zastavico --sgrapg
, kot je ta.
# 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
Ta primer prikazuje, kako slediti in graficirati določeno besedo (npr.\"Dhcp" v spodnjem ukazu) v dnevniški datoteki.
# 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
Poleg tega za prikaz vzorcev za vsak vnos v dnevniški datoteki uporabite možnost –allsamples, kot je ta.
# petit --hash --allsample /var/log/syslog
Pomembne datoteke Petit:
- /var/lib/petit/fingerprint_library - uporablja se za izdelavo datotek s prstnimi odtisi po meri.
- /var/lib/petit/fingerprints (zbirne datoteke prstnih odtisov) - uporablja se za filtriranje ponovnih zagonov in drugih dogodkov, ki jih skrbnik sistema ne šteje za življenjsko pomembne.
- /var/lib/petit/filters/
Za več informacij in možnosti uporabe preberite tako majhno stran.
# man petit OR # petit -h
Domača stran Petit: http://crunchtools.com/software/petit/
Preberite tudi te uporabne vodnike o spremljanju in upravljanju dnevnikov v Linuxu:
- 4 dobra odprtokodna orodja za spremljanje in upravljanje dnevnikov za Linux
- Kako upravljati sistemske dnevnike (konfigurirati, zasukati in uvoziti v bazo podatkov) v Linuxu
- Kako nastaviti in upravljati sukanje dnevnika z uporabo Logrotate v Linuxu
- Spremljajte dnevniške strežnike v realnem času z orodjem\"Log.io" v Linuxu
Lahko nam pošljete kakršna koli vprašanja preko spodnjega obrazca za povratne informacije ali pa nam z nami delite informacije o uporabnih orodjih za analizo dnevnikov za Linux, za katere ste že slišali ali naleteli.