首页 > 解决方案 > 将 UDP 输出添加到 log4net 附加程序

问题描述

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

    <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>

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

标签: c#udplog4net-appender

解决方案


推荐阅读