Serilog с Elastic.Serilog.Sinks — минимальный уровень журнала не отражаетсяC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Serilog с Elastic.Serilog.Sinks — минимальный уровень журнала не отражается

Сообщение Anonymous »

Я пытаюсь реализовать ведение журнала в приложении ASP.NET Core 8 с помощью Serilog (версия 8.0.1) и «новой» библиотеки Elastic.Serilog.Sinks (версия 8.11.1). Я застрял при настройке минимального уровня журнала для приемника Elasticsearch.
Вот проблемная часть моего простого примера приложения:

Код: Выделить всё

var builder = WebApplication
.CreateBuilder(args);

builder.Host.UseSerilog((ctx, lc) => lc
.MinimumLevel.Debug()
.WriteTo.Console()
.WriteTo.Elasticsearch(new[] { new Uri("http://localhost:9200") }, opts =>
{
opts.MinimumLevel = Serilog.Events.LogEventLevel.Error;
opts.BootstrapMethod = BootstrapMethod.Failure;
opts.LevelSwitch = SwitchProvider.ElasticSwitch;
opts.DataStream = new DataStreamName("logs", "web-api-example");
})
);
Как видите, я установил глобальный минимальный уровень на Debug, а минимальный уровень Elasticsearch на Error. Однако все журналы, независимо от уровня (ну, если быть точным, все журналы с более высоким уровнем, чем глобальный минимальный уровень), отправляются в Elasticsearch - я могу видеть журналы уровня отладки, информации и т. д. в Elasticsearch (в основном журналы в консоли и в Elasticsearch одинаковые).
Я также пытался переключить уровень приемника Elasticsearch во время выполнения с помощью

Код: Выделить всё

ElasticSwitch.MinimumLevel = Serilog.Events.LogEventLevel.Error;
через мой базовый SwitchProvider, который находится здесь:

Код: Выделить всё

public static class SwitchProvider
{
public static LoggingLevelSwitch ElasticSwitch = new LoggingLevelSwitch();
}
но безрезультатно.
Я что-то упустил?

Подробнее здесь: https://stackoverflow.com/questions/786 ... -reflected
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»