Just like in EPiServer, Extension logs most things that happens. And since Extension handles errors ina different way than EPiServer, logging in Extension can be a crusual part in your work developing for Extension. Just like EPiServer, Extension uses Log4Net to log it's actions, so most of the things in this post is probably old news.
To start logging in Extension, you need to add a file, DropIT.Extension.config, in your bin-folder.
You can download the file at the bottom of this post.
This is the default content of the file:
1: <?xml version="1.0" encoding="utf-8" ?>
2: <configuration>
3: <configSections>
4: <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
5: </configSections>
6: <!-- This section contains the log4net configuration settings -->
7: <log4net>
8: <!-- Define some output appenders -->
9: <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
10: <layout type="log4net.Layout.PatternLayout">
11: <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] <%X{auth}> - %m%n" /> 12: </layout>
13: </appender>
14: <!-- RollingFileAppender looks after rolling over files by size or date -->
15: <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
16: <param name="File" value="log/DropIT.Extension.log" />
17: <param name="AppendToFile" value="false" />
18: <param name="MaxSizeRollBackups" value="5" />
19: <param name="MaximumFileSize" value="100000000" />
20: <param name="RollingStyle" value="Size" />
21: <param name="StaticLogFileName" value="true" />
22: <layout type="log4net.Layout.PatternLayout">
23: <param name="ConversionPattern" value="%d [%t] %-5p %-45c [%x] - %m%n" />
24: </layout>
25: </appender>
26: <!-- FileAppender appends to a log and it is manually managed or size -->
27: <appender name="FileAppender" type="log4net.Appender.FileAppender">
28: <param name="File" value="log/DropIT.Extension.log" />
29: <!-- Example using environment variables in params -->
30: <!-- <param name="File" value="${TMP}\\ApplicationKit.log" /> --> 31: <param name="AppendToFile" value="true" />
32: <layout type="log4net.Layout.PatternLayout">
33: <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
34: </layout>
35: </appender>
36: <!-- Setup the root category, add the appenders and set the default level -->
37: <root>
38: <level value="Off" />
39: <appender-ref ref="RollingFileAppender" />
40: </root>
41: <logger name="Dropit.Extension">
42: <level value="Error" />
43: </logger>
44: <logger name="Dropit.Extension.UI">
45: <level value="Error" />
46: </logger>
47: </log4net>
48: </configuration>
can be changed to anything. Now it saves the file under [EPiServer-Root]/log.
the default value is Error. There are four different levels of logging. If you choose an early one, you will log all later levels as well. The levels are: