Sumo Logic 로그 내보내는 방법

Sumo Logic 로그 내보내는 방법

SOC Prime Team
SOC Prime Team linkedin icon 팔로우

검색 작업 API를 통해 Sumo Logic의 검색을 실행하세요: 작업을 생성하고 모든 결과를 수집할 때까지 기다린 후 메시지를 페이지로 넘깁니다. 각 메시지는 원시 로그 라인을 _raw에 포함합니다. UI의 메시지 탭에서도 결과를 내보낼 수 있지만, 오늘날 LogTotal이 읽는 형식은 아닙니다.

Sumo Logic은 일반적인 클라우드 SIEM 및 로그 플랫폼이며, 조사 조각을 가져오는 자연스러운 장소입니다. Prime Core에는 Sumo Logic에 대한 23,391개의 탐지 규칙이 있으며, 이는 664개의 MITRE ATT&CK 기술에 매핑되어 있습니다. 아래는 원시 로그를 내보내고, 정리를 한 후, LogTotal에서 무료로 조사하는 방법입니다.

무료로 시작하기

시작하기 전에

액세스 키. Sumo Logic에서 액세스 ID 및 키를 생성하세요. 이 키는 사용자의 역할 권한으로 작동하므로, 데이터 검색을 실행할 수 있는 권한이 있어야 합니다.

올바른 API 엔드포인트. Sumo Logic은 여러 배포작업을 실행하며, 각각 고유의 API 호스트를 가지고 있습니다: US1의 경우 api.sumologic.com, api.us2.sumologic.com, api.eu.sumologic.com 등이 있습니다. 로그인에 사용하는 URL과 일치시킵니다. 잘못된 배포 작업은 잘못된 키처럼 보이는 401을 반환합니다.

쿠키. 검색 작업 API는 호출 간 쿠키를 유지해야 합니다. 작업이 특정 백엔드 노드에서 살아 있기 때문입니다. 쿠키 저 없이 후속 호출은 작업을 찾지 못할 수 있습니다.

제한. 작업은 제한된 수의 메시지를 반환하며, 페이지당 최대 10,000개가 있습니다. 시간 창을 좁게 유지하세요.

검색 작업 API로 내보내기

API="https://api.sumologic.com/api/v1"
AUTH="$SUMO_ACCESS_ID:$SUMO_ACCESS_KEY"
JAR=$(mktemp)

# 1. 검색 작업 생성
JOB=$(curl -sS -u "$AUTH" -c "$JAR" -b "$JAR" -H 'Content-Type: application/json'
  -X POST "$API/search/jobs" -d '{
    "query": "_sourceCategory=linux/secure _sourceHost=web-03",
    "from": "2026-10-19T00:00:00", "to": "2026-10-20T00:00:00",
    "timeZone": "UTC"
  }' | jq -r '.id')

# 2. 모든 결과가 수집될 때까지 대기
until curl -sS -u "$AUTH" -c "$JAR" -b "$JAR" "$API/search/jobs/$JOB"
      | jq -e '.state == "DONE GATHERING RESULTS"' >/dev/null; do sleep 5; done

# 3. 원시 라인을 유지하며 메시지를 페이지로 넘김
COUNT=$(curl -sS -u "$AUTH" -c "$JAR" -b "$JAR" "$API/search/jobs/$JOB" | jq '.messageCount')
for ((off=0; off<COUNT; off+=10000)); do
  curl -sS -u "$AUTH" -c "$JAR" -b "$JAR" "$API/search/jobs/$JOB/messages?offset=$off&limit=10000"
    | jq -r '.messages[].map._raw'
done > web-03_sumo_1019.log

# 4. 정리
curl -sS -u "$AUTH" -c "$JAR" -b "$JAR" -X DELETE "$API/search/jobs/$JOB" >/dev/null

쿼리를 단순 필터로 유지하십시오. 집계 연산자를 포함한 쿼리는 메시지가 아닌 레코드를 반환하며, 레코드는 _raw를 포함하지 않습니다. 구조화된 출력물이 필요하면 jq -c ‘.messages[].map’을 작성하세요. 이는 모든 필드가 포함된 JSON 객체를 줄 단위로 제공합니다.

잡이 취소된 경우에는 대기 루프가 끝나지 않습니다. 정기적으로 사용할 경우 취소(CANCELLED)를 확인하는 체크를 추가하세요.

LogTotal에서 업로드, 정리 및 검토

  1. 업로드. 열기 logtotal.com 파일을 드롭합니다.
  2. 정리. 
  3. 검토. 

문제가 발생했을 때

증상가능성 있는 원인Fix
401 승인되지 않음잘못된 배포 엔드포인트 또는 잘못된 키API 호스트를 로그인 URL과 일치시킵니다
후속 호출에서 작업을 찾을 수 없음호출 간 쿠키가 유지되지 않음쿠키 저 (-c / -b)를 사용하세요
_raw가 비어 있음쿼리가 집계를 포함함단순 필터 쿼리를 사용하세요
예상보다 적은 메시지작업당 제한시간 창을 분할하십시오
429 요청이 너무 많음API 사용 제한속도를 줄이고, 병렬 작업을 줄이세요

FAQ

Sumo Logic Cloud SIEM 신호와 통찰에 관해서는?

그것들은 감지이며 로그가 아닙니다. LogTotal을 위해 그 뒤의 로그 메시지를 내보내세요.

수신 시간으로 검색할 수 있나요?

네, 작업 본문에 “byReceiptTime”: true를 추가하면 됩니다. 이 기능은 소스가 늦거나 잘못된 시계로 보낼 때 유용합니다.

SOC Prime의 Detection as Code 플랫폼에 가입하세요 귀사의 비즈니스에 가장 중요한 위협에 대한 가시성을 개선하세요. 시작을 돕고 즉각적인 가치를 제공하기 위해 지금 SOC Prime 전문가와의 회의를 예약하세요.