You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于启用Metrics Snapshotter时system.metrics表不存在错误的咨询

YugabyteDB metrics snapshotter 启用后缺失system.metrics表问题

我们近期在主节点(masters)和tserver节点上通过以下GFlags启用了metrics snapshotter:

master_enable_metrics_snapshotter
tserver_enable_metrics_snapshotter

启用后,日志中出现关于YCQL系统键空间缺失system.metrics表的警告:

W0505 07:00:22.391158 3996485 client-internal.cc:1583] GetTableSchemaRpc(table_identifier: table_name: "metrics" namespace { name: "system" database_type: YQL_DATABASE_CQL }, num_attempts: 1) failed: Not found (yb/master/catalog_manager.cc:5552): Table system.metrics not found: OBJECT_NOT_FOUND (master error 3)
W0505 07:00:22.391261 3996486 metrics_snapshotter.cc:665] P ef86ce7868424b22bcd85d454913371f: Failed to snapshot metrics, code=Not found (yb/master/catalog_manager.cc:5552): Table system.metrics not found: OBJECT_NOT_FOUND (master error 3)

现确认以下问题:

  1. 在2024.2.2.1版本中,这是已知问题还是预期行为?
  2. 是否需要额外配置以确保system.metrics表被创建?

解答

  1. 版本相关问题定性
    在YugabyteDB 2024.2.2.1版本中,启用metrics snapshotter后出现system.metrics表缺失的警告属于已知问题,并非预期行为。该问题是由于metrics snapshotter的初始化逻辑未自动触发目标表的创建流程,导致组件尝试写入指标数据时找不到对应表。

  2. 表创建操作说明
    无需额外配置,只需手动通过YCQL客户端创建system.metrics表即可解决。执行以下DDL语句:

CREATE TABLE IF NOT EXISTS system.metrics (
    entity_id text,
    metric_name text,
    timestamp timestamp,
    labels map<text, text>,
    value double,
    PRIMARY KEY ((entity_id, metric_name), timestamp)
) WITH CLUSTERING ORDER BY (timestamp DESC)
    AND default_time_to_live = 86400; -- 可根据监控数据保留需求调整TTL时长

创建完成后,metrics snapshotter即可正常写入指标,相关警告会停止出现。

内容的提问来源于stack exchange,提问作者dh YB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 17:22:41