Petiti: una eina d'anàlisi de registres de codi obert per a administradors de sistemes Linux


Petit és un sistema Cygwin gratuït i de codi obert, dissenyat per analitzar ràpidament fitxers de registre en entorns empresarials.

Està pensat per seguir la filosofia Unix de petits, ràpids i fàcils d'utilitzar, i es pot utilitzar per inspeccionar/admetre diferents formats de fitxers de registre, inclosos els fitxers de registre Syslog i Apache.

  • Admet l'anàlisi de registres.
  • Detecta automàticament i admet diversos formats de fitxer de registre (p. ex., Syslog, Apache Access, Apache Error, Snort Log, Linux Secure Log i fitxers de registre en brut).
  • Compatible amb l'hashing de registre
  • Admet gràfics de línia d'ordres.
  • Compatible amb la descoberta de paraules i compta amb paraules limitades habituals a les dades de registre.
  • Admet la reducció de registres per facilitar la lectura.
  • Ofereix diversos filtres predeterminats i fets especialment.
  • Admet empremtes dactilars, útil per identificar i excloure signatures de reinici.
  • Ofereix diverses opcions de sortida per a terminals de pantalla ampla i selecció de caràcters i moltes més.

En aquest tutorial, us mostrarem com instal·lar i utilitzar l'eina d'anàlisi de registre Petit a Linux per extreure informació útil dels registres del sistema de diverses maneres.

Com instal·lar i utilitzar l'eina d'anàlisi Petit Log a Linux

Petit es pot instal·lar des dels repositoris predeterminats de Debian/Ubuntu i els seus derivats, utilitzant l'eina de gestió de paquets apt com es mostra a continuació.

$ sudo apt install petit

Als sistemes RHEL/CentOS/Fedora, descarregueu i instal·leu el paquet .rpm d'aquesta manera.

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

Un cop instal·lat, és hora de veure l'ús bàsic de Petit amb exemples.

Aquesta és una funció petita senzilla: suma el nombre de línies descobertes en un fitxer de registre. La seva sortida inclou el nombre de línies similars que es troben al registre i l'aspecte general del grup, tal com es mostra a continuació.

# 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
......

L'ús de l'opció --daemon ajuda a generar un informe bàsic de línies produïdes per un dimoni del sistema en particular, tal com es mostra a l'exemple següent.

# 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[#]:

Per trobar tot el nombre de línies generades per un host concret, utilitzeu el senyalador --host com es mostra a continuació. Això pot ser útil a l'hora d'analitzar fitxers de registre de més d'un host.

# petit --host /var/log/syslog

999:	tecmint

Aquesta funció s'utilitza per cercar i mostrar paraules qualitativament significatives en un fitxer de registre.

# 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

Funciona en un format de gràfics de barres de clau/valor, per comparar les distribucions una al costat de l'altra, tal com es mostra als exemples següents.

Per representar gràficament els primers 60 segons en un syslog, utilitzeu la marca --sgrapg com aquesta.

# 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

Aquest exemple mostra com rastrejar i representar gràficament una paraula específica (per exemple, \dhcp a l'ordre següent) en un fitxer de registre.

# 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

A més, per mostrar mostres de cada entrada d'un fitxer de registre, utilitzeu l'opció –allsamples com aquesta.

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

Petits fitxers importants:

  • /var/lib/petit/fingerprint_library: s'utilitza per construir fitxers d'empremtes digitals personalitzades.
  • /var/lib/petit/fingerprints (fitxers d'empremtes digitals agregades): s'utilitza per filtrar els reinicis i altres esdeveniments que l'administrador del sistema no considera vitals.
  • /var/lib/petit/filters/

Per obtenir més informació i opcions d'ús, llegiu la pàgina petit man com aquesta.

# man petit
OR
# petit -h

Pàgina d'inici Petit: http://crunchtools.com/software/petit/

Llegiu també aquestes guies útils sobre la supervisió i gestió de registres a Linux:

  1. 4 bones eines de control i gestió de registres de codi obert per a Linux
  2. Com gestionar els registres del sistema (configurar, girar i importar a la base de dades) a Linux
  3. Com configurar i gestionar la rotació del registre mitjançant Logrotate a Linux
  4. Supervisa l'inici de sessió del servidor en temps real amb l'eina \Log.io a Linux

Podeu enviar-nos qualsevol consulta mitjançant el formulari de comentaris que hi ha a continuació o potser compartir amb nosaltres informació sobre eines útils d'anàlisi de registres per a Linux, que hàgiu sentit a parlar o que us trobeu.