Direkt zum Hauptinhalt

Betrieb und Wartung

Dieser Abschnitt beschreibt den laufenden Betrieb und die Wartung des MesoWorkerService.

Mail-Journal

Das Mail-Journal protokolliert alle versendeten und fehlgeschlagenen E-Mails.

Zugriff: Navigieren Sie in der Administrationsoberfläche zu "Queued Mail" oder "Mail Journal".

Informationen im Journal:

  • Zeitstempel des Versands/Fehlers
  • Empfänger (To, CC, BCC)
  • Betreff
  • Status (versendet, fehlgeschlagen, wartend)
  • Fehlermeldungen (bei fehlgeschlagenen E-Mails)
  • Verknüpfter Workflow

Verwendung:

  • Überprüfen Sie regelmäßig das Journal auf fehlgeschlagene E-Mails
  • Analysieren Sie Fehlermeldungen bei Problemen
  • Überwachen Sie die Zustellungsrate

Fehlerbenachrichtigungen

Der Service benachrichtigt Administratoren automatisch bei Problemen.

Benachrichtigungsfälle:

  • E-Mail konnte nicht versendet werden
  • SMTP-Server ist nicht erreichbar
  • Authentifizierung fehlgeschlagen
  • Lizenz ist ungültig oder abgelaufen

Protokollierung

Der Service erstellt detaillierte Protokolldateien für Diagnose und Überwachung.

Protokolldateien:

  • Windows-Dienst: Logs/MesoWorkerService-[Datum].txt
  • Container: Ausgabe über Docker Logs (docker logs mesoworkerservice)

Protokollierungsstufen:

  • Information: Normale Betriebsmeldungen
  • Warning: Warnungen (z.B. fehlende Empfänger)
  • Error: Fehler (z.B. Datenbankverbindung fehlgeschlagen)
  • Debug: Detaillierte Debug-Informationen (nur für Fehlersuche)

Konfiguration: Protokollierungsstufen können in appsettings.json oder Umgebungsvariablen angepasst werden:

"Logging": {
  "LogLevel": {
    "Default": "Information",
    "Microsoft.Hosting.Lifetime": "Information"
  }
}

Best Practices:

  • Überprüfen Sie Protokolle regelmäßig auf Fehler und Warnungen
  • Behalten Sie "Information" als Standard-Protokollierungsstufe
  • Verwenden Sie "Debug" nur zur Fehlersuche (erzeugt viele Einträge)
  • Archivieren Sie alte Protokolldateien regelmäßig

SMTP-Debug-Modus

Der SMTP-Debug-Modus ermöglicht eine detaillierte Diagnose des E-Mail-Versands. Bei Aktivierung werden alle ausgehenden E-Mails mit erweiterten Informationen protokolliert und optional als EML-Dateien gespeichert.

Funktionsumfang:

  • Detaillierte Protokollierung aller E-Mail-Details (Absender, Empfänger, Betreff, SMTP-Konto-Informationen)
  • Optionales Speichern jeder ausgehenden E-Mail als .eml-Datei zur Analyse
  • Bestätigungsprotokollierung nach erfolgreichem Versand

Konfigurationsparameter:

Parameter Typ Standard Beschreibung
Enabled bool false Aktiviert/Deaktiviert den SMTP-Debug-Modus
SaveEmlToDirectory string "" Verzeichnispfad zum Speichern von EML-Dateien. Leer = kein Speichern

Konfiguration in appsettings.json (Windows-Dienst):

"SmtpDebug": {
  "Enabled": true,
  "SaveEmlToDirectory": "C:\\Temp\\MailDebug"
}

Konfiguration als Umgebungsvariablen (Portainer Stack / Docker):

environment:
  # SMTP-Debug-Modus aktivieren
  - SmtpDebug__Enabled=true
  # Optional: EML-Dateien im Container speichern
  - SmtpDebug__SaveEmlToDirectory=/app/debug-mails

Wenn EML-Dateien im Container gespeichert werden sollen, muss ein Volume gemappt werden, damit die Dateien auch nach einem Container-Neustart verfügbar bleiben:

services:
  mesoworkerservice:
    environment:
      - SmtpDebug__Enabled=true
      - SmtpDebug__SaveEmlToDirectory=/app/debug-mails
    volumes:
      - type: bind
        source: //server/share/debug-mails  # Pfad auf dem Host
        target: /app/debug-mails

Protokollausgabe bei aktiviertem Debug-Modus:

Die Protokolleinträge werden mit dem Prefix [SMTP-DEBUG] auf der Stufe Warning geschrieben und enthalten:

  • SMTP-Konto-Details (EmailFrom, Host, Port, SSL/TLS-Einstellungen)
  • Absender- und Empfänger-Adressen (To, CC, BCC)
  • Betreff der E-Mail
  • Anzahl der Empfänger pro Typ
  • Pfad der gespeicherten EML-Datei (wenn SaveEmlToDirectory konfiguriert)

Beispiel einer Protokollausgabe:

[SMTP-DEBUG] === Mail wird gesendet ===
  SMTP-Account: [email protected], Host=smtp.firma.de, Port=587, SSL=False, StartTLS=True
  From:    [email protected]
  To:      [email protected]
  CC:      (keine)
  BCC:     [email protected]
  Subject: Bestellbestätigung REF-2024-001
  BCC-Count: 1 | To-Count: 1 | CC-Count: 0
[SMTP-DEBUG] EML gespeichert: /app/debug-mails/debug_20260217_143022_a1b2c3d4.eml
[SMTP-DEBUG] Mail erfolgreich gesendet via [email protected]: Subject="Bestellbestätigung REF-2024-001"

Wichtige Hinweise:

  • Der Debug-Modus sollte nur temporär zur Fehlerdiagnose aktiviert werden
  • Die Protokollierung erfolgt auf Stufe Warning, um auch bei Standard-Protokollierungsstufe sichtbar zu sein
  • Bei aktiviertem SaveEmlToDirectory werden alle ausgehenden E-Mails als Dateien gespeichert — achten Sie auf den Speicherplatz
  • EML-Dateien können mit jedem E-Mail-Client (z.B. Outlook, Thunderbird) geöffnet und analysiert werden
  • Im Container-Betrieb ohne Volume-Mapping gehen gespeicherte EML-Dateien bei Container-Neustart verloren

Wartungsaufgaben

Regelmäßige Aufgaben:

  1. Mail-Journal prüfen (täglich)

    • Überprüfen Sie fehlgeschlagene E-Mails
    • Analysieren Sie Trends bei Fehlern
  2. Stammdaten pflegen (wöchentlich)

    • Aktualisieren Sie E-Mail-Adressen von Kunden
    • Überprüfen Sie Ansprechpartner-Daten
  3. SMTP-Konten überwachen (wöchentlich)

    • Testen Sie SMTP-Verbindungen
    • Überprüfen Sie OAuth-Token (M365)
  4. Protokolldateien prüfen (wöchentlich)

    • Suchen Sie nach wiederkehrenden Fehlern
    • Überprüfen Sie Performance-Warnungen
  5. Service-Status überwachen (täglich)

    • Health-Check-Endpoint aufrufen: http://server:5000/health
    • Windows-Dienst-Status prüfen
  6. Updates einspielen (nach Bedarf)

    • Neue Container-Images deployen
    • Windows-Dienst aktualisieren
    • Konfigurationsänderungen testen

Troubleshooting:

Problem: E-Mails werden nicht versendet

  • Überprüfen Sie Mail-Journal auf Fehler
  • Prüfen Sie SMTP-Konto-Einstellungen
  • Testen Sie SMTP-Server-Erreichbarkeit
  • Überprüfen Sie Workflow-Filter-Einstellungen

Problem: Keine Empfänger gefunden

  • Überprüfen Sie Kundenstamm-Daten (E-Mail-Adressen)
  • Prüfen Sie Empfängerregeln in Mail-Einstellungen
  • Überprüfen Sie Ansprechpartner-Zuweisungen

Problem: Service startet nicht

  • Überprüfen Sie Lizenz-Einstellungen
  • Prüfen Sie Datenbankverbindungen
  • Kontrollieren Sie Protokolldateien