Skip to content

Instantly share code, notes, and snippets.

@melvinlee
Last active August 29, 2015 14:25
Show Gist options
  • Save melvinlee/3a9ac4f89e01ecac77ca to your computer and use it in GitHub Desktop.
Save melvinlee/3a9ac4f89e01ecac77ca to your computer and use it in GitHub Desktop.
Using Log4Net
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Log4NetConfiguration.exe.xml", Watch = true)]
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<log4net>
<appender name="FileAppender" type="log4net.Appender.RollingFileAppender">
<file value="trace.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value=".yyyyMMdd.HH'.log'"/>
<maxSizeRollBackups value="10" />
<maximumFileSize value="2KB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d{[yyyy-MM-dd] HH:mm:ss.fff} | %-5p | %message%newline" />
</layout>
</appender>
<appender name="IncomingDataAppender" type="log4net.Appender.RollingFileAppender">
<file value="incomingdata.log" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value=".yyyyMMdd.HH'.log'"/>
<maxSizeRollBackups value="48" />
<maximumFileSize value="2kb" />
<staticLogFileName value="true" />
<countDirection value="-1" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%newline" />
</layout>
</appender>
<appender name="OutputAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="smdrlogs\SMDR_output" />
<appendToFile value="true" />
<rollingStyle value="date" />
<datePattern value=".yyyyMMdd.HHmm'.txt'"/>
<maxSizeRollBackups value="-1" />
<maximumFileSize value="5mb" />
<staticLogFileName value="true" />
<countDirection value="-1" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%newline" />
</layout>
</appender>
<logger name="Logger">
<level value="All" />
<appender-ref ref="FileAppender" />
</logger>
<logger name="IncomingData">
<level value="All" />
<appender-ref ref="IncomingDataAppender" />
</logger>
<logger name="Output">
<level value="All" />
<appender-ref ref="OutputAppender" />
</logger>
</log4net>
</configuration>
public static class Logging
{
private static readonly ILog Log;
private static readonly ILog SocketLog;
static Logging()
{
Log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
Log = LogManager.GetLogger("Logger");
SocketLog = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
SocketLog = LogManager.GetLogger("IncomingData");
}
public static void LogInfo(string logInfo)
{
Log.Info(logInfo);
Debug.WriteLine("[INFO] " + logInfo);
}
public static void LogError(string logInfo, Exception exp)
{
Log.Error(logInfo, exp);
Debug.WriteLine("[ERROR] " + logInfo);
}
public static void LogSocket(string value)
{
SocketLog.Info(value);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment