쿼리

개요

분석 > 쿼리 메뉴에서는 로그프레소 쿼리문을 직접 작성하고 실행해 데이터를 조회하거나 분석할 수 있습니다. 쿼리 문법과 명령어 자체에 대한 자세한 내용은 로그프레소 쿼리 설명서를 참고하세요.

현재 v5 쿼리 화면은 좌측 테이블 선택 영역과 우측 탭 기반 작업 영역으로 나뉩니다. 테이블을 먼저 선택해 쿼리 작성의 출발점을 잡을 수도 있고, 최근 실행한 쿼리를 다시 불러와 같은 분석을 반복할 수도 있습니다.

쿼리 메뉴는 보안관제 실무에서 다음과 같은 목적에 자주 사용됩니다.

  • 원본 로그나 정규화된 데이터를 직접 검색할 때
  • 탐지 규칙이나 피벗 분석 전에 쿼리를 먼저 검증할 때
  • 저장된 쿼리 결과나 데이터셋을 다시 불러와 후속 분석을 이어갈 때

화면 구성

쿼리 화면은 크게 좌측 테이블 트리와 우측 탭 작업 영역으로 구성됩니다.

쿼리 화면 전체

테이블 트리

좌측 패널에는 테이블 그룹과 테이블 트리가 표시됩니다.

  • 트리에서 테이블을 하나 이상 선택할 수 있습니다.
  • 상단의 테이블 입력 버튼을 누르면 현재 선택한 테이블이 쿼리 작성에 반영됩니다.
  • 사이드바 접기 버튼으로 좌측 패널을 접었다가 다시 펼칠 수 있습니다.
쿼리 탭

우측 상단에는 탭 네비게이션이 표시됩니다.

  • 기본 탭 외에 새 탭을 추가해 여러 쿼리를 동시에 작업할 수 있습니다.
  • 각 탭은 독립적으로 실행 상태와 결과를 유지합니다.
  • 탭 우측 닫기 버튼으로 개별 탭을 닫을 수 있습니다.
쿼리 입력기와 실행 영역

현재 선택된 탭에서는 상단에 쿼리 입력기가, 하단에는 결과 영역이 표시됩니다.

  • 실행: 현재 입력한 쿼리를 실행합니다.
  • 취소: 실행 중인 쿼리를 중단합니다.
  • 초기화: 수정한 쿼리문을 되돌립니다.
  • 쿼리 수행 정보 보기: 실행 시간과 단계별 상태 패널을 열거나 닫습니다.
Note
쿼리 탭은 다른 메뉴로 이동했다가 다시 돌아와도 유지될 수 있습니다. 실행 중이던 쿼리도 같은 탭 문맥에서 이어집니다.

쿼리문 입력

쿼리 입력창에서는 여러 줄 쿼리 편집과 실행 단축키를 지원합니다.

쿼리 입력창

  • 파이프(|)를 기준으로 명령어를 연결해 쿼리를 작성합니다.
  • 입력창은 길이에 따라 여러 줄로 확장됩니다.
  • #으로 시작하는 줄은 주석으로 처리됩니다.
  • Shift + Enter 또는 Ctrl + Enter로 쿼리를 실행할 수 있습니다.
  • 자동 줄 바꿈 기능을 사용하면 긴 쿼리를 보기 쉽게 정리할 수 있습니다.
자동 완성

쿼리 입력창은 명령어와 옵션 자동 완성을 지원합니다.

명령어 자동 완성

옵션 자동 완성

  • 자동 완성 목록은 다음 단축키로 열 수 있습니다.
    • 공통: Ctrl + Space
    • Windows: Ctrl + Shift + Space (대안)
    • macOS: Cmd + Space (대안)
  • 입력한 접두어와 일치하는 명령어나 옵션이 하나뿐이면 바로 자동 입력될 수 있습니다.
Note
macOS의 Cmd + Space는 기본적으로 Spotlight 검색에 할당되어 있어 자동 완성 단축키와 충돌합니다. 로그프레소 소나의 단축키는 변경할 수 없으므로, 시스템 설정 → 키보드 → 키보드 단축키 → Spotlight에서 Spotlight 단축키를 다른 키로 바꾸세요. 또는 충돌을 피하려면 Ctrl + Space를 사용하세요.
자동 줄 바꿈

긴 쿼리문을 정리하려면 자동 줄 바꿈 기능을 사용하세요.

줄 바꿈 전 상태에서는 긴 쿼리문이 한 줄에 이어져 보여 가독성이 떨어질 수 있습니다.

자동 줄 바꿈 전

Ctrl + Shift + F를 누르면 파이프(|) 기준으로 줄 바꿈이 정리되어 명령 단위로 보기 쉬워집니다. macOS에서도 동일하게 Ctrl + Shift + F를 사용합니다(Cmd 키가 아닙니다).

자동 줄 바꿈 후

  • 긴 쿼리를 검토하거나 수정하기 전에 먼저 정리해 두면 각 명령 단계를 빠르게 읽을 수 있습니다.

테이블 입력

좌측 테이블 트리에서 테이블을 선택한 뒤 상단 액션을 사용하면 쿼리 시작 구문을 빠르게 만들 수 있습니다.

테이블 입력

  • 선택한 테이블 이름을 바탕으로 table 구문 작성에 필요한 정보를 빠르게 가져올 수 있습니다.
  • 테이블을 먼저 좁혀 두면 쿼리 작성 시 오타를 줄이고 탐색 범위를 명확히 할 수 있습니다.

쿼리 실행과 결과 확인

쿼리를 실행하면 결과 그리드가 화면 하단에 표시됩니다.

쿼리 실행 예시

  • 실행 중에는 입력기 오른쪽에 취소 버튼이 나타납니다.
  • 실행이 끝나면 결과 그리드에서 페이지별로 데이터를 확인할 수 있습니다.
  • 상단에는 실행 시간과 추가 작업 메뉴가 함께 표시됩니다.
최근 쿼리 재실행

아직 결과를 실행하지 않은 새 탭에서는 최근 실행한 쿼리 목록이 표시됩니다.

최근 쿼리 목록

  • 목록에서 원하는 항목을 클릭하면 해당 쿼리가 즉시 입력되고 실행됩니다.

저장된 데이터 불러오기

실행 전 상태의 탭에서는 불러오기 메뉴를 통해 저장된 결과나 데이터셋을 다시 가져올 수 있습니다.

쿼리 결과 불러오기

쿼리 결과 불러오기

  • 저장된 쿼리 결과는 저장 당시의 실행 결과를 그대로 보여주는 정적 데이터입니다.
  • 목록에서 항목을 클릭하면 새 탭 또는 현재 탭에서 해당 결과를 바로 확인할 수 있습니다.
데이터셋 불러오기

데이터셋 불러오기

  • 데이터셋은 저장된 쿼리를 현재 시점 기준으로 다시 실행하는 동적 객체입니다.
  • 같은 데이터셋이라도 시간 조건이나 원본 데이터 상태에 따라 결과가 달라질 수 있습니다.

쿼리 결과 저장과 다운로드

쿼리를 한 번이라도 실행하면 상단의 다운로드 아이콘 메뉴가 활성화됩니다.

데이터셋으로 저장

데이터셋으로 저장

  • 현재 쿼리문 자체를 데이터셋으로 저장합니다.
  • 저장한 데이터셋은 데이터셋, 피벗, 위젯, 배치 탐지 같은 다른 기능에서 재사용할 수 있습니다.
Note
데이터셋으로 저장할 쿼리는 table, fulltext, stream 같은 시작 명령에 시간 조건(duration, window)을 함께 두는 편이 재사용하기 좋습니다.
쿼리 결과 저장

쿼리 결과 저장

  • 현재 시점의 실행 결과를 정적 결과로 저장합니다.
  • 저장한 결과는 쿼리 결과 불러오기 기능으로 다시 열 수 있습니다.
쿼리 결과 다운로드

쿼리 결과 다운로드

  • 파일 이름: 다운로드 파일 이름입니다.
  • 컬럼: 파일에 포함할 필드를 선택합니다.
  • 파일 형식: CSV, Excel XML, Microsoft Word, HTML, JSON, PDF 등을 선택합니다.
  • 파일 인코딩: 문자 인코딩을 선택합니다.
  • 범위: 내보낼 결과 건수를 지정합니다.
  • 파일 분할 압축: 결과가 많을 때 여러 파일로 나눠 ZIP으로 내려받을 수 있습니다.

쿼리 수행 정보 조회

실행 후에는 단계별 상태와 처리 시간을 별도 패널로 열어 볼 수 있습니다.

쿼리 수행 정보

  • 실제 실행된 쿼리문
  • 실행 시각
  • 총 소요 시간
  • 단계별 처리 레코드 수

결과 표시 개수 변경

결과 그리드 상단 또는 하단 페이저에서 페이지 크기를 바꿀 수 있습니다.

표시 개수 변경

  • 기본 페이지 크기에서 더 많은 결과를 한 화면에 보도록 조정할 수 있습니다.