PostgreSQL 模块

编辑

此模块定期从 PostgreSQL 服务器获取指标。

默认 metricset 为 activitybgwriterdatabase

仪表盘

编辑

PostgreSQL 模块附带一个预定义的仪表盘,显示与数据库相关的指标。例如

metricbeat postgresql overview

模块特定配置说明

编辑

配置 hosts 选项时,必须使用以下格式的 Postgres URL

[postgres://][user:pass@]host[:port][?options]

URL 可以很简单,例如

- module: postgresql
  hosts: ["postgres://127.0.0.1"]

或者更复杂,例如

- module: postgresql
  hosts: ["postgres://127.0.0.1:40001?sslmode=disable", "postgres://otherhost:40001"]

您还可以使用相应的配置选项分别指定用户名和密码。URL 中指定的用户名和密码优先于 usernamepassword 配置选项中指定的用户名和密码。

- module: postgresql
  metricsets: ["status"]
  hosts: ["postgres://127.0.0.1:5432"]
  username: root
  password: test

兼容性

编辑

此模块已在 PostgreSQL 9、10、11、12 和 13 上进行了测试。预计它适用于所有版本 >= 9。

示例配置

PostgreSQL 模块支持在 模块 中描述的标准配置选项。这是一个示例配置

metricbeat.modules:
- module: postgresql
  enabled: true
  metricsets:
    # Stats about every PostgreSQL database
    - database

    # Stats about the background writer process's activity
    - bgwriter

    # Stats about every PostgreSQL process
    - activity

    # Stats about every statement executed in the server. It requires the
    # `pg_stats_statement` library to be configured in the server.
    #- statement

  period: 10s

  # The host must be passed as PostgreSQL URL. Example:
  # postgres://127.0.0.1:5432?sslmode=disable
  # The available parameters are documented here:
  # https://godoc.org/github.com/lib/pq#hdr-Connection_String_Parameters
  hosts: ["postgres://127.0.0.1:5432"]

  # Username to use when connecting to PostgreSQL. Empty by default.
  #username: user

  # Password to use when connecting to PostgreSQL. Empty by default.
  #password: pass

Metricset

以下 metricset 可用