Log4Net追加器无法解析变量名称

问题描述

我无法在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 (将#修改为@)