将CSV日志导入数据库表里
1.修改日志参数
log_destination = 'csvlog'
logging_collector = on
这两个参数修改后,PG SERVER 需要重启。
2.创建日志记录表
CREATE TABLE postgres_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 "postgres_log_pkey" for table "postgres_log"
CREATE TABLE;
备注:创建日志表 postgres_log 用来保存 CSV日志数据。
3.copy导入
导入操作系统 csv 日志到表 postgres_log 表
postgres=# copy postgres.postgres_log from '/var/lib/postgresql/data/pg_log/viid-2019-03-14_000000.csv' with csv;
COPY 26031
postgres=# copy postgres.postgres_log from '/var/lib/postgresql/data/pg_log/viid-2019-03-15_000000.csv' with csv;
COPY 1297