ASP.NET Core підтримує логування API для широкого спектра вбудованих і сторонніх провайдерів логування. Лігування — це незамінна частина нашого щоденного розвитку.
Давайте спочатку розглянемо рендери консолі, а так:
Додати провайдера логу
Провайдери логування відображають або зберігають журнали. Наприклад, провайдер консолі відображає журнали на консолі, а провайдер Azure Application Insights зберігає ці журнали в Azure Application Insights. Журнали можна надсилати до кількох пунктів призначення, додаючи кількох провайдерів.
Відредагуйте файл програми наступним чином:
Створення логарифма (ін'єкція конструктора)
Наступний приклад контролера створює журнали на всіх рівнях.
Рівень логів | Текст показати | Колір переднього плану | Колір фону | Трасування | TCE | Сірий | Чорний | Відлагодження | dbug | Сірий | Чорний | Інформація | Інформація | Темнозелений | Чорний | Увага | Попереджайте | Жовтий | Чорний | Помилка | провал | Червоний | Чорний | Критично | Крит | Білий | Червоний |
Посилання на посилання:Вхід за гіперпосиланням видно.
Запустіть проєкт за наступною командою, і ви зможете побачити вихідний журнал через консоль.
Відвідайте локальну URL, щоб побачити результат.
Рівень контрольного логарифму
Ми — ніНе хочу бачити, як консоль видає стільки безглуздих логів інформації, Я просто хочу побачити важливі журнали, які я записав, що мені робити?
1: Керувати рівнем журналу через конфігураційний файл і редагувати appsettings.json файл наступним чином:
Цей JSON створить 6 правил фільтрації: 1 для постачальників налагодження, 4 для консолей і 1 для всіх провайдерів. Коли ви створюєте об'єкт ILogger, обирайте правило для кожного провайдера.
2: Контроль паролів (без тестування)
Другий AddFilter використовує ім'я типу для вказівки постачальника налагодження. Перший AddFilter застосовується до всіх провайдерів, оскільки не вказує тип провайдера.
Мінімальний рівень за замовчуванням
Налаштування мінімального рівня набирає чинності лише тоді, коли правила в конфігурації або коді не застосовуються до певного провайдера та категорії. Наступний приклад показує, як встановити мінімальний рівень:
Якщо мінімальний рівень не встановлений явно, значенням за замовчуванням є Інформація, яку воно представляєЖурнали трасування та налагодження ігноруватимуться。
Посилання на посилання:Вхід за гіперпосиланням видно.
Використовуйте Autofac для введення журналів ILogger через властивості
Зазвичай ми впроваджуємо лог-сервіси через конструктори, як ми впроваджуємо через атрибути? Як інакше розмістити ILogger на Autofac?
У методі редагування при запуску ConfigureServices, наступним чином:
Наступні чотири важливі речення:
Обов'язково додай цеloggerFactory.AddConsole();Цей рядок коду — інакше консольНічого не виводиться, і Autofac Hosting, конфігураційний файл буде недійсним.
Код контролера:
Перейдіть за URL, dotnet run запускає проєкт, і консольний вихід виглядає так:
Як впровадити логи ILogger в інші класи через властивості.
(Кінець)
|