3.4. 为 Thanos Querier 启用查询日志记录
对于 openshift-monitoring
项目中的默认平台监控,您可以启用 Cluster Monitoring Operator 来记录 Thanos Querier 运行的所有查询。
由于不支持日志轮转,因此仅在需要对问题进行故障排除时才临时启用此功能。完成故障排除后,通过恢复您对 ConfigMap
对象所做的更改来禁用查询日志记录,以启用该功能。
先决条件
-
已安装 OpenShift CLI(
oc
)。 -
您可以使用具有
cluster-admin
集群角色的用户身份访问集群。 -
您已创建
cluster-monitoring-config
ConfigMap
对象。
流程
您可以在 openshift-monitoring
项目中为 Thanos Querier 启用查询日志记录:
编辑
openshift-monitoring
项目中的cluster-monitoring-config
ConfigMap
对象:$ oc -n openshift-monitoring edit configmap cluster-monitoring-config
在
data/config.yaml
中添加thanosQuerier
部分并添加值,如下例所示:apiVersion: v1 kind: ConfigMap metadata: name: cluster-monitoring-config namespace: openshift-monitoring data: config.yaml: | thanosQuerier: enableRequestLogging: <value> 1 logLevel: <value> 2
保存文件以使改变生效。
警告当您将更改保存到监控配置映射时,可能会重新部署相关项目中的 Pod 和其他资源。该项目中正在运行的监控进程也可能被重启。
验证
验证 Thanos Querier pod 是否正在运行。以下示例命令列出了
openshift-monitoring
项目中的 pod 状态:$ oc -n openshift-monitoring get pods
使用以下示例命令作为模型运行测试查询:
$ token=`oc sa get-token prometheus-k8s -n openshift-monitoring` $ oc -n openshift-monitoring exec -c prometheus prometheus-k8s-0 -- curl -k -H "Authorization: Bearer $token" 'https://thanos-querier.openshift-monitoring.svc:9091/api/v1/query?query=cluster_version'
运行以下命令来读取查询日志:
$ oc -n openshift-monitoring logs <thanos_querier_pod_name> -c thanos-query
注意因为
thanos-querier
pod 是高度可用的(HA)pod,所以您可能只能看到一个 pod 的日志。-
检查日志记录的查询信息后,通过将配置映射中的
enableRequestLogging
值更改为false
来禁用查询日志记录。
其他资源
- 有关创建监控配置映射的步骤,请参阅准备配置监控堆栈。