NLog
is a free logging platform for .NET, NET STANDARD, Xamarin, Silverlight
and Windows Phone with rich log routing and management capabilities.
NLog makes it easy to produce and manage high-quality logs for your
application regardless of its size or complexity.
NLog
can process diagnostic messages emitted from any .NET language (C#,
VB.NET etc.), augment them with contextual information (date and time,
severity, thread, process, environment), format according to your
preferences and send to one or more targets.
👉 Download full source code here
Step 1: Get NLog from NuGet
Right click into projects, -> click to Manage NuGet Packages ...Explore My Other Channel for More Cool and Valuable Insights
👉 Youtube Learn Tech Tips👉 Tiktok
👉 Facebook:Step 2: Write your code
class Program
{
private static Logger logger = LogManager.GetCurrentClassLogger();
static void Main(string[] args)
{
LogManager.Configuration = new XmlLoggingConfiguration("NLog.config");
logger.Trace("Trace: The chatter of people on the street");
logger.Debug("Debug: Where are you going and why?");
logger.Info("Info: What bus station you're at.");
logger.Warn("Warn: You're playing on the phone and not
looking up for your bus");
logger.Error("Error: You get on the wrong bus.");
logger.Fatal("Fatal: You are run over by the bus.");
int k = 42;
int l = 100;
logger.Info("Sample informational message, k={0}, l={1}", k, l);
Console.ReadLine();
}
}
Step 3: Edit your NLog Config
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="https://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
autoReload="true"
throwExceptions="false">
<targets>
<!-- Using the colored console as my target-->
<target xsi:type="ColoredConsole" name="colored_console"
layout="${longdate} | ${level:uppercase=true} | ${message}" />
<target xsi:type="File" name="logfile"
fileName="C:\Test\NLog_${shortdate}.log"
layout="${longdate} | ${level:uppercase=true} | ${message}" />
</targets>
<rules>
<!-- Writting everything to the cololred console -->
<logger name="*" minlevel="Trace" writeTo="logfile" />
<logger name="*" minlevel="Trace" writeTo="colored_console"/>
</rules>
</nlog>
You're almost thereCheck on console and log file!
Remember create folder to contain log file! If you don't have any folder, the log file will don't create it!
Thank you for reading this post. I hope you found it helpful and easy to follow. If you have any feedback or questions about
How to Implement NLog in C# .NET Applications for Effective Logging ,
please share them in the comments below. I would love to hear from you and discuss this topic further
✋✋✋✋
Webzone Tech Tips, all things Tech Tips for web development
- I am Zidane, See you next time soon ✋✋✋✋