{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.Hosting.Lifetime": "Information",
      "Microsoft.Extensions.Hosting": "Information",
      "System.Net.Http.HttpClient": "Warning",
      "CvSearchJob": "Information",
      "JobScheduler": "Information"
    }
  },
  "LogEnvironmentOnStartup": true,
  "Serilog": {
    "Using": [
      "Serilog.Sinks.Console",
      "Serilog.Sinks.File",
      "Serilog.Sinks.Email"
    ],
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        "Microsoft.AspNetCore": "Warning",
        "Microsoft.Extensions.Hosting": "Information",
        "Microsoft.Hosting.Lifetime": "Information",
        "System.Net.Http.HttpClient": "Warning",
        "CvSearchJob": "Information",
        "JobScheduler": "Information"
      }
    },
    "WriteTo": [
      {
        "Name": "Console",
        "Args": {
          "outputTemplate": "[{Timestamp:HH:mm:ss} {Level:u3}] {SourceContext}: {Message:lj}{NewLine}{Exception}"
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/cv-search-job-.log",
          "rollingInterval": "Day",
          "retainedFileCountLimit": 30,
          "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {SourceContext}: {Message:lj}{NewLine}{Exception}"
        }
      },
      {
        "Name": "Email",
        "Args": {
          "restrictedToMinimumLevel": "Error",
          "fromEmail": "",
          "toEmail": "",
          "mailServer": "",
          "networkCredential": {
            "userName": "",
            "password": ""
          },
          "port": 587,
          "enableSsl": true,
          "emailSubject": "[mihes.ro CV search job] Error Alert",
          "outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff zzz} [{Level:u3}] {SourceContext}{NewLine}{Message:lj}{NewLine}{Exception}",
          "batchPostingLimit": 10,
          "period": "0.00:05:00"
        }
      }
    ],
    "Enrich": [
      "FromLogContext",
      "WithMachineName",
      "WithEnvironmentName"
    ]
  },
  "Database": {
    "Host": "localhost",
    "Port": 1433,
    "Name": "MyAiDb",
    "User": "sa",
    "Password": "",
    "TrustServerCertificate": true
  },
  "CvMatcherApi": {
    "BaseUrl": "http://cv-matcher-api:8080",
    "InternalApiKey": ""
  },
  "FileStorage": {
    "Path": "Files"
  },
  "Smtp": {
    "Host": "",
    "Port": 587,
    "Username": "",
    "Password": "",
    "UseStartTls": false
  },
  "Contact": {
    "ToEmail": ""
  },
  "JobSearch": {
    "Enabled": true,
    "JobSearchLinkBaseUrl": "https://myai.ro",
    "TokenExpiryDays": 7,
    "MinMatchScore": 15,
    "MaxJobsToMatch": 15,
    "Providers": [
      {
        "Name": "ejobs.ro",
        "Enabled": false,
        "SearchUrlTemplate": "https://www.ejobs.ro/locuri-de-munca/{keywords}/",
        "JobLinkContains": "/user/locuri-de-munca/job/",
        "InitialKeywords": [],
        "MaxResults": 20
      },
      {
        "Name": "bestjobs.eu",
        "Enabled": false,
        "SearchUrlTemplate": "https://www.bestjobs.eu/ro/locuri-de-munca?q={keywords}",
        "JobLinkContains": "/ro/locuri-de-munca/",
        "InitialKeywords": [],
        "MaxResults": 20
      },
      {
        "Name": "linkedin.com",
        "Enabled": false,
        "SearchUrlTemplate": "https://www.linkedin.com/jobs/search/?keywords={keywords}&location=Romania",
        "JobLinkContains": "/jobs/view/",
        "InitialKeywords": [],
        "MaxResults": 20
      }
    ]
  },
  "Jobs": {
    "Tasks": [
      {
        "TaskType": "CvSearch",
        "Enabled": true,
        "Interval": "00:00:30"
      }
    ]
  }
}
