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:
- 4 gute Open-Source-Tools zur Protokollüberwachung und -verwaltung für Linux
- So verwalten Sie Systemprotokolle (Konfigurieren, Rotieren und Importieren in die Datenbank) unter Linux
- So richten Sie die Protokollrotation mit Logrotate unter Linux ein und verwalten sie
- Ü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.