首页 > 解决方案 > 使用 log4net 匿名记录数据

问题描述

我想在数据库中记录 VSTO 应用程序的使用数据。到目前为止一切正常。现在我想使用 log4net 框架以匿名的用户名和主机名方式记录数据

到目前为止,我可以将记录的数据写入数据库,但它不是匿名的。我使用这个配置:

<appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender">
    <commandText value="INSERT INTO [mytool].[Log] ([Date],[Thread],[Level],[Logger],[Message],[Exception], [UserName], [HostName]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception, @UserName, @HostName)" />
    <parameter>
        <parameterName value="@UserName"/>
        <dbType value="String"/>
        <size value="20"/>
        <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%property{log4net:UserName}"/>
        </layout>
    </parameter>

    <parameter>
        <parameterName value="@HostName"/>
        <dbType value="String"/>
        <size value="30"/>
        <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%property{log4net:HostName}"/>
        </layout>
    </parameter>
    [...]
</appender>

我的预期结果是存储在数据库中的用户和主机的 md5 散列或其他一些散列。

标签: c#loggingvstolog4net

解决方案


推荐阅读