此错误通常发生在使用libbeat传输数据时。 首先,请确保您的libbeat和Filebeat版本匹配。 如果版本匹配,那么很可能是因为Filebeat没能正确识别libbeat的协议版本。 请检查您的libbeat config中的协议版本。 例如,如果您正在使用5.x版本的Filebeat,则需要使用5.x版本的libbeat,并且需要设置协议版本为2。 您可以通过以下方式在libbeat config中设置协议版本:
output.logstash: hosts: ["localhost:5044"] protocol: 2
如果您正在使用较早版本的Filebeat,则可能需要将协议版本设置为1。 通过按照上述步骤进行设置,可以解决这个错误。