Help us learn about your current experience with the documentation. Take the survey.
监控 Gitaly 集群 (Praefect)
要监控 Gitaly 集群 (Praefect),您可以使用 Prometheus 指标。有两个独立的指标端点可供抓取指标:
- 默认的
/metrics端点。 /db_metrics,其中包含需要数据库查询的指标。
默认的 Prometheus /metrics 端点
/metrics 端点提供以下指标:
-
gitaly_praefect_read_distribution,一个用于跟踪读取分布的 counter。它有两个 label:virtual_storage。storage。
它们反映了为此 Praefect 实例定义的配置。
-
gitaly_praefect_replication_latency_bucket,一个 histogram,用于衡量复制作业开始后完成复制所需的时间。 -
gitaly_praefect_replication_delay_bucket,一个 histogram,用于衡量从创建复制作业到启动作业之间经过的时间。 -
gitaly_praefect_connections_total,到 Praefect 的总连接数。 -
gitaly_praefect_method_types,每个节点的 accessor 和 mutator RPCs 的计数。
要监控强一致性,您可以使用以下 Prometheus 指标:
gitaly_praefect_transactions_total,已创建和已投票的事务数量。gitaly_praefect_subtransactions_per_transaction_total,节点为单个事务投票的次数。如果在单个事务中更新多个引用,这可能会发生多次。gitaly_praefect_voters_per_transaction_total:参与事务的 Gitaly 节点数量。gitaly_praefect_transactions_delay_seconds,由等待事务提交所引入的服务器端延迟。gitaly_hook_transaction_voting_delay_seconds,由等待事务提交所引入的客户端延迟。
要监控仓库验证,请使用以下 Prometheus 指标:
gitaly_praefect_verification_jobs_dequeued_total,由 worker 接取的验证作业数量。gitaly_praefect_verification_jobs_completed_total,由 worker 完成的验证作业数量。resultlabel 指明了作业的最终结果:valid表示预期的副本存在于存储上。invalid表示预期应存在的副本在存储上不存在。error表示作业失败,需要重试。
gitaly_praefect_stale_verification_leases_released_total,已释放的陈旧验证租约数量。
您也可以监控 Praefect 日志。
数据库指标 /db_metrics 端点
/db_metrics 端点提供以下指标:
gitaly_praefect_unavailable_repositories,没有健康、最新副本的仓库数量。gitaly_praefect_replication_queue_depth,复制队列中的作业数量。gitaly_praefect_verification_queue_depth,待验证的副本总数。