asp.net-core - 如何为多个环境 appsettings.json 配置 Serilog
问题描述
我正在尝试配置 appsettings.json,以便为每个环境(Dev、UAT、Prod 等)提供多个 Serilog 变量,我有以下适用于 dev 的 serilog:
"Serilog": {
"MinimumLevel": "Verbose",
"Using": [
"Serilog.Sinks.Console",
"Serilog.Sinks.Seq"
],
"WriteTo": [
{
"Name": "Console"
},
{
"Name": "Seq",
"Args": {
"serverUrl": "https://seq-dev.test.com"
},
"Properties": {
"Application": "Console.Sample",
"Environment": "Local"
}
}
]
},
我目前的解决方案是拥有一组 Serilog 实例。我将把一个 arg 传递给我想要的主要环境,我应该使用那个 Seq 实例(例如:args:Environment="d" for dev - 这应该拉出 dev Serilog)
"d": {
"Serilog": {
"MinimumLevel": "Verbose",
"Using": [
"Serilog.Sinks.Console",
"Serilog.Sinks.Seq"
],
"WriteTo": [
{
"Name": "Console"
},
{
"Name": "Seq",
"Args": {
"serverUrl": "https://seq-dev.test.com"
},
"Properties": {
"Application": "Console.Sample",
"Environment": "Local"
}
}
]
}
},
"q": {
"Serilog": {
"MinimumLevel": "Verbose",
"Using": [
"Serilog.Sinks.Console",
"Serilog.Sinks.Seq"
],
"WriteTo": [
{
"Name": "Console"
},
{
"Name": "Seq",
"Args": {
"serverUrl": "https://seq-dev.test.com"
},
"Properties": {
"Application": "Console.Sample",
"Environment": "Local"
}
}
]
}
},
解决方案
推荐阅读
- python - 根据列表和熊猫数据框制作字典
- tensorflow - DecodeError:截断消息。运行 Graph.ParseFromString()
- reactjs - 单击外部 url react.js 的图像
- php - 使用 php 和 firebase 控制台帐户发送推送通知
- c# - 使用 CSOM for Sharepoint Online 过滤 TaxonomyFieldType 字段
- machine-learning - 具有许多标签的稀疏数据
- c++ - 在类访问混乱中声明的枚举类型
- excel - 带有标准的 Vlookup 值
- php - PHP - 类 mysqli_stmt 的对象无法转换为字符串
- eloqua - 如何使用 Eloqua rest Api 获取选项列表