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

前提条件

  • 已在支持高级监控报警服务的地域下创建阿里云Elasticsearch实例:
    • 目前高级监控报警服务支持的地域包括:杭州、北京、上海、深圳、青岛、张家口、成都、广州、乌兰察布、北京金融云、美国东部、美国西部、日本、印度、印度尼西亚、中国香港,具体以控制台为准。
    • 创建实例的具体操作,请参见创建阿里云Elasticsearch实例
  • 熟悉Grafana监控大屏的使用方法。详细信息,请参见Grafana Dashboard

使用限制

高级监控报警功能提供了基础指标、引擎指标和日志数据的监控和报警。阿里云Elasticsearch所有版本都支持对实例的基础指标和日志数据监控,仅内核版本大于1.2.0的6.7.0或7.10.0版本支持引擎指标监控。如果内核版本低于1.2.0,可升级内核版本。具体操作,请参见升级版本

查看默认日志指标

  1. 登录阿里云Elasticsearch控制台
  2. 在左侧导航栏,单击高级监控报警
  3. 选择监控可视化 > 日志监控,即可看到所有接入实例的日志监控数据。
  4. 查看特定实例的监控数据。
    • 方法一:通过过滤栏筛选instanceID查看监控数据
      1. 鼠标停留在监控窗口,按键盘Esc键,将跳出Grafana菜单页及过滤栏。
      2. 在过滤栏中,选择instanceIdregionIdlevel,即可查看该实例的慢查询日志、慢索引日志、访问日志和主日志等相关监控数据。监控数据查看方法一
    • 方法二:从实例列表入口跳转
      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语句为:

    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数。
    contentquery查询体。
    慢写入index_time_ms写入耗时时长。
    contentquery查询体。
    主日志contentquery查询体。
    访问日志node产生访问日志的Elasticsearch节点。
    query执行的查询体,过滤时请使用source代替query字段做查询。
    remote远程服务器IP地址。
    bodySize请求大小。单位:Byte。
    uri访问路径。
    说明 独立字段仅说明各个日志类型支持的不同的字段部分,相同字段部分请参考下表通用字段。
  • 通用字段
    通过字段说明
    es_available_zone实例可用区。
    es_region实例所在地域。
    es_resourceUid实例UID。
    es_resource_group实例所在资源组。
    host节点IP。
    instanceId实例ID。
    level日志级别,包括trace、debug、info、warn、error等。
    说明_开头的字段均为Elasticsearch元数据自带的字段。