日志未出现在 Graylog

时间:2021-07-21 07:28:47

标签: logging quarkus gelf graylog3

我昨天做了一个应用程序,想在 Graylog 中记录消息,为此,我按照 https://quarkus.io/guides/centralized-log-management 的说明,在远程服务器上安装了一个 Graylog 实例并配置了我的应用程序。

#### Graylog logging
quarkus.log.handler.gelf.enabled=true
quarkus.log.handler.gelf.host=my_remote_server
quarkus.log.handler.gelf.filter-stack-trace=true
quarkus.log.handler.gelf.level=ALL
quarkus.log.handler.gelf.include-full-mdc=true

代码如下

@POST
@Produces(TEXT_HTML)
@Consumes(APPLICATION_FORM_URLENCODED)
public TemplateInstance perform(@Form final SearchRequest request) {
    LOGGER.debug(String.format("[%s] Calling search page", applicationName));
    final String requestId = UUID.randomUUID().toString();
    LOGGER.debug(format("{%s]  -> Searching for lawyers with data '%s'", applicationName, requestId, request));
    final Query query = searchQueryBuilder.createSearchHibernateQuery(request);
    List< MedicalDoctor> medicalDoctors = (List< MedicalDoctor>) query.getResultList();
    LOGGER.debug(format("[%s] %s -> Searching for lawyers with data '%s' : count %d -> %s", applicationName, requestId, request, medicalDoctors.size(), medicalDoctors));
    return main().data("medicalDoctors", medicalDoctors).data("request", request);
}

作为记录器,我正在使用

private static final org.jboss.logging.Logger LOGGER = Logger.getLogger(MenuPages.class);

我不知道为什么,但在 Graylog 中,我只能看到来自 Quarkus 启动的日志,而没有来自我的应用程序的日志(这不是应该记录日志的唯一方法)。我尝试将日志消息从 DEBUG 更改为 INFO,但无济于事。

有人知道我在某处错误配置的原因是什么吗?

感谢您的帮助,

D.

1 个答案:

答案 0 :(得分:0)

将日志级别更改为 INFO 中

quarkus.log.handler.gelf.level=INFO

并在代码中使用 debug.info 的含义

LOGGER.info(format("%s]  -> Searching for lawyers with data '%s'", applicationName, requestId, request));

成功了。感恩之心

相关问题