데이터 조회
IBM Cloud Logs에서 Lucene 조회, DataPrime 조회를 사용하거나 IBM Cloud Object Storage (COS) 버킷에서 직접 데이터를 조회하여 로그 데이터를 조회할 수 있습니다. 조회에 필터를 적용할 수도 있습니다.
UI에서 데이터 조회
탐색 로그 페이지에서 다음을 수행할 수 있습니다.
필터링은 Lucene 또는 DataPrime 을 사용한 검색과 함께 사용할 수 있습니다.
조회를 정의한 후에는 보기를 작성하여 나중에 재사용할 수 있도록 조회를 저장할 수 있습니다. 자세한 정보는 사용자 정의 보기 작성 을 참조하십시오.
우선순위 인사이트 데이터 쿼리 시 고려사항
IBM Cloud Logs 우선순위 인사이트 파이프라인에서 로그 데이터를 조회할 때 다음과 같은 고려사항이 있습니다.
-
우선순위 인사이트 파이프라인 의 로그가 인덱싱됩니다. 인스턴스가 최대 색인 필드 수에 도달하면 추가 필드를 조회할 수 없습니다. 색인화 및 데이터 맵핑에 대한 자세한 정보는 색인화 및 필드 맵핑 이해 를 참조하십시오.
-
우선순위 인사이트 데이터 파이프라인을 통해 수집된 데이터가 다른 유형의 다른 로그 레코드에서 보낸 동일한 필드를 발견하는 경우 맵핑 예외가 발생할 수 있습니다. 맵핑 예외로 인해 필드를 조회에 사용할 수 없습니다. 자세한 정보는 맵핑 예외 를 참조하십시오.
-
분석 및 경보 및 저장 및 검색 데이터 파이프라인을 통해 수집된 로그는 아카이브에서 직접 쿼리할 수만 있습니다.
-
Lucene 조회 또는 DataPrime 조회를 사용하여 우선순위 인사이트 데이터 파이프라인 을 통해 수집되고 처리되는 로그를 조회할 수 있습니다.
예를 들어, Lucene 조회를 정의할 때 자유 텍스트 검색, 일반 RegEX 표현식 또는 필드 검색 사용과 같은 조회를 실행할 수 있습니다.
예상 데이터가 표시되지 않는 경우 다음을 수행하십시오.
-
조회 범위를 넓히거나 필터를 제거하는 것을 고려하십시오.
-
일부 로그는 아직 색인화되지 않았을 수 있으며 필터 또는 조회에서 찾을 수 없습니다.
-
버킷에서 데이터 조회 시 고려사항
탐색기 로그 페이지에서 또는 아카이브 조회를 실행하여 데이터를 조회할 수 있습니다.
데이터 버킷에서 로그 데이터를 조회할 때 다음과 같은 고려사항이 있습니다.
- 데이터 버킷에 저장된 데이터에는 ' 우선순위 인사이트, ' 분석 및 경보', ' 저장 및 검색 ' 데이터 파이프라인을 통해 수집된 데이터가 포함됩니다. 또한 라이브 테일에서 차단된 로그 보기 및 IBM Cloud Object Storage 아카이브 옵션이 활성화된 구문 분석 차단 규칙을 통해 일치하는 로그도 포함됩니다.
- 버킷의 데이터를 유지보수합니다. 필요한 기간 동안 데이터를 보존하고 모든 로그 옵션을 선택하여 로그 페이지를 통해 데이터를 조회할 수 있습니다.
- 필터링은 Lucene 또는 DataPrime 을 사용한 검색과 함께 사용할 수 있습니다.
- 무제한 시간 프레임을 사용하여 데이터를 쿼리할 수 있습니다. 데이터가 이동할 수 있는 시간에 대한 제한사항은 없습니다. 데이터를 유지하고 유지하는 한 데이터에 액세스할 수 있습니다.
- 로그 우선순위 및 일일 할당량에 관계없이 로그를 조회할 수 있습니다. 차단된 로그만 아카이브로 전송되지 않습니다.
- 아카이브 조회를 사용하면 텍스트 또는 광범위한 구문 조회를 사용하여 아카이브에서 로그를 직접 조회할 수 있습니다. 로그 우선순위, 일일 할당량 또는 데이터의 시간 프레임에 관계없이 로그를 조회할 수 있습니다. 자세한 정보는 아카이브된 데이터 조회 를 참조하십시오.
탐색기를 통한 데이터 쿼리 제한사항
IBM® Cloud Logs에서 데이터를 쿼리할 때 한계가 있습니다.
조회 한계
쿼리 내 문자
쿼리에 포함할 수 있는 글자 수에는 제한이 있습니다.
-
로그 보기의 쿼리에는 최대 3000자까지 포함할 수 있습니다.
-
알림 쿼리 정의에는 최대 65,535자까지 포함할 수 있습니다. 알림 쿼리 정의도 최대 50개의
AND및OR문으로 제한됩니다.
키워드 유형
키워드는 색인화 전에 분석기를 통과하지 않는 텍스트를 나타냅니다. 이 데이터 유형은 정규식, 집계 및 정렬에 적합합니다.
쿼리에서 키워드 데이터 유형을 사용하는 구문은 <fieldName>.keyword 입니다.
IBM Cloud Logs 필드가 256자보다 길면 키워드 유형을 만들 수 없습니다.
리턴된 결과
조회에서 리턴되는 최대 행 수는 우선순위 인사이트 또는 IBM Cloud Object Storage에 저장된 데이터에서 조회하는 경우에 따라 다릅니다.
- 우선순위 인사이트 에서 리턴되는 최대 결과 수는 12K입니다.
- IBM Cloud Object Storage ( 모든 로그를 사용하는 쿼리에서)에서 반환되는 최대 결과 수는 50K입니다.
스캔된 바이트
우선순위 인사이트 데이터에 대해 최대 100MB가 스캔됩니다. IBM Cloud Object Storage 에 저장된 데이터를 스캔할 때 한계가 없습니다.
속도 제한
분당 최대 10개의 쿼리를 제출할 수 있습니다.
요금 한도를 초과하면 HTTP 429가 반환됩니다.
아카이브 조회 제한사항
다음은 쿼리에 적용되는 제한사항입니다.
| 제한사항 | 설명 |
|---|---|
| 처리된 바이트 수 | 매일 수집된 바이트의 최대 30% |
| Parquet 파일 | 최대 500K 개의 파일 스캔 |
| 복제 결과 | 아카이브 조회 실행 중 최대 1M 개의 결과 |
| 제한시간 초과 | 최대 5분의 쿼리 실행 |
또한 아카이브된 데이터를 조회할 때 다음 사항을 알고 있어야 합니다.
아카이브 조회 결과 세분화
다음 방법을 사용하여 조회 결과를 세분화할 수 있습니다.
CLI를 사용하여 로그 데이터 쿼리
CLI를 사용하여 로그 데이터를 쿼리하는 방법에는 두 가지가 있습니다:
querybackground-query-create
background-query-create 명령은 비동기 쿼리를 실행하는 반면 query 명령은 동기 쿼리를 실행합니다.
백그라운드 쿼리를 사용하면 쿼리를 실행하고 나중에 결과를 가져올 수 있습니다. 쿼리 결과가 준비되면 CLI 또는 API를 사용하여 결과를 파일로 다운로드할 수 있습니다.
백그라운드 쿼리를 통해 최대 1M 레코드까지 반환할 수 있습니다. query 명령은 50K 레코드를 반환하는 것으로 제한됩니다.
쿼리 CLI는 출력으로 logs-raw, logs-prettify, json 만 지원합니다. 기본값은 logs-raw입니다.
동기 쿼리 실행
명령을 실행하여 로그 데이터를 동기식으로 쿼리할 수 있습니다 ibmcloud logs query 명령을 실행하여 로그 데이터를 동기식으로 쿼리할 수 있습니다.
ibmcloud logs query --query QUERY --syntax QUERY_SYNTAX --metadata '{"start_date": START-DATE, "end_date": c, "syntax": SYNTAX , "limit": LIMIT, "strict-fields-validation": STRICT-FIELDS-VALIDATION, "tier": TIER}'
or
ibmcloud logs query --query QUERY --syntax QUERY_SYNTAX --start-date START-DATE --end-date END-DATE --syntax SYNTAX --limit 10
명령 옵션
--query(문자열)-
실행할 쿼리입니다. 이는 필수 매개변수입니다.
쿼리 구문은 루씬 또는 데이터프라임 중 하나를 사용할 수 있습니다. 쿼리의 구문 또는 유형은
--syntax매개 변수를 사용하여 설정합니다. --metadata(문자열)-
쿼리 실행을 위한 메타데이터입니다. 이 구성을 사용하여 쿼리 실행 매개변수를 제공합니다.
--start-date(문자열)-
쿼리 시간 범위의 시작입니다. UTC ISO 8601 형식이어야 합니다(예:
2025-07-15T08:45:00Z). 기본값은--end-date값보다 15분 전입니다.--end-date을 지정하지 않으면 기본값은 현재 시간 15분 전입니다. --end-date(문자열)-
쿼리 시간 범위의 끝입니다. UTC ISO 8601 형식이어야 합니다(예:
2025-07-15T08:45:00Z). 기본값은--start-date값에서 15분 후입니다.--start-date이 정의되지 않은 경우--end-date은 현재 시간이고--start-date은 현재 시간 15분 전의 시간입니다. --limit(int)-
반환되는 레코드 수를 제한합니다. 지정하지 않으면 기본값은 2000입니다. 우선순위 인사이트 검색 시 반환되는 최대 레코드 수는 12000개입니다. 그렇지 않으면 반환되는 최대 레코드 수는 50000개입니다.
--syntax(문자열)-
쿼리가 작성되는 구문입니다. 허용되는 값은
lucene및dataprime입니다. --since(기간)-
데이터를 쿼리할 때 현재 시간부터 되돌아볼 기간입니다. 이 플래그를 사용하면
metadata-start-date및metadata-end-date. 예를 들어1h은 지난 한 시간 동안의 데이터를 검색합니다(기본값1h0m0s). --tier(문자열)-
쿼리가 실행되는 계층입니다. 허용되는 값은 다음과 같습니다:
archive,frequent_search( 우선순위 인사이트 ). --output(문자열)-
결과가 반환되는 출력 형식입니다. 유효한 값은
logs-raw,logs-prettify및json입니다.
예
ibmcloud logs query --query "Push and Query test" --metadata '{"start_date": "2025-06-16T12:00:00Z", "end_date": "2025-06-17T13:41:30Z","syntax": "lucene"}' --output logs-raw
query 명령은 metadata 매개변수 외부에서 --start-date, --end-date 및 --syntax 도 지원합니다. 예를 들어, 다음과 같습니다.
ibmcloud logs query --query "source logs | filter \$d.text == 'Push and Query test'" --syntax dataprime --start-date 2025-08-03T12:00:00Z --end-date 2025-08-04T13:41:30Z
백그라운드 쿼리 실행
로그 데이터를 비동기적으로 쿼리할 수 있습니다.
먼저 백그라운드 쿼리를 제출합니다. 그런 다음 다른 명령어와 함께 ID를 사용할 수 있습니다.
ibmcloud logs background-query-create --query QUERY --syntax SYNTAX [--start-date START-DATE] [--end-date END-DATE] [--now-date NOW-DATE]
명령 옵션
--query(문자열)-
실행할 쿼리입니다. 이는 필수 매개변수입니다.
쿼리 구문은 루씬 또는 데이터프라임 중 하나를 사용할 수 있습니다. 쿼리의 구문 또는 유형은
--syntax매개 변수를 사용하여 설정합니다. --syntax(문자열)-
쿼리가 작성되는 구문입니다. 허용되는 값은
lucene및dataprime입니다. --start-date(문자열)-
쿼리 시간 범위의 시작입니다. UTC ISO 8601 형식이어야 합니다(예:
2025-07-15T08:45:00Z). 기본값은--end-date값보다 15분 전입니다.--end-date을 지정하지 않으면 기본값은 현재 시간 15분 전입니다. --end-date(문자열)-
쿼리 시간 범위의 끝입니다. UTC ISO 8601 형식이어야 합니다(예:
2025-07-15T08:45:00Z). 기본값은--start-date값에서 15분 후입니다.--start-date이 정의되지 않은 경우--end-date은 현재 시간이고--start-date은 현재 시간 15분 전의 시간입니다.
예
ibmcloud logs background-query-create --query "Push and Query test" --syntax lucene --start-date 2025-06-16T12:00:00Z --end-date 2025-06-17T13:41:30Z
DataPrime 구문을 사용한 예
ibmcloud logs background-query-create --query "source logs | filter \$d.text == 'Push and Query test'" --syntax dataprime --start-date 2025-08-03T12:00:00Z
백그라운드 쿼리의 상태 확인하기
백그라운드 쿼리 명령을 실행할 때 반환되는 ID를 사용하여 백그라운드 쿼리의 상태를 확인할 수 있습니다.
ibmcloud logs background-query-status --query-id QUERY-ID
명령 옵션
--query-id(strfmt.UUID)-
백그라운드 쿼리 명령에서 반환된 쿼리 ID입니다. 필수.
값의 길이는 36자이며 정규식
/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/과 일치해야 합니다.
예
ibmcloud logs background-query-status --query-id 8b5e7151-da2b-4633-be8c-9b269bed2c81
백그라운드 쿼리의 결과 검색하기
백그라운드 쿼리 명령을 실행할 때 반환된 ID를 사용하여 백그라운드 쿼리의 쿼리 결과를 검색할 수 있습니다.
ibmcloud logs background-query-data --query-id QUERY-ID --output OUTPUT
명령 옵션
--query-id(strfmt.UUID)-
백그라운드 쿼리 명령에서 반환된 쿼리 ID입니다. 필수.
값의 길이는 36자이며 정규식
/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/과 일치해야 합니다. --output-file(문자열)-
출력이 기록되는 파일의 경로를 지정합니다.
--output(문자열)-
결과가 반환되는 출력 형식입니다. 유효한 값은
logs-raw,logs-prettify,json,yaml,tui또는table입니다. 기본값은table입니다.
예
ibmcloud logs background-query-data --query-id df47fff7-131d-41dc-9328-05489a93e27c --output logs-raw
백그라운드 쿼리 취소하기
백그라운드 쿼리 명령을 실행할 때 반환된 ID를 사용하여 백그라운드 쿼리를 취소할 수 있습니다.
ibmcloud logs background-query-cancel --query-id QUERY-ID --force
명령 옵션
--query-id(strfmt.UUID)-
백그라운드 쿼리 명령에서 반환된 쿼리 ID입니다. 필수.
값의 길이는 36자이며 정규식
/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/과 일치해야 합니다. --force|-f-
사용자에게 추가 메시지를 표시하지 않고 명령을 실행합니다.
예
ibmcloud logs background-query-cancel --query-id df47fff7-131d-41dc-9328-05489a93e27c