PostgreSQL日志分析工具

postgresqllinux

PostgreSQL日志审计可以配合 pgbench、jmeter...测试工具制定测试计划测试性能,由于日志审计比较影响性能,在不需要问题排查或测试的时候可以关闭。

1. pgBadger安装

pgBadger:主页
pgBadger:下载地址
Text-CSV_XS-1.39:下载地址

环境

  • Red Hat Enterprise Linux Server release 7.4
  • PostgreSQL 9.6.0

安装包版本

分析csv格式日志需要Text-CSV_XS

  • Text-CSV_XS-1.39
  • pgbadger-10.3

安装

  1. 上传tar包到任意目录

  2. 切换到tar包目录执行安装

plugs=`echo -e "Text-CSV_XS-1.39\npgbadger-10.3"`;
baseDir=`pwd`;
for plug in ${plugs};
do
tar zxf ${plug}.*;
cd ${baseDir}/${plug};
perl Makefile.PL && make && make install;
cd ${baseDir};
done;

2. PostgreSQL日志审计配置

postgresql.conf增加配置后重启数据库

# 指定csv格式日志
log_destination = 'csvlog'
logging_collector = on
log_directory = 'pg_log'
log_filename = 'postgresql-%w.log'
log_file_mode = 0640
log_truncate_on_rotation = off
log_rotation_age = 1d
log_line_prefix = '%t [%r]-[%p]: %l user=%u,db=%d'
log_lock_waits = off
log_checkpoints = off
log_connections = off
log_disconnections = off
log_duration = off
log_min_duration_statement = 0

3. 日志生成

访问数据库

# 初始化pgbenth依赖表
pgbench -U postgres -d postgres -i -s 5
# 5客户端压力10秒
pgbench -U postgres -d postgres -v -c 5 -T 10

生成日志

# 开启httpd服务
systemctl start httpd.service
# 创建日志输出目录
mkdir -p /var/www/html/pgbadger/;
# 查找一下pgbadger命令所在目录
which pgbadger
# 指定命令路径 -> 指定日志路径(名称根据log_filename参数来的) -> 指定httpd的服务为输出目录: 增量生成日志
/usr/local/bin/pgbadger -I -q /data/pgdata/pg_log/postgresql-*.csv -O /var/www/html/pgbadger/

定时任务

# /etc/cron.d目录下创建文件 pgbadger_cron 并添加如下内容
# 凌晨2点补全目录
0 2 * * * root /usr/bin/mkdir -p /var/www/html/pgbadger/
# 凌晨2点10分分析前天统计日志
10 2 * * * root /usr/local/bin/pgbadger -I -q /data/pgdata/pg_log/postgresql-`date -d "now -1 days" "+%w"`.csv -O /var/www/html/pgbadger/ # 重启crond
systemctl restart crond.service

结果示例

增量日志索引页

概览页

SQL统计

等等....

PostgreSQL日志分析工具的更多相关文章

  1. 可视化日志分析工具Gltail的安装与使用

    可视化日志分析工具Gltail的安装与使用      GlTail.rb 是一款带有浓郁的 Geek 风格的可视化日志分析工具,它采用 Ruby 技术构建,并利用 OpenGL 图形技术进行渲染,呈现 ...

  2. 【转】gc日志分析工具

    性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析. Gc日志参数 通过在tomcat启动脚本中添加相关参数生成gc ...

  3. GC之七--gc日志分析工具

    性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析. Gc日志参数 通过在tomcat启动脚本中添加相关参数生成gc ...

  4. 日志分析工具ELK配置详解

    日志分析工具ELK配置详解 一.ELK介绍 1.1 elasticsearch 1.1.1 elasticsearch介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分 ...

  5. GoAccess日志分析工具使用文档

    ----Sevck 2016/3/4 17:24:13 #1软件说明: GoAccess是一款开源.实时,运行在命令行终端下的web日志分析工具.该工具提供快速.多样的HTTP状态统计,可以令管理员不 ...

  6. 强大的日志分析工具 -- NSLogger

    转:http://www.cnblogs.com/yingkong1987/p/3329945.html 强大的日志分析工具 -- NSLogger 源码:https://github.com/fpi ...

  7. Log Parser 微软强大的日志分析工具

    Log Parser(微软网站下载)是微软公司出品的日志分析工具,它功能强大,使用简单,可以分析基于文本的日志文件.XML 文件.CSV(逗号分隔符)文件,以及操作系统的事件日志.注册表.文件系统.A ...

  8. Mysql 配置慢查询日志(SlowQueryLog)以及使用日志分析工具

    [ 查看系统关于慢查询的设置 ] mysql> show variables like '%slow%'; +---------------------------+-------------- ...

  9. 日志分析工具-ApexSQL介绍

    原文:日志分析工具-ApexSQL介绍 使用场景:业务数据异常变化,通过代码分析不出来的时候,迫不得已需要通过日志来分析 下载地址:http://www.apexsql.com/Download.as ...

随机推荐

  1. vue项目.eslintrc格式化

    场景:.eslintrc非常的严谨,但是严格总是好的,能写出好的代码.如何格式化呢?写好的代码 如何一键 变成符合.eslintrc规范的代码呢??? 比如 双引号变单引号    去掉分号等等. 解决 ...

  2. 双写mq后碰到没有消费问题记录

    上周双写mq后碰到遇到个问题,mq双写的一台机器有produce,另一台一直没有,但是有的那台机器没有消费者,导致另一个服务 一直没有可以消费的mq.原因是 mq在双写初始化配置的时候两个类文件重复了 ...

  3. idea 模糊搜索 ctrl + f(单词不完整搜索不到的解决办法)

    1,现象描述,笔者在用 idea 的 ctrl + f 搜索文件的内容时,发现了很神奇的问题,就是字符串必须输入完整才能搜索到,输入一半,哪怕是个字母输入了9个也搜不到 2,可以发现,就差一个字母 h ...

  4. 使用垃圾桶机制防止rm -rf误删文件

    偶然看到一个比较好用的工具Trash-Cli.一个类似垃圾桶的机制,可以恢复文件.试了一下,感觉还行 (1)下载安装: https://github.com/andreafrancia/trash-c ...

  5. myeclipse An internal error occurred during: "Initialize metrics".

    重新安装的myeclipse,在打开的时候弹出:    An internal error occurred during: "Initialize metrics". com/g ...

  6. sqlserver 创建分区表

    我们知道很多事情都存在一个分治的思想,同样的道理我们也可以用到数据表上,当一个表很大很大的时候,我们就会想到将表拆 分成很多小表,查询的时候就到各个小表去查,最后进行汇总返回给调用方来加速我们的查询速 ...

  7. spring框架是怎么样通过properties来获得对象的?

    首先我们要知道java获得对象的方式有四种: 1.通过new语句实例化一个对象. 2.通过反射机制创建对象. 3.通过clone()方法创建对象 3.通过反序列化的方式创建对象 在spring框架中, ...

  8. 51book机票接口对接,吐血整理(含PHP封装代码)

    前言 最近在对接51book的机票接口,遇到了挺多坑,所以整理一份作为记录 机票有两个不同的接口,一个是机票,另一个是保险 一.申请 要接51book的机票,首先是要申请账号,这时候应该是有客户经理跟 ...

  9. FMX 隐藏任务栏 xe10

    找了好多信息,测试好些,xe10  隐藏只要以下命令 隐藏 ShowWindow(ApplicationHWND, SW_HIDE); 显示 ShowWindow(ApplicationHWND, S ...

  10. Quartz时间配置(周期任务)

     序号 说明  是否必填  允许填写的值 允许的通配符  1  秒  是  0-59    , - * /  2  分  是  0-59   , - * /  3 小时  是  0-23   , - ...