Я следилhttps://github.com/ronlut/graylog-content-pack-nginx-dockerиОтправлять логи NGINX в Graylogчтобы попытаться получить логи nginx на сервере graylog 4.1.5. Graylog не отображает сообщения, потому что не может их разобрать в JSON. Пример:
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('<' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
at [Source: (String)"<190>Sep 21 12:53:47 1d9e42d48ece nginx: { .... }
Экстрактор синтаксического анализа JSON — самый последний, а перед ним есть экстрактор, который удаляет все, что может не быть JSON (замените ^.*?(\{.*?\})$
на $1
), чтобы гарантировать, что этого не произойдет, но все равно ничего не получится.
Что еще может быть причиной этого?
решение1
Пакет контента создает вход GELF. После переключения (экспорт экстракторов -> импорт экстракторов) на вход типа syslog проблема исчезла.