Logstash错误排查之-`Don't know how to handle Java::JavaLang::NullPointerException for LogStash::Pipeli...

现象

今天写好logstash后(kafka-》 logstash -》kafka ),本地测试OK后,上线后,疯狂重启,错误日志如下(没有什么用):

An exception happened when converging configuration {:exception=>LogStash::Error, :message=>"Don't know how to handle `Java::JavaLang::NullPointerException` for `LogStash::PipelineAction::Create/pipeline_id:main`"

使用版本

os:Centos 6.x
logstash:6.0.0

排查

  1. google看到github已经有这个issue了,地址issue。大概意思这个报错不太细致,会有改进。具体改进信息是在这里。我看到6.x都包括,以为是6.0.0会修复,但重新下载6.0.0没有解决,才点开commit id发现是6.2以上。
    2.使用6.0.1测试,发现有定位错误的信息,打开代码查看对应行错误,才知道logstash 6.x不支持以下语法:
# 判断tag数组是空
if [tag] == [] {
    # your code
}

结论

1.使用前要用和生产环境一致版本的logstash进行测试,以免有时候想当然不用测试,导致不可用;

  1. 6.x版本的logstash好像确实有bug,之前有同事使用6.4.x也发现错误,建议没有新的功能,建议使用logstash5.x的
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容