HTTP 소스
Panther에서 로그 수집을 위한 HTTP(webhook) 소스 온보딩
개요
Panther의 HTTP 로그 수집 기능을 사용하면 귀하(또는 제3자)가 웹후크를 통해 로그 이벤트를 Panther로 직접 전송할 수 있습니다. HTTP 로그 소스를 생성하면 Panther는 귀하가 요청을 보낼 수 있는 URL 엔드포인트를 제공합니다. HTTP 원시 이벤트(HTTP Raw events) 수집을 위한 데이터를 포함한 요청입니다.
직접적인 API 풀러가 없는 로그 소스의 경우 HTTP 소스를 사용하면 추가 인프라(다른 데이터 전송 수단예:) S3 이전에 생성한 Snowflake 사용자 이름, 예를 들면 Google Cloud Storage).
Panther의 HTTP 소스는 실제로 HTTPS 소스이며, Panther에서 제공하는 엔드포인트는 https://로 시작합니다. 이러한 소스는 "HTTP" 또는 "HTTPS"라고 번갈아 지칭되지만 항상 암호화(TLS)로 보호됩니다.
페이로드 요구사항
HTTP 엔드포인트를 통해 Panther에 데이터를 전송할 때 다음과 같은 사양이 적용됩니다.
최대 크기
지원되는 최대 페이로드 크기는 1MB입니다. 이 제한은 헤더를 포함합니다.
다음에서 압축하십시오 전송하기 전에 페이로드를 압축하여 처리량을 극대화하십시오.
압축
페이로드는 선택적으로 압축하여 전송할 수 있습니다. 압축 사양에 대한 자세한 내용은 Panther에서 압축된 데이터 수집하기.
스트림 유형
Panther는 HTTP 소스를 통해 수집된 데이터의 스트림 유형을 자동으로 추론합니다. 다음 스트림 유형이 지원됩니다:
JSON
라인
JSON 배열
XML
다음을 참조하십시오: 각 스트림 유형에 대한 설명과 예시는 여기에서 확인하세요.
인증
HTTPS 엔드포인트를 보호하여 인증된 소스의 요청만 처리되도록 하려면 Panther가 다양한 인증 모드를 제공합니다.
공유 시크릿
공유 시크릿 인증(토큰 인증이라고도 함)에서는 소스 설정 중에 헤더 이름과 공유 시크릿 값을 구성합니다. Panther에 대한 HTTP 원시 이벤트(HTTP Raw events) 요청을 하는 엔터티는 해당 이름과 시크릿 값을 포함한 헤더를 포함해야 합니다. Panther는 구성과 일치하는 헤더와 시크릿이 있는 페이로드만 수락합니다.
이 방법을 공유 시크릿이라고 하는 이유는 시크릿이 Panther와 요청을 하는 엔터티 간에 공유되기 때문입니다. HTTP 원시 이벤트(HTTP Raw events) 예: 로그 이벤트를 전송하는 제3자 SaaS 도구.
HMAC
HMAC 인증을 사용하는 경우 소스 설정 중에 헤더 이름, 시크릿 키 값 및 해싱 알고리즘을 구성합니다.
요청을 하는 엔터티는 HTTP 원시 이벤트(HTTP Raw events) 각 요청의 페이로드를 해시하고 시크릿 키 값을 사용해 서명을 생성한 다음 그 서명을 헤더에 포함해야 합니다. Panther는 헤더에서 서명을 가져와 동일한 시크릿 키를 사용하여 동일한 서명 계산을 수행합니다. 일치하는 서명이 있는 요청만 허용됩니다.
HMAC 해시 서명 계산
HMAC 인증을 사용하여 HTTP 소스를 설정한 후에는 새 엔드포인트로의 각 HTTP 원시 이벤트(HTTP Raw events) 요청에 해시 서명을 계산하여 전송해야 합니다. 이를 수행하려면:
Panther에 입력한 시크릿 키와 HMAC 16진수 다이제스트를 사용하여 요청 페이로드의 해시를 계산합니다.
해시를 16진수 문자열로 변환합니다.
환경에서 Fluentd 시작에 관해서는 HMAC 해시 서명을 생성하기 위한 예제 코드 스니펫 아래를 참조하십시오.
요청 헤더에 16진수 문자열 값을
{"<header name>": "sha256=<hex string>"}이전에 생성한 Snowflake 사용자 이름, 예를 들면{"<header name>": "sha1=<hex string>"}선택한 해싱 알고리즘에 따라.
Bearer
베어러 인증의 경우 소스 설정 중에 베어러 토큰 값을 정의합니다. Panther에 대한 HTTP 원시 이벤트(HTTP Raw events) 요청을 하는 엔터티는 다음 형식의 헤더를 포함해야 합니다. Authorization: Bearer <token_value_here>Panther는 일치하는 베어러 토큰을 가진 요청만 수락합니다.
Basic
기본 인증의 경우 소스 설정 중에 사용자 이름과 비밀번호를 정의합니다. 요청을 하는 엔터티는 HTTP 원시 이벤트(HTTP Raw events) 요청을 하는 엔터티는 다음 형식의 헤더를 포함해야 합니다. Authorization: Basic aGVsbG8=키워드 뒤의 문자열은 Basic RFC 7617 을 따릅니다. 즉, 전송자는username:password 값을 base64 로 인코딩해야 합니다.Panther는 일치하는 사용자 이름과 비밀번호를 가진 요청만 수락합니다.
는 선택적
강력히 권장되지는 않지만 인증 없이 엔드포인트를 구성하는 것이 가능합니다. 이는 Panther가 들어오는 요청에 대해 어떠한 인증 검사도 수행하지 않음을 의미하며, 사실상 URL이 모든 HTTP 원시 이벤트(HTTP Raw events) 요청에 열려 있게 됩니다.
엔드포인트에서 인증을 설정하는 것이 강력히 권장됩니다. 는 선택적 발신자가 제공하는 헤더를 제어할 수 없는 상황에서 제공됩니다.
Panther에서 HTTP 로그 소스 설정 방법
Panther에서 HTTP 로그 소스를 설정하려면 아래 단계를 따르십시오. 또한 HTTP 소스 설정에 대한 빠른 안내는 데이터 수집 비디오 개요 를 참조하십시오.
Panther에서 HTTP 로그 소스 생성하기
Panther 콘솔의 왼쪽 탐색 창에서 구성 > 로그 소스.
오른쪽 상단에서 새로 만들기.
을 클릭하세요 HTTP 타일을 클릭합니다.
페이지에서 구성 페이지에서 기본 정보 섹션에서 다음 필드에 대한 값을 입력하십시오:
소스 이름: 소스에 대한 설명적인 이름을 입력하십시오.
스키마 - 선택 사항: 이 소스가 수집할 하나 이상의 로그 유형을 선택하십시오.
이 필드는 선택 사항입니다. 소스가 생성된 후 스키마를 이 소스에 연결할 수 있습니다. 스키마가 연결되기 전에 HTTP 소스로 전송된 데이터는 스키마를 추론하는 데.
일반 구성 사용될 수 있습니다. 인증 유형 선택 인증 방법 섹션에서 선택한 인증 모드에 따라.

다음 지침을 따르십시오: 인증 방법 선택한
공유 비밀(Shared Secret): 값을 입력하십시오 헤더 이름그리고 공유 비밀 값.
생성하십시오. 귀하의 공유 비밀 값값을 안전하게 복사하여 안전한 장소에 저장하십시오. 이 값은 한 번만 표시됩니다. 공유 비밀 값.
HMAC: 값을 입력하십시오 헤더 이름생성한 후 가 설정됩니다.을(를) 생성하고 해싱 알고리즘 을 선택하십시오(다음 중 하나): SHA 256 이전에 생성한 Snowflake 사용자 이름, 예를 들면 SHA 1).
생성하십시오. 귀하의 가 설정됩니다.값을 안전하게 복사하여 안전한 장소에 저장하십시오. 이 값은 한 번만 표시됩니다. 가 설정됩니다..
Bearer: 값을 입력하십시오 베어러 토큰.
입력하는 값에는 "Bearer"를 포함하지 마십시오.
귀하의 베어러 토큰 값을 안전하게 저장하십시오. Panther 콘솔에서는 표시되지 않습니다.
Basic: 입력 사용자 이름 와 비밀번호 값들.
귀하의 비밀번호 값을 안전하게 저장하십시오. Panther 콘솔에서는 표시되지 않습니다.
는 선택적: 추가 구성 필요 없음.
를 선택하고 Panther가 설치된 계정 ID를 입력하십시오. 설정. 성공 화면으로 이동됩니다:\

귀하의 HTTP 소스 URL를 기록해 두십시오. 웹후크는 이 엔드포인트에
HTTP 원시 이벤트(HTTP Raw events)요청을 해야 합니다.성공 화면으로 이동됩니다: 선택적으로 하나 이상의.
입니다. 데이터가 일정 기간 이후에 로그 소스에서 흐르지 않으면 알림을 받으므로 이 옵션을 활성화된 상태로 두는 것을 권장합니다. 시간 범위는 구성 가능하며 기본값은 24시간입니다. 아직 하지 않았다면, 클릭하세요 소스에 하나 이상의 스키마를 연결하려면 데이터가 수신된 후 스키마를 추론할 수도 있습니다.
사용자를 사용할 것이며, 가 활성화될 수 있습니다 "이벤트가 처리되지 않을 때 알러트를 트리거" 설정의 기본값은. 로그 소스에서 일정 기간 동안 데이터 흐름이 중단되면 알림을 받으므로 이 옵션을 활성화 상태로 두는 것을 권장합니다. 시간 범위는 구성 가능하며 기본값은 24시간입니다.\

엔드포인트 생성에는 최대 5분이 걸릴 수 있으며 보통 3분 이내에 완료됩니다.
생성 과정을 모니터링하려면 로그 소스 보기를 클릭하십시오. 그러면 소스의 세부 정보 페이지로 이동하며 해당 페이지에서 다음을 볼 수 있습니다: 소스 상태:\

HTTP 로그 소스로 데이터 전송하기
HTTP 로그 소스를 생성한 후 해당 소스 URL로 HTTP 원시 이벤트(HTTP Raw events) 요청을 하여 Panther로 데이터를 전송할 수 있습니다.
요청이 소스에 대해 구성한 인증 방법을 통과하는지 확인하십시오. curl --data '{ "hello": "world" }' \
예시 사용 curl
curlHTTP 엔드포인트가
4xx 또는 이전에 생성한 Snowflake 사용자 이름, 예를 들면 5xx 상태 코드를 반환하면 Panther는 자동으로 요청을 재시도하지 않습니다. 송신자가 요청을 재시도하는 것이 권장됩니다. 서버 가용성과 관련된 일시적 문제일 수 있습니다. 오류가 지속되면 Panther 지원팀에 문의하십시오..
을 클릭하여 소스에 하나 이상의 스키마를 첨부하세요.
수집된 로그 보기 로그 소스가 구성된 후에는 수집된 데이터를 사용하여 검색할 수 있습니다 이전에 생성한 Snowflake 사용자 이름, 예를 들면 panther_monitor.
마지막 업데이트
도움이 되었나요?

