ITPub博客

首页 > 数据库 > 国内数据库 > 如何开关数据库告警日志及修改日志级别

如何开关数据库告警日志及修改日志级别

原创 国内数据库 作者:瀚高PG实验室 时间:2021-11-17 15:01:38 0 删除 编辑
文档用途

本文旨在介绍如何开启和关闭数据库告警日志及修改日志级别。

详细信息

先提供一份通用告警日志参数设置:

打开数据库参数文件$PGDATA/postgresql.auto.conf,在文件末尾追加如下内容:

logging_collector = on

log_destination = 'csvlog'

log_directory = 'hgdb_log'

log_filename = 'highgodb_%d.log'

log_rotation_age = '1d'

log_rotation_size = 0

log_truncate_on_rotation = on

log_min_messages = 'WARNING'

log_statement = 'ddl'

然后重启数据库(确保非业务时段执行)。

pg_ctl restart 

这样配置后,将会达到如下配置目标:

1.开启数据库告警日志记录;

2.产生的日志文件位于data目录下的hgdb_log中;

3.日志文件格式为csv;

4.文件名以highgodb为前缀;

5.日志大小无上限,按日保留,循环覆盖;

6.消息级别在warning及以上的进行记录,sql语句在error级别及以上的被记录;

7.所有ddl语句被记录。


一.开启和关闭数据库告警日志的方法

1.查询数据库告警日志是否开启

连接数据库执行show logging_collector;

返回结果是on则代表开启。off代表关闭。

2.开启数据库告警日志方法

打开数据库参数文件$PGDATA/postgresql.auto.conf,在文件末尾追加如下内容:

logging_collector = on

log_directory = 'hgdb_log'

然后重启数据库(确保非业务时段执行)。

pg_ctl restart 

3.关闭数据库告警日志方法

打开数据库参数文件 $PGDATA/postgresql.auto.conf,在文件末尾追加如下内容:

logg ing_collector = off


然后重启数据库(确保非业务时段执行)。

pg_ctl restart 


二.修改告警日志级别

1.查询告警日志级别

连接数据库执行

show log_min_messages;

show log_statement;

2.修改告警日志级别

2.1 log_min_messages

控制哪些消息级别被写入到服务器日志。有效值是DEBUG5、DEBUG4、DEBUG3、DEBUG2、DEBUG1、INFO、NOTICE、WARNING、ERROR、LOG、FATAL和 PANIC。每个级别都包括其后的所有级别。级别越靠后,被记录的消息越少。

级别介绍:

DEBUG1..DEBUG5:极端情况下提供连续的更详细的信息。

INFO:提供用户隐式要求的信息,例如来自VACUUM VERBOSE的输出。

NOTICE:提供可能对用户有用的信息,例如长标识符截断提示。

WARNING:提供可能出现的问题的警告,例如在一个事务块外COMMIT。

ERROR:报告一个导致当前命令中断的错误。

LOG:报告管理员一般需要的信息,例如检查点活动。

FATAL:报告一个导致当前会话中断的错误。

PANIC:报告一个导致所有数据库会话中断的错误。

2.2 log_statement

控制哪些SQL语句被记录。有效值是none(off)、ddl、mod和all(所有语句)。ddl记录所有数据定义语句,例如CREATE、ALTER和 DROP语句。mod记录所有ddl语句,外加数据修改语句例如INSERT, UPDATE、DELETE、TRUNCATE, 和COPY FROM。all记录包括select在内的所有语句。



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69994931/viewspace-2842664/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
瀚高PG实验室(Highgo PG Lab)依托于瀚高DBA运维团队及瀚高数据库PG内核研发团队,旨在深入研究PostgreSQL技术、使用技巧、内核探秘、PG教学等,并进行分享。欢迎大家关注、交流。

注册时间:2021-02-18

  • 博文量
    75
  • 访问量
    27305