[20편] 감사 자료를 준비할 때, 필요한 기록만 골라봤다 — QueryPie Audit Log Export
2026년 11월 9일
19편에서는 주문 상태를 바꾼 뒤 DML Snapshot으로 변경 전후 값을 확인했다. 이번에는 그 작업 기록을 파일로 꺼내 봤다. 감사나 내부 점검 때 특정 사용자가 어느 DB에서 어떤 작업을 했는지 자료로 전달해야 하는 상황을 생각했다.
QueryPie의 Audit Log Export에서 기간과 사용자를 지정하니, 주문을 조회한 기록과 승인받아 변경한 기록을 함께 찾을 수 있었다. 내려받은 파일에는 실행한 SQL뿐 아니라 실행 결과와 해당 승인 요청을 구분하는 식별자(UUID)까지 들어 있었다.
어떤 항목을 내보낼 수 있는지 먼저 살펴봤다
관리자 화면에서 Audit → Reports → Audit Log Export를 열고 Create Task를 눌렀다. 작업 이름은 ‘ACP Lab - 주문 변경 감사 자료 - 2026-11-09’로 적고, Log Type은 Query Audit을 선택했다.
See Log Template and Description을 펼치면 파일에 들어갈 항목과 필터에 쓸 이름을 볼 수 있다. 사용자 이름은 name, DB 연결 이름은 connectionName, 작업 종류는 actionType이었다. 화면 안에서 항목을 확인하면서 조건을 작성할 수 있어 편했다.

하루치 기록에서 개발자의 주문 DB 작업만 골랐다
기간은 주문을 변경한 2026년 11월 9일로 정했다. 그중 Demo Developer가 Orders Control Lab에서 SQL을 실행한 기록만 필요했다. Filter Expression에는 다음 조건을 입력했다.
name == 'Demo Developer'&& connectionName == 'Orders Control Lab'&& actionType == 'SQL_EXECUTION'
파일 형식은 CSV를 선택했다. 긴 텍스트를 처리하는 옵션은 No Action으로 두었다. 32,000자를 넘는 내용도 잘라내지 않고 보존하는 설정이다.

필요한 범위를 추출 단계에서 정할 수 있다는 점이 마음에 들었다. 이번처럼 특정 작업을 설명할 자료라면, 관련 기록만 모아 받는 편이 검토하기도 쉽다.
파일을 만들기 전에 미리보기로 확인했다
Generate Preview를 누르자 두 건이 나왔다. 00:05:47에 주문 4003을 조회한 SELECT와, 00:17:13에 주문 상태를 바꾼 UPDATE였다. 두 기록 모두 실행자는 Demo Developer, 연결은 Orders Control Lab, 결과는 SUCCESS였다.

19편에서 직접 진행했던 작업이라 시각과 내용을 바로 알아볼 수 있었다. 자료를 내려받기 전에 조건이 맞는지 확인할 수 있고, 원하는 범위가 잡힌 상태에서 Create를 누르면 된다.
완료된 작업에서 감사 파일을 내려받았다
작업을 생성하니 목록에 이름과 로그 종류, 생성자, 처리 상태가 표시됐다. 상태가 Completed로 바뀐 뒤 Download를 눌렀다.

내려받은 파일은 Audit.zip이었고, 압축을 풀자 작업 이름으로 된 CSV가 들어 있었다. 목록에서도 어떤 자료를 만들었는지 알아볼 수 있고, 파일 이름도 작업 목적에 맞게 남아 있어 정리하기 좋았다.
CSV에서도 어떤 승인 요청의 작업인지 알 수 있었다
CSV를 직접 열어 보니 미리보기에서 확인한 두 기록이 모두 들어 있었다. 사용자, DB 연결, 실행 시각뿐 아니라 SQL 원문과 처리 결과도 확인할 수 있었다.

주문을 변경한 No.293 기록은 2026-11-09 00:17:13에 실행됐고 결과는 SUCCESS였다. 실행 시간은 69ms, 처리한 행은 1개였다. Executed From에는 SQL_REQUEST가, Workflow Request UUID에는 해당 승인 요청의 식별자가 남아 있었다.
같은 파일에서 SELECT는 WEB_EDITOR, UPDATE는 SQL_REQUEST로 구분됐다. 누가 어떤 SQL을 실행했는지와 함께, 웹 에디터에서 조회한 작업인지 승인 요청을 통해 실행한 작업인지도 알 수 있었다.
화면에서 확인한 기록을 그대로 자료로 쓸 수 있었다
Query Audit으로 돌아가 No.293의 상세 화면을 열었다. CSV에 적힌 실행자와 시각, 69ms, SQL Request 출처가 화면의 기록과 일치했다. 앞서 확인한 작업을 파일로도 다시 짚어 볼 수 있었다.

직접 해보니 감사 자료를 준비하는 과정이 간단했다. 기간과 사용자를 정하고, 필요한 DB의 작업을 골라 미리본 뒤 파일로 받으면 됐다. SQL과 실행 결과를 따로 옮겨 적을 필요가 없었다.
승인받은 주문 변경을 설명할 때 실행자와 대상 DB, SQL, 처리 결과, 승인 요청 식별자를 한 파일에서 확인할 수 있어 좋았다. 필요한 기록이 자료로 모이니, 내부 점검이나 감사 요청을 받았을 때 준비하는 수고도 줄어들겠다.
이번 실습은 QueryPie Community 11.6.7에서 가상 주문 DB의 감사 기록으로 진행했다.
참고: QueryPie 공식 Audit Log Export 문서
![[19편] 주문 상태를 바꾼 뒤, 이전 값까지 찾아봤다 — QueryPie DML Snapshot](/assets/content/acp-lab-notes/dml-snapshot/01.webp)
![[21편] 감사 담당자에게 필요한 권한만 맡겨봤다 — QueryPie 관리자 역할 분리](/assets/content/acp-lab-notes/administrator-roles/01.webp)