Is there any way for a custom log4net implementation on the server side?
Options
Hi.
is it possible to use a custom log4net implementation on the server side and to force the default logging of photon to use this implementation?
I get it up and running so far that I can use my own log4net logger but the logs from photon itself do not show up as if I use the ExitGames.Logging.LogManager.GetCurrentClassLogger()...
Any help would be very nice.
is it possible to use a custom log4net implementation on the server side and to force the default logging of photon to use this implementation?
I get it up and running so far that I can use my own log4net logger but the logs from photon itself do not show up as if I use the ExitGames.Logging.LogManager.GetCurrentClassLogger()...
Any help would be very nice.
0
Answers
-
hi, Serphimera
did you see InitLogging method?
did you set your logger factory?
how do you setup your logger? I mean config file0 -
Hi chvetsov, I see no InitLogging method - there is nothing from photon itself in my logs. I have no logger factory. This is what I use:
using System.IO; using log4net; using log4net.Config; using Photon.SocketServer; using Photon.SocketServer.ServerToServer; namespace PhotonServerFramework.Application.Implementations { public class PhotonServerApplication : ApplicationBase { private static ILog Log { get; set; } . . protected override void Setup() { #region Log4Net configuration GlobalContext.Properties["AppPath"] = BinaryPath; GlobalContext.Properties["LogName"] = ApplicationName; XmlConfigurator.ConfigureAndWatch(new FileInfo(Path.Combine(BinaryPath, "log4net.config"))); Log = LogManager.GetLogger(ApplicationName); #endregion Log.DebugFormat("Setting up PhotonServerApplication {0}", ApplicationName); }
So with that in place I get an log with the Debug message but nothing else. My config file looks like this:<?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="log4net4" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> </configSections> <log4net> <appender name="DebugLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="%property{AppPath}\Logs\%property{LogName}.debug.txt" /> <appendToFile value="true" /> <rollingStyle value="Composite" /> <datePattern value=".yyyyMMdd" /> <maxSizeRollBackups value="-1" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date{ISO8601} [%thread] [%logger] [%level] [%method:%line]: %message%newline%exception" /> </layout> <filter type="log4net.Filter.LevelMatchFilter"> <levelToMatch value="DEBUG" /> <acceptOnMatch value="true" /> </filter> </appender> <appender name="ProdLogFileAppender" type="log4net.Appnder.RollingFileAppender"> <file type="log4net.Util.PatternString" value="%property{AppPath}\Logs\%property{LogName}.prod.txt" /> <appendToFile value="true" /> <rollingStyle value="Composite" /> <datePattern value=".yyyyMMdd" /> <maxSizeRollBackups value="-1" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date{ISO8601} [%thread] [%logger] [%level] [%method:%line]: %message%newline%exception" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <levelMin value="INFO" /> <levelMax value="FATAL" /> </filter> </appender> <appender name="ErrorLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="%property{AppPath}\Logs\%property{LogName}.error.txt" /> <appendToFile value="true" /> <rollingStyle value="Composite" /> <datePattern value=".yyyyMMdd" /> <maxSizeRollBackups value="-1" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date{ISO8601} [%thread] [%logger] [%level] [%method:%line]: %message%newline%exception" /> </layout> <filter type="log4net.Filter.LevelRangeFilter"> <levelMin value="ERROR" /> <levelMax value="FATAL" /> </filter> </appender> <appender name="PhotonLogger" type="log4net.Appender.RollingFileAppender"> <file type="log4net.Util.PatternString" value="%property{AppPath}\Logs\Photon\PhotonLogger.txt" /> <appendToFile value="true" /> <rollingStyle value="Composite" /> <datePattern value=".yyyyMMdd" /> <maxSizeRollBackups value="-1" /> <maximumFileSize value="1KB" /> <preserveLogFileNameExtension value="true" /> <staticLogFileName value="false" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%date{ISO8601} [%thread] [%logger] [%level] [%method:%line]: %message%newline%exception" /> </layout> </appender> <root> <level value="DEBUG"/> <appender-ref ref="DebugLogFileAppender" /> <appender-ref ref="ProdLogFileAppender" /> <appender-ref ref="ErrorLogFileAppender" /> </root> <logger name="Photon" additivity="false"> <level value="DEBUG" /> <appender-ref ref="PhotonLogger" /> </logger> <logger name="Photon.SocketServer" additivity="false"> <level value="DEBUG"/> <appender-ref ref="PhotonLogger" /> </logger> </log4net> </configuration>
0 -
Deprecated - may be closed0