{
    "Environment": "Development",
    "Version": "4.0.0",
    "SecretManagement": {
        "AutoGenerateCertificate": false,
        "DefaultAlgorithmId": "AES256-RSA-OAEP",
        "DefaultCertificateStoreId": "WindowsCertificateStore",
        "CertificateProvider": {
            "WindowsCertificateStore": {
                "StoreLocation": "CurrentUser",
                "StoreName": "My",
                "ExpirationThresholdDays": 30,
                "Subject": "CN=Nodinite-AutoGenerated-SecretManagement",
                "KeySize": 2048,
                "CertificateValidityDays": 365
            },
            "FileCertificateStore": {
                "DirectoryPath": "Certificates",
                "ExpirationThresholdDays": 30,
                "Subject": "CN=Nodinite-AutoGenerated-SecretManagement",
                "KeySize": 2048,
                "CertificateValidityDays": 365
            }
        }
    },
    "AiDiagnostics": {
        "Enabled": false,
        "Provider": "Azure",
        "Endpoint": "https://loga.openai.azure.com/",
        "ApiKey": "",
        "DeploymentOrModel": "gpt-4o",
        "IntervalInSeconds": 60,
        "MaxTokens": 1024,
        "Temperature": 0.2,
        "ClearTime": "",
        "Offsets": {
            "diagnostic.log.json": 21288
        },
        "ReadAllLogFiles": false
    },
    "Serilog": {
        "LogLevel": {
            "MinimumLevel": {
                "Default": "Error",
                "Override": {
                    "Nodinite": "Error"
                }
            },
            "Enrich": [
                "FromLogContext",
                "WithThreadId"
            ],
            "WriteTo": [
                {
                    "Name": "File",
                    "Args": {
                        "fileSizeLimitBytes": "52428800",
                        "formatter": "Serilog.Formatting.Json.JsonFormatter, Serilog",
                        "path": "C:\\Projects\\Nodinite\\Nodinite.Agent.MessageQueue\\Nodinite.Agent.MessageQueue\\DiagnosticsFiles\\diagnostic.log.json",
                        "retainedFileCountLimit": "5",
                        "rollOnFileSizeLimit": "True"
                    }
                },
                {
                    "Name": "Console",
                    "Args": {
                        "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {Message:lj}{NewLine}{Exception}",
                        "theme": "Serilog.Sinks.SystemConsole.Themes.AnsiConsoleTheme::Code, Serilog.Sinks.Console"
                    }
                }
            ]
        }
    },
    "Settings": {
        "Monitoring": {
            "MonitorPipelinesConfiguration": {
                "ChannelCapacity": 4000
            },
            "IntervalInSeconds": 60,
            "ActiveMQs": [],
            "AnypointMQs": [],
            "ServiceBuses": []
        }
    },
    "Relay": {
        "Enabled": false,
        "ConnectionString": "",
        "HybridConnectionName": "messagequeue",
        "LocalBaseUrl": "http://localhost:5034",
        "HttpTimeoutSeconds": 120,
        "MaxConcurrentRequests": 64,
        "MaxRequestBodyBytes": 10485760
    },
    "AllowedHosts": "*"
}