Konfiguration
Die Konfiguration erfolgt in der Datei appsettings.json. Die nachfolgenden Unterkapitel beschreiben jeweils einen Toplevel-Eintrag.
Hinweis: Pfadangaben müssen mit doppelte Backslashes geschrieben werden.
Serilog
{
"Serilog": {
"MinimumLevel": {
"Default": "[LEVEL]"
},
"WriteTo": [
{
"Name": "Console"
},
{
"Name": "File",
"Args": {
"rollingInterval": "Day",
"path": "[PATH]"
}
}
]
}
}
Dies ist die Serilog-Konfiguration. Serilog wird insbesondere für das File-Logging gebraucht.
MinimumLevel.Default
Folgende Log-Level werden unterstützt:
- Verbose
- Debug
- Information
- Warning
- Error
- Fatal
Die Log-Level Verbose
und Debug
sollten nur für Fehlersuche gesetzt werden, da die geloggte Menge gross werden kann.
WriteTo.Args.Path
Hier wird der Pfad zum Log-File gesetzt. Bsp.: C:\\temp\\logs-cmi-reporting-service\\cmi-reporting-service-.log
Weitere Konfigurationen
Weitere Konfigurationsmöglichkeiten siehe https://github.com/serilog/serilog-settings-configuration.
Telemetriedaten
Der Service bietet die Moglichkeit, Telemetriedaten zu senden. Informationen zur Konfiguration befinden sich hier
ForwardedHeaders
Der Service bietet die Moglichkeit, die Forwarded-Header zu verarbeiten. Informationen zur Konfiguration befinden sich hier
Fonts
Siehe Fonts.
Betriebsempfehlung
Es wird empfohlen ein Kubernetes-Cluster zu betreiben. Die dynamische Skalierung ist so zu konfigurieren, dass möglichst nicht mehr als ein gleichzeitiger Request auf jedem Pod bearbeitet wird. Dies ist aus Sicherheitsgründen empfohlen.
Die Anzahl der gleichzeitigen Request kann über die Metrik CMI_Reporting_Api_Concurrent_Requests
überwacht werden.