로그 전달: 기타(수동 업로드) log-forwarding-other
기타 BYOCDN 프로비저닝 방법은 다음과 같은 경우 LLM Optimizer에 CDN 로그를 제공하려는 고객을 위한 포괄적인 옵션입니다.
- 수동 업로드를 사용하는 것이 좋습니다. 예를 들어 운영 팀이 로그를 내보내고 정기적으로 업로드합니다.
- 일회성 스크립트, 예약된 내보내기, 서버리스 작업 등 자동화된 애드혹 프로세스가 사용됩니다.
- 고객은 기본 제공 로그 전달 통합에서 기본적으로 지원되지 않는 CDN을 사용합니다.
이 방법은 “연속 전달” 모델을 모방합니다. 로그가 생성되어 예상되는 S3 위치에 업로드되고, 결국 수집 파이프라인에 의해 자동으로 처리됩니다.
1단계: LLM Optimizer에서 온보딩 step-1
LLM Optimizer로 이동합니다.
-
구성으로 이동합니다.
-
CDN 구성 탭을 클릭합니다.
-
시작하기를 클릭합니다.
-
AI 트래픽 인사이트 활성화 옆의 구성을 클릭합니다.
-
기타를 선택합니다.
-
온보딩을 클릭합니다.
2단계: 로그 준비 및 업로드 step-2
필수 로그 형식(JSON 라인) log-format
로그는 줄바꿈으로 구분된 JSON(라인 당 하나의 JSON 오브젝트)으로 업로드해야 합니다. 각 로그 라인에는 아래 철자와 정확히 일치하는 다음 필드가 포함되어야 합니다.
필드별 스키마 schema
"2025-02-01T23:00:05Z""www.example.com""/home?utm_source=google""GET""Mozilla/5.0 (compatible; GPTBot/1.0""https://chatgpt.com"200"text/html; charset=utf-8"42로그 라인 예 example
다음 예제는 세 개의 로그 라인을 보여 줍니다.
{"timestamp":"2025-02-01T23:06:14Z","host":"www.example.com","url":"/products/llm-optimizer?utm_source=google","request_method":"GET","request_user_agent":"Mozilla/5.0 (compatible; GPTBot/1.0; +https://openai.com/gptbot)","response_status":200,"request_referer":"","response_content_type":"text/html; charset=utf-8","time_to_first_byte":198}
{"timestamp":"2025-02-01T23:19:32Z","host":"www.example.com","url":"/services/ai-consulting/overview","request_method":"GET","request_user_agent":"PerplexityBot/1.0 (+https://www.perplexity.ai/perplexitybot)","response_status":200,"request_referer":"","response_content_type":"text/html; charset=utf-8","time_to_first_byte":255}
{"timestamp":"2025-02-01T23:44:05Z","host":"www.example.com","url":"/products/pricing/enterprise?utm_medium=social","request_method":"GET","request_user_agent":"ClaudeBot/1.0 (+https://www.anthropic.com)","response_status":200,"request_referer":"","response_content_type":"application/pdf","time_to_first_byte":312}
중요 면책조항(맞춤법 및 유형) disclaimer
수집 및 집계 파이프라인은 필드 이름 및 데이터 유형에 대해 엄격합니다.
-
필드 이름은 정확히 일치해야 합니다(대/소문자 및 맞춤법).
-
다음과 같이 데이터 유형이 정확해야 합니다.
- 타임스탬프는 ISO 8601 형식의 문자열이어야 합니다. UNIX 유사 타임스탬프가 작동하지 않을 수 있습니다.
- response_status는 정수여야 합니다.
- time_to_first_byte는 정수여야 하며 밀리초를 사용해야 합니다.
- 문자열은 유효한 JSON 문자열이어야 합니다.
-
잘못된 JSON 또는 누락되거나 잘못된 필드는 로그를 건너뛰거나 구문 분석에 실패하여 보고서에서 데이터가 누락될 수 있습니다.
위치 및 처리 주기 업로드 upload-location
경로 규칙 path-rule
yyyy/mm/dd/(슬래시 포함) 형식을 사용하여 적절한 폴더 경로에 로그를 업로드합니다.
2025년 2월 1일 UTC의 예제 로그: ABC123AdobeOrg/raw/byocdn-other/2025/02/01/
처리 규칙 processing-rule
- 지정된 UTC 일 동안 업로드된 로그는 해당 UTC 일이 끝날 무렵에 파이프라인에서 처리됩니다(매일 실행).
- 이전 날의 폴더(채우기)에 업로드된 로그는 24시간 내에 감지 및 처리됩니다.
시나리오 scenarios
시나리오 1: Splunk / Elasticsearch의 로그 — S3로 내보내기 및 업로드 scenario-splunk
목표: 기존 가시성 플랫폼에서 로그를 가져와 S3 위치로 게재합니다.
- Splunk/Elastic 검색 이벤트에서 필수 필드를 추출합니다.
- 각 이벤트를 위의 스키마(JSON 라인)에 따라 하나의 JSON 오브젝트로 변환합니다.
- 결과 파일을 지정된 S3 버킷과 현재 UTC 일 경로에 업로드합니다.
…/byocdn-other/yyyy/mm/dd/ - 로그는 UTC일 끝까지 자동으로 처리됩니다.
시나리오 2: Lambda / Azure 함수 — 형식 및 S3에 업로드 scenario-serverless
목표: 서버리스 컴퓨팅을 사용하여 CDN 로그를 가져오고 수신한 후 정규화하여 S3 위치로 게재합니다.
- 이 함수는 고객의 소스(로그 저장소, 대기열, blob 스토리지 등)에서 로그를 가져옵니다.
- 이 함수는 필드를 예상 스키마에 매핑하고 JSON 라인을 방출합니다.
- 함수가 출력을
…/byocdn-other/yyyy/mm/dd/에 업로드합니다. - 로그는 UTC일 끝까지 자동으로 처리됩니다.
빠른 체크리스트 checklist
- 라인 당 하나의 JSON 오브젝트(JSON 라인)
- 지정한 대로 정확한 필드 맞춤법
- 올바른 데이터 유형
- time_to_first_byte(밀리초)(정수)
- byocdn-other 아래의 해당 UTC 폴더 yyyy/mm/dd/에 업로드