kibana6 访问出现"code":"ECONNRESET"总是出现Request Timeout after 30000ms

  • 问题描述

ELK6.2.3日志系统,访问kibana界面出现该提示,无法访问后端es数据,但是es集群是健康状态

  • 问题原因

    • kibana默认每2.5秒对es集群进行健康检查,如果短时间内没有数据返回,出现该报错
    • 相关配置参数:elasticsearch.healthCheck.delay
    • 代码如下:

    kibana/src/core_plugins/elasticsearch/lib/health_check.js

    const callDataAsKibanaUser = server.plugins.elasticsearch.getCluster('data').callWithInternalUser;
    const REQUEST_DELAY = config.get('elasticsearch.healthCheck.delay');
    
    plugin.status.yellow('Waiting for Elasticsearch');
    function waitForPong(callWithInternalUser, url) {
    
  • 问题处理

    • 修改kibana.yml 将参数elasticsearch.healthCheck.delay 数值增大 单位:ms
    • 重启kibana服务
  • 解决方法
    - 每当再次检查时如若返回数据不及时,还会出现该问题,临时解决方法:设置时间长些,例如:3天,然后添加定时任务每两天定时重启kibana服务,注意观察http://127.0.0.1:5601/app/kibana 返回状态码,每隔10min检测是否是200,如果不是,继续重启kibana服务。
    - 减少分片,可以提升每次check的响应速度
    - 修改kibana源码,禁止健康检查,没有使用改方法。

posted @ 2018-07-20 20:15  石Stone头  阅读(1837)  评论(0编辑  收藏  举报