outputpcap

입력으로 받은 payload 필드를 지정한 파일 시스템 경로에 PCAP 파일로 기록합니다. 네트워크 패킷을 캡처하여 파일로 저장할 때 사용합니다.

명령어 속성

항목설명
명령어 유형가공 쿼리
필요 권한클러스터 관리자
라이선스 사용량해당 없음
병렬 실행미지원
분산 실행분석 노드에서 실행 (reducer)

문법

outputpcap FILE_PATH

대상

FILE_PATH
PCAP 파일을 기록할 파일 시스템 경로. 쿼리 컨텍스트 참조(${})를 사용할 수 있습니다.

입력 필드

필드타입필수 여부설명
payload바이너리필수PCAP 파일에 기록할 패킷 데이터. byte[] 타입이 아니면 해당 레코드를 기록하지 않고 건너뜁니다.
_time날짜선택패킷의 타임스탬프. 미설정 시 현재 시각을 사용합니다.

출력 필드

입력 레코드의 필드를 그대로 전달합니다.

오류 코드

파싱 오류
오류 코드메시지설명
11802outputpcap 명령어로 내보낼 FILE_PATH 매개변수가 필요합니다.파일 경로가 지정되지 않은 경우
11803outputpcap 명령어의 매개변수가 너무 많습니다.매개변수가 2개 이상 지정된 경우
런타임 오류
오류 코드메시지설명후처리 동작
11800outputpcap 명령어로 내보낼 파일 경로 file_path로의 접근이 거부되었습니다.파일 경로에 대한 접근 권한이 없는 경우쿼리를 취소함
11804outputpcap 명령어로 내보낼 PCAP 파일을 열 수 없습니다: [file]PCAP 파일을 열 수 없는 경우 (경로 오류 등)쿼리를 취소함

설명

outputpcap 명령어는 입력 레코드의 payload 필드에 포함된 바이너리 데이터를 PCAP 파일에 기록합니다. payload 필드가 byte[] 타입이 아닌 레코드는 기록하지 않고 다음 명령어로 그대로 전달됩니다.

각 패킷의 타임스탬프는 _time 필드 값을 사용하며, _time 필드가 Date 타입이 아니면 현재 시각을 사용합니다. 기록이 완료된 레코드는 다음 명령어로 그대로 전달됩니다.

분산 환경에서는 분석 노드에서 파일 쓰기를 수행합니다.

이 명령어는 4.0.2511.0 버전부터 클러스터 관리자 권한이 필요하며, 접근 가능한 파일 경로가 제한됩니다. 자세한 내용은 파일 접근 제한을 참고하세요.

사용 예

각 사용 예의 파일 경로는 ALLOWED_FILE_SCAN_PATHS 설정에 포함되어 있다고 가정합니다.

  1. 스트림에서 수신한 패킷을 PCAP 파일로 저장

    logger window=5m localhost\pcap_stream
    | pcapdecode
    | outputpcap /opt/logpresso/files/capture.pcap
    

    pcap_stream 로그 수집기에서 발생하는 스트림을 5분간 모니터링하면서 모든 패킷을 PCAP 파일로 저장합니다.

  2. 특정 포트의 패킷만 필터링하여 저장

    logger window=5m localhost\pcap_stream
    | pcapdecode
    | search src_port == 80 or dst_port == 80
    | outputpcap /opt/logpresso/files/http.pcap
    

    출발지 또는 목적지 포트가 80인 패킷만 필터링하여 PCAP 파일로 저장합니다.

호환성

outputpcap 명령어는 소나 4.0 이전 버전부터 제공되었습니다. 4.0.2511.0 버전부터 클러스터 관리자 권한이 필요합니다.