Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Überwachen der Logs des Daten-API-Servers

Die Logs des Daten-API-Servers auf der Remote Engine Gen2 werden standardmäßig angezeigt und können über den Befehl docker logs verarbeitet werden.

Die Logs weisen das Format json auf und entsprechen dem ECS-Standardformat (Elastic Common Schema). Da das Lesen von JSON-strukturierten Rohzeilen nicht wirklich hilfreich ist, kann eine Log-Management-Plattform die Aufnahme und Indizierung der Logs übernehmen, um deren Visualisierung zu erleichtern.

Diese Dokumentation illustriert die Verwendung der ELK-Plattform (Elasticsearch, Logstash, Kibana) für das Abrufen und Visualisieren der dataset-api-server-Logs.

Architekturdiagramm für die Logs des Daten-API-Servers

Der Container dataset-api-server verfolgt die verschiedenen Typen von Logs:

  • Die Zugriffslogs der OData-APIs. Verwenden Sie den Filter /apis im Suchfeld, um ausschließlich die Zugriffslogs auszufiltern.
  • Die Probes, mit deren Hilfe Docker ermitteln kann, ob der Container wirklich aktiv und betriebsbereit ist. Verwenden Sie den Filter /environment im Suchfeld, um ausschließlich die Probe-Logs auszufiltern.
  • Die Synchronisationslogs mit dem Daten-API-Backend. Verwenden Sie den Filter /synchronization im Suchfeld, um ausschließlich die Synchronisationslogs auszufiltern.

Vorbereitende Schritte

Vergewissern Sie sich, dass die Eigenschaft filebeat-ingest in der Datei docker-compose.yml auf true eingestellt ist. Dadurch wird sichergestellt, dass die Logs standardmäßig angezeigt werden.
dataset-api-server:
[...]
  labels:
    autoheal: 'true'
    filebeat_ingest: 'true' # Send container logs to ELK

ELK-Stack

In dieser Dokumentation wird davon ausgegangen, dass der gesamte ELK-Stack in der eigenen Docker-Multicontainer-Anwendung auf demselben Gerät wie Remote Engine Gen2 ausgeführt wird. Darüber hinaus werden die Logs aus Remote Engine Gen2 von einer anderen Komponente namens Filebeat ausgelesen, die ebenfalls von der Elastic-Firma entwickelt wurde ud die Logs an den ELK-Stack per Push überträgt.

Diese Dokumentation basiert auf der Version 7.7.0 des ELK-Stacks.

Rufen Sie das Archiv api-server-monitoring.zip mit allen benötigten Dateien über die Registerkarte Downloads der Dokumentationsseite ab.

  1. Extrahieren Sie das Archiv api-server-monitoring.zip in den von Ihnen bevorzugten Speicherpfad.
  2. Führen Sie im Hauptverzeichnis den Befehl docker-compose up -d aus.
  3. Navigieren Sie zu folgender URL: http://localhost:5601.
  4. Gehen Sie zu Management (Verwaltung) > Kibana > Index Patterns (Indexmuster) und erstellen Sie das Kibana-Indexmuster filebeat-*. Verwenden Sie @timestamp für die Zeiteinstellung.
  5. Die Logs für dataset-apis-server sind im Kibana-Bereich Discover unter folgender URL verfügbar: http://localhost:5601/app/kibana#/discover.

Wenn der ELK-Stack angehalten werden soll, führen Sie den Befehl docker-compose down -v im Hauptverzeichnis aus.

Filtern und Suchen von Logs

Der Container dataset-api-server verfolgt die verschiedenen Typen von Logs:

  • Die Zugriffslogs der OData-APIs. Verwenden Sie den Filter /apis im Suchfeld, um ausschließlich die Zugriffslogs auszufiltern.
  • Die Probes, mit deren Hilfe Docker ermitteln kann, ob der Container wirklich aktiv und betriebsbereit ist. Verwenden Sie den Filter /environment im Suchfeld, um ausschließlich die Probe-Logs auszufiltern.
  • Die Synchronisationslogs mit dem Daten-API-Backend. Verwenden Sie den Filter /synchronization im Suchfeld, um ausschließlich die Synchronisationslogs auszufiltern.
  • Legen Sie fest, wie die Log-Daten direkt in Kibana angezeigt werden sollen.

    So können Sie beispielsweise die anzuzeigenden Spalten sortieren und die Informationen zu potenziellen Fehlern oder zum Schweregrad bzw. die entsprechenden Zeitstempel optisch hervorheben.

Hat diese Seite Ihnen geholfen?

Wenn Sie ein Problem mit dieser Seite oder ihrem Inhalt feststellen, sei es ein Tippfehler, ein ausgelassener Schritt oder ein technischer Fehler, informieren Sie uns bitte!