워크스페이스 감사 로그를 Amazon S3, Google Cloud Storage, Azure Blob Storage, Splunk, Azure Log Analytics로 정기적으로 내보냅니다. Lovable은 1시간 또는 3시간마다 새 데이터를 전달합니다.
감사 로그를 SIEM 또는 클라우드 스토리지로 내보내기
워크스페이스 감사 로그를 Amazon S3, Google Cloud Storage, Azure Blob Storage, Splunk, Azure Log Analytics로 내보내도록 예약합니다. Lovable은 1시간 또는 3시간마다 새 데이터를 전달합니다.
데이터 내보내기는 워크스페이스 로그를 직접 소유한 대상으로 일정에 따라 보냅니다. 각 내보내기는 소스 하나를 S3 버킷이나 Splunk 인덱스 같은 대상 하나로 복사합니다. 첫 실행 이후의 각 실행은 이전 실행 이후에 들어온 데이터만 보냅니다.
- 사용 가능 플랜: Enterprise
- 접근 권한: 워크스페이스 admin 및 owner
- 위치: Data exports(Workspace settings → Security → Data exports)
데이터 내보내기를 사용하는 이유
Lovable은 감사 로그를 13주 동안 보관합니다. 데이터 내보내기를 사용하면 이 데이터의 사본을 자체 시스템에 두고 보존 기간, 접근 권한, 분석 방식을 직접 관리할 수 있습니다.
다음과 같은 경우에 데이터 내보내기를 사용하세요.
- 감사 로그를 13주보다 오래 보관하려는 경우. 예를 들어 자체 수명 주기 규칙을 적용한 버킷에 여러 해 분량의 감사 추적을 남길 수 있습니다.
- SIEM(security information and event management system, 보안 정보 및 이벤트 관리 시스템)에서 Lovable 활동을 다른 보안 이벤트와 함께 검색하려는 경우. 예를 들어 누군가 SSO 설정을 바꾸거나 워크스페이스 admin을 추가하면 알림이 울리도록 할 수 있습니다.
일회성 다운로드만 필요하다면 감사 로그 페이지의 Export 버튼을 대신 사용하세요. 자세한 내용은 감사 로그 내보내기를 참고하세요.
소스
각 내보내기는 정확히 하나의 소스를 복사합니다. 여러 소스를 내보내려면 소스마다 내보내기를 하나씩 만드세요.
| 소스 | Lovable 표시 이름 | 포함 내용 |
|---|---|---|
audit_logs | Audit logs | 감사 로그 페이지에 표시되는 워크스페이스 활동으로, 멤버십·프로젝트·보안 이벤트가 포함됩니다. |
모든 행에는 id 필드가 있습니다. Lovable이 같은 행을 다시 전달해도 id는 그대로 유지되므로 이 값으로 중복을 제거할 수 있습니다. 자세한 내용은 전달과 중복을 참고하세요.
감사 로그 필드
각 감사 로그 행에는 다음 필드가 있습니다.
| 필드 | 설명 |
|---|---|
id | 이벤트의 고유 ID입니다. |
timestamp | 이벤트가 발생한 UTC 시각으로, 예를 들면 2026-10-13 09:41:07.123456입니다. |
workspace_id | Lovable 워크스페이스의 ID입니다. |
action | 이벤트 유형으로, 예를 들면 project.created나 workspace.member.added입니다. |
actor_id | 작업을 수행한 멤버 또는 시스템의 ID입니다. |
actor_type | 행위자 종류로, 예를 들면 user, scim, system입니다. |
actor_display_name | 행위자의 표시 이름입니다. |
target_id | 영향을 받은 리소스의 ID입니다. |
target_type | 리소스 종류로, 예를 들면 project나 workspace입니다. |
target_display_name | 영향을 받은 리소스의 표시 이름입니다. |
status | 작업 결과로, 예를 들면 success나 failure입니다. |
error | 작업이 실패했을 때의 오류 텍스트입니다. |
status_message | 추가 상태 텍스트가 있을 때 담깁니다. |
ip_address | 작업 요청이 들어온 IP 주소입니다. |
user_agent | 클라이언트의 사용자 에이전트입니다. |
client_platform | 이벤트가 발생한 앱으로, 예를 들면 web, ios, android, desktop-app입니다. |
otel_trace_id | Lovable 지원팀이 이벤트를 조사할 때 사용할 수 있는 트레이스 ID입니다. |
otel_span_id | Lovable 지원팀이 이벤트를 조사할 때 사용할 수 있는 스팬 ID입니다. |
details | JSON으로 인코딩된 문자열 형태의 이벤트 메타데이터로, 예를 들면 {"name":"Customer portal"}입니다. |
다음은 읽기 쉽게 정리한 감사 로그 행 하나입니다.
{
"id": "5f0c2b7e-8d4a-4c1e-9b3f-2a6d7e8c9f01",
"timestamp": "2026-10-13 09:41:07.123456",
"workspace_id": "workspace_01k7c3m2x8f9qv0b6t4n5r2hzd",
"action": "project.created",
"actor_id": "u9XkP2mQ7rTnB4vL1cYs8dWe3fGh",
"actor_type": "user",
"target_id": "c7a1e2b3-5d4f-4e6a-9b8c-0d1e2f3a4b5c",
"target_type": "project",
"target_display_name": "Customer portal",
"actor_display_name": "Dana Kim",
"status": "success",
"error": "",
"status_message": "",
"ip_address": "203.0.113.24",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",
"client_platform": "web",
"otel_trace_id": "4bf92f3577b34da6a3ce929d0e0e4736",
"otel_span_id": "00f067aa0ba902b7",
"details": "{\"name\":\"Customer portal\"}"
}대상
Lovable은 다섯 가지 대상을 지원합니다. 객체 스토리지 대상은 파일을 받고, 이벤트 대상은 행마다 이벤트 하나를 받습니다.
| 대상 | 유형 | Lovable이 보내는 데이터 | 중복 제거 기준 |
|---|---|---|---|
| Amazon S3 | 객체 스토리지 | gzip으로 압축한 JSON Lines 파일 | id |
| Azure Blob Storage | 객체 스토리지 | gzip으로 압축한 JSON Lines 파일 | id |
| Azure Log Analytics | 이벤트 | 소스별 테이블에 행마다 테이블 행 하나 | EventId |
| Google Cloud Storage | 객체 스토리지 | gzip으로 압축한 JSON Lines 파일 | id |
| Splunk | 이벤트 | 행마다 HTTP Event Collector 이벤트 하나 | lovable_event_id |
Splunk를 제외하면 어떤 대상도 오래 유지되는 비밀번호나 액세스 키가 필요하지 않습니다. Lovable은 클라우드 계정이 신뢰하는 단기 자격 증명으로 AWS, Google Cloud, Azure에 로그인합니다. Splunk의 경우에는 HTTP Event Collector 토큰을 Lovable에 제공합니다.
객체 스토리지 파일 구조
Amazon S3, Google Cloud Storage, Azure Blob Storage는 gzip으로 압축한 JSON Lines 파일을 받으며, 파일의 한 줄이 행 하나입니다. Lovable은 다음 경로 아래에 파일을 씁니다.
<prefix>/workspace=<workspace ID>__<workspace name>/export=<export ID>__<export name>/source=<source>/run=<run start>__<run ID>/window=<window start>--<window end>/part-00000.jsonl.gz예를 들면 다음과 같습니다.
lovable-export/workspace=workspace_01k7c3m2x8f9qv0b6t4n5r2hzd__acme-corp/export=0f8e4c2a-6b1d-4f3e-9a7c-2d5b8e1f4a90__siem-audit-logs/source=audit_logs/run=2026-10-13T10-00-12Z__7c1d2e3f-4a5b-4c6d-8e9f-0a1b2c3d4e5f/window=2026-10-13T08-55-07Z--2026-10-13T09-55-12Z/part-00000.jsonl.gz<prefix>는 내보내기에 설정한 접두사입니다. 기본값은lovable-export/입니다.- Lovable은 경로에 들어가는 워크스페이스 이름과 내보내기 이름을 소문자와 숫자로 줄이고, 단어 사이를
-로 연결하며, 최대 48자까지만 사용합니다. run=과window=에 들어가는 시각은 UTC 기준입니다.- 새 데이터가 없는 시간 구간(window)에는 파일이 생성되지 않습니다.
파일의 콘텐츠 유형은 application/gzip입니다. Amazon Athena나 BigQuery처럼 gzip으로 압축한 JSON Lines를 읽을 수 있는 도구라면 무엇이든 이 파일을 읽을 수 있습니다.
사전 요구 사항
- 대상 제공업체의 계정과 그 계정에서 접근 권한을 부여할 수 있는 권한. 필요한 사항은 각 대상 페이지에 나와 있습니다.
데이터 내보내기 만들기
다음 단계는 모든 대상에 공통으로 적용됩니다. 대상별 접근 설정은 각 대상 페이지에서 다룹니다.
Data exports 열기
Data exports(Workspace settings → Security → Data exports)로 이동한 뒤 New data export를 클릭합니다.
내보내기 이름 지정 및 일정 선택
Name을 입력합니다. 예를 들어 Compliance audit log export처럼 입력할 수 있습니다. 내보내기는 Enabled 상태로 둡니다. Schedule에서 Every 1 hour 또는 Every 3 hours를 선택합니다.
대상과 소스 선택
Destination에서 데이터를 보낼 곳을 선택하고 해당 필드를 채웁니다. Source에서는 Audit logs를 선택합니다.
양식 옆의 설정 패널에 선택한 대상에 맞는 단계가 표시됩니다. 값을 입력하는 동안 설정 패널이 정책과 명령에 입력값을 자동으로 채워 넣습니다. 대상에 맞는 가이드를 따르세요.
연결 테스트
Test connection을 클릭합니다. 계속 진행하기 전에 테스트에서 표시된 오류를 모두 해결하세요. 해결 방법은 각 대상 페이지의 문제 해결 섹션을 참고하세요.
내보내기 생성
Create export를 클릭합니다. Amazon S3, Google Cloud Storage, Azure Blob Storage에서는 저장할 때 Lovable이 접근 권한을 다시 확인합니다. 확인에 실패하면 저장되지 않습니다.
첫 실행은 몇 분 안에 시작됩니다. 목록에서 내보내기를 클릭하면 Recent history에서 진행 상황을 확인할 수 있습니다.
실행 방식
일정과 타이밍
각 내보내기는 1시간 또는 3시간마다 일정에 따라 실행됩니다. 각 실행은 이전 실행 이후부터 실행 시작 약 5분 전까지 들어온 데이터를 내보냅니다. 하나의 내보내기는 한 번에 실행 하나만 진행합니다. 다음 실행 시각이 되었는데 이전 실행이 아직 진행 중이면 Lovable은 해당 예약 실행을 건너뜁니다.
첫 실행과 과거 데이터
첫 실행은 Lovable이 해당 소스에 대해 아직 보관 중인 과거 데이터를 모두 내보냅니다. 이후 실행부터는 새 데이터를 이어서 내보냅니다.
- 감사 로그: 최대 13주 분량의 과거 데이터를 내보냅니다. 자세한 내용은 감사 로그 데이터 보존을 참고하세요.
첫 실행은 과거 데이터를 여러 시간 구간으로 나누며, 감사 로그는 구간 하나가 최대 30일입니다. 객체 스토리지에서는 구간마다 별도의 window= 폴더가 만들어집니다. 첫 실행이 중간에 실패하면 다음 실행은 같은 시작 지점부터 전체 과거 데이터를 다시 내보내고, 모든 구간을 해당 실행의 run= 폴더 아래에 다시 씁니다. Lovable은 가능하면 실패한 실행이 쓴 파일을 제거합니다.
실패한 실행
실행이 실패하면 Lovable은 내보내기의 진행 위치를 앞으로 옮기지 않습니다. 다음 실행이 같은 데이터를 다시 시도하므로 실패하더라도 데이터에 공백이 생기지 않습니다. 실행에는 무엇을 해결해야 하는지 설명하는 메시지가 표시됩니다. 자세한 내용은 문제 해결을 참고하세요.
전달과 중복
전달은 최소 1회(at-least-once) 방식입니다. 예를 들어 네트워크 오류 뒤에 재시도할 때처럼 Lovable이 같은 행을 두 번 이상 전달할 수 있습니다. 데이터를 쿼리할 때 중복을 제거하세요.
| 대상 | 중복 제거 방법 |
|---|---|
| Amazon S3, Google Cloud Storage, Azure Blob Storage | id마다 행을 하나만 남깁니다. |
| Splunk | | dedup lovable_event_id |
| Azure Log Analytics | <table> | summarize arg_max(TimeGenerated, *) by EventId |
객체 스토리지에서는 한 실행 안에서 재시도하면 같은 파일을 덮어씁니다. 이후 실행이 같은 구간을 다시 전달하면 그 실행의 run= 폴더 아래에 씁니다.
실행 모니터링
Data exports 페이지에는 내보내기 목록이 Last run, Activity, Next run, Schedule과 함께 표시됩니다. 내보내기를 클릭하면 세부 정보가 열립니다.
- Destination: 대상 주소입니다. 클릭하면 복사됩니다.
- Success, Rows, Runs: 라벨에 표시된 기간, 즉 최근 7일 또는 불러온 최근 실행들의 합계입니다.
- Run now: 실행을 즉시 시작합니다.
- Recent history: 실행마다 한 행씩 시작 시각, 소요 시간, 행 수, 상태를 보여줍니다. Run now로 시작한 실행에는 Manual 배지가 표시됩니다.
실행을 클릭하면 펼쳐집니다. 실행 ID, 해당 실행이 쓴 행 수·바이트 수·파일 수, 실행이 다룬 시간 구간을 볼 수 있습니다. 객체 스토리지라면 각 파일과 크기도 표시됩니다. 복사 버튼을 클릭하면 파일 주소를 복사할 수 있습니다.
| 상태 | 의미 |
|---|---|
| Running | 실행이 시작되었고 아직 끝나지 않았습니다. |
| OK | 실행이 새 데이터를 모두 전달했습니다. 0행인 실행도 OK이며, 새로 들어온 데이터가 없었다는 뜻입니다. |
| Failed | 실행이 데이터를 전달하지 못했습니다. 실행 아래의 메시지에서 이유를 확인할 수 있습니다. |
내보내기 관리
내보내기 행의 작업 메뉴를 열거나 내보내기를 클릭해 세부 정보를 엽니다.
내보내기 수정
Edit export 또는 Edit configuration을 선택합니다. 이름과 일정, 그리고 접두사나 Splunk 토큰 같은 일부 대상 설정을 변경할 수 있습니다.
소스나 대상 자체는 변경할 수 없습니다. 예를 들어 버킷, Splunk 엔드포인트, Azure 워크스페이스는 바꿀 수 없습니다. 이를 바꾸려면 새 내보내기를 만드세요.
일시 중지와 재개
Schedule 스위치로 내보내기를 일시 중지하거나 재개합니다. 일시 중지된 내보내기는 일정에 따라 실행되지 않으며, 재개할 때까지 Run now도 동작하지 않습니다. 재개하면 몇 분 안에 다음 실행이 시작되고, 마지막으로 성공한 실행 이후의 데이터를 모두 따라잡습니다.
즉시 실행
Run now를 선택하면 실행이 즉시 시작됩니다. 이 실행은 다음 예약 실행이 내보낼 새 데이터와 같은 데이터를 내보냅니다. 같은 내보내기의 다른 실행이 진행 중일 때는 실행을 시작할 수 없습니다.
워터마크 재설정
워터마크는 내보내기가 어디까지 전달했는지 표시합니다. Reset watermark를 선택하면 워터마크가 지워집니다. 그러면 다음 실행이 전체 과거 데이터를 다시 내보낸 뒤 새 데이터를 이어서 내보냅니다.
재설정해도 이미 받은 데이터는 삭제되지 않습니다. 다음 실행이 과거 데이터를 다시 보내므로 대상에 중복 행이 생깁니다. 전달과 중복에 설명된 방법으로 중복을 제거하세요.
실행이 진행 중일 때는 재설정할 수 없습니다.
내보내기 삭제
Delete export를 선택합니다. Lovable은 일정을 중지하고 해당 내보내기의 실행 기록을 제거합니다. Lovable이 이미 대상에 전달한 데이터는 그대로 남습니다. Azure Log Analytics의 경우 테이블과 데이터 수집 규칙도 그대로 남습니다.
감사 로그에 기록되는 활동
Lovable은 데이터 내보내기 활동을 워크스페이스 감사 로그에 기록합니다. 여기에는 내보내기 생성·수정·삭제, 수동 실행, 워터마크 재설정, 연결 테스트가 포함됩니다.
제한 사항
- 각 내보내기에는 소스 하나와 대상 하나가 있습니다. 내보내기를 만든 뒤에는 둘 다 변경할 수 없습니다.
- 일정은 1시간마다 또는 3시간마다 중에서만 선택할 수 있습니다.
- 데이터는 발생하고 최소 5분이 지나야 대상에 도착하며, 여기에 다음 실행까지 남은 시간이 더해집니다.
- 작업이나 행위자 등을 기준으로 내보낼 이벤트를 필터링할 수 없습니다. 각 내보내기는 워크스페이스의 모든 감사 로그 이벤트를 보냅니다.