栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

prometheus数据库监控-那些你必须知道的事儿

prometheus数据库监控-那些你必须知道的事儿

技术导语: 正如标题描述的,本章将介绍如何通过prometheus的客户端工具postgres-exporter实现postgresql数据库的监控,当然prometheus社区还提供了其他类型的数据库监控客户端,如mysql-exporter,这里就不多列举了。

客户端可执行文件

postgres-exporter

客户端配置文件

custom.yaml

pg_replication:
  query: "SELECt EXTRACT(EPOCH FROM (now() - pg_last_xact_replay_timestamp())) as lag"
  metrics:
    - lag:
        usage: "GAUGE"
        description: "Replication lag behind master in seconds"

客户端启动脚本

必须定义环境变量:

  • DATA_SOURCE_NAME:pg库连接信息,安全起见,建议创建只读用户用于监控使用。
  • PG_EXPORTER_EXTEND_QUERY_PATH:告警配置信息文件路径。

postgresql_startup.sh

#!/bin/bash
export DATA_SOURCE_NAME="postgresql://readonly:Readonly@123@192.168.6.146:5432/postgres?sslmode=disable"
export PG_EXPORTER_EXTEND_QUERY_PATH="/etc/prometheus/custom.yaml"
nohup /usr/local/bin/postgres_exporter --web.listen-address=":9058"  >>/var/log/prometheus/postgres_exporter.log 2>&1 &
客户端metrics信息示例

http://ip:9058/metrics

告警配置

举个栗子,假设指标pg_replication_lag结果值>10000即触发告警,则配置如下。
rules.yml

groups:
- name: rule1
  rules:
  - alert: '测试'
    expr: 'pg_replication_lag>10000'
    for: 1s
    labels:
      severity: 一般
    annotations:
      value: '{{ $value }}'
      strategyid: 1

至于生成的告警信息如何收集并且有效管理,请参照之前的文章。
如果您喜欢我的文章,请关注我哦。后续会提供更多的干货分享。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/317712.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号