I want to record software process logs to files. Rather than make my own log system, I am trying to use Log4Net with ASP.NET MVC, but I have run into problems setting it up in Visual Studio 2015, like:
How to setup web.config / Global.asax page?
How to install components in VS 2012 ~?
How to use it in my *.cs
file?
What are the steps to properly configure Log4Net With ASP.NET MVC C# in Visual Studio 2015?
I also wrote a Q&A to set it up for ASP.NET WebForms, see How to use Log4net from Nuget with Visual Studio platform in the ASP.NET Web Form (Easy method).
Add log4net in config fileconfig and enter the following details. Add a class Log. cs in the Utilities folder. Now, in the constructor of this class, instantiate logs for monitoring and debugger loggers.
Step1: To use the Nuget to get the log4net package:
Step2: tell log4net to initialize itself from the XML configuration (Web.config), by adding this call in the Global.asax.cs
file under Application_Start()
:
log4net.Config.XmlConfigurator.Configure();
Step3: add the configuration section in Web.config between tag <configSections>...</configSections>
:
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
Step4: Insert the actual log4net configuration <log4net>...</log4net>
(Within <configuration>...</configuration>
but after the </configSections>
tag) , see Apache log4net™ Config Examples for more examples:
<log4net debug="true"> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="logs\log.txt" /> <appendToFile value="true" /> <rollingStyle value="Size" /> <maxSizeRollBackups value="10" /> <maximumFileSize value="100KB" /> <staticLogFileName value="true" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n" /> </layout> </appender> <root> <level value="DEBUG" /> <appender-ref ref="RollingLogFileAppender" /> </root> </log4net>
Now you're ready to make calls to an ILog
to write actual log statements to the configured appender(s):
ILog log = log4net.LogManager.GetLogger(typeof(HomeController)); public ActionResult Index() { log.Debug("Debug message"); log.Warn("Warn message"); log.Error("Error message"); log.Fatal("Fatal message"); ViewBag.Title = "Home Page"; return View(); }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With