本文介绍如何使用Elasticsearch Serverless服务,完成日志和指标数据流的创建和数据接入,使用全观测应用中心进行可视化查询分析。

前提条件

拥有Elasticsearch Serverless应用的管理权限,具体操作请参见Elasticsearch Serverless自定义权限策略

操作流程

操作流程图
  1. 步骤一:开通服务
  2. 步骤二:创建应用
  3. 步骤三:创建数据流
  4. 步骤四:接入数据
  5. 步骤五:查看数据流监控
  6. 步骤六:可视化查询分析

步骤一:开通服务

  1. 登录阿里云Elasticsearch控制台
  2. 在顶部菜单栏,选择地域。
  3. 在左侧导航栏,单击Elasticsearch Serverless服务
  4. Elasticsearch Serverless服务页面,单击立即开通
    立即开通
  5. 在服务开通页面,选中服务协议,单击立即开通,根据页面提示完成开通。
    开通服务

步骤二:创建应用

进入Elasticsearch Serverless服务页面,在应用管理页面创建一个应用,具体操作请参见应用管理创建应用

步骤三:创建数据流

进入Elasticsearch Serverless服务页面,在数据流管理页面创建一个日志类型的数据流,具体操作请参见数据流管理创建数据流

步骤四:接入数据

本文以通过API推送日志数据到Elasticsearch Serverless服务为例,实现脚本如下:
curl -XPOST '<Elasticsearch Serverless服务的Endpoint>/<应用名称>/<数据流名称>/elasticsearch/logs/push'  -H  "X-Api-Key:<Token>" -H 'Content-Type: application/ndjson' -d '
{"timestamp": "2022-11-03T20:26:10.488Z","message": "User logged in","user_id": 10,"admin": true}'
参数说明
<Elasticsearch Serverless服务的Endpoint>Elasticsearch Serverless服务的公网访问地址VPC访问地址,获取方式请参见查看应用详情
<应用名称>目标应用名称。
<数据流名称>目标数据流名称。
<token>已启用的token,获取方式请参见管理Token
{"timestamp": "2022-11-03T20:26:10.488Z","message": "User logged in","user_id": 10,"admin": true}'具体的日志数据。通过API推送日志数据时,需要注意:
  • 脚本需要遵循ndjson格式,详细信息请参见Bulk API
  • 时间字段默认为UTC时间。仅支持Elasticsearch默认格式,即strict_date_optional_timeepoch_millis,详细信息请参见Built In FormatsData field type。示例如下:
    • 示例一:2022-11-03T20:26:10.488Z
    • 示例二:2022-11-03'T'20:26:10.488Z
    • 示例三:1667464396000(时间戳单位为毫秒)
说明 实际应用中,您也可以通过其他方式传入数据。例如,通过访问地址Endpoint写入数据,以及对接Prometheus remote write传入指标数据。

步骤五:查看数据流监控

进入Elasticsearch Serverless服务页面,在数据流管理页面的数据流监控页签下,选择目标数据流,查看该数据流的基本信息和指定时间段内的监控信息,具体操作请参见查看数据流监控查看数据流监控

步骤六:可视化查询分析

进入Elasticsearch Serverless服务页面,在日志查询页面,选择目标数据流,可视化查询与分析日志数据,具体操作请参见日志查询日志查询