从 PostgreSQL 服务器收集的指标。
postgresql
PostgreSQL 指标。
activity
每个服务器进程一个文档,显示与该进程当前活动相关的信息,例如状态和当前查询。通过查询 pg_stat_activity 收集。
-
postgresql.activity.database.oid
-
此后端连接到的数据库的 OID。
type: long
-
postgresql.activity.database.name
-
此后端连接到的数据库的名称。
type: keyword
-
postgresql.activity.pid
-
此后端的进程 ID。
type: long
-
postgresql.activity.user.id
-
登录到此后端的用户的 OID。
type: long
-
postgresql.activity.user.name
-
登录到此后端的用户的名称。
-
postgresql.activity.application_name
-
连接到此后端的应用程序的名称。
-
postgresql.activity.client.address
-
连接到此后端的客户端的 IP 地址。
-
postgresql.activity.client.hostname
-
连接的客户端的主机名,由 client_addr 的反向 DNS 查找报告。
-
postgresql.activity.client.port
-
客户端用于与此后端通信的 TCP 端口号,如果使用的是 Unix 套接字,则为 -1。
type: long
-
postgresql.activity.backend_type
-
当前后端的类型。可能的类型包括 autovacuum launcher、autovacuum worker、logical replication launcher、logical replication worker、parallel worker、background writer、client backend、checkpointer、startup、walreceiver、walsender 和 walwriter。扩展程序可以注册具有附加后端类型的 worker。
-
postgresql.activity.backend_start
-
此进程启动的时间,即客户端连接到服务器的时间。
type: date
-
postgresql.activity.transaction_start
-
此进程的当前事务启动的时间。
type: date
-
postgresql.activity.query_start
-
当前活动查询启动的时间,或者如果状态不是活动状态,则为上次查询启动的时间。
type: date
-
postgresql.activity.state_change
-
上次更改状态的时间。
type: date
-
postgresql.activity.waiting
-
如果此后端当前正在等待锁,则为真。
type: boolean
-
postgresql.activity.state
-
此后端的当前总体状态。可能的值为
- active: 后端正在执行查询。
- idle: 后端正在等待新的客户端命令。
- idle in transaction: 后端处于事务中,但当前未执行查询。
- idle in transaction (aborted): 此状态类似于 idle in transaction,只是事务中的一个语句导致了错误。
- fastpath function call: 后端正在执行快速路径函数。
- disabled: 如果在此后端中禁用了 track_activities,则报告此状态。
-
postgresql.activity.query
-
此后端最近查询的文本。如果状态为活动状态,则此字段显示当前正在执行的查询。在所有其他状态下,它将显示上一次执行的查询。
-
postgresql.activity.wait_event
-
如果后端当前正在等待,则为等待事件名称。
-
postgresql.activity.wait_event_type
-
后端正在等待的事件类型。
bgwriter
有关后台写入进程活动情况的统计信息。使用 pg_stat_bgwriter 查询收集。
-
postgresql.bgwriter.checkpoints.scheduled
-
已执行的计划检查点的数量。
type: long
-
postgresql.bgwriter.checkpoints.requested
-
已执行的请求检查点的数量。
type: long
-
postgresql.bgwriter.checkpoints.times.write.ms
-
在将文件写入磁盘的检查点处理部分中花费的总时间(以毫秒为单位)。
type: float
-
postgresql.bgwriter.checkpoints.times.sync.ms
-
在将文件同步到磁盘的检查点处理部分中花费的总时间(以毫秒为单位)。
type: float
-
postgresql.bgwriter.buffers.checkpoints
-
在检查点期间写入的缓冲区数量。
type: long
-
postgresql.bgwriter.buffers.clean
-
后台写入进程写入的缓冲区数量。
type: long
-
postgresql.bgwriter.buffers.clean_full
-
后台写入进程因已写入过多缓冲区而停止清理扫描的次数。
type: long
-
postgresql.bgwriter.buffers.backend
-
后端直接写入的缓冲区数量。
type: long
-
postgresql.bgwriter.buffers.backend_fsync
-
后端必须执行其自身 fsync 调用(通常由后台写入进程处理,即使后端执行其自身写入也是如此)的次数
type: long
-
postgresql.bgwriter.buffers.allocated
-
分配的缓冲区数量。
type: long
-
postgresql.bgwriter.stats_reset
-
上次重置这些统计信息的时间。
type: date
database
每个数据库一行,显示数据库范围的统计信息。通过查询 pg_stat_database 收集
-
postgresql.database.oid
-
此后端连接到的数据库的 OID,或共享资源的 0。
type: long
-
postgresql.database.name
-
此后端连接到的数据库的名称,共享资源为空。
type: keyword
-
postgresql.database.number_of_backends
-
当前连接到此数据库的后端数量。
type: long
-
postgresql.database.transactions.commit
-
已提交的此数据库中的事务数。
type: long
-
postgresql.database.transactions.rollback
-
已回滚的此数据库中的事务数。
type: long
-
postgresql.database.blocks.read
-
在此数据库中读取的磁盘块数。
type: long
-
postgresql.database.blocks.hit
-
磁盘块已经在缓冲区高速缓存中找到的次数,因此无需读取(这仅包括 PostgreSQL 缓冲区高速缓存中的命中,不包括操作系统文件系统高速缓存中的命中)。
type: long
-
postgresql.database.blocks.time.read.ms
-
在此数据库中后端读取数据文件块所花费的时间(以毫秒为单位)。
type: double
-
postgresql.database.blocks.time.write.ms
-
在此数据库中后端写入数据文件块所花费的时间(以毫秒为单位)。
type: double
-
postgresql.database.rows.returned
-
在此数据库中查询返回的行数。
type: long
-
postgresql.database.rows.fetched
-
在此数据库中查询获取的行数。
type: long
-
postgresql.database.rows.inserted
-
在此数据库中查询插入的行数。
type: long
-
postgresql.database.rows.updated
-
在此数据库中查询更新的行数。
type: long
-
postgresql.database.rows.deleted
-
在此数据库中查询删除的行数。
type: long
-
postgresql.database.conflicts
-
在此数据库中因与恢复冲突而取消的查询数。
type: long
-
postgresql.database.temporary.files
-
在此数据库中查询创建的临时文件数量。所有临时文件都将被计入,无论创建临时文件的原因是什么(例如,排序或哈希),也不管 log_temp_files 设置如何。
type: long
-
postgresql.database.temporary.bytes
-
在此数据库中查询写入临时文件的总数据量。所有临时文件都将被计入,无论创建临时文件的原因是什么,也不管 log_temp_files 设置如何。
type: long
-
postgresql.database.deadlocks
-
在此数据库中检测到的死锁数。
type: long
-
postgresql.database.stats_reset
-
上次重置这些统计信息的时间。
type: date
statement
每个用户每个数据库每个查询一个文档,显示与该查询调用相关的信息,例如 CPU 使用率和总时间。通过查询 pg_stat_statements 收集。
-
postgresql.statement.user.id
-
运行查询的后端登录的用户的 OID。
type: long
-
postgresql.statement.database.oid
-
查询运行所在的数据库的 OID。
type: long
-
postgresql.statement.query.id
-
语句的 ID。
type: long
-
postgresql.statement.query.text
-
查询文本
-
postgresql.statement.query.calls
-
查询运行的次数。
type: long
-
postgresql.statement.query.rows
-
查询返回的总行数。
type: long
-
postgresql.statement.query.time.total.ms
-
运行查询所花费的总毫秒数。
type: float
-
postgresql.statement.query.time.min.ms
-
运行查询所花费的最小毫秒数。
type: float
-
postgresql.statement.query.time.max.ms
-
运行查询所花费的最大毫秒数。
type: float
-
postgresql.statement.query.time.mean.ms
-
运行查询所花费的平均毫秒数。
type: long
-
postgresql.statement.query.time.stddev.ms
-
运行查询所花费的时间的总体标准差(以毫秒为单位)。
type: long
-
postgresql.statement.query.memory.shared.hit
-
查询的共享块高速缓存命中的总数。
type: long
-
postgresql.statement.query.memory.shared.read
-
查询的共享块高速缓存读取的总数。
type: long
-
postgresql.statement.query.memory.shared.dirtied
-
查询弄脏的共享块高速缓存的总数。
type: long
-
postgresql.statement.query.memory.shared.written
-
查询写入的共享块高速缓存的总数。
type: long
-
postgresql.statement.query.memory.local.hit
-
查询的本地块高速缓存命中的总数。
type: long
-
postgresql.statement.query.memory.local.read
-
查询的本地块高速缓存读取的总数。
type: long
-
postgresql.statement.query.memory.local.dirtied
-
查询弄脏的本地块高速缓存的总数。
type: long
-
postgresql.statement.query.memory.local.written
-
查询写入的本地块高速缓存的总数。
type: long
-
postgresql.statement.query.memory.temp.read
-
查询的临时块高速缓存读取的总数。
type: long
-
postgresql.statement.query.memory.temp.written
-
查询的临时块高速缓存写入的总数。
type: long