logerrors
用于收集日志文件中消息统计信息的函数
仓库
munakoiso/logerrors
https://github.com/munakoiso/logerrors
源码
logerrors-2.1.5.tar.gz
logerrors-2.1.5.tar.gz
概览
| 扩展包名 | 版本 | 分类 | 许可证 | 语言 |
|---|---|---|---|---|
logerrors | 2.1.5 | SEC | BSD 3-Clause | C |
| ID | 扩展名 | Bin | Lib | Load | Create | Trust | Reloc | 模式 |
|---|---|---|---|---|---|---|---|---|
| 7140 | logerrors | 否 | 是 | 是 | 是 | 否 | 是 | - |
| 相关扩展 | pgauditlogtofile pg_auth_mon pg_jobmon pg_stat_monitor auto_explain pg_track_settings pgaudit pgsentinel |
|---|
版本
| 类型 | 仓库 | 版本 | PG 大版本 | 包名 | 依赖 |
|---|---|---|---|---|---|
| EXT | MIXED | 2.1.5 | 1817161514 | logerrors | - |
| RPM | PGDG | 2.1.5 | 1817161514 | logerrors_$v | - |
| DEB | PIGSTY | 2.1.5 | 1817161514 | postgresql-$v-logerrors | - |
构建
您可以使用 pig build 命令构建 logerrors 扩展的 DEB 包:
pig build pkg logerrors # 构建 DEB 包
安装
您可以直接安装 logerrors 扩展包的预置二进制包,首先确保 PGDG 和 PIGSTY 仓库已经添加并启用:
pig repo add pgsql -u # 添加仓库并更新缓存
使用 pig 或者是 apt/yum/dnf 安装扩展:
pig install logerrors; # 当前活跃 PG 版本安装
pig ext install -y logerrors -v 18 # PG 18
pig ext install -y logerrors -v 17 # PG 17
pig ext install -y logerrors -v 16 # PG 16
pig ext install -y logerrors -v 15 # PG 15
pig ext install -y logerrors -v 14 # PG 14
dnf install -y logerrors_18 # PG 18
dnf install -y logerrors_17 # PG 17
dnf install -y logerrors_16 # PG 16
dnf install -y logerrors_15 # PG 15
dnf install -y logerrors_14 # PG 14
apt install -y postgresql-18-logerrors # PG 18
apt install -y postgresql-17-logerrors # PG 17
apt install -y postgresql-16-logerrors # PG 16
apt install -y postgresql-15-logerrors # PG 15
apt install -y postgresql-14-logerrors # PG 14
预加载配置:
shared_preload_libraries = 'logerrors';
创建扩展:
CREATE EXTENSION logerrors;
用法
logerrors 收集 PostgreSQL 日志文件中 WARNING、ERROR 和 FATAL 消息的统计信息,无需解析日志即可轻松监控错误率。
CREATE EXTENSION logerrors;
配置参数
| 参数 | 默认值 | 描述 |
|---|---|---|
logerrors.interval | 5000(5秒) | 写入统计到缓冲区的间隔(毫秒,最大 60 秒) |
logerrors.intervals_count | 120 | 缓冲区中保留的间隔数(最大 360) |
logerrors.excluded_errcodes | (空) | 要排除的错误代码,逗号分隔 |
查询错误统计
SELECT * FROM pg_log_errors_stats();
time_interval | type | message | count | username | database | sqlstate
---------------+---------+----------------------+-------+----------+----------+----------
| WARNING | TOTAL | 0 | | |
| ERROR | TOTAL | 1 | | |
| FATAL | TOTAL | 0 | | |
5 | ERROR | ERRCODE_SYNTAX_ERROR | 1 | postgres | postgres | 42601
600 | ERROR | ERRCODE_SYNTAX_ERROR | 1 | postgres | postgres | 42601
慢日志统计
SELECT * FROM pg_slow_log_stats();
slow_count | reset_time
------------+----------------------------
1 | 2020-06-13 00:19:31.084923
重置统计
SELECT pg_log_errors_reset();