SYSDIG - Ein leistungsstarkes Systemüberwachungs- und Fehlerbehebungstool für Linux
- 1060
- 182
- Matteo Möllinger
SYSDIG ist ein Open-Source-, plattformübergreifender, leistungsstarker und flexibler Systemüberwachungs- und Fehlerbehebungsinstrument für Linux; Es funktioniert auch unter Windows und Mac OSX, jedoch mit begrenzter Funktionalität und kann für die Systemanalyse, Inspektion und Debugg verwendet werden.
Normalerweise würden Sie eine Mischung aus verschiedenen Tools für die Überwachung und Fehlerbehebung in Linux -Leistungen verwenden, einschließlich dieser, die unten aufgeführt sind, um die Überwachungs- und Debugging -Aufgaben bei Linux auszuführen:
- Strace - Entdecken Sie Systemaufrufe und Signale zu einem Prozess.
- TCPDUMP - RAW -Netzwerkverkehrsüberwachung.
- Netstat - Überwachung von Netzwerkverbindungen.
- HTOP - Echtzeit -Prozessüberwachung.
- IFTOP - Echtzeit -Netzwerkbandbreite Überwachung.
- LSOF - Zeigen Sie an, welche Dateien durch welchen Prozess geöffnet sind.
Jedoch, SYSDIG Integriert das, was alle oben genannten Tools und viele mehr in einem einzigen und einfachen Programm bieten, mehr mit erstaunlicher Containerunterstützung. Es ermöglicht Ihnen, das tatsächliche Verhalten (Ereignisstrom) von Linux -Systemen sowie Container zu erfassen, zu speichern, zu filtern und zu untersuchen.
Es wird mit einer Befehlszeilenschnittstelle und einer leistungsstarken interaktiven Benutzeroberfläche geliefert (CSYSDIG), mit denen Sie die Systemaktivität in Echtzeit ansehen oder einen Trace -Dump durchführen und für eine spätere Analyse sparen können. Sie können sich ansehen, wie CSYSDIG aus dem folgenden Video funktioniert.
SYSDIG -Funktionen:
- Es ist schnell, stabil und benutzerfreundlich mit umfassend gut dokumentiert.
- Kommt native Unterstützung für Containertechnologien, einschließlich Docker, LXC.
- Es ist in Lua skriptierbar; Bietet Meißel (leichte Lua -Skripte) für die Verarbeitung erfasster Systemereignisse an.
- Unterstützt die nützliche Filterung der Ausgabe.
- Unterstützt System- und Anwendungsverfolgung.
- Es kann in Ansible, Puppen- und Logstash integriert werden.
- Aktivieren Sie die Probe Advanced Log Analysis.
- Es bietet auch Analysefunktionen für Linux Server Attack (Forensics) für ethische Hacker und Lots mehr.
In diesem Artikel werden wir zeigen.
So installieren Sie Sysdig unter Linux
Installation SYSDIG Das Paket ist so einfach wie das Ausführen des folgenden Befehls, wodurch alle Anforderungen überprüft werden. Wenn alles vorhanden ist, wird das Paket vom DRAIOS APT/YUM -Repository heruntergeladen und installiert.
# curl -s https: // s3.Amazonawen.com/download.Draios.com/stabil/installsysdig | Bash oder $ curl -s https: // s3.Amazonawen.com/download.Draios.com/stabil/installsysdig | sudo bash
Nach dem Installieren müssen Sie ausführen SYSDIG als Wurzel, weil es Zugang zu kritischen Bereichen erfordert wie z /proc Dateisystem, /dev/sysdig* Geräte und müssen das Sysdig-Probe-Kernel-Modul automatisch laden (falls dies nicht der Fall ist); Verwenden Sie sonst den Sudo -Befehl.
Das grundlegendste Beispiel ist es, es ohne Argumente auszuführen. Dadurch können Sie Ihren Linux-Systemstrom von Ereignisstreams anzeigen, die in Echtzeit aktualisiert wurden:
$ sudo sysdigSehen Sie sich Linux -Systemereignisse an
Die obige Ausgabe (Rohdaten) macht für Sie möglicherweise nicht viel Sinn für einen nützlicheren Ausgangslauf CSYSDIG:
$ sudo csysdigÜberwachen Sie Linux -Systemereignisse
Notiz: Um das wahre Gefühl dieses Tools zu bekommen, müssen Sie verwenden SYSDIG Dies erzeugt Rohdaten, wie wir zuvor gesehen haben, von einem laufenden Linux -System: Auf diese Weise können Sie verstehen, wie Filter und Meißel verwendet werden.
Aber wenn Sie ein schmerzloses Mittel zur Verwendung benötigen SYSDIG - weitermachen mit CSYSDIG.
Verständnis von Sysdig -Meißeln und Filtern
Sysdig -Meißel sind minimale Lua -Skripte zur Untersuchung des Sysdig -Ereignisstroms, um nützliche Systeme zur Behebung von Systemen und mehr durchzuführen. Mit dem folgenden Befehl können Sie alle verfügbaren Meißel ansehen:
$ sudo sysdig -cl -cl
Der Screenshot zeigt eine Beispielliste von Meißeln unter verschiedenen Kategorien.
Sehensdig -Meißel anzeigenWenn Sie weitere Informationen zu einem bestimmten Meißel finden möchten, verwenden Sie die -ich
Flagge:
$ sudo sysdig -i toppprocs_cpuSYSDIG MHIEL Info anzeigen
SYSDIG -Filter fügen der Art der Ausgabe, die Sie aus Ereignisströmen erhalten können, mehr Leistung hinzu. Sie ermöglichen es Ihnen, die Ausgabe anzupassen. Sie sollten sie am Ende einer Befehlszeile angeben.
Ein unkomplizierter und häufigsten Filter ist ein grundlegender “Klasse.Feld = Wert”Überprüfen Sie, Sie können auch Meißel mit Filtern für noch leistungsfähigere Anpassungen kombinieren.
Um eine Liste der verfügbaren Feldklassen, Felder und deren Beschreibungen anzuzeigen, geben Sie ein:
$ sudo sysdig -lSYSDIG -Feldklassen anzeigen
Erstellen von Linux -System -Trace -Datei
Verwenden Sie die SYSDIG -Ausgabe in einer Datei zur späteren Analyse, um die -w
Flagge so.
Sie können die Trace -Dump -Datei mit der Datei lesen -R Flagge:
$ sudo sysdig -r Trace.Scap
Der -S
Die Option wird verwendet, um die Anzahl der Bytes von Daten anzugeben, die für jedes Systemereignis erfasst werden sollen. In diesem Beispiel filtern wir Ereignisse für die Mongod Verfahren.
$ sudo sysdig -s 3000 -w Trace.Scap $ sudo sysdig -r Trace abrücken.Scap Proc.Name = MongodErstellen Sie die MongoDB -Trace -Datei
Überwachung von Linux -Prozessen
Type, um Systemprozesse aufzulisten, type:
$ sudo sysdig -c psÜberwachen Sie Linux -Prozesse
Überwachen Sie Prozesse nach CPU -Verwendung
Führen Sie diesen Befehl aus:
$ sudo sysdig -c toppprocs_cpuÜberwachen Sie Prozesse nach CPU -Verwendung
Überwachung von Netzwerkverbindungen und I/O
Um System -Netzwerkverbindungen anzuzeigen, rennen Sie:
$ sudo sysdig -c netstatNetzwerkverbindungen überwachen
Der folgende Befehl hilft Ihnen bei der Auflistung von Top -Netzwerkverbindungen nach Gesamtbytes:
$ sudo sysdig -c topconns
Als nächstes können Sie auch Top -Prozesse nach Netzwerk -E/A wie folgt auflisten:
$ sudo sysdig -c toppprocs_net
Überwachungssystemdatei I/O
Sie können die von Prozessen auf dem System gelesenen und geschriebenen Daten wie unten ausgeben:
$ sudo sysdig -c echo_fdsÜberwachen Sie das System IO
Verwenden Sie: Verwenden Sie:
$ sudo sysdig -c toppprocs_file
Fehlerbehebung bei einer Linux -Systemleistung
Führen Sie diesen Befehl aus:
$ sudo sysdig -c EngpässeFehlerbehebung bei Linux -Leistung
Verfolgen Sie die Ausführungszeit eines Prozesses
Um die Ausführungszeit eines Prozesses zu verfolgen, können Sie diesen Befehl ausführen und die Trace in einer Datei abgeben:
$ sudo sysdig -w zeit.scap -c proc_exec_timeVerfolgungsprozessausführungszeit verfolgen
Verwenden Sie dann einen Filter, um die Details eines bestimmten Prozesses zu null (Postgres in diesem Beispiel) wie folgt:
$ sudo sysdig -r zeit.Scap Proc.name = postgres
Entdecken Sie langsames Netzwerk I/0
Dieser einfache Befehl hilft Ihnen dabei, langsames Netzwerk -I/0 zu erkennen:
$ sudo sysdig -c netlower
Anschauen von Protokolldateieinträgen
Der folgende Befehl hilft Ihnen dabei, jede an syslog geschriebene Nachricht anzuzeigen. Wenn Sie an Protokolleinträgen für einen bestimmten Prozess interessiert sind, erstellen Sie einen Trace -Dump und filtern Sie ihn entsprechend wie zuvor gezeigt heraus:
$ sudo sysdig -c spy_syslog
Sie können alle Daten wie folgt in eine Protokolldatei drucken:
$ sudo sysdig -c spy_logs
Überwachung von HTTP -Serveranforderungen
Wenn Sie über einen HTTP -Server wie Apache oder Nginx auf unserem System ausgeführt werden, lesen Sie die Anforderungen des Servers mit diesem Befehl an
$ sudo sysdig -c httplog $ sudo sysdig -c httptop [Drucken Top HTTP -Anforderungen]Überwachen Sie HTTP -Anforderungen
Zeigen Sie Login -Shells und interaktive Benutzeraktivität an
Mit dem folgenden Befehl können Sie alle Anmeldungs -Shell -IDs anzeigen:
$ sudo sysdig -c list_login_shells
Zu guter Letzt können Sie interaktive Aktivitäten von Systemnutzern wie SO zeigen:
$ sudo sysdig -c spy_usersBenutzeraktivität überwachen
Weitere Nutzungsinformationen und Beispiele finden Sie in den Seiten Sysdig und CSYSDIG:
$ MAN SYSDIG $ MAN CSYSDIG
Referenz: https: // www.SYSDIG.org/
Überprüfen Sie auch diese nützlichen Tools zur Überwachung von Linux -Leistungen:
- BCC - Dynamische Tracing -Tools für Linux -Leistungsüberwachung, Netzwerk und mehr
- PYDASH - Ein webbasiertes Tool zur Überwachung von Linux -Leistungsüberwachung
- PERF-A-Tool zur Überwachung und Analyse für Linux
- Collectl: Ein erweitertes All-in-One-Leistungsüberwachungsinstrument für Linux
- NetData - Ein Echtzeit -Leistungsüberwachungstool für Linux -Systeme
Abschluss
SYSDIG vereint Funktionen aus zahlreichen Befehlszeilen -Tools in eine bemerkenswerte Schnittstelle, sodass Sie tief in Ihre Linux -Systemereignisse eintauchen können, um Daten zu sammeln.
Verwenden Sie das Feedback -Formular unten, um Fragen zu stellen oder Gedanken zu diesem Tool zu teilen.
- « 23 nützliche PKG -Befehlsbeispiele zum Verwalten von Paketen in FreeBSD
- So stellen Sie eine Verbindung zu MySQL ohne Stammkennwort auf dem Terminal her »