将 UDP 输出添加到 log4net appender

问题描述

我有一个用 C#.NET 编写的使用 log4net 的 Windows 服务应用程序。我想为写入日志文件的每一行向网络发送一个 UDP 数据包。这是一个典型的 appender(应用程序使用 4 个 appender 来处理不同的日志字符串格式):

    <appender name="TraceMessage" type="log4net.Appender.RollingFileAppender">
        <file type="log4net.Util.PatternString" value="%property{LogFolderName}\DEV%property{DeviceNumber}.log" />
        <rollingStyle value="Date" />
        <datePattern value="_yyyyMMdd.HH00" />
        <appendToFile value="true" />
        <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
        <PreserveLogFileNameExtension value="true"/>
        <staticLogFileName value="false" />
        <layout type="log4net.Layout.PatternLayout">
            <!--<conversionPattern value="%date{yyyy/MM/dd HH:mm:ss} %property{LogType} %property{LogLevel} %property{FepNumber} %property{MessageLabel} %property{IPaddress} %property{Link} %property{Direction} %property{MessageSize} bytes %message%newline" />-->
            <conversionPattern value="%date{yyyy/MM/dd HH:mm:ss} [3] %property{LLLGGG} %property{MessageLabel} %property{IPaddress} %property{Direction} %property{MessageSize} bytes %message%newline" />
        </layout>
    </appender>

这个功能可以添加到现有的 appender 还是我需要定义一个单独的 appender?如果后者为真,我将不得不为 4 种格式样式中的每一种编写单独的 udp-appender。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)