在服务运行过程中,您可以在Knative上观测当前服务运行的状况,包括每秒查询数QPS(Query per Second)、平均响应时RT(Response Time)以及Pod扩缩容趋势。本文主要介绍如何配置和观测这些信息。
创建并配置Logstore
- 登录日志服务控制台。
- 在Project列表区域,单击目标ASK集群对应的日志服务Project名称。
- 在日志存储页面的日志库页签,单击+图标。
- 在创建Logstore面板中配置好相关参数后,单击确定。更多关于创建Logstore参数的相关描述,请参见管理Logstore。
- 在创建成功对话框中,单击数据接入导向。
- 在数据接入区域,单击Docker标准输出。

- 在创建机器组步骤,单击使用现有机器组。
- 在机器组配置步骤,选择已有机器组后,单击下一步。
- 在数据源设置步骤,使用以下模板样例设置日志服务的采集日志规则后,单击下一步。
{
"inputs": [
{
"detail": {
"IncludeEnv": {
"QUEUE_SERVING_PORT": "8012"
},
"ExcludeLabel": {}
},
"type": "service_docker_stdout"
}
]
}
- 在查询分析配置步骤,保留选择默认勾选项,单击下一步。
- 在结束步骤页签的查询日志区域,单击立即查询。
- 单击查询分析观察日志输出。

- 从查询分析属性列表中选择属性。

- 在查询分析面板单击自动生成索引,在弹出的自动生成索引属性对话框中,单击追加,然后在content字段中添加以下参数。
参数名称 |
类型 |
别名 |
httpRequest.latency |
text |
latency |
httpRequest.status |
long |
status |
httpRequest.revisionName |
text |
revision |

配置QPS统计
- 登录日志服务控制台。
- 在Project列表区域,单击目标ASK集群对应的日志服务Project名称。
- 在日志存储页面的日志库的页签,单击目标Logstore。
- 在查询/分析文本框中输入以下SQL查询命令。

httpRequest | select date_trunc('minute' , __time__) as stamp, count(*) as num, revision from log group by stamp,revision order by stamp
- 单击流图,进行属性配置之后,单击添加到仪表盘。
配置RT统计
- 登录日志服务控制台。
- 在Project列表区域,单击目标ASK集群对应的日志服务Project名称。
- 在日志存储页面的日志库的页签,单击目标Logstore。
- 在查询/分析文本框中输入以下SQL查询命令。
httpRequest|select stamp as timestamp, trt as rt, revision from (select date_trunc('minute' , __time__) as stamp, round (avg(cast(replace(latency,'s') as double)), 6) as trt, revision from log group by stamp, revision
order by stamp
limit 100000)
- 单击流图,进行属性配置之后,单击添加到仪表盘。
配置Pod扩缩容趋势统计
- 登录日志服务控制台。
- 在Project列表区域,单击目标ASK集群对应的日志服务Project名称。
- 在日志存储页面的日志库的页签 ,单击audit名称开头的Logstore。
- 从查询分析属性列表中选择属性。
- 在查询分析面板的指定字段查询区域的responseObject字段添加以下参数。
参数名称 |
参数类型 |
别名 |
metadata.labels.serving.knative.dev/revision |
text |
revision |
metadata.labels.serving.knative.dev/service |
text |
service |
status.readyReplicas |
long |
readyReplicas |
status.replicas |
long |
replicas |
- 在查询/分析文本框中输入以下SQL查询命令。
objectRef.resource: deployments and responseStatus.code: 200 and ( verb: update or verb: get)| select case when "revision" is null then '无' else "revision" end as "revision", "t" as timestamp, total,concat('total:', cast(total AS varchar), ', ready: ', cast(ready AS varchar), ', notReady',cast((total-ready) AS varchar)) as detail from (select date_trunc('minute' , __time__) as t, max(replicas) as total, max(readyReplicas) as ready, revision from log where service='event-display-common' group by t, revision order by t)
- 单击流图,进行属性配置之后,单击添加到仪表盘。
观测服务运行状况
为了更好地观测服务运行状况的图表数据,您可将多个图表放在一个仪表盘进行展示,具体有以下两种方式: