ASP.NET Core podporuje API pro logování pro širokou škálu vestavěných i třetích stran pro logování. Těžba dřeva je nezbytnou součástí našeho každodenního rozvoje.
Podívejme se nejprve na renderování konzole, a to následovně:
Přidat poskytovatele logů
Poskytovatelé logování zobrazují nebo ukládají logy. Například poskytovatel konzole zobrazuje logy na konzoli a poskytovatel Azure Application Insights tyto logy ukládá v Azure Application Insights. Logy lze posílat na více destinací přidáním více poskytovatelů.
Upravte soubor programu následovně:
Vytvořte log (injekce konstruktoru)
Následující příklad ovladače vytváří logy na všech úrovních.
Úroveň logu | Text pořadu | Barva popředí | Barva pozadí | Trace | trce | Šedá | Černá | Debug | dbug | Šedá | Černá | Informace | Informace | Temnozelená | Černá | Varování | varování | Žlutá | Černá | Chyba | selhání | Červená | Černá | Kritické | kritický zásah | Bílá | Červená |
Referenční odkazy:Přihlášení k hypertextovému odkazu je viditelné.
Spusť projekt pomocí následujícího příkazu a uvidíš výstupní záznam přes konzoli.
Navštivte místní URL pro zobrazení výstupu.
Úroveň řídicího logu
My neNechci, aby konzole vydala tolik nesmyslných informačních logů, chci jen vidět důležité záznamy, které jsem zaznamenal, co mám dělat?
1: Ovládejte úroveň logu pomocí konfiguračního souboru a upravujte appsettings.json soubor následovně:
Tento JSON vytvoří 6 filtračních pravidel: 1 pro ladící poskytovatele, 4 pro konzolové poskytovatele a 1 pro všechny poskytovatele. Když vytvoříte objekt ILogger, vyberte pravidlo pro každého poskytovatele.
2: Kontrola přístupovým kódem (bez testování)
Druhý AddFilter používá název typu k určení poskytovatele ladění. První AddFilter platí pro všechny poskytovatele, protože nespecifikuje typ poskytovatele.
Výchozí minimální úroveň
Minimální nastavení úrovně nabývá účinnosti pouze tehdy, pokud pravidla v konfiguraci nebo kódu neplatí pro daného poskytovatele a kategorii. Následující příklad ukazuje, jak nastavit minimální úroveň:
Pokud minimální úroveň není explicitně stanovena, výchozí hodnota je Information, kterou reprezentujeTrace a Debug logy budou ignorovány。
Referenční odkazy:Přihlášení k hypertextovému odkazu je viditelné.
Použijte Autofac k vkládání logů ILogger přes vlastnosti
Obecně vkládáme logovací služby přes konstruktory, jak tedy injektujeme přes atributy? Jak jinak hostovat ILogger na Autofac?
V metodě Startup editace ConfigureServices, následovně:
Následující čtyři důležité věty:
Nezapomeňte to přidatloggerFactory.AddConsole();Tento řádek kódu, jinak konzoleNic není výstupem, a Autofac hosting, konfigurační soubor bude neplatný.
Kód ovladače:
Přistup k URL, spustí projekt přes dotnet a výstup z konzole je následující:
Jak vkládat logy ILogger do jiných tříd prostřednictvím vlastností.
(Konec)
|