高级监控报警的日志监控功能提供了慢查询日志、慢索引日志、访问日志和主日志等日志监控能力,方便您实时获取集群日志情况,从运维角度,能够帮助您快速排查和定位问题。本文主要介绍如何通过日志监控功能获取监控数据以及如何快速过滤日志数据。

前提条件

使用限制

  • 高级监控报警功能提供了基础指标、引擎指标和日志数据的监控和报警。阿里云Elasticsearch所有版本都支持对实例的基础指标和日志数据监控,仅内核版本大于1.2.0的6.7.0或7.10.0版本支持引擎指标监控。如果内核版本低于1.2.0,可升级内核版本。具体操作,请参见升级版本
  • 目前仅国内的杭州、北京、上海、深圳、青岛、张家口6个区域的实例支持接入高级监控报警服务。

查看默认日志指标

  1. 登录阿里云Elasticsearch控制台
  2. 在左侧导航栏,单击高级监控报警
  3. 选择监控可视化 > 日志监控,即可看到所有接入实例的日志监控数据。
  4. 查看特定实例的监控数据。
    • 方法一:通过过滤栏筛选instanceID查看监控数据
      1. 鼠标停留在监控窗口,按键盘Esc键,将跳出Grafana菜单页及过滤栏。
      2. 输入instanceID在过滤栏中,输入instanceIdregionId,即可查看该实例慢查询日志、慢索引日志、访问日志和主日志等相关监控数据。监控数据查看方法一
    • 方法二:从实例列表入口跳转
      1. Elasticsearch实例列表,单击目标实例ID/名称
      2. 基本信息页面,选择监控与日志 > 日志查询
      3. 单击高级日志监控,即可查看当前实例的相关数据。
    关键词 标签示例 说明
    avg 慢查询耗时avg 数据节点慢查询平均耗时。
    max 慢查询耗时max 数据节点慢查询最大耗时。
    分布 慢查询耗时分布 秒间隔时间内,慢查询数量分布。例如:
    • 0 ms ≤ search_time_ms(慢查询耗时)< 1000 ms,此区间分布了11020条慢查询日志。
    • 1000 ms≤ search_time_ms(慢查询耗时)< 2000 ms,此区间分布了149条慢查询日志。
    • search_time_ms(慢查询耗时)≥2000 ms,此区间分布了1条慢查询日志。
    条数 慢查询条数 集群中慢查询日志总条数。
    说明
    • 高级监控报警服务中的Grafana监控大盘,使用方式与开源Grafana一致。更多信息,请参见Grafana documentation
    • 高级监控报警服务提供的所有默认监控大盘,均不支持任何修改。如需修改,您可通过自定义监控定制更贴合业务需求的监控大盘。

查询日志

日志监控支持对慢查询日志、慢索引日志、访问日志和主日志进行过滤查询,不同的日志类型来自不同的数据源。具体信息见下表。

数据源 说明
es-slow-search 提供慢查询日志数据。
es-slow-index 提供慢索引日志数据。
es-access-log 提供访问日志数据(当前仅支持6.7.0和7.10.0版本的实例)。
es-instance-search 提供主日志数据。

由于各类日志的查询流程一致,所以本文以慢查询日志为例,介绍日志查询的操作步骤。

  1. 登录阿里云Elasticsearch控制台
  2. 在左侧导航栏,单击高级监控报警
  3. 选择监控可视化 > 日志监控
  4. 日志监控页面,单击慢查询日志页签。
  5. 设置Query

    例如:如果您需要过滤出实例以es-cn-n6w24ma4开头、索引名为geonames、content中包含aggregations并且查询耗时小于等于240ms的慢查询日志,需要设置Query语句为:

    Query: instanceId:es-cn-n6w24ma4* AND index_name: geonames AND content: aggregations AND search_time_ms: <=240
    查询结果
    说明
    • Query支持><=>=<=ANDOR 等条件符,具体请参考Query string
    • 不同的日志属性支持的数据源不一样,不同的数据源支持的query字段存在部分不同。例如上面的慢查询日志页面中es-slow-search表示慢查询数据源,提供的search_time_ms表示查询时间。具体参考日志查询内置字段
    • 日志监控页面中仅Query可用,且仅支持对日志数据的检索,其他检索项修改后无法生效。例如将检索范围的默认logs修改为sum或其他值,则不会生效。
  6. 单击Run Query
  7. 单击其中一条日志,即可在Detected fields下查看日志内容及Query可查询的具体字段。
    查看日志内容
说明
  • Detected fields key部分为Query支持的过滤字段,例如es_available_zone表示可用区、node表示节点,具体请参见日志查询内置字段
  • 不同的日志属性支持的数据源不一样,不同的数据源支持的query字段存在部分不同。例如:仅慢查询数据源提供search_time_ms,而慢写入中未提供。具体请参见日志查询内置字段

日志查询内置字段列表

  • 独立字段
    类型 独立字段 说明
    慢查询 search_time_ms 查询耗时时长。
    search_total_hits 查询命中的文档数。
    search_type 查询类型
    shard_id 执行该条查询的shard编号。
    slow_search_log_type 慢日志类型
    total_shards 总shard数。
    content query查询体。
    慢写入 index_time_ms 写入耗时时长。
    content query查询体。
    主日志 content query查询体。
    访问日志 node 产生访问日志的Elasticsearch节点。
    query 执行的查询体,过滤时请使用source代替query字段做查询。
    remote 远程服务器IP地址。
    bodySize 请求大小。
    uri 访问路径。
    说明 独立字段仅说明各个日志类型支持的不同的字段部分,相同字段部分请参考下表通用字段。
  • 通用字段
    通过字段 说明
    es_available_zone 实例可用区。
    es_region 实例所在区域。
    es_resourceUid 实例uid。
    es_resource_group 实例所在资源组。
    host 节点ip。
    instanceId 实例id。
    level 日志级别。
    说明_开头的字段均为Elasticsearch元数据自带的。