Kā to izdarīt, piesakoties C # ar

Kad raksti datora kods C # ir laba ideja iekļaut reģistrēšanas kodu. Tādā veidā, kad kaut kas noiet greizi, jūs zināt, kur sākt meklēt. Java pasaule to dara jau vairākus gadus. Šim nolūkam varat izmantot log4net. Tā ir daļa no Apache log4j 2, populārā atvērtā koda reģistrēšanas ietvara.

Tas nav vienīgais .NET reģistrēšanas ietvars; tur ir daudz. Tomēr Apache vārds ir uzticams, un sākotnējā Java reģistrēšanas sistēma pastāv jau vairāk nekā 15 gadus.

Kāpēc izmantot Log4net reģistrēšanas sistēmu?

Kad notiek lietojumprogrammas vai servera avārija, jums paliek jautājums, kāpēc. Vai tā bija aparatūras kļūme, ļaunprātīga programmatūra, varbūt uzbrukums pakalpojumu atteikšanai vai kāda nepāra taustiņu kombinācija, kurai izdevies apiet visas jūsu koda pārbaudes? Jūs vienkārši nezināt.

Jums jānoskaidro, kāpēc notika avārija, lai to varētu labot. Ja ir iespējota reģistrēšana, iespējams, varēsit uzzināt, kāpēc tas notika.

Darba sākšana

Lejupielādējiet log4net failu no Apache log4net vietnes. Pārbaudiet lejupielādēto failu integritāti, izmantojot PGP parakstu vai MD5 kontrolsummas. Kontrolsummas nav tik spēcīgi rādītāji kā PGP paraksts.

instagram viewer

Izmantojot Log4net

Lai palielinātu prioritāti, Log4net atbalsta septiņus reģistrēšanas līmeņus no neviena uz visiem. Šie ir:

  1. IZSLĒGTS
  2. NĀDĪGS
  3. KĻŪDA
  4. BRĪDINĀJUMS
  5. INFO
  6. Atkļūdot
  7. VISI

Augstākajos līmeņos ietilpst visi zemākie. Atkļūdojot, izmantojot Atkļūdot rāda visu, bet par producēšanu jūs varētu interesēt tikai FATAL. Šo izvēli var izdarīt komponenta līmenī programmatiski vai XML Config failā.

Mežizstrādātāji un papildinātāji

Elastības labad log4net izmanto žurnālistus, pielikumus un izkārtojumus. Mežizstrādātājs ir objekts, kas kontrolē reģistrēšanu, un ir ILog interfeisa, kas norāda piecas Būla metodes: isDebugEnabled, IsInfoEnabled, IsWarnEnabled, IsErrorEnabled un IsFatalEnabled. Tajā norādītas arī piecas metodes - atkļūdošana, informācija, brīdinājums, kļūda un fatāls, kā arī pārslodzes un piecas formatētas virkņu versijas. Pilnu ILog saskarni var redzēt log4net tiešsaistes rokasgrāmatā.

Mežizstrādātājiem tiek piešķirts viens no līmeņiem, bet ne VISI vai IZSLĒGTS, tikai pārējie pieci.

Pielikēji kontrolē, kur notiek mežizstrāde. Tas var būt datu bāzē, atmiņas buferī, konsolē, attālajā resursdatorā, teksta failā ar ritošajiem žurnāliem, Windows notikumu žurnālā vai pat e-pastā, izmantojot SMTP. Kopumā ir 22 pielikumi, un tos var kombinēt, tāpēc jums ir daudz izvēles iespēju. Mežizstrādātājam tiek pievienoti pielikumi (līdz ar to arī nosaukums).

Pielikēji filtrē notikumus, saskaņojot apakšvirknes, notikumu līmeni, līmeņu diapazonu un mežizstrādātāja nosaukuma sākumu.

Izkārtojumi

Visbeidzot, ir septiņi izkārtojumi, kurus var saistīt ar pielikumu. Tie kontrolē, kā tiek reģistrēts notikuma ziņojums, un tie var ietvert izņēmuma tekstu, laika spiedoga izkārtojumus un XML elementi.

Konfigurēšana ar XML

Lai arī konfigurēšanu var veikt programmētiski, to var izdarīt arī ar XML Config failiem. Kāpēc jūs dotu priekšroku konfigurācijas failiem, nevis koda maiņām? Vienkārši, tas ir daudz vienkāršāk, ja atbalsta puisis veic izmaiņas konfigurācijas failā, nekā jāiegūst programmētājs, lai mainītu kodu, pārbaudītu un atkārtoti instalētu jaunu versiju. Tātad ir konfigurācijas faili. Vienkāršākais iespējamais ceļš ir sava projekta pievienošana App.config, kā parādīts zemāk esošajā piemērā:

1.0utf-8





















Log4net tiešsaistes dokumentācijā ir izskaidroti visi konfigurācijas faila lauki. Pēc iestatīšanas App.config pievienojiet, izmantojot log4net, un šo rindu:

[montāža: log4net. Konfigurēt XmlConfigurator (Skatīties = patiess)]

Turklāt faktiskais malkas cirtējs ir jāielādē ar zvanu LogManager. GetLogger (...). GetLogger parasti tiek izsaukts ar typeof (klasi), kurā tas tiek izmantots, bet šis funkcijas izsaukums arī ienes, ka:

Sistēma. Pārdomas. MethodBase. GetCurrentMethod (). Deklarēšanas tips

Šajā piemērā ir parādīti abi komentāri, un jūs varat izvēlēties.

izmantojot log4net;
[montāža: log4net. Konfigurēt XmlConfigurator (Skatīties = patiess)]
nosaukumvieta
{
klases programma
{
privāti statiski lasāmi ILog log = LogManager. GetLogger (sistēma. Pārdomas. MethodBase. GetCurrentMethod
() .DeclaringType);
// privāti statiski lasāmi ILog log = LogManager. GetLogger (typeof (Program));
static void Main (virkne [] args)
{
žurnāls. Atkļūdošana ("Lietojumprogrammas sākšana");
}
}
}

instagram story viewer