Cloud Logging으로 피드 활동 분석
이 가이드는 보안 엔지니어와 관리자가 Google SecOps SIEM 내에서 수집 파이프라인과 피드를 모니터링, 디버그, 문제 해결하는 데 도움이 됩니다. 데이터 수집 모니터링에 대한 자세한 내용은 데이터 수집 상태 확인 및 데이터 수집 문제 해결을 참고하세요. 이 가이드에서는 Cloud Logging에서 수집 및 피드 활동 로그를 전송, 확인, 쿼리하는 방법을 설명합니다. Cloud Logging을 사용하면 누락, 지연 또는 실패한 로그와 같은 로그 전송 문제를 진단하고 수집 이상을 해결하는 데 필요한 시간을 줄일 수 있습니다. 푸시 및 풀 기반 수집 메커니즘에 대한 이러한 가시성을 통해 Gemini Cloud Assist를 사용하여 로깅 및 측정항목 원격 분석을 조사할 수도 있습니다.
시작하기 전에
로그를 보는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대해 다음 Identity and Access Management (IAM) 역할 중 하나를 부여해 달라고 요청하세요.
- 로그 뷰어(
roles/logging.viewer) - 비공개 로그 뷰어 (
roles/logging.privateLogViewer)
역할 부여 방법에 대한 자세한 내용은 액세스 관리를 참조하세요.
- 로그 뷰어(
비용 영향을 이해합니다. Cloud Logging은 청구 가능한 서비스입니다. 무료 등급은 Google Cloud 무료 프로그램의 일부로 제공됩니다. 자세한 내용은 Google Cloud 관측 가능성 가격 책정을 참고하세요.
주요 용어
chronicle-siem: Google SecOps 생태계와 연결된 로그의 네임스페이스 라벨입니다.chronicle.googleapis.com/ingestion_activity: Google SecOps 데이터 수집 파이프라인과 관련된 로그 스트림의 로그 ID입니다.storage_transfer_job: Storage Transfer Service (STS)를 사용하는 정적 피드의 로그 리소스 유형입니다.storagetransfer.googleapis.com/transfer_activity: STS 활동 로그의 로그 ID입니다.
피드 활동 분석 개요
Cloud Logging에서 피드 활동을 분석하려면 다음과 같은 몇 가지 주요 단계를 거쳐야 합니다.
- 로그 탐색기 액세스: Google Cloud 콘솔에서 로그 탐색기로 이동하여 올바른 Google Cloud 프로젝트를 선택합니다. 자세한 내용은 로그 탐색기 인터페이스 문서를 참고하세요.
- 로그 쿼리: 시간 범위, 네임스페이스, 로그 ID, 수집 메커니즘, 피드 ID, 수집기 ID 등 다양한 매개변수를 기반으로 로그를 필터링하는 쿼리를 작성합니다. 문법 규칙은 Logging 쿼리 언어를 참고하세요. 이 가이드에서는 일반적인 필터링 시나리오의 예를 제공합니다.
- 특정 피드 유형 조사: Storage Transfer Service (STS)를 사용하는 피드를 비롯해 고유한 로그 형식이 있는 다양한 수집 방법을 사용하여 피드의 로그를 쿼리하는 방법을 알아봅니다.
- 콘솔 도구 사용: 로그로 디버그, Gemini Cloud Assist와 같은 내장 Google SecOps 콘솔 기능을 활용하여 분석 및 디버깅 프로세스를 간소화합니다.
- 로그 스키마 이해: 스키마 참조를 통해 로그 페이로드 내의 필드와 데이터 유형을 이해하면 심층적인 분석과 문제 해결에 도움이 됩니다.
다음 섹션에서는 데이터 수집 파이프라인의 상태를 효과적으로 모니터링하고, 문제를 디버그하고, 오류를 해결하는 데 도움이 되는 자세한 정보를 제공합니다.
피드 활동 로그 보기 및 쿼리
피드 활동 로그를 보고 쿼리하려면 다음 단계를 따르세요.
- Google Cloud 콘솔의 로그 탐색기 페이지로 이동합니다.
- Google SecOps 인스턴스와 연결된 Google Cloud 프로젝트를 선택합니다.
- 쿼리 창에 쿼리 표현식을 입력하여 로그를 필터링합니다.
- 쿼리 실행을 클릭합니다.
일반적인 시나리오의 쿼리 예시는 다음 섹션을 참고하세요.
Google SecOps 네임스페이스로 필터링
Google SecOps 생태계와 연결된 모든 로그를 가져오려면 다음 쿼리를 사용하세요.
labels.namespace="chronicle-siem"
수집 활동 로그 스트림별로 필터링
데이터 수집 파이프라인과 관련된 로그만 격리하려면 다음 쿼리를 사용하세요.
log_id("chronicle.googleapis.com/ingestion_activity")
수집 메커니즘별 필터링
서드 파티 API와 같은 특정 수집 메커니즘의 로그를 타겟팅하려면 쿼리에서 labels.ingestion_mechanism 필드를 사용하세요.
labels.ingestion_mechanism="Third Party API"
피드 ID 또는 수집기 ID로 필터링
특정 수집 피드 또는 수집기의 로그를 보려면 labels.feed_id 또는 labels.collector_id 필드를 사용합니다. 피드 구성에 대한 자세한 내용은 데이터 피드 관리 및 데이터 피드 개요를 참고하세요. 수집기의 경우 로그 수집 및 파싱을 참고하세요.
labels.feed_id="FEED_ID"
FEED_ID을 피드의 고유 식별자로 바꿉니다.
labels.collector_id="COLLECTOR_ID"
COLLECTOR_ID를 수집기의 고유 식별자로 바꿉니다.
Storage Transfer Service 로그 보기
Storage Transfer Service (STS)를 사용하는 정적 피드의 로그는 테넌트 환경에서 Google Cloud 프로젝트로 라우팅되며 다른 리소스 유형과 로그 이름을 사용합니다. STS에 대한 일반 정보는 Storage Transfer Service 문서를 참고하세요.
목표: STS 활동 기록 보기
작업: 다음 쿼리를 실행합니다.none resource.type="storage_transfer_job" AND log_id("storagetransfer.googleapis.com/transfer_activity")예상되는 실패:
log_id("chronicle.googleapis.com/ingestion_activity")로 검색하면 이러한 정적 피드의 로그가 표시되지 않습니다.수정 단계:
resource.type="storage_transfer_job"및 특정 STSlog_id사용
콘솔 도구를 사용하여 피드 디버그
Google SecOps는 활동 로그에 액세스할 수 있는 콘솔 통합을 제공합니다.
- Gemini Cloud Assist에 질문하기: 피드 페이지에서 Gemini Cloud Assist에 질문하기를 선택하여 채팅 창을 엽니다. 피드 볼륨 및 오류에 관해 질문할 수 있습니다. 자세한 내용은 Google SecOps의 Gemini 개요를 참고하세요.
- 로그로 디버그: 피드 관리 페이지에서 특정 피드의 작업 메뉴를 열고 로그로 디버그를 선택합니다. 이 옵션은 피드 보기 페이지에서도 사용할 수 있습니다. 선택한 피드 ID에 대해 사전 필터링된 새 탭에서 로그 탐색기가 열립니다.
로그 스키마 참조
피드 활동 로그는 통합 JSON 페이로드 구조를 사용합니다.
수집 활동 로그 필드
| 필드 | 데이터 유형 | 설명 |
|---|---|---|
request_start_time |
string |
활동이 시작된 타임스탬프 (RFC 3339)입니다. |
activity_duration |
string |
활동의 총 경과 시간입니다 (예: '1.500s'). |
transfer_id |
string |
특정 파일 또는 데이터 전송 작업의 고유 식별자입니다. |
feed_id |
string |
Google SecOps 수집 피드의 고유 식별자입니다. |
collector_id |
string |
수집을 실행하는 수집기의 고유 식별자입니다. |
log_type |
string |
수집되는 로그의 형식입니다 (예: DUO, OFFICE_365). 형식 문자열 목록은 지원되는 기본 파서를 참고하세요. |
file |
string |
처리된 파일 또는 blob 컨테이너의 이름 (파일 기반 소스의 경우)입니다. |
request_urls |
array of strings |
데이터를 가져오거나 전송하는 데 사용되는 타겟 URL (API 기반 소스의 경우) |
http_status_code |
integer |
API 가져오기 작업에서 수신한 HTTP 상태 코드입니다. |
bytes_transferred |
integer |
활동 중에 전송된 원시 바이트 수입니다. |
record_count |
integer |
처리, 가져오기 또는 파싱된 개별 로그 항목 수입니다. |
activity |
string |
실행 중인 작업의 이름입니다 (예: File Processing, File Transfer). |
details |
string |
수집 활동의 추가 메타데이터 또는 세부정보입니다. |
error_details |
object |
활동에 실패가 발생한 경우의 자세한 오류 정보입니다. 오류 세부정보 필드를 참고하세요. |
오류 세부정보 필드
| 필드 | 데이터 유형 | 설명 |
|---|---|---|
error_message |
string |
사람이 읽을 수 있는 오류 설명입니다. |
error_code |
string |
오류 코드 또는 식별자 (숫자 및 설명 문자열 코드 지원) |
error_type |
string |
오류의 분류 또는 카테고리입니다. |
is_retriable |
boolean |
오류를 일으킨 작업을 다시 시도할 수 있는지 여부를 나타냅니다. |
샘플 로그 페이로드
성공적인 인그레션 활동 로그 예시
{
"request_start_time": "2026-06-30T19:00:00Z",
"activity_duration": "0.500s",
"transfer_id": "transfer-12345",
"feed_id": "feed-998877",
"collector_id": "collector-abcd",
"log_type": "WORKDAY_AUDIT",
"file": "audit_log_2026_06_30.json",
"request_urls": [
"https://api.workday.com/ccx/v1/tenant/logs"
],
"http_status_code": 200,
"bytes_transferred": 4512000,
"record_count": 12500,
"activity": "File Processing",
"details": "Successfully processed and validated 12500 records from Workday."
}
실패한 수집 활동 로그 예시
{
"request_start_time": "2026-06-30T19:05:00Z",
"activity_duration": "1.200s",
"transfer_id": "transfer-12346",
"feed_id": "feed-998877",
"collector_id": "collector-abcd",
"log_type": "WORKDAY_AUDIT",
"request_urls": [
"https://api.workday.com/ccx/v1/tenant/logs"
],
"http_status_code": 401,
"bytes_transferred": 0,
"record_count": 0,
"activity": "File Transfer",
"details": "Authorization failure during API request.",
"error_details": {
"error_message": "Invalid API token or credential expired.",
"error_code": "401",
"error_type": "AUTHORIZATION_ERROR",
"is_retriable": true
}
}
문제 해결
이 섹션에서는 제한사항과 일반적인 문제를 간략하게 설명합니다.
제한사항
- Storage Transfer Service (STS) 필드: STS에서 라우팅된 정적 피드의 로그는
chronicle.googleapis.com/ingestion_activity대신 리소스 유형storage_transfer_job및 로그 이름storagetransfer.googleapis.com/transfer_activity을 사용합니다. - 원격 분석 상관관계:
feed_id와 같은 카디널리티가 높은 필드는 모니터링 리소스 정의의 리소스 라벨이 아닌 로그의 메타데이터 라벨로 포함됩니다. 메타데이터 라벨을 사용하는 Gemini Cloud Assist 상관관계 기능은 지속적으로 평가되고 있습니다.
오류 해결
| 문제 설명 | 수정 |
|---|---|
| 표준 쿼리에서 정적 피드의 로그가 누락됨 | STS 관련 리소스 유형 storage_transfer_job 및 로그 ID storagetransfer.googleapis.com/transfer_activity를 사용하여 쿼리해야 합니다. Storage Transfer Service 로그 보기를 참고하세요. |
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가에게 문의하여 답변을 받으세요.