Как получить определенные журналы в контроллере

Я развернул агент аналитики с машинным агентом на сервере и настроил шаблон для просмотра журналов приложения. Я могу видеть журналы в пользовательском интерфейсе контроллера. Я хочу отправлять на контроллер только журналы level=ERROR. Как этого добиться?

Файл задания


version: 2
enabled: true
source:
    type: file
    path: /data/nifi/logs
    nameGlob: nifi-app.log
    startAtEnd: true

fields:
   sourceType: nifi

grok:
  patterns:
    - '%{TIMESTAMP_ISO8601:timestamp} %{LOGLEVEL:level} \[%{DATA:thread}\] %{DATA:class} %{GREEDYDATA:message}'

eventTimestamp:
   pattern: "yyyy-MM-dd HH:mm:ss,SSS"

Образец журнала

2019-05-20 17:59:31,409 ERROR [Timer-Driven Process Thread-22] o.a.nifi.processors.standard.ListSFTP ListSFTP[id=282914ca-f485-32ff-8ba9-93236a9de836] Failed to perform listing on remote host due to java.io.IOException: Failed to obtain connection to remote host due to com.jcraft.jsch.JSchException: Auth fail: {}

person Jasmitha    schedule 14.06.2019    source источник


Ответы (1)


Если вас не волнует получение уровня в виде поля, попробуйте этот шаблон grok, который соответствует только строкам ERROR.

%{TIMESTAMP_ISO8601:timestamp} ERROR [%{DATA:thread}] %{DATA:class} %{GREEDYDATA:message}

person John Aronson    schedule 16.07.2019