[转帖]Postgresql的csv日志设置

Postgresql的csv日志设置

原文链接: http://www.voidcn.com/article/p-ygsuwxvk-bog.html
PG的日志系统比较完善,除去系统启动时指定的日志,wal日志等外,下面主要介绍另一个详细的输出日志:csv log. 涉及到的参数文件:$PGDATA/postgresql.conf 
涉及的主要参数:
  1.  
    log_destination = csvlog
    logging_collector = on
    log_directory = /home/postgres/pg_log
    log_filename = postgresql-%Y-%m-%d_%H%M%S.log

     

  2.  
1.说明
要开启csv日志,需要设置logging_collector=on,否则输不出来。设置完了后需要 重启DB。 
log_destination的默认参数是stderr,不修改的话只输出标准错误信息 
log_directory是输出日志的路径 
log_filename是输出日志的名称,采用默认. 
还有其他参数具体可参考postgresql.conf中的where to log 部分。 

2.查看:
  1. [[email protected] pg_log]$ ll /home/postgres/pg_log/
    total 4
    -rw-------. 1 postgres postgres 2476 Jun 15 15:40 postgresql-2012-06-15_152431.csv
    -rw-------. 1 postgres postgres    0 Jun 15 15:24 postgresql-2012-06-15_152431.log
     
    [[email protected] pg_log]$ more postgresql-2012-06-15_152431.csv 
    2012-06-15 15:24:31.258 CST,1882,4fdae32f.75a,1,2012-06-15 15:24:31 CST,0,LOG,00000,"database system was shut down at 2012-06-1
    5 15:24:19 CST",""
    2012-06-15 15:24:31.259 CST,2,"could not remove cache file ""base/16384/p
    g_internal.init"": Not a directory",""
    2012-06-15 15:24:31.282 CST,1885,4fdae32f.75d,"autovacuum launcher started",""
    2012-06-15 15:24:31.306 CST,1880,4fdae32e.758,2012-06-15 15:24:30 CST,"database system is ready to accept connect
    ions",""

     

  2.  
3.日志入库
也就是将文本文件导入到数据库中,采用copy方式比较简单。建表
CREATE TABLE pg_log
(
  log_time timestamp(3) with time zone,user_name text,database_name text,process_id integer,connection_from text,session_id text,session_line_num bigint,command_tag text,session_start_time timestamp with time zone,virtual_transaction_id text,transaction_id bigint,error_severity text,sql_state_code text,message text,detail text,hint text,internal_query text,internal_query_pos integer,context text,query text,query_pos integer,location text,application_name text,PRIMARY KEY (session_id,session_line_num)
);
 
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "pg_log_pkey" for table "pg_log"

 

copy pg_log from /home/postgres/pg_log/postgresql-2012-06-15_152431.csv with csv;
COPY 4

 

4.日志的关闭
把开启日志的过程做反向操作,设置相关值off即可 

5.其他 
该日志信息可以结合启动时的输出日志来查看系统的一个历史运行情况,是排查系统err有极方便的工具 
 

转载于:https://my.oschina.net/Kenyon/blog/62504

相关文章

文章浏览阅读601次。Oracle的数据导入导出是一项基本的技能,...
文章浏览阅读553次。开头还是介绍一下群,如果感兴趣polardb...
文章浏览阅读3.5k次,点赞3次,收藏7次。折腾了两个小时多才...
文章浏览阅读2.7k次。JSON 代表 JavaScript Object Notation...
文章浏览阅读2.9k次,点赞2次,收藏6次。navicat 连接postgr...
文章浏览阅读1.4k次。postgre进阶sql,包含分组排序、JSON解...