설명
PostgreSQL 로그가 조사에 필요한 기간보다 일찍 삭제되면 장애와 보안 이벤트의 과거 기록을 확인하기 어렵습니다. 로그 생성 여부뿐 아니라 저장 위치, 보존 기간과 실제 조회 가능 여부를 함께 관리해야 합니다.
잠재적 영향
- 사고를 발견했을 때 필요한 기록이 이미 삭제되었을 수 있습니다.
- 운영 감사와 원인 분석에 필요한 이력이 부족할 수 있습니다.
해결 방법
- 사용하는 Azure PostgreSQL 서비스에서 지원하는 보존 설정을 확인하세요. Flexible Server에서는
logfiles.download_enable과logfiles.retention_days를 검토하세요. - 더 긴 보존이 필요하면 진단 설정으로 외부 저장소에 보내고 해당 저장소의 보존 정책을 적용하세요.
- 로그 생성, 수신, 조회와 접근 권한을 확인하세요. 기간 설정만으로 로그가 생성되지는 않습니다.
예시
첫 예제는 2025년 3월 28일 종료된 Single Server용 모듈을 사용합니다. 두 번째는 기존 Flexible Server에서 로그 수집과 보존을 설정하며, azure.azcollection 3.18.0 이상이 필요합니다.
변경 전
yaml
- name: PostgreSQL 설정 변경
azure_rm_postgresqlconfiguration:
resource_group: myResourceGroup
server_name: myServer
name: log_retention
value: off
log_retention: off는 Microsoft가 문서화한 보존 기간 설정이 아닙니다. 이 값을 on으로 바꾸는 것만으로 보존 정책을 구성할 수는 없습니다.
변경 후
yaml
- name: PostgreSQL 로그 수집 활성화
azure.azcollection.azure_rm_postgresqlflexibleconfiguration:
resource_group: myResourceGroup
server_name: myServer
name: logfiles.download_enable
value: "on"
- name: PostgreSQL 로그 보존 기간 설정
azure.azcollection.azure_rm_postgresqlflexibleconfiguration:
resource_group: myResourceGroup
server_name: myServer
name: logfiles.retention_days
value: "7"
다운로드할 서버 로그 수집을 활성화하고 보존 기간을 7일로 설정합니다. 더 긴 보존은 외부 저장소로 내보내 별도로 구성하세요.