Files
SMTPGraphRelay/README.md
T

2.5 KiB
Raw Blame History

SMTPGraphRelay V1.5 Log-Rotation

V1.5 erweitert V1.4 um automatische Log-Rotation und Log-Aufbewahrung.

Standardverhalten

Ohne Änderungen an config.json gelten:

MaxFileSizeMB = 10
RetentionDays = 30
CleanupHours  = 12

Das aktive Log bleibt:

logs\SMTPGraphRelay.log

Sobald es 10 MB erreicht, wird es z. B. umbenannt in:

logs\SMTPGraphRelay-20260813-231500.log

Danach wird automatisch eine neue SMTPGraphRelay.log begonnen.

Archiv-Logs, die älter als 30 Tage sind, werden automatisch entfernt.

Optionale Konfiguration

Die bestehende Config funktioniert unverändert.

Optional kann auf Root-Ebene ergänzt werden:

"Logging": {
  "MaxFileSizeMB": 10,
  "RetentionDays": 30,
  "CleanupHours": 12
}

Beispiel:

{
  "Smtp": {
    "ListenAddress": "0.0.0.0",
    "Port": 2525,
    "Hostname": "SMTPRELAY01",
    "AllowedNetworks": [
      "127.0.0.1/32",
      "10.0.0.0/8"
    ],
    "MaxMessageSizeMB": 25,
    "ClientTimeoutSeconds": 120,
    "MaxConcurrentClients": 20
  },
  "Graph": {
    "TenantId": "...",
    "ClientId": "...",
    "CertificateThumbprint": "...",
    "SenderMailbox": "info@example.com",
    "ForceSender": true
  },
  "Queue": {
    "PollSeconds": 10,
    "MaxRetries": 8,
    "RetryMinutes": [1,5,15,30,60,120,240,480]
  },
  "Paths": {
    "Queue": "queue",
    "Failed": "failed",
    "Logs": "logs"
  },
  "Logging": {
    "MaxFileSizeMB": 10,
    "RetentionDays": 30,
    "CleanupHours": 12
  }
}

Parallel-sicher

V1.5 verwendet weiterhin den benannten Mutex:

Local\SMTPGraphRelay-Log

Rotation und Schreiben passieren innerhalb desselben Locks. Dadurch können parallele SMTP-Runspaces und der Queue-/Graph-Worker nicht gleichzeitig dieselbe Logdatei rotieren oder beschreiben.

Update von V1.4

Stop-ScheduledTask -TaskName "SMTPGraphRelay"

Copy-Item `
  "C:\Program Files\SMTPGraphRelay\SMTPGraphRelay.ps1" `
  "C:\Program Files\SMTPGraphRelay\SMTPGraphRelay-V1.4-backup.ps1"

Dann V1.5 als:

C:\Program Files\SMTPGraphRelay\SMTPGraphRelay.ps1

ablegen und:

Start-ScheduledTask -TaskName "SMTPGraphRelay"

Im Log sollte beim Start u. a. erscheinen:

SMTPGraphRelay V1.5 gestartet ...
Log-Rotation: max. 10 MB pro Datei, Aufbewahrung 30 Tage.

Hinweis

Nur archivierte Dateien im Muster

SMTPGraphRelay-*.log

werden automatisch gelöscht.

Die aktuell aktive SMTPGraphRelay.log wird nie durch die Retention-Regel gelöscht.