问题描述
我无法在InfluxAppender部分中使用变量。目标是将我的应用程序服务名称动态插入AppName标记中。下面的示例不会解析变量,而是将其作为字符串直接推送到数据库。
https://github.com/MarkZither/Log4net.Appender.InfluxDBSyslog
我已经尝试了多种方法,但我认为证明问题的最简单方法是以下代码段:
<appender name="InfluxAppender" type="Log4net.Appender.InfluxDBSyslog.InfluxAppender,Log4net.Appender.InfluxDBSyslog">
<Scheme>https</Scheme>
<Host>influx.contoso.com</Host>
<RemotePort>443</RemotePort>
<AppName value="%date"></AppName>
<Facility>Server</Facility>
</appender>
我也尝试过这样的破解方式:
<appender name="InfluxAppender" type="Log4net.Appender.InfluxDBSyslog.InfluxAppender,Log4net.Appender.InfluxDBSyslog">
<Scheme>https</Scheme>
<Host>influx.contoso.com</Host>
<RemotePort>443</RemotePort>
<AppName>@ServiceName</AppName>
<Facility>Server</Facility>
<parameter>
<parameterName value="@ServiceName" />
<dbType value="String" />
<size value="100" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%property{ServiceName}" />
</layout>
</parameter>
</appender>
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)