Skip to content

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 Möglichkeit, Telemetriedaten zu senden. Informationen zur Konfiguration befinden sich hier.


Etcd

Der Service bietet die Möglichkeit an, via Etcd konfiguriert zu werden. Informationen zur Konfiguration befinden sich hier.


ForwardedHeaders

Der Service bietet die Möglichkeit, die Forwarded-Header zu verarbeiten. Informationen zur Konfiguration befinden sich hier.


Fonts

Siehe Fonts.


ModelOptions

Siehe ModelOptions.


MaxRequestBodySizeInMB

Siehe MaxRequestBodySizeInMB.


Culture

In der Sektion Culture kann die Standardsprache, welche zur Erstellung der Reports verwendet wird, konfiguriert werden. Der Standardwert ist de-CH.

"Culture": {
  "DefaultCulture": "de-CH"
}

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.