이 문서는 지원되지 않는 버전의 PostgreSQL을위한 것입니다.
당신은에 대해 동일한 페이지를 볼 수 있습니다current버전 또는 위에 나열된 다른 지원 버전 중 하나입니다.

18.7. 오류보고 및 벌채 반출

18.7.1. 토토 사이트 할 곳

log_destination(String)

PostgreSQL지원 를 포함하여 서버 메시지 로깅을위한 몇 가지 방법Stderr, CSVLOGandSyslog. Windows에서EventLog도 지원됩니다. 이것을 설정하십시오 원하는 로그 대상 목록에 매개 변수가 분리되었습니다 쉼표로. 기본값은에 로그인하는 것입니다.Stderr만. 이 매개 변수 는만 할 수 있습니다 에서 설정해야합니다.postgresql.conf파일 또는 서버 명령 줄에.

ifCSVLOG가 포함되어 있습니다 안에log_destination, 토토 사이트 항목 출력"쉼표가 분리되었습니다 값"(CSV) 토토 사이트로드에 편리한 형식 프토토 사이트램. 보다섹션 18.7.4자세한 내용.logging_collectorCSV 형식 로그 출력 생성.

참고 :대부분의 UNIX 시스템에서는 필요합니다 시스템 구성을 변경하려면Syslog데몬 인 를 사용하기 위해Syslog옵션log_destination. PostgreSQL토토 사이트인 할 수 있습니다Syslog시설local0throughLocal7(참조syslog_facility), 하지만 기본값Syslog대부분의 구성 플랫폼은 그러한 모든 메시지를 폐기합니다. 당신은 할 것입니다 다음과 같은 것을 추가해야합니다.

local0.*/var/log/postgresql

to theSyslog작동하도록 데몬의 구성 파일.

logging_collector(부울)

이 매개 변수는 일반 및 CSV 형식 로그를 캡처합니다 전송 된 메시지Stderr토토 사이트 파일로 리디렉션합니다. 이 접근법은 종종입니다 로깅보다 더 유용한Syslog, 일부 유형의 메시지 이후 에 나타나지 않을 수 있습니다.Syslog출력 (일반적인 예는입니다 동적 링커 실패 메시지). 이 매개 변수 는만 할 수 있습니다 서버 시작에서 설정해야합니다.

참고 :로깅 수집기는 설계되었습니다 메시지를 잃지 마십시오. 이것은 경우를 의미합니다 매우 높은 부하, 서버 프로세스가 될 수 있습니다 추가 토토 사이트 메시지를 보내려는 시도로 인해 차단되었습니다 수집가가 뒤쳐 졌을 때. 대조적으로,Syslog메시지를 작성할 수없는 경우 메시지를 삭제하십시오 그러한 경우에는 신뢰할 수 없지만 나머지 시스템을 차단하십시오.

log_directory(String)

언제logging_collectoris 활성화 된이 매개 변수는 디렉토리를 결정합니다 토토 사이트 파일이 생성됩니다. an으로 지정할 수 있습니다 절대 경로 또는 클러스터 데이터 디렉토리와 관련이 있습니다. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버에서 명령 줄. 기본값은PG_LOG.

log_filename(String)

언제logging_collectoris 활성화 된이 매개 변수는 파일 이름을 설정합니다 토토 사이트 파일을 생성했습니다. 값은 A로 취급됩니다.Strftime패턴,%-스케이프를 사용하여 지정할 수 있습니다 시간 변동 파일 이름. (있는 경우에 유의하십시오 시간 구역 의존적%-escapes, 계산은에 의해 지정된 영역에서 이루어집니다.log_timezone.) 시스템의Strftime직접 사용되지 않습니다 플랫폼 별 (비표준) 확장은 작동하지 않습니다. 기본값은postgresql-%y-%m-%d_%h%m%s.log.

이스케이프없이 파일 이름을 지정하면 결국 피하기 위해 로그 회전 유틸리티를 사용할 계획 전체 디스크를 채우십시오. 8.4 이전에 릴리스에서%ESCAPES가 존재했습니다,PostgreSQL추가 할 것입니다 새로운 토토 사이트 파일의 생성 시간의 시대이지만 더 이상 그렇지 않습니다.

CSV 형식 출력이 활성화 된 경우log_destination, .CSV타임 스탬프에 추가됩니다 CSV-Format의 파일 이름을 작성하려면 파일 이름 로그 이름 산출. (만약에log_filename.LOG, 접미사가 교체됩니다 대신에.)

이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버에서 명령 줄.

log_rotation_age(Integer)

언제logging_collectorIS 활성화 된이 매개 변수는 최대 수명을 결정합니다 개별 토토 사이트 파일의. 이 몇 분 후에 경과하면 새 토토 사이트 파일이 생성됩니다. 0으로 설정하십시오 새로운 토토 사이트 파일의 시간 기반 생성을 비활성화합니다. 이것 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버에서 명령 줄.

log_rotation_size(Integer)

언제logging_collectorIS 활성화 된이 매개 변수는 AN의 최대 크기를 결정합니다 개별 로그 파일. 이 후 많은 킬로바이트가있었습니다 로그 파일로 방출되면 새 로그 파일이 생성됩니다. 크기 기반 새로운 로그 생성을 비활성화하기 위해 0으로 설정 파일. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버에서 명령 줄.

log_truncate_on_rotation(부울)

whenlogging_collectoris 활성화하면이 매개 변수는 원인입니다PostgreSQLTO TRUNCATE (Overwrite), 기존 토토 사이트 파일에 부여하는 대신 이름. 그러나 자르기는 새 파일 일 때만 발생합니다 시간 기반 회전으로 인해 열리고 있습니다 서버 시작 또는 크기 기반 회전. 꺼짐, 기존 파일은 모든 경우에 추가됩니다. 을 위한 예,이 설정을 a와 함께 사용합니다.log_filenameLikePostgresql-%H.log24 시간당 로그 파일을 생성 한 다음 주기적으로 그들을 덮고 있습니다. 이 매개 변수는 가능합니다 에 설정postgresql.conf파일 또는 서버 명령 줄에서.

예 : 7 일의 토토 사이트를 유지하려면 하루에 하나의 토토 사이트 파일 이름server_log.mon, server_log.tue등, 자동으로 이번 주 토토 사이트로 지난주 토토 사이트를 덮어 씁니다.log_filenametoServer_Log.%a, log_truncate_on_rotationtoonlog_rotation_ageto1440.

예 : 24 시간의 토토 사이트를 유지하려면 1 개의 토토 사이트 파일 당 1 개의 토토 사이트 파일 시간이지만 토토 사이트 파일 크기가 초과되면 더 빨리 회전합니다. 1GB, setlog_filenametoServer_Log.%H%m, log_truncate_on_rotationtoon, log_rotation_ageto60log_rotation_sizeto1000000. 포함%minlog_filename모든 크기 구동을 허용합니다 파일 이름을 선택하기 위해 발생할 수있는 회전 시간의 초기 파일 이름과 다릅니다.

syslog_facility(enum)

토토 사이트인 할 때Syslog이 매개 변수가 활성화되었습니다 결정Syslog "시설"사용하려면. 당신은 할 수 있습니다 선택local0, local1, local2, local3, local4, local5, local6, local7; 기본값은local0. 귀하의 문서도 참조하십시오 시스템Syslog데몬. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버에서 명령 줄. 이 매개 변수는 그렇지 않으면 사용할 수 없습니다 Syslog를 지원하여 서버가 컴파일됩니다.

syslog_ident(String)

토토 사이트인 할 때Syslog이 매개 변수가 활성화되었습니다 식별하는 데 사용되는 프토토 사이트램 이름을 결정합니다PostgreSQL메시지Syslog토토 사이트. 기본값은Postgres. 이 매개 변수는 할 수 있습니다 에서만 설정됩니다.postgresql.conf파일 또는 서버에서 명령 줄. 이 매개 변수는 그렇지 않으면 사용할 수 없습니다 Syslog를 지원하여 서버가 컴파일됩니다.

Silent_Mode(부울)

서버를 조용히 실행합니다. 이 매개 변수가 설정된 경우 서버는 자동으로 백그라운드에서 실행됩니다 제어 터미널에서 분리됩니다. 이것 매개 변수는 서버 시작시에만 설정할 수 있습니다.

주의

이 매개 변수가 설정되면 서버가 설정됩니다 표준 출력 및 표준 오류가 리디렉션됩니다 파일에postmaster.log데이터 내 예배 규칙서. 회전에 대한 조항은 없습니다 이 파일이 있으므로 그렇지 않으면 무기한으로 성장할 것입니다 서버 토토 사이트 출력은 다른 곳에서 리디렉션됩니다 다른 설정. 권장됩니다log_destinationSyslog또는 그logging_collectorbe 이 옵션을 사용할 때 활성화됩니다. 그것들과 함께 시동 중에 조기에보고 된 측정, 오류 에 나타날 수 있습니다.postmaster.log대신 일반 토토 사이트 대상.

18.7.2. 토토 사이트인시기

client_min_messages(enum)

클라이언트에게 전송되는 메시지 레벨을 제어합니다. 유효한 값은Debug5, Debug4, Debug3, Debug2, Debug1, log, 통지, 경고, 오류, 치명적panic. 각 레벨에는 모두가 포함됩니다 그것을 따르는 레벨. 나중에 레벨이 적을수록 더 적습니다 메시지가 전송됩니다. 기본값은통지. 참고log여기와 다른 순위가 있습니다log_min_messages.

log_min_messages(enum)

어떤 메시지 레벨에 기록되는지 제어합니다 서버 로그. 유효한 값은Debug5, Debug4, Debug3, Debug2, Debug1, info, 통지, 경고, 오류, log, 치명적panic. 각 레벨에는 모두가 포함됩니다 그것을 따르는 레벨. 나중에 레벨이 적을수록 더 적습니다 메시지는 로그로 전송됩니다. 기본값은경고. 참고log여기와 다른 순위가 있습니다client_min_messages. 오직 슈퍼업자는이 설정을 변경할 수 있습니다.

log_min_error_statement(enum)

오류를 일으키는 SQL 문을 제어합니다 조건은 서버 로그에 기록됩니다. 현재 SQL 명령문은 모든 메시지에 대한 로그 항목에 포함됩니다. 지정된 심각도 이상. 유효한 값은Debug5, Debug4, Debug3, Debug2, Debug1, info, 통지, 경고, 오류, log, 치명적panic. 기본값은오류오류, 로그 메시지, 치명적인 진술을 의미합니다 오류 또는 공황이 기록됩니다. 효과적으로 꺼집니다 실패한 진술의 로깅,이 매개 변수를로 설정panic. 슈퍼 사용자 만 할 수 있습니다 이 설정을 변경하십시오.

log_min_duration_statement(Integer)

완성 된 각 문의 지속 시간이 발생합니다 명령문이 최소한 지정된 경우에 기록 된 경우 토토 사이트인 밀리 초 수. 이것을 제로 인쇄물로 설정합니다 진술 지속 시간. 마이너스 (기본값)는 비활성화됩니다 로깅 진술 지속 시간. 예를 들어, 설정하면 에게250ms그런 다음 모든 SQL 문 250ms 이상 실행되면 기록됩니다. 이것을 활성화합니다 매개 변수는 최적화되지 않은 추적에 도움이 될 수 있습니다 응용 프로그램의 쿼리. 슈퍼 사용자 만 변경할 수 있습니다 이 설정.

확장 쿼리 프로토콜, 기간을 사용하는 클라이언트 구문 분석, 바인딩 및 실행 단계가 기록됩니다 독립적으로.

참고 :이 옵션을 함께 사용할 때log_statement, 때문에 기록 된 진술의 텍스트log_statement그렇지 않을 것입니다 지속 시간 로그 메시지에서 반복됩니다. 당신이 아닌 경우 사용syslogPID 또는 세션 ID를 사용하여를 기록하는 것이 좋습니다log_line_prefix진술 메시지를 프로세스 ID 또는 이후의 기간 메시지 세션 ID.

테이블 18-1PostgreSQL. 로깅 출력 인 경우 로 전송됩니다.Syslog또는 Windows 'EventLog, 심각도 수준 표에 표시된대로 번역됩니다.

표 18-1. 메시지 심각도 수준

심각도 usage Syslog EventLog
Debug1..debug5 연속적으로 더 많은 정보를 제공합니다 개발자의 사용. 디버그 정보
Info 사용자 (예 : 출력)진공 말 수가 많은. 정보 정보
통지 도움이 될 수있는 정보를 제공합니다 예를 들어 사용자, 예를 들어, 장기의 잘림 통지 식별자. 통지 정보
경고 가능성있는 문제에 대한 경고 (예 :.커밋거래 외부 차단하다. 통지 경고
오류 현재 명령을 초래 한 오류를보고합니다 중단. 경고 오류
log 관리자에게 관심있는 정보 보고서, 예 : 체크 포인트 활동. 정보 정보
치명적 현재 세션을 초래 한 오류를보고합니다 중단. err 오류
panic 모든 데이터베이스 세션을 일으킨 오류를보고합니다 중단하려면. crit 오류

18.7.3. 토토 사이트인

Application_Name(String)

theApplication_Name할 수 있습니다 보다 작은 문자열지명 된 ATALEN문자 (64 자 표준 빌드). 일반적으로 응용 프토토 사이트램에 의해 설정됩니다 서버에 연결하면. 이름이 표시됩니다 에서pg_stat_activity보기 CSV 로그 항목에 포함됩니다. 또한 포함될 수 있습니다 를 통한 정기 로그 항목에서log_line_prefix매개 변수. 인쇄 가능한 ASCII 문자 만 사용될 수 있습니다 그만큼Application_Name값. 다른 캐릭터는 물음표로 대체됩니다 (?).

debug_print_parse(부울)
debug_print_rewritten(부울)
debug_print_plan(부울)

이 매개 변수를 사용하면 다양한 디버깅 출력이 가능합니다 방출. 설정하면 결과 구문 분석을 인쇄하고 쿼리 다시 작성자 출력 또는 각각의 실행 계획 실행 된 쿼리. 이 메시지는에서 방출됩니다.log메시지 레벨이므로 기본적으로 그들은 가능합니다 서버 로그에 표시되지만 고객. 조정하여 변경할 수 있습니다client_min_messages및/또는log_min_messages. 이 매개 변수는 기본적으로 꺼져 있습니다.

debug_pretty_print(부울)

SET SET,debug_pretty_printdebug_print_parse, debug_print_rewritten또는debug_print_plan. 이것은 더 많은 결과를 초래합니다 읽기 쉽지만 출력이 훨씬 길어"compact"꺼져있을 때 사용되는 형식. 그것 기본적으로 켜져 있습니다.

log_checkpoints(부울)

서버 로그에 검사 점을 로그인합니다. 각 체크 포인트에 대한 일부 통계는 다음에 포함되어 있습니다 작성된 버퍼 수를 포함한 로그 메시지 글을 쓰는 시간. 이 매개 변수는 가능합니다 에 설정postgresql.conf파일 또는 서버 명령 줄에서. 기본값이 꺼져 있습니다.

log_connections(부울)

각각의 시도 된 연결이 서버에 연결됩니다 클라이언트의 성공적인 완료뿐만 아니라 기록 입증. 이 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버 명령 줄. 기본값이 꺼져 있습니다.

참고 :일부 클라이언트 프토토 사이트램, 유사PSQL, 시도 비밀번호가 있는지 결정하면서 두 번 연결하십시오 필수, 따라서 복제"연결 수신"메시지는 그렇지 않습니다 반드시 문제를 나타냅니다.

log_disconcection(부울)

이것은 서버 토토 사이트에서 선을 출력합니다.log_connections그러나 세션시 종료 및 세션 기간이 포함됩니다. 기본적으로 꺼져 있습니다. 이 매개 변수는 설정할 수 있습니다 그만큼postgresql.conf파일 또는 ON 서버 명령 줄.

log_duration(부울)

완성 된 모든 진술의 지속 시간이 발생합니다 기록. 기본값은OFF. 오직 슈퍼업자는이 설정을 변경할 수 있습니다.

확장 쿼리 프로토콜, 지속 시간을 사용하는 클라이언트 구문 분석, 바인딩 및 실행 단계가 기록됩니다 독립적으로.

참고 :이것을 설정하는 것의 차이 옵션 및 설정log_min_duration_statement엄청난log_min_duration_statement기록 할 쿼리 텍스트이지만이 옵션 그렇지 않습니다. 따라서 iflog_durationisonandlog_min_duration_statementa 양수 값, 모든 지속 시간은 기록되어 있습니다 쿼리 텍스트는 초과 진술에 대해서만 포함됩니다 임계 값. 이 동작은 유용 할 수 있습니다 고 부하 설치로 통계 수집.

log_error_verbosity(enum)

서버에 작성된 세부 사항을 제어합니다 기록 된 각 메시지에 대해 로그를 작성하십시오. 유효한 값은Terse, 기본값Verbose, 각각 더 많은 필드를 추가합니다 표시된 메시지.Terse의 벌목 제외세부 사항, 힌트, 쿼리Context오류 정보.Verbose출력 포함sqlstate오류 코드 (참조부록 A) 및 소스 코드 파일 이름, 함수 이름 및 줄 번호가 있습니다 오류를 생성했습니다. 슈퍼업자만이이를 변경할 수 있습니다 환경.

log_hostname(부울)

기본적으로 연결 로그 메시지는 IP 만 표시합니다 연결 호스트의 주소. 이 매개 변수를 켜십시오 호스트 이름의 로깅을 유발합니다. 주목하십시오 호스트 이름 해상도 설정에 따라 이에 따라 가능합니다 무시할 수없는 성과 페널티를 부과합니다. 이것 매개 변수는에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버에서 명령 줄.

log_line_prefix(String)

이것은 Aprintf-스타일 각 토토 사이트 라인의 시작 부분에서 출력되는 문자열.%캐릭터 시작"탈출 시퀀스"아래에 설명 된 상태 정보. 인식되지 않습니다 탈출은 무시됩니다. 다른 캐릭터는 똑바로 복사됩니다 로그 라인에. 일부 탈출은 만 인식됩니다 세션 프로세스는 배경으로 무시됩니다 기본 서버 프로세스와 같은 프로세스. 이 매개 변수 에서만 설정할 수 있습니다.postgresql.conf파일 또는 서버에서 명령 줄. 기본값은 빈 문자열입니다.

탈출 효과 세션 만
%a 응용 프토토 사이트램 이름
%U 사용자 이름
%d 데이터베이스 이름
%r 원격 호스트 이름 또는 IP 주소 및 원격 포트
%H 원격 호스트 이름 또는 IP 주소
%p 프로세스 ID 아니오
%t 밀리 초없는 타임 스탬프 아니오
%m 밀리 초가있는 타임 스탬프 아니오
%I 명령 태그 : 세션 유형의 전류 명령
%e SQLSTATE 오류 코드 아니오
%C 세션 ID : 아래 참조 아니오
%l 각 세션 또는 각 세션에 대한 로그 라인 수 프로세스, 1 아니오
%s 프로세스 시작 시간 스탬프 아니오
%V 가상 트랜잭션 ID (backendid/localxid) 아니오
%x 트랜잭션 ID (0 할당되지 않은 경우 0) 아니오
%Q 출력은 없지만 세션을 말합니다 문자열 의이 시점에서 중지되는 프로세스; 세션 프로세스로 무시 아니오
%% 리터럴% 아니오
the%C탈출 인쇄 a 2 개의 4 바이트로 구성된 준 유니 퀴크 세션 식별자 16 진수 (주요 0이없는)에 의해 분리되었습니다 도트. 숫자는 프로세스 시작 시간과 프로세스 ID, SO%C해당 품목을 인쇄하는 공간 절약 방법으로 사용됩니다. 을 위한 예, 세션 식별자를 생성하려면pg_stat_activity, 이것을 사용하십시오 질문:
select to_hex (추출물 (epoch from backend_start) :: 정수) || '.' ||
       to_hex (procpid)
pg_stat_activity에서;

팁 :remembty 값을 설정 한 경우log_line_prefix, 당신은해야합니다 일반적으로 마지막 캐릭터를 공간으로 만듭니다 토토 사이트의 나머지 부분과 시각적 분리를 제공합니다 선. 구두점 문자도 사용할 수 있습니다.

팁 : Syslog자체 시간을 생산합니다 신분증 정보를 도장 및 프로세스하고 있으므로 아마도 가능할 것입니다 로깅중인 경우 탈출을 포함시키고 싶지 않습니다. 에게Syslog.

log_lock_waits(부울)

로그 메시지가 생성되는지 여부를 제어합니다 세션은보다 길다Deadlock_timeout자물쇠를 얻으려면. 이것은 잠금인지 결정하는 데 유용합니다 대기는 성능이 저하되고 있습니다. 기본값은OFF.

log_statement(enum)

어떤 SQL 문을 기록하는지 제어합니다. 유효한 값 이다없음(OFF),DDL, mod49799_49817all(모든 진술).DDL모든 데이터 정의 문서를 기록하고 와 같은Create, Alter드롭진술.mod모든 토토 사이트DDL진술, 플러스 와 같은 데이터 수정 진술삽입, 업데이트, 삭제, Truncate복사 에서. 준비, execute설명 분석진술은 또한 그 경우에도 기록됩니다 포함 된 명령은 적절한 유형입니다. 고객을 위해 확장 쿼리 프로토콜을 사용하면 로깅이 발생합니다 메시지를 수신하고 바인드의 값을 실행합니다 매개 변수가 포함됩니다 (임베디드 단일 쿼트 포함 마크가 두 배로 늘어 났음).

기본값은없음. 오직 슈퍼업자는이 설정을 변경할 수 있습니다.

참고 :간단한 구문이 포함 된 문 오류는에 의해서도 기록되지 않습니다.log_statement=all51300_51657log_min_error_statementto오류(또는 하단) 진술.

log_temp_files(정수)

임시 파일 이름 및 크기의 로깅을 제어합니다. 정렬, 해시 및에 대해 임시 파일을 작성할 수 있습니다 임시 쿼리 결과. 각각에 대한 로그 항목이 만들어집니다 삭제 될 때 임시 파일. 0 로그의 값 모든 임시 파일 정보, 긍정적 값은 로그입니다 크기가 큰 파일 만 지정된 킬로 바이트 수. 기본 설정은입니다.-1, 그러한 로깅을 비활성화합니다. 수퍼 유저만이 설정을 변경할 수 있습니다.

log_timezone(String)

통나무. 같지 않은TIMEZONE, 이 값은 클러스터 전체에 있으므로 모든 세션이 가능합니다 일관되게 타임 스탬프를보고하십시오. 기본값은알 수없는는 무엇이든 사용한다는 의미입니다 시스템 환경은 시간대로 지정됩니다. 보다섹션 8.5.3자세한 내용. 이 매개 변수 는만 할 수 있습니다 에서 설정해야합니다.postgresql.conf파일 또는 서버 명령 줄에.

18.7.4. CSV 형식 로그 사용 산출

포함CSVLOGinlog_destination목록은 편리한 방법을 제공합니다 로그 파일을 데이터베이스 테이블로 가져옵니다. 이 옵션이 방출됩니다 Comma-Separated-Values의 로그 라인 ( 로그 라인CSV) 형식,이 열이있는 형식 : timestamp 밀리 초, 사용자 이름, 데이터베이스 이름, 프로세스 ID, 클라이언트 호스트 : 포트 번호, 세션 ID, 세션당 줄 번호, 명령 태그, 세션 시작 시간, 가상 트랜잭션 ID, 일반 트랜잭션 ID, 오류 심각도, SQLSTATE 코드, 오류 메시지, 오류 메시지 세부 사항, 힌트, 내부 쿼리가 오류 (있는 경우), 여기에 오류 위치의 문자 수, 오류 컨텍스트, 오류가 발생한 사용자 쿼리 ( 활성화log_min_error_statement), 오류 위치의 문자 수, 위치의 위치 PostgreSQL 소스 코드의 오류 (iflog_error_verbosity로 설정되었습니다Verbose) 및 응용 프토토 사이트램 이름. 다음은 샘플입니다 CSV 형식 로그 출력 저장에 대한 테이블 정의 :

TABLE Postgres_Log 작성
(
  시간대가있는 log_time timestamp (3),
  user_name 텍스트,
  database_name 텍스트,
  process_id 정수,
  Connection_from 텍스트,
  session_id 텍스트,
  session_line_num bigint,
  Command_tag ​​텍스트,
  시간대가있는 session_start_time 타임 스탬프,
  virtual_transaction_id 텍스트,
  transaction_id bigint,
  error_severity 텍스트,
  sql_state_code 텍스트,
  메시지 텍스트,
  세부 텍스트,
  힌트 텍스트,
  내부_Query 텍스트,
  internal_query_pos 정수,
  컨텍스트 텍스트,
  쿼리 텍스트,
  query_pos 정수,
  위치 텍스트,
  application_name 텍스트,
  기본 키 (session_id, session_line_num)
);

이 테이블에 토토 사이트 파일을 가져 오려면 사용하십시오.복사명령 :

csv를 사용하여 '/full/path/to/logfile.csv'에서 postgres_log 복사;

가져 오기를 단순화하기 위해해야 ​​할 일이 몇 가지 있습니다. CSV 로그 파일 :

  1. SETlog_filenamelog_rotation_age일관성을 제공하려면, 토토 사이트 파일에 대한 예측 가능한 이름 지정 체계. 이것은 당신을 허용합니다 파일 이름이 무엇인지 예측하고 개별 토토 사이트 파일이 완료되었으므로 수입.

  2. SETlog_rotation_size~ 0 ~ 토토 사이트 파일이 만들어 지므로 크기 기반 토토 사이트 회전을 비활성화합니다. 예측하기 어려운 이름.

  3. SETlog_truncate_on_rotationtoon따라서 이전 로그 데이터는 그렇지 않습니다 같은 파일의 새 새와 혼합되어 있습니다.

  4. 위의 표 정의에는 기본 키가 포함됩니다 사양. 이것은 보호에 유용합니다 실수로 동일한 정보를 두 번 가져옵니다. 그만큼COPY명령은 모든 것을 커밋합니다 한 번에 가져 오는 데이터이므로 오류가 발생합니다. 전체 가져 오기 실패. 부분 로그 파일을 가져 오면 나중에 파일이 완료되면 다시 가져 오기 1 차 키 위반으로 인해 수입이 실패합니다. 기다리다 가져 오기 전에 로그가 완료되고 닫힐 때까지. 이것 절차는 또한 실수로 수입을 방지합니다 완전히 쓰여지지 않은 부분 라인 또한 원인COPY실패합니다.