Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Integrationen überwachen

Wissen, dass eine Integration funktioniert, bevor der Kunde merkt, dass sie es nicht tut - was Sie beobachten (Läufe, Aktualität, Rückstand, Fehler, Zugangsdaten), die Signale, die Exponential liefert…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/help/integrators/monitoring-integrations.md

On this page

This page is a translation. Read the English original

Integrationen überwachen

Diese Seite ist für Betreiber und Integratoren, die Integrationen am Laufen halten. Eine Integration fällt meist still aus: Der Cronjob hört auf, ein Schlüssel läuft ab, das andere System ändert ein Feld, und die Website zeigt einfach alte Daten. Überwachung macht aus diesen stillen Ausfällen Alarme. Die Serverseite der Überwachung steht in Überblick über die Überwachung und Health Checks und Verfügbarkeit.

Inhalt

  1. Was Sie beobachten
  2. Signale, die Exponential liefert
  3. Einzurichtende Prüfungen
  4. Alarme, die helfen
  5. Ein Überwachungsplan

Was Sie beobachten

SignalFrageBeispiel für einen Schwellenwert
Lauf hat stattgefundenIst der nächtliche Import gelaufen?Alarm, wenn 26 Stunden lang keine Zusammenfassungszeile kommt
Lauf war erfolgreichIst er ohne Fehlschläge fertig geworden?Alarm bei failed > 0 oder einem Exit-Code ungleich null
AktualitätIst die neueste importierte Änderung aktuell?Alarm, wenn das neueste modified importierter Objekte älter als 2 Tage ist
RückstandWächst die Outbox?Alarm bei mehr als 500 ungesendeten Zeilen oder wenn die älteste ungesendete älter als 1 Stunde ist
Dead LettersHat etwas aufgegeben?Alarm bei jedem
FehlerNeue Einträge in error.log, die Ihre Erweiterung nennenAlarm nach Rate, nicht bei jeder Zeile
ZugangsdatenLäuft bald ein Schlüssel ab?Warnung 14 Tage vorher; Setup > oAuth-Verwaltung > API-Schlüssel filtert „expiring within seven days“ (läuft innerhalb von sieben Tagen ab)
MengeIst die heutige Anzahl von Datensätzen plausibel?Warnung, wenn sie um mehr als einen festgelegten Anteil vom Durchschnitt abweicht

Signale, die Exponential liefert

SignalWo
Ihre Zusammenfassungszeilenvar/log/<your log>.log (eZLog::write()), durchsuchbar mit php bin/php/console exp:logs --tail=... --search=...
Cronjob-Läufe und ihre AusgabeSetup > Cronjobs: letzte Läufe, Probleme, die Ausgabe eines laufenden Teils (Cronjobs)
Fehler mit einer Referenzerror.log, der Protokollbetrachter unter Setup > Logdateien, exp:logs --reference=ERR-...
Wartende Workflow-ProzesseSetup > Workflow-Prozesse; eine wachsende Liste bedeutet, dass der Workflow-Cronjob nicht läuft
Nutzung und Abweisung von API-SchlüsselnAudit-Ereignisse access.apikey.use.failed mit Gründen; php bin/php/console exp:audit tail --channel=access
Audit-Senkenphp bin/php/console exp:audit sinks list: bereit oder nicht, wie viel zwischengespeichert ist
Job-WarteschlangeSetup > Job queue und php bin/php/console ext:expqueue:status, wenn expqueue verwendet wird
Zustand der InstallationSetup > Systeminformationen und php bin/php/systeminfo.php --json (Systeminformationen)
Wartungsmodusphp bin/php/maintenance.php status

Einzurichtende Prüfungen

Ein kleines Prüfskript Ihrer Erweiterung, vom Überwachungssystem ausgeführt (oder von Cron, mit per E-Mail an die Betreiber geschickter Ausgabe), macht aus diesen Signalen einen Status:

<?php
// extension/myintegration/bin/php/check.php: exit 0 OK, 1 WARNING, 2 CRITICAL; one line of output
// (bootstrap with eZScript as in the CLI chapter, then:)
$db = eZDB::instance();
$pending = $db->arrayQuery( 'SELECT COUNT(*) AS n, MIN(created) AS oldest FROM myintegration_outbox WHERE sent = 0' );
$n = (int)$pending[0]['n'];
$age = $pending[0]['oldest'] ? time() - (int)$pending[0]['oldest'] : 0;
$status = ( $n > 500 || $age > 3600 ) ? 2 : ( $n > 100 ? 1 : 0 );
$cli->output( array( 'OK', 'WARNING', 'CRITICAL' )[$status] . " outbox pending=$n oldest_age={$age}s" );
$script->shutdown( $status );

Stellen Sie dieselbe Prüfung nur dann über einen geschützten Endpunkt bereit, wenn das Überwachungssystem keine Befehle auf dem Server ausführen kann.

Alarme, die helfen

  • Sagen Sie, was aufgehört hat und seit wann, und verlinken Sie den Abschnitt des Runbooks („Produktimport: kein Lauf seit 02:15; siehe Runbook 3.2“).
  • Alarmieren Sie die Personen, die handeln können: den Betreiber bei einem angehaltenen Cronjob, das ERP-Team des Kunden bei einer defekten Quelldatei.
  • Vermeiden Sie Alarmfluten: ein Alarm pro Zustand, in langsamem Rhythmus wiederholt, automatisch aufgehoben, wenn der Zustand endet.
  • Halten Sie Warnungen aus der Nacht heraus; wecken Sie nur für das, was nicht bis zum Morgen warten kann.

Ein Überwachungsplan

Integration: ERP product import                        Owner: [email protected]
Check                     How                                  Warning        Critical       Who
Run happened              summary line in myintegration.log    > 25 h         > 26 h         operator
Run succeeded             exit code / failed=               skipped > 50   failed > 0     operator
Freshness                 newest modified of erp-product-*     > 1 day        > 2 days       customer ERP team
Outbox backlog            check.php                            > 100          > 500 / 1 h    operator
Key expiry                API keys page                        < 14 days      < 3 days       operator
Error rate                error.log lines naming myintegration > 10 / h       > 100 / h      developer

Die Spalten bedeuten: Prüfung, Wie, Warnung, Kritisch, Wer; die Zeilen entsprechen der Tabelle unter „Was Sie beobachten“.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x