ASP.NET Core stöder loggnings-API:er för ett brett spektrum av inbyggda och tredjeparts loggningsleverantörer. Loggning är en viktig del av vår dagliga utveckling.
Låt oss först titta på renderingarna av konsolen, enligt följande:
Lägg till en loggleverantör
Loggningsleverantörer visar eller lagrar loggar. Till exempel visar en konsolleverantör loggar på konsolen, och Azure Application Insights-leverantören lagrar dessa loggar i Azure Application Insights. Loggar kan skickas till flera destinationer genom att lägga till flera leverantörer.
Redigera programfilen enligt följande:
Skapa en logg (konstruktörinjektion)
Följande kontrollexempel skapar loggar på alla nivåer.
Log-nivå | Visningstext | Förgrundsfärg | Bakgrundsfärg | Trace | TRCE | Gray | Svart | Felsökning | dbug | Gray | Svart | Information | info | Mörkgrön | Svart | Varning | varning | Gul | Svart | Fel | Misslyckas | Röd | Svart | Kritik | Crit | Vit | Röd |
Referenslänkar:Inloggningen med hyperlänken är synlig.
Kör projektet med följande kommando, och du kan se utdataloggen via konsolen.
Besök den lokala URL:en för att se utdatan.
Kontrollloggnivå
Vi inteVill inte se konsolen ge så många meningslösa informationsloggar, jag vill bara se de viktiga loggar jag har registrerat, vad ska jag göra?
1: Kontrollera loggnivån genom konfigurationsfilen och redigera appsettings.json fil enligt följande:
Denna JSON kommer att skapa 6 filtreringsregler: 1 för felsökningsleverantörer, 4 för konsolleverantörer och 1 för alla leverantörer. När du skapar ett ILogger-objekt, välj en regel för varje leverantör.
2: Passkodskontroll (ingen testning)
Det andra AddFilter använder typnamnet för att specificera felsökningsleverantören. Det första AddFilter gäller alla vårdgivare eftersom det inte specificerar leverantörstyp.
Standard miniminivå
Miniminivåinställningen träder endast i kraft om reglerna i konfigurationen eller koden inte gäller för en given leverantör och kategori. Följande exempel visar hur man sätter miniminivån:
Om miniminivån inte är explicit inställd, är standardvärdet Information, vilket det representerarSpårnings- och felsökningsloggar ignoreras。
Referenslänkar:Inloggningen med hyperlänken är synlig.
Använd Autofac för att injicera ILogger-loggar via egenskaper
Generellt injicerar vi loggtjänster genom konstruktorer, hur injicerar vi genom attribut? Hur annars kan man hosta ILogger till Autofac?
I Startup-redigeringsmetoden ConfigureServices, enligt följande:
Följande fyra viktiga meningar:
Se till att lägga till detloggerFactory.AddConsole();Denna kodrad, annars kommer konsolen attInget är utdata, och Autofac hosting, kommer konfigurationsfilen att vara ogiltig.
Kontrollkod:
Åtkomst till URL:en, dotnet kör projektet och konsolens utdata är följande:
Hur man injicerar loggar ILogger i andra klasser via egenskaper.
(Slut)
|