나는 팔로우했다https://github.com/ronlut/graylog-content-pack-nginx-docker그리고NGINX 로그를 Graylog로 보내기nginx 로그를 greylog 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 유형 입력으로 전환(추출기 내보내기 -> 추출기 가져오기)한 후 문제가 사라졌습니다.