Console applications¶
These steps describe how to install and configure KissLog for a Console application.
Install NuGet Packages
Package Manager Console¶
PM> Install-Package KissLog
PM> Install-Package KissLog.CloudListeners
Update App.config
App.config¶
<configuration>
<appSettings>
<add key="KissLog.OrganizationId" value="_OrganizationId_" />
<add key="KissLog.ApplicationId" value="_ApplicationId_" />
<add key="KissLog.ApiUrl" value="https://api.kisslog.net" />
</appSettings>
</configuration>
Update Program.cs
Program.cs¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | using KissLog;
using KissLog.CloudListeners.Auth;
using KissLog.CloudListeners.RequestLogsListener;
namespace MyApp.ConsoleApp
{
class Program
{
static void Main(string[] args)
{
ConfigureKissLog();
// [...]
}
static void ConfigureKissLog()
{
// optional KissLog configuration
KissLogConfiguration.Options
.AppendExceptionDetails((Exception ex) =>
{
StringBuilder sb = new StringBuilder();
if (ex is DivideByZeroException divideByZeroException)
{
sb.AppendLine("DivideByZeroException");
}
return sb.ToString();
});
// KissLog internal logs
KissLogConfiguration.InternalLog = (message) =>
{
Debug.WriteLine(message);
};
// register logs output
RegisterKissLogListeners();
}
static void RegisterKissLogListeners()
{
// multiple listeners can be registered using KissLogConfiguration.Listeners.Add() method
// add KissLog.net cloud listener
KissLogConfiguration.Listeners.Add(new RequestLogsApiListener(new Application(
ConfigurationManager.AppSettings["KissLog.OrganizationId"],
ConfigurationManager.AppSettings["KissLog.ApplicationId"])
)
{
ApiUrl = ConfigurationManager.AppSettings["KissLog.ApiUrl"],
UseAsync = false
});
}
}
}
|
Write logs using ILogger
Program.cs¶
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | namespace MyApp.ConsoleApp
{
class Program
{
static void Main(string[] args)
{
ConfigureKissLog();
ILogger logger = new Logger(url: "/Program/Main");
try
{
logger.Info("Hello world from KissLog!");
logger.Trace("Trace message");
logger.Debug("Debug message");
logger.Info("Info message");
logger.Warn("Warning message");
logger.Error("Error message");
logger.Critical("Critical message");
}
finally
{
Logger.NotifyListeners(logger);
}
}
}
}
|

Console Application + KissLog¶