Skip to content

Configuration

samatstarion edited this page Nov 22, 2024 · 1 revision

Configuration

The CDP4-COMET Web application is configured using a json file called appsettings.json in the root of the application.

Configuration Sections

The COMET-Webservices are configured using multiple configuration sections:

  • Web Application configuration
  • Server configuration
  • Logging

Web Application configuration

  • AllowedHosts: The hosts on which the web application is listening
  • StringTablePath: the path to the table where GUI configuration settings are stored (naming of pages and components)
  • MaxUploadFileSizeInMb: the maximum size of files that can be uploaded to the Common and Domain file stores.
  • ServerConfiguration
    • ServerAddress: the address of the CDP4-COMET server that the web application shall connect to. In case this is left empty the user can provide the address
    • FullTrustConfiguration:
      • IsVisible: determines whether the full trust checkbox on the login page is visible
      • IsTrusted: whether the SSL certificate returned by the server shall be trused or not. Possible values are FullTrust, NoTrust, UserDefined.
    • BookInputConfiguration:
      • ShowShortName: when true the ShortName of a book is shown in the GUI, otherwise not
      • ShowName: when true the Name of a book is shown in the GUI, otherwise not
 "AllowedHosts": "*",
 "StringTablePath": "wwwroot/DefaultTextConfiguration.json",
 "MaxUploadFileSizeInMb": 500,
 "ServerConfiguration": {
   "ServerAddress": "",
   "FullTrustConfiguration": {
     "IsVisible": false,
     "IsTrusted": "FullTrust"
   },
   "BookInputConfiguration": {
     "ShowName": true,
     "ShowShortName": true
   }
 }

Serilog

Serilog is used as logging library. The configuration is adopted from the Serilog documentation. The provided configuration supports logging to the console and a file.

"Serilog": {
  "Using": [ "Serilog.Sinks.Console", "Serilog.Sinks.File" ],
  "MinimumLevel": {
    "Default": "Information",
    "Override": {
      "Microsoft": "Warning",
      "System": "Warning"
    }
  },
  "WriteTo:Async": {
    "Name": "Async",
    "Args": {
      "configure": [
        {
          "Name": "File",
          "Args": {
            "path": "logs/log-comet-web-.txt",
            "rollingInterval": "Day",
            "rollOnFileSizeLimit": true
          }
        }
      ]
    }
  },
  "Enrich": [ "FromLogContext", "WithMachineName", "WithProcessId", "WithThreadId" ],
  "Properties": {
    "Application": "comet-web",
    "Environment": "Production"
  }
}