ASP.NET Core understøtter lognings-API'er for en bred vifte af indbyggede og tredjeparts logningsudbydere. Skovning er en væsentlig del af vores daglige udvikling.
Lad os først se på gengivelserne af konsollen som følger:
Tilføj en logleverandør
Logningsudbydere viser eller gemmer logfiler. For eksempel viser en konsoludbyder logfiler på konsollen, og Azure Application Insights-udbyderen gemmer disse logs i Azure Application Insights. Logs kan sendes til flere destinationer ved at tilføje flere udbydere.
Rediger programfilen som følger:
Opret en log (konstruktørinjektion)
Følgende controller-eksempel opretter logfiler på alle niveauer.
Log-niveau | Vises tekst | Forgrundsfarve | Baggrundsfarve | Trace | TRCE | Gray | Sort | Debug | dbug | Gray | Sort | Information | info | Mørkegrøn | Sort | Advarsel | advarsel | Gul | Sort | Fejl | fejl | Rød | Sort | Kritisk | crit | Hvid | Rød |
Referencelinks:Hyperlink-login er synlig.
Kør projektet med følgende kommando, og du kan se outputloggen gennem konsollen.
Besøg den lokale URL for at se outputtet.
Kontrollog-niveau
Det gør vi ikkeJeg vil ikke se konsollen levere så mange meningsløse informationsloggs, jeg vil bare se de vigtige logfiler, jeg har registreret, hvad skal jeg gøre?
1: Kontroller logniveauet gennem konfigurationsfilen og rediger filen appsettings.json som følger:
Denne JSON vil skabe 6 filtreringsregler: 1 for fejlfindingsudbydere, 4 for konsoludbydere og 1 for alle udbydere. Når du opretter et ILogger-objekt, skal du vælge en regel for hver udbyder.
2: Adgangskodekontrol (ingen test)
Det andet AddFilter bruger typenavnet til at angive debug-udbyderen. Det første AddFilter gælder for alle udbydere, fordi det ikke specificerer udbydertypen.
Standard minimumsniveau
Minimumsniveau-indstillingen træder kun i kraft, hvis reglerne i konfigurationen eller koden ikke gælder for en given udbyder og kategori. Følgende eksempel viser, hvordan man sætter minimumsniveauet:
Hvis minimumsniveauet ikke er eksplicit sat, er standardværdien Information, som det repræsentererTrace- og Debug-logs vil blive ignoreret。
Referencelinks:Hyperlink-login er synlig.
Brug Autofac til at indsætte ILogger-logs via egenskaber
Generelt injicerer vi logservices gennem konstruktører, hvordan injicerer vi gennem attributter? Hvordan ellers hoster man ILogger til Autofac?
I opstartsredigeringsmetoden ConfigureServices, som følger:
Følgende fire vigtige sætninger:
Husk at tilføje detloggerFactory.AddConsole();Denne kodelinje, ellers vil konsollenIntet bliver outputtet, og autofac hosting, vil konfigurationsfilen være ugyldig.
Controller-kode:
Adgang til URL'en, dotnet-kørsel starter projektet, og konsollens output er som følger:
Hvordan man injicerer logs ILogger i andre klasser via egenskaber.
(Slut)
|