Docker-Containerüberwachung und Protokollverwaltung – Implementierungsprozessanalyse

Docker-Containerüberwachung und Protokollverwaltung – Implementierungsprozessanalyse

Wenn der Umfang der Docker-Bereitstellung zunimmt, ist es notwendig, den Container zu überwachen. Im Allgemeinen verfügt Docker über mehrere Überwachungsunterbefehle wie ps, top und stats. Dann gibt es noch das beliebte Open-Source-Überwachungstool Prometheus.

Dockers eigener Überwachungsunterbefehl ps

docker ps, listet Container auf, praktisch zum Anzeigen aktuell ausgeführter Container. Im Folgenden finden Sie die Befehlssyntax und die Parametersyntax

docker ps [OPTIONEN]

OPTIONS-Beschreibung:

  • -a: Alle Container anzeigen, auch die, die nicht ausgeführt werden.
  • -f: Filtern Sie den angezeigten Inhalt entsprechend den Bedingungen.
  • --format: Geben Sie die Vorlagendatei für den Rückgabewert an.
  • -l: Zeigt kürzlich erstellte Container an.
  • -n: Listet die n zuletzt erstellten Container auf.
  • --no-trunc: Ausgabe nicht abschneiden.
  • -q: Stiller Modus, zeigt nur die Containernummer an.
  • -s: Zeigt die gesamte Dateigröße an.

Ausgabedetails:

  • CONTAINER-ID: Container-ID.
  • BILD: Das zu verwendende Bild.
  • BEFEHL: Der beim Starten des Containers auszuführende Befehl.
  • ERSTELLT: Der Zeitpunkt, zu dem der Container erstellt wurde.
  • STATUS: Containerstatus.

Es gibt 7 Zustände:

  • erstellt
  • Neustart
  • läuft
  • Entfernen
  • pausiert
  • beendet
  • tot

PORTS: Die Portinformationen des Containers und der verwendete Verbindungstyp (TCP\UDP).

NAMEN: Automatisch zugewiesene Containernamen.

Die neue Version von Docker bietet einen neuen Befehl „Docker-Container ls“, der dieselbe Funktion und Verwendung wie „Docker-Container ps“ hat. Die Bedeutung von „ls“ ist jedoch möglicherweise genauer als die von „ps“, daher wird es empfohlen.

Spitze

Wenn Sie wissen möchten, welche Prozesse in einem Container laufen, können Sie den Befehl „docker container top“ wie folgt ausführen:

Dem Befehl können auch Parameter des Linux-Betriebssystembefehls ps folgen, um spezifische Informationen anzuzeigen, z. B. -au. Das Ausführungsergebnis von docker container top [Containername] -au lautet wie folgt:

Statistiken

Docker-Containerstatistiken werden verwendet, um die Nutzung verschiedener Ressourcen für jeden Container anzuzeigen.


Standardmäßig wird eine Echtzeitliste angezeigt, die die CPU-Auslastung, den Arbeitsspeicher und den verfügbaren Speicherplatz jedes Containers zeigt.

Wenn beim Starten des Containers kein Speicherlimit angegeben ist, zeigt der Befehl stats die Gesamtmenge des Hostspeichers an. Dies bedeutet jedoch nicht, dass jeder Container so viel Speicher verwenden kann. Darüber hinaus zeigt der Befehl docker container stats auch die Containernetzwerk- und Festplatten-E/A-Daten an. Sie können den Namen des Containers nach dem Befehl stats angeben, um Daten für bestimmte Container anzuzeigen.

Docker-Protokolle

Die Protokollierungsfunktion von Docker ist standardmäßig konfiguriert.

Bei einem laufenden Container sendet Docker Protokolle an das Standardausgabegerät (STDOUT) und das Standardfehlergerät (STDERR) des Containers. STDOUT und STDERR sind eigentlich das Konsolenterminal des Containers.

Wenn Sie die Containerprotokolle anzeigen möchten, gibt es zwei Möglichkeiten:

An diesen Container anhängen.

Verwenden Sie den Befehl „Docker Logs“, um die Protokolle anzuzeigen.

Die ttach-Methode ist in der Praxis aus folgenden Gründen nicht sehr praktisch:

Es können nur die Protokolle nach dem Anhängen angezeigt werden, die Protokolle davor sind nicht sichtbar.

Das Verlassen des Anfügezustands ist problematischer (Tastenkombination Strg+P und dann Strg+Q) und es besteht die Möglichkeit, den Container leicht versehentlich zu beenden (beispielsweise durch Drücken von Strg+C).

Zum Anzeigen von Containerprotokollen wird die Verwendung des Befehls „Docker Logs“ empfohlen.

Wie unten dargestellt:

Docker-Protokolle können die vollständigen Protokolle seit dem Start des Containers drucken, und der Parameter -f kann weiterhin die neu generierten Protokolle drucken, was dasselbe ist wie tail -f in Linux.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Golang implementiert Heartbeat-Überwachungsfunktion für Docker-Container
  • Implementieren Sie dynamisches Management und Monitoring von Docker-Containern basierend auf Spring-Boot und Docker-Java [mit vollständigem Quellcode-Download]
  • Zabbix überwacht den Status von Docker-Containern [empfohlen]
  • Detaillierte Erläuterung des Aufbaus des visuellen Überwachungszentrums für Docker-Container
  • Verwenden Sie Grafana, um Überwachungsdiagramme von Docker-Containern anzuzeigen und E-Mail-Benachrichtigungsregeln festzulegen (Abbildung)
  • Prinzip und Anwendung der Speicherüberwachung von Docker-Containern
  • Python-Skript zum Überwachen von Docker-Containern

<<:  Vue implementiert eine kleine Countdown-Funktion

>>:  Wie melde ich mich per Remote-Zugriff bei der MySql-Datenbank an?

Artikel empfehlen

Erläuterung von JavaScript-Mikrotasks und Makrotasks

Vorwort: js ist eine Single-Thread-Sprache, daher...

Ein zeitaufwändiger Fehlerbehebungsprozess für einen Docker-Fehler

Inhaltsverzeichnis Herkunft Umweltinformationen F...

Webdesign: Skriptmaterialien rekonstruieren das Benutzererlebnis

<br />Originaltext: http://blog.rexsong.com/...

js+Html zur Realisierung einer Tabellenbearbeitungsoperation

In diesem Artikel wird der spezifische Code von j...

Einführung in das Enctype-Attribut des Form-Tags und seine Anwendungsbeispiele

Enctype: Gibt den Kodierungstyp an, der vom Browse...

So verbergen Sie die Versionsnummer und die Cache-Zeit von Webseiten in Nginx

Nginx-Optimierung --- Versionsnummer und Cache-Ze...

Die Verbindung zwischen JavaScript-Konstruktoren und Prototypen

Inhaltsverzeichnis 1. Konstrukteure und Prototype...

Teilen Sie die 15 besten HTML/CSS-Design- und Entwicklungsframeworks

Professionelles Webdesign ist komplex und zeitint...

Der Unterschied zwischen Animation und Übergang

Der Unterschied zwischen CSS3-Animation und JS-An...

Informationen zu UDP in Linux

Inhaltsverzeichnis 1. Einführung in UDP und Linux...

Wie stellt MySQL eine Verbindung zum entsprechenden Clientprozess her?

Frage Wie können wir bei einer bestimmten MySQL-V...