Website-Suche

Petiti – Ein Open-Source-Protokollanalysetool für Linux-SysAdmins


Petit ist ein kostenloses und quelloffenes, befehlszeilenbasiertes Protokollanalysetool für Unix-ähnliche und Cygwin-Systeme, das für die schnelle Analyse von Protokolldateien in Unternehmensumgebungen entwickelt wurde.

Es soll der Unix-Philosophie von klein, schnell und einfach zu bedienen folgen und kann zur Überprüfung/Unterstützung verschiedener Protokolldateiformate, einschließlich Syslog- und Apache-Protokolldateien, verwendet werden.

Kleine Funktionen

  • Unterstützt die Protokollanalyse.
  • Erkennt und unterstützt automatisch verschiedene Protokolldateiformate (z. B. Syslog, Apache Access, Apache Error, Snort Log, Linux Secure Log und Rohprotokolldateien).
  • Unterstützt Protokoll-Hashing.
  • Unterstützt die grafische Darstellung über die Befehlszeile.
  • Unterstützt die Worterkennung und -zählung mit gängigen Stoppwörtern in Protokolldaten.
  • Unterstützt die Protokollreduzierung für einfaches Ablesen.
  • Bietet verschiedene Standard- und speziell erstellte Filter.
  • Unterstützt Fingerabdrücke, nützlich beim Identifizieren und Ausschließen von Neustartsignaturen.
  • Bietet mehrere Ausgabeoptionen für Breitbild-Terminals, Zeichenauswahl und vieles mehr.

In diesem Tutorial zeigen wir Ihnen, wie Sie das Protokollanalysetool Petit unter Linux installieren und verwenden, um auf verschiedene Weise nützliche Informationen aus Systemprotokollen abzurufen.

So installieren und verwenden Sie das Petit Log Analysis Tool unter Linux

Petit kann aus den Standard-Repositorys von Debian/Ubuntu und seinen Derivaten mit dem Paketverwaltungstool apt installiert werden, wie unten gezeigt.

sudo apt install petit

Laden Sie auf RHEL/CentOS/Fedora-Systemen das .rpm-Paket wie folgt herunter und installieren Sie es.

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

Nach der Installation ist es an der Zeit, die grundlegende Verwendung von Petit anhand von Beispielen kennenzulernen.

Hashing einer Protokolldatei

Dies ist eine einfache, kleine Funktion – sie fasst die Anzahl der in einer Protokolldatei entdeckten Zeilen zusammen. Die Ausgabe umfasst die Anzahl der im Protokoll gefundenen ähnlichen Zeilen und wie die Gruppe im Großen und Ganzen aussah, wie unten gezeigt.

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

Ermitteln der Anzahl der von einem Daemon erzeugten Zeilen

Die Verwendung der Option --daemon hilft bei der Ausgabe eines Basisberichts der von einem bestimmten Systemdämon erzeugten Zeilen, wie im folgenden Beispiel gezeigt.

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

Ermitteln der Anzahl der von einem Host erzeugten Zeilen

Um die gesamte Anzahl der von einem bestimmten Host generierten Zeilen zu ermitteln, verwenden Sie das Flag --host wie unten gezeigt. Dies kann nützlich sein, wenn Sie Protokolldateien für mehr als einen Host analysieren.

petit --host /var/log/syslog

999:	tecmint

Durchführen einer Wortzählung in einer Protokolldatei

Diese Funktion dient der Suche und Anzeige qualitativ bedeutsamer Wörter in einer Protokolldatei.

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

Grafische Darstellung einer Protokolldatei

Dies funktioniert in einem Schlüssel-/Wert-Balkendiagrammformat für den direkten Vergleich von Verteilungen, wie in den folgenden Beispielen gezeigt.

Um die ersten 60 Sekunden in einem Syslog grafisch darzustellen, verwenden Sie das Flag --sgrapg wie folgt.

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

Verfolgen bestimmter Wörter in einer Protokolldatei

Dieses Beispiel zeigt, wie ein bestimmtes Wort (z. B. „dhcp“ im folgenden Befehl) in einer Protokolldatei verfolgt und grafisch dargestellt wird.

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

Um außerdem Beispiele für jeden Eintrag in einer Protokolldatei anzuzeigen, verwenden Sie die Option –allsamples wie folgt.

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

Wichtige Petitionsakten:

  • /var/lib/petit/fingerprint_library – wird zum Erstellen benutzerdefinierter Fingerabdruckdateien verwendet.
  • /var/lib/petit/fingerprints (aggregierte Fingerabdruckdateien) – wird zum Herausfiltern von Neustarts und anderen Ereignissen verwendet, die vom Systemadministrator nicht als wichtig erachtet werden.
  • /var/lib/petit/filters/

Weitere Informationen und Verwendungsmöglichkeiten finden Sie in der petit-Manpage wie folgt.

man petit
OR
petit -h

Petit-Homepage: http://crunchtools.com/software/petit/

Lesen Sie auch diese nützlichen Anleitungen zur Protokollüberwachung und -verwaltung unter Linux:

  1. 4 gute Open-Source-Tools zur Protokollüberwachung und -verwaltung für Linux
  2. So verwalten Sie Systemprotokolle (Konfigurieren, Rotieren und Importieren in die Datenbank) unter Linux
  3. So richten Sie die Protokollrotation mit Logrotate unter Linux ein und verwalten sie
  4. Überwachen Sie Serverprotokolle in Echtzeit mit dem Tool „Log.io“ unter Linux

Sie können uns über das Feedback-Formular unten Ihre Fragen senden oder uns vielleicht Informationen über nützliche Protokollanalyse-Tools für Linux mitteilen, von denen Sie gehört haben oder auf die Sie gestoßen sind.