Graylog2 / graylog2-server

Free and open log management
https://www.graylog.org
Other
7.33k stars 1.05k forks source link

[ProcessBuffer] Unable to process event MessageEvent{raw=null, message=null}, sequence 6104949 java.lang.IllegalStateException: Failed to decompress the GELF message payload #984

Closed andreaconsadori closed 9 years ago

andreaconsadori commented 9 years ago
2015-02-20 14:55:10,866 ERROR: org.graylog2.inputs.codecs.GelfCodec - Could not parse JSON!
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �D��I�ë���o�#B��@-��^E64L��%�V?�V��dx��T�r�0~��8c˲c�&��S�d�#�M���
�l(
   �ÙW��X9?m9��C<�~�o�]}
                        0V�� �D�����F�ؠ

                                       �$y2͢(JDg�p9�v��=Н��b������˪�+ B���˶'��D�������bJ�%»`ojX��s�R�A�[~P���6���=C8�▒▒�y�7Հ��UC���"E��0�<E!�Yz1
                                                                                                                                               ���"Jx>O��w���ki�2�H��z_c��=�j�Ū�>�        J��4�S~�^����l���րl�9�So��J����N���s�`��7c�l��b}6���>�-�N~%@c�f�ڂ��b�0Ӑ�a�&<M�"�äȲi�s�ˋ�����$L�$�p��
����vR�#�r�����C��q�/�%�vʷ��AHβR�@
Ь�Hţ8
#�ŢL�R��Y�W���Iw���ܪ��젬�-z�o�:2_�������Z��[4�ʝ�|���k�c�~0�pȚs�q�1▒▒�T��h��d{��Pn����o��A�orXV��)�; line: 1, column: 2]
        at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1486)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:518)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:447)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
        at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3600)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3545)
        at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2134)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:114)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:122)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:80)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:56)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:33)
        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
2015-02-20 14:55:10,865 ERROR: org.graylog2.inputs.codecs.GelfCodec - Could not parse JSON!
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): Expected space separating root-level values
 at [Source: 8���wW�&��2������!��R��3ĢR�����D9Yk���#����]�8i.�Y~m��h▒���*�kDe�T
1o]�֠�B�t��}�2}rɺDQ��2��b; line: 1, column: 3]
        at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1486)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:518)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:447)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportMissingRootWS(ParserMinimalBase.java:463)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._verifyRootSpace(ReaderBasedJsonParser.java:1236)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._parsePosNumber(ReaderBasedJsonParser.java:886)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:680)
        at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3600)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3545)
        at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2134)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:114)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:122)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:80)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:56)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:33)
        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
2015-02-20 14:55:10,868 WARN : org.graylog2.shared.buffers.ProcessBuffer - Unable to process event MessageEvent{raw=null, message=null}, sequence 8503
java.lang.IllegalStateException: JSON is null/could not be parsed (invalid JSON)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:117)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:122)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:80)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:56)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:33)
        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): Expected space separating root-level values
 at [Source: 8���wW�&��2������!��R��3ĢR�����D9Yk���#����]�8i.�Y~m��h▒���*�kDe�T
1o]�֠�B�t��}�2}rɺDQ��2��b; line: 1, column: 3]
        at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1486)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:518)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:447)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportMissingRootWS(ParserMinimalBase.java:463)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._verifyRootSpace(ReaderBasedJsonParser.java:1236)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._parsePosNumber(ReaderBasedJsonParser.java:886)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:680)
        at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3600)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3545)
        at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2134)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:114)
        ... 9 more
2015-02-20 14:55:10,868 WARN : org.graylog2.shared.buffers.ProcessBuffer - Unable to process event MessageEvent{raw=null, message=null}, sequence 8504
java.lang.IllegalStateException: JSON is null/could not be parsed (invalid JSON)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:117)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:122)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:80)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:56)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:33)
        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �D��I�ë���o�#B��@-��^E64L��%�V?�V��dx��T�r�0~��8c˲c�&��S�d�#�M���
�l(
   �ÙW��X9?m9��C<�~�o�]}
                        0V�� �D�����F�ؠ

                                       �$y2͢(JDg�p9�v��=Н��b������˪�+ B���˶'��D�������bJ�%»`ojX��s�R�A�[~P���6���=C8�▒▒�y�7Հ��UC���"E��0�<E!�Yz1
                                                                                                                                               ���"Jx>O��w���ki�2�H��z_c��=�j�Ū�>�        J��4�S~�^����l���րl�9�So��J����N���s�`��7c�l��b}6���>�-�N~%@c�f�ڂ��b�0Ӑ�a�&<M�"�äȲi�s�ˋ�����$L�$�p��
����vR�#�r�����C��q�/�%�vʷ��AHβR�@
Ь�Hţ8
#�ŢL�R��Y�W���Iw���ܪ��젬�-z�o�:2_�������Z��[4�ʝ�|���k�c�~0�pȚs�q�1▒▒�T��h��d{��Pn����o��A�orXV��)�; line: 1, column: 2]
        at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1486)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:518)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:447)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
        at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3600)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3545)
        at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2134)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:114)
        ... 9 more
2015-02-20 14:55:10,867 ERROR: org.graylog2.inputs.codecs.GelfCodec - Could not parse JSON!
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �]3�z�=ZZ�C;o�Dx
�FI�Z6�t�Cqv�*~t�����kE��3�%�A)F�J�F��}��LHxG�L�v{z*BD�ҳ���h�i۷�V������; line: 1, column: 2]
        at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1486)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:518)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:447)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
        at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3600)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3545)
        at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2134)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:114)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:122)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:80)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:56)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:33)
        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
2015-02-20 14:55:10,868 WARN : org.graylog2.shared.buffers.ProcessBuffer - Unable to process event MessageEvent{raw=null, message=null}, sequence 8506
java.lang.IllegalStateException: JSON is null/could not be parsed (invalid JSON)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:117)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:122)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:80)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:56)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:33)
        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �]3�z�=ZZ�C;o�Dx
�FI�Z6�t�Cqv�*~t�����kE��3�%�A)F�J�F��}��LHxG�L�v{z*BD�ҳ���h�i۷�V������; line: 1, column: 2]
        at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1486)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:518)
        at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:447)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
        at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
        at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3600)
        at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3545)
        at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2134)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:114)
        ... 9 more
^C
joschi commented 9 years ago

The garbage in the log messages looks very suspicious. Could you please elaborate a little bit on your Graylog setup? Which version of Graylog are you running, how did you install it (manually, OS packages, virtual appliance…), which Java version are you using, and which operating system is Graylog running on?

andreaconsadori commented 9 years ago

Hi,it's a Graylog 1.0.0 (Stable) manually installed on 3.2.0-4-686-pae #1 SMP Debian 3.2.63-2+deb7u1 i686 GNU/Linux java version "1.7.0_72"Java(TM) SE Runtime Environment (build 1.7.0_72-b14)Java HotSpot(TM) Server VM (build 24.72-b04, mixed mode) Gelf clients that send logs all based on NxLog last version installed on windows 32 and 64 bit (mostly Windows 2008/2013 Servers)

Date: Fri, 20 Feb 2015 06:28:17 -0800 From: notifications@github.com To: graylog2-server@noreply.github.com CC: andrea.consadori@hotmail.it Subject: Re: [graylog2-server] ERROR: org.graylog2.inputs.codecs.GelfCodec - Could not parse JSON! (#984)

The garbage in the log messages looks very suspicious. Could you please elaborate a little bit on your Graylog setup? Which version of Graylog are you running, how did you install it (manually, OS packages, virtual appliance…), which Java version are you using, and which operating system is Graylog running on?

— Reply to this email directly or view it on GitHub.

andreaconsadori commented 9 years ago

i also see the gelf connection encrease continuously Total connections: 459 (7 active) Show details the GelF Client giving issues is a Windows 2012 Server R2 - Italian with nxlog configured

kroepke commented 9 years ago

The payload does not look like JSON to me at all. Are you sure that nxlog is configured correctly?

The input connections you are referring to implies you are using a GELF TCP input, it is normal that the overall number of connections is increasing if nxlog closes its client connection after sending a message.

andreaconsadori commented 9 years ago

in my config i've Module xm_gelf under extension and Module im_msvistalog in input in, then in output out

Module om_tcp Host graylogipserver Port 12201 OutputType GELF

how can i debug if only some server create issue with gelf?

andreaconsadori commented 9 years ago

the issue seems to be this

com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 18)): only regular white space (\r, \n, \t) is allowed between tokens at [Source:

andreaconsadori commented 9 years ago

if i use udp in gelf client and input the issue disappear

andreaconsadori commented 9 years ago

i make several test and i found that with the same nxlog config if i use gelf_udp all works perfectly, if i use gelf_tcp (changing only Module om_udp to om_tcp) i start to have the problem.

2015-03-31T14:30:14.366+02:00 WARN  [ProcessBuffer] Unable to process event 
MessageEvent{raw=null, message=null}, sequence 6104949
java.lang.IllegalStateException: Failed to decompress the GELF message payload
        at org.graylog2.inputs.codecs.gelf.GELFMessage.getJSON(GELFMessage.java:146)
        at org.graylog2.inputs.codecs.GelfCodec.decode(GelfCodec.java:109)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.processMessage(DecodingProcessor.java:120)
        at org.graylog2.shared.buffers.processors.DecodingProcessor.onEvent(DecodingProcessor.java:79)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:56)
        at org.graylog2.shared.buffers.processors.ProcessBufferProcessor.onEvent(ProcessBufferProcessor.java:33)
        at com.lmax.disruptor.WorkProcessor.run(WorkProcessor.java:138)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.EOFException: Unexpected end of ZLIB input stream
        at java.util.zip.InflaterInputStream.fill(InflaterInputStream.java:240)
        at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
        at java.io.FilterInputStream.read(FilterInputStream.java:107)
        at org.graylog2.plugin.Tools.decompressZlib(Tools.java:195)
        at org.graylog2.inputs.codecs.gelf.GELFMessage.getJSON(GELFMessage.java:133)
        ... 10 more

it seems tobe this error ---> #428

bernd commented 9 years ago

GZIP compressed GELF over TCP is not possible due to the \0 byte delimter as described in #428.

I am closing this issue now.