Ostatnio miałem okazję zapoznać się z ciekawym systemem do tworzenia logów z działania aplikacji. Nie chcę się tu wdawać w dyskusję, czy logi są przydatne, czy nie - o tym można pczytać na linkach zamieszczonych pod artykułem. Mowa tu o darmowym systemie log4net.
Aby móc zacząć pracować z log4net należy pobrać paczkę ze strony logging.apache.org/log4net/download.html.
Następnie załączyć plik dll do naszego projektu. Jeśli nie wiesz jak to zrobić, ten artykuł może Ci w tym pomóc.
Wyświetlanie w konsoli
using System;
using System.Collections.Generic;
using System.Text;
using log4net;
class Program
{
static void Main(string[] args)
{
log4net.Config.BasicConfigurator.Configure();
ILog log = log4net.LogManager.GetLogger("example");
log.Debug("To jest informacja przydatna do debugowania aplikacji");
log.Info("Zwykle zdarzenie jakich mnostwo moze sie zdarzyc");
log.Warn("Ostrzezenie, cos jest nie tak");
log.Error("Wystapil blad");
log.Fatal("Fatalny blad, dzielenie przez zero, sila Coriolisa dziala w druga strone");
Console.Read(); // abysmy mogli zobaczyc wyniki :P
}
}
Po uruchomieniu tej aplikacji w wyniku powinno się pojawić:
89 [9] DEBUG example (null) - To jest informacja przydatna do debugowania aplikacji
141 [9] INFO example (null) - Zwykle zdarzenie jakich mnostwo moze sie zdarzyc
142 [9] WARN example (null) - Ostrzezenie, cos jest nie tak
142 [9] ERROR example (null) - Wystapil blad
143 [9] FATAL example (null) - Fatalny blad, dzielenie przez zero, sila Coriolisa dziala w druga strone
Zapisywanie do pliku xml
Aby móc zapisać do pliku xml musimy dokonać dwóch zmian (niżej znajdziesz filmik).
1. Dodać plik App.config z taką treścią:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,Log4net"/>
</configSections>
<log4net>
<root>
<level value="DEBUG" />
<appender-ref ref="LogFileAppender" />
</root>
<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" >
<param name="File" value="C:\log.txt" />
<param name="AppendToFile" value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%-5p%d{yyyy-MM-dd hh:mm:ss} – %m%n" />
</layout>
</appender>
</log4net>
</configuration>
Miejsce, gdzie ma zostać utworzony plik xml wskazujemy w tagu <param@File> w atrybucie value. Tu jest to C:\log.txt
2. Zmienić 1 linię w dotychczasowym kodzie:
///log4net.Config.BasicConfigurator.Configure();
log4net.Config.XmlConfigurator.Configure();
Wideotutorial stworzony na podstawie:
|