2011-07-17 7 views
18

W języku NLog można utworzyć wiele rejestratorów o różnej konfiguracji?Posiadanie rejestratorów NLog o innej konfiguracji

Mam składnik, który za każdym razem, gdy jest instancją, musi rejestrować wszystkie zdarzenia w innym pliku powiązanym z nową instancją.

Czy to możliwe z NLog? Jeśli nie, są to struktury logowania, które to robią?

Odpowiedz

21

Tak, możesz to zrobić. Możesz skonfigurować rejestrator dla tego typu, aby logować się do określonego celu. Lub możesz skonfigurować program rejestrujący dla tego typu, aby logował się do celu (takiego jak plik), nadając nazwę plikowi (automatycznie) na podstawie nazwy rejestratora.

Zobacz kilka przykładów na temat NLog config file documentation here.

Zobacz także mój numer post here, aby uzyskać wskazówki dotyczące plików konfiguracyjnych.

Oto krótki przykład konfiguracji dwóch rejestratorów: jeden dla określonego typu, który ma być zalogowany do pliku wyjściowego nazwanego dla tego typu oraz jeden dla wszystkich innych rejestratorów do zalogowania się do pliku na podstawie daty.

<nlog> 
    <targets> 
    <target name="f1" xsi:type="File" fileName="${logger}.txt" /> 
    <target name="f2" xsi:type="File" fileName="${shortdate}.txt" /> 
    </targets> 
    <rules> 
    <logger name="Name.Space.Class1" minlevel="Trace" writeTo="f1" /> 
    <logger name="*" levels="Debug" writeTo="f2" /> 
    </rules> 
</nlog> 

Jeśli chcesz dzienniki dla typu Name.Space.Class1 iść do „specjalnego” pliku (to znaczy taki, którego nazwa jest określona przez rejestratora), a następnie można dodać „ostateczne” do rejestratora specfication tak:

<logger name="Name.Space.Class1" minlevel="Trace"final="true" /> 
+2

nowa konfiguracja łącza plik https://github.com/nlog/NLog/wiki/Configuration-file –

Powiązane problemy