Serilog Graylog не удается войти в Graylog

#serilog #graylog

#serilog #graylog

Вопрос:

Я новичок в graylog. Я не могу войти в graylog. Когда я выполняю поиск сообщения, я ищу источник: xxx-yyy или просто ключевое слово test9999, просматриваю все последние журналы, моего сообщения там нет. Что я могу делать неправильно?

Имя сервера и порт указаны правильно.

 LoggerConfiguration loggerConfiguration = new LoggerConfiguration();
         
         loggerConfiguration
            .Enrich.FromLogContext()
            .Enrich.WithProperty("source", "xxx-yyy")
            .Enrich.WithProperty("test", "test9999");

         loggerConfiguration.WriteTo.Graylog(new GraylogSinkOptions
         {
            HostnameOrAddress = "server",
            Port = 12201,
            TransportType = TransportType.Udp,
            MinimumLogEventLevel = LogEventLevel.Information,
            Facility = "local2",
            ShortMessageMaxLength = 12000,
            StackTraceDepth = 10,
            MessageGeneratorType = MessageIdGeneratorType.Timestamp
         });



Stream Rules
Stream ZZZ
Must match at least one of the 4 configured stream rules.
source must match exactly xxx-yyy
...


Local inputs
    gelfUDP GELF UDP RUNNING
    On node  0cee9b17 / server
    bind_address: 0.0.0.0
    decompress_size_limit: 8388608
    number_worker_threads: 32
    override_source: <empty>
    port: 12201
    recv_buffer_size: 1048576
  

Упаковка

   <package id="Serilog" version="2.10.0" targetFramework="net461" />
  <package id="Serilog.Sinks.Graylog" version="2.2.1" targetFramework="net461" />
  <package id="Serilog.Sinks.Graylog.Extended" version="1.0.1" targetFramework="net461" />
  

Ответ №1:

Проблема заключалась в том, что поток не был настроен на сервере. Итак, решение состояло в том, чтобы настроить поток с определенным правилом (для которого я должен был добавить поле), и мне нужно было разрешить доступ к этому потоку.