我正在设置 docker-compose.yml 文件来读取 docker 映像的环境变量。我的宿主项目中引用了 serilog.sinks.elasticsearch nuget 包。
如果我在 Visual Studio 中使用 appsettings.json 运行该项目,它会读取设置并将日志发送到 Elasticsearch,但不通过 docker-compose。
docker-compose.yml docker镜像的环境规范:
environment:
- serilog:MinimumLevel=Verbose
- serilog:using=Serilog.Sinks.Elasticsearch
- serilog:WriteTo:Elasticsearch.nodeUris=http://localhost:9200
Run Code Online (Sandbox Code Playgroud)
本地 appsettings.json 有效。
"Serilog": {
"MinimumLevel": "Debug",
"WriteTo": [
{
"Name": "Elasticsearch",
"Args": {
"nodeUris": "http://localhost:9200"
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
docker-compose 中设置的MinimumLevel 受到尊重。
如何设置 docker-compose.yml 来读取接收器并将日志发送到elasticsearch数据库?