Skip to content

Log Forwarding

smoxy kann CDN-Zugriffslogs in Echtzeit an einen externen Log-Aggregationsdienst weiterleiten. Dies ermöglicht das Zentralisieren der Logs, das Erstellen eigener Dashboards und die Integration der Weiterleitung in eine bestehende Monitoring-Infrastruktur.


Wie Log Forwarding funktioniert

Log Forwarding wird auf Zone-Ebene konfiguriert, erzeugt aber nur Logs für Hostnamen, bei denen CDN aktiviert ist. Dies ist ein wichtiger Unterschied:

  • Eine Zone kann mehrere Hostnamen zugewiesen haben.
  • Nur Hostnamen mit aktivierter CDN-Funktionalität erzeugen Zugriffslogs.
  • Hostnamen auf derselben Zone, bei denen CDN nicht aktiviert ist, erscheinen nicht in den weitergeleiteten Logs.
  • Jeder weitergeleitete Log-Eintrag gehört zum spezifischen Hostnamen, der die Anfrage empfangen hat.

Beispiel:

HostnameCDN aktiviertLogs weitergeleitet
www.example.comJaJa
api.example.comJaJa
staging.example.comNeinNein

Obwohl alle drei Hostnamen dieselbe Zone-Konfiguration nutzen, erzeugen nur www.example.com und api.example.com weitergeleitete Log-Einträge.


Voraussetzungen

  • Eine Zone mit mindestens einem Hostnamen, bei dem CDN aktiviert ist
  • Ein Log-Empfänger (Syslog-kompatibler Endpunkt oder Datadog)

Konfiguration

Log Forwarding wird pro Zone auf der Seite Proxy konfiguriert.

Die Einstellungen zur Log-Weiterleitung auf der Proxy-Seite: Empfänger-Hostname, Port, Protokoll, Format und Token.Die Einstellungen zur Log-Weiterleitung auf der Proxy-Seite: Empfänger-Hostname, Port, Protokoll, Format und Token.
Die Einstellungen zur Log-Weiterleitung auf der Proxy-Seite: Empfänger-Hostname, Port, Protokoll, Format und Token.

Einstellungen

EinstellungErforderlichTypBeschreibung
Log Forwarding aktivieren-BooleanSchaltet Log Forwarding ein oder aus
HostnameJa (wenn aktiviert)StringDer Hostname oder die IP-Adresse des Log-Empfängers (max. 255 Zeichen)
PortJa (wenn aktiviert)Integer (1–65535)Der Port, auf dem der Log-Empfänger lauscht
TokenNeinStringOptionaler Authentifizierungstoken, der mit jedem Log-Eintrag gesendet wird (max. 255 Zeichen)
ProtokollJa (wenn aktiviert)AuswahlTransportprotokoll (siehe unten)
FormatJa (wenn aktiviert)AuswahlLog-Ausgabeformat (siehe unten)

Protokolle

ProtokollBeschreibungAnwendungsfall
UDPUnverschlüsselt, verbindungslosSchnellste Option, geeignet für lokale/vertrauenswürdige Netzwerke
TCPUnverschlüsselt, verbindungsbasiertZuverlässige Zustellung über vertrauenswürdige Netzwerke
TCP (encrypted)TLS-verschlüsseltes TCPEmpfohlen für die Übertragung von Logs über das Internet
DatadogDatadog-natives ProtokollDirekte Integration mit Datadog Log Management
Das Protokoll-Dropdown: Transportoptionen UDP, TCP, TCP (encrypted) und Datadog.Das Protokoll-Dropdown: Transportoptionen UDP, TCP, TCP (encrypted) und Datadog.
Das Protokoll-Dropdown: Transportoptionen UDP, TCP, TCP (encrypted) und Datadog.

Formate

FormatBeschreibung
JSONStrukturierte JSON-Log-Einträge - empfohlen für die meisten Log-Aggregationstools
PlainKlartext-Log-Einträge - nützlich für einfache Syslog-Setups

Einrichtungsanleitung

Schritt 1: Log-Empfänger vorbereiten

Einen Log-Empfänger einrichten, der eingehende Logs akzeptieren kann. Gängige Optionen:

Grafana Loki mit Promtail/Syslog:

  • Einen Syslog-Listener auf einem bekannten Port konfigurieren
  • TCP oder TCP (encrypted) für zuverlässige Zustellung verwenden

Elastic Stack (ELK):

  • Logstash mit einem TCP- oder UDP-Input konfigurieren
  • JSON-Format für strukturiertes Parsing verwenden

Datadog:

  • Die Protokolloption Datadog verwenden
  • Den Datadog-API-Key als Token konfigurieren

Generisches Syslog:

  • Jeder Syslog-kompatible Empfänger funktioniert
  • UDP für Einfachheit oder TCP/TCP (encrypted) für Zuverlässigkeit verwenden

Schritt 2: CDN-Aktivierung sicherstellen

Log Forwarding funktioniert nur für Hostnamen mit aktiviertem CDN. Zu prüfen ist, ob die Hostnamen, für die Logs gewünscht sind, CDN aktiviert haben:

  1. Zur Zone in smoxy navigieren
  2. Die Hostname-Liste überprüfen - Hostnamen mit aktiviertem CDN werden entsprechend angezeigt
  3. Falls CDN für einen Hostnamen nicht aktiviert ist, zuerst aktivieren

Schritt 3: Log Forwarding konfigurieren

  1. Zur Zone in smoxy navigieren
  2. Proxy öffnen
  3. Zum Abschnitt Log Forwarding scrollen
  4. Schalter Log Forwarding aktivieren einschalten
  5. Die Details des Log-Empfängers eingeben:
    • Hostname: z. B. logs.beispielfirma.com
    • Port: z. B. 514 (Syslog-Standard) oder ein eigener Port
    • Protokoll: passend zum Setup wählen
    • Format: JSON (empfohlen) oder Plain
    • Token: Optionaler Authentifizierungstoken, falls vom Empfänger benötigt
  6. Konfiguration speichern

Schritt 4: Überprüfen

Nach der Aktivierung den Log-Empfänger auf eingehende Log-Einträge von smoxy prüfen. Log-Einträge sollten innerhalb von Minuten erscheinen, sobald die CDN-aktivierten Hostnamen Traffic empfangen.

Erscheinen keine Logs, ist zu prüfen:

  • Ob die Hostnamen, die Traffic empfangen, CDN aktiviert haben
  • Ob der Log-Empfänger aus dem Internet auf dem konfigurierten Port erreichbar ist
  • Ob Protokoll und Format mit der Konfiguration des Empfängers übereinstimmen

Log Forwarding deaktivieren

Um die Log-Weiterleitung zu stoppen:

  1. Zum Proxy der Zone navigieren
  2. Schalter Log Forwarding aktivieren ausschalten
  3. Speichern

Wichtige Hinweise

  • CDN erforderlich: Nur Hostnamen mit aktiviertem CDN erzeugen weitergeleitete Logs. Hostnamen ohne CDN auf derselben Zone sind nicht enthalten.
  • Logs pro Hostname: Jeder Log-Eintrag gehört zum spezifischen CDN-aktivierten Hostnamen, der die Anfrage bearbeitet hat, nicht zur Zone als Ganzes.
  • Konfiguration auf Zone-Ebene: Die Log-Forwarding-Einstellungen (Empfänger, Protokoll, Format) werden einmal pro Zone konfiguriert und gelten für alle CDN-aktivierten Hostnamen auf dieser Zone. Unterschiedliche Log-Ziele für einzelne Hostnamen sind nicht konfigurierbar.
  • Kein Puffern: Geht der Empfänger offline, werden Logs während des Ausfalls nicht in eine Warteschlange gestellt oder erneut gesendet.
  • TCP (encrypted) verwenden, wenn Logs über das Internet weitergeleitet werden, um die Log-Daten während der Übertragung zu schützen.
  • JSON-Format verwenden für einfacheres Parsen und Filtern in Log-Aggregationstools.
  • Das Token-Feld ist nützlich für die Authentifizierung bei Diensten wie Datadog oder benutzerdefinierten Log-Empfängern, die einen API-Key erfordern.