通过阿里云Elasticsearch的日志功能,您可以输入关键字和设置时间范围,锁定需要查询的日志内容,快速定位集群问题,辅助集群运维。本文为您介绍如何查询日志以及常见日志的使用说明。

操作步骤

  1. 登录阿里云Elasticsearch控制台
  2. 在左侧导航栏,单击Elasticsearch实例
  3. 进入目标实例。
    1. 在顶部菜单栏处,选择资源组和地域。
    2. 在左侧导航栏,单击Elasticsearch实例,然后在Elasticsearch实例中单击目标实例ID。
  4. 在左侧导航栏,单击日志查询,查看集群的运行日志。
    阿里云Elasticsearch支持六种类型的日志:主日志、Searching慢日志、Indexing慢日志、GC日志、ES访问日志和异步写入日志。
    说明 目前ES访问日志仅支持通用商业版6.7.0及以上版本的实例,且要将内核升级至最新版本才能使用,详情请参见升级版本
  5. 在日志页面的搜索框中,输入查询条件,选择开始时间和结束时间,单击搜索
    阿里云Elasticsearch最多支持查询连续7天内的日志,日志默认按时间倒序展示。支持基于Lucene的日志查询语法,详情请参见Query string syntax

    以查询content包含关键字healthlevelinfohost172.16.xx.xx的主日志为例,示例查询条件为:host:172.16.xx.xx AND content:health AND level:info

    ES日志查询搜索条件
    注意
    • 查询条件中的AND必须为大写。
    • 如果结束时间为空,那么结束时间默认为当前时间。如果开始时间为空,那么开始时间默认为结束时间减去1小时。
    • 阿里云Elasticsearch最大支持返回10000条日志,如果在返回的10000条日志中,未覆盖到您所需要的日志内容,可以通过缩短查询时间范围来获取需要的日志。
    搜索成功后,阿里云Elasticsearch会根据您的查询条件返回日志查询结果,并展示在日志查询页面。

日志说明

主日志

主日志主要展示集群的运行日志,包括日志产生的时间、日志所在的节点IP和日志内容。ES日志查询结果
  • 时间:日志产生时间。
  • 节点IP:实例中节点的IP地址。
  • 内容:主要由levelhosttimecontent组成。
    名称 描述
    level 日志级别。包括trace、debug、info、warn、error等。
    说明 GC日志没有level
    host 生成日志的节点的IP地址。
    time 日志产生的时间。
    content 日志的主要内容。

慢日志

慢日志默认开启,主要展示超过指定时间阈值的索引(Indexing慢日志)和查询(Searching慢日志)日志。在集群负载不均、读写异常、处理数据很慢等情况下,您可以通过查询慢日志来分析具体原因。

默认情况下,阿里云Elasticsearch的慢日志会记录5~10秒的读写操作,这样不利于排查问题。因此在实例创建完成后,您可以选择以下任意一种方式,降低日志记录的时间间隔,以抓取更多的日志:
  • 集群创建成功后,场景化配置模板默认已开启,且会自动应用到集群中。其中索引模板配置中定义了慢日志配置,您无需修改保持默认即可。其中通用场景默认的慢日志配置如下:
      "settings": {
        "index": {
          "search": {
            "slowlog": {
              "level": "info",
              "threshold": {
                "fetch": {
                  "warn": "200ms",
                  "trace": "50ms",
                  "debug": "80ms",
                  "info": "100ms"
                },
                "query": {
                  "warn": "500ms",
                  "trace": "50ms",
                  "debug": "100ms",
                  "info": "200ms"
                }
              }
            }
          },
          "refresh_interval": "10s",
          "unassigned": {
            "node_left": {
              "delayed_timeout": "5m"
            }
          },
          "indexing": {
            "slowlog": {
              "level": "info",
              "threshold": {
                "index": {
                  "warn": "200ms",
                  "trace": "20ms",
                  "debug": "50ms",
                  "info": "100ms"
                }
              },
              "source": "1000"
            }
          }
        }
      }
    说明 如果场景化配置模板不启用状态,您需要参见修改场景化配置模板,启用并提交模板配置,才可以将默认的慢日志配置应用到集群。
  • 参见登录Kibana控制台,登录该实例的Kibana控制台,执行以下命令,修改慢日志配置。
    PUT _settings
    {
        "index.indexing.slowlog.threshold.index.warn" : "200ms",
        "index.indexing.slowlog.threshold.index.trace" : "20ms",
        "index.indexing.slowlog.threshold.index.debug" : "50ms",
        "index.indexing.slowlog.threshold.index.info" : "100ms",
        "index.search.slowlog.threshold.fetch.warn" : "200ms",
        "index.search.slowlog.threshold.fetch.trace" : "50ms",
        "index.search.slowlog.threshold.fetch.debug" : "80ms",
        "index.search.slowlog.threshold.fetch.info" : "100ms",
        "index.search.slowlog.threshold.query.warn" : "500ms",
        "index.search.slowlog.threshold.query.trace" : "50ms",
        "index.search.slowlog.threshold.query.debug" : "100ms",
        "index.search.slowlog.threshold.query.info" : "200ms"
    }
修改完成后,在执行读写任务时,如果执行时间超过了以上配置的时间,您就可以在慢日志页签中查询到对应的日志。慢日志

GC日志

GC日志默认开启,包含日志产生的时间、所在节点的IP地址和日志内容。详细信息,请参见主日志GC日志

相关文档

ListSearchLog