【发布时间】:2021-03-21 09:08:29
【问题描述】:
刚刚上传了一个测试用例应用 - https://github.com/lsfera/NLog-Demo-cases/tree/master/Net5
我的appsettings 中有一个配置部分,用于提供特定于环境的参数。
"LoggingContext": {
..
"ApplicationName": "cool-app",
"SyslogUrl": "syslog.server.url"
}
一切正常——还有 configSetting 布局渲染器部分——除了它没有按(我)预期的那样工作。
"targets": {
"file": {
"type": "AsyncWrapper",
"target": {
"wrappedFile": {
"type": "File",
"fileName": "${configsetting:item=LoggingContext.ApplicationName}.log"
.......
文件名被正确替换 - 正如预期的那样 - 导致“cool-app.log”。
但是当涉及到系统日志部分时:
"syslog": {
...
"messageSend": {
"protocol": "tcp",
"tcp": {
"server": "${configsetting:item=LoggingContext.SyslogUrl}"
...
服务器保留原始格式 - “${configsetting:item=LoggingContext.SyslogUrl}”
带有“URL”参数“${configsetting:item=LoggingContext.AlertServiceUrl}”的“Http”类型目标的相同问题
这个配置有什么问题?
示例项目包含nlog.config xml 版本 - 太方便了
【问题讨论】:
-
认为这是问题所在:github.com/luigiberrettini/NLog.Targets.Syslog/blob/…(应该是
public Layout Server) -
感谢@RolfKristensen 在“http”目标上也有同样的问题 - 假设这个github.com/DarekDan/NLog.Targets.HTTP/blob/master/… 也是一个不错的候选者
-
@Isfera 已向github.com/DarekDan/NLog.Targets.HTTP/issues/5 添加了一条关于如何解决 Http-target 问题的评论
标签: nlog