JSON키로 특정 값 추출

IBM® Cloud Logs에서 Extract 규칙을 사용하여 전체 로그를 구문 분석하지 않고 JSON키로 필요한 특정 값을 추출할 수 있습니다.

구문 분석 규칙과 달리 추출 규칙은 원래 로그를 그대로 두고 루트에서 필드를 추가합니다.

시작하기 전에

구문 분석 규칙은 규칙 그룹내에서 구성됩니다. 각 그룹에는 이름과 이름 사이에 논리적 관계가 있는 규칙 세트가 있습니다. 로그는 규칙 그룹의 순서에 따라 처리됩니다 (처음부터 끝까지). 그런 다음 규칙 그룹 내에서 규칙의 순서에 따라 처리되고 이들 사이의 논리 연산자 (AND/OR) 에 따라 처리됩니다. 규칙은 로그 데이터를 처리, 구문 분석 및 재구성하여 모니터링 및 분석을 준비하는 데 도움이 됩니다. 자세한 정보는 규칙 그룹에 대한 작업 을 참조하십시오.

이름 지정된 캡처된 그룹을 사용하여 새 필드 정의

추출 규칙은 RegEx-named 캡처 그룹을 사용하여 새 필드를 정의합니다.

  • 캡처된 그룹은 구문 분석된 로그 필드가 됩니다.
  • 각 그룹과 연관된 값이 필드의 값이 됩니다.
  • RegEx 는 전체 로그와 일치할 필요가 없습니다.
  • RegEx 이름 지정된 캡처 그룹 ( < > 내의 값) 및 캡처하는 값만 재구성된 로그의 일부입니다.

추출 규칙 구성

다음 단계를 완료하십시오.

  1. 데이터 파이프라인 아이콘 데이터 파이프라인 아이콘 > 구문 분석 규칙 을 클릭하고 새 규칙 그룹을 클릭하십시오.

  2. 세부사항 섹션에서 규칙 그룹 이름규칙 그룹 설명을 입력하십시오.

  3. 규칙 일치 프로그램 섹션에서 규칙 그룹에 포함된 규칙을 적용할 로그를 정의하는 애플리케이션, 서브시스템 및 심각도를 구성하십시오.

  4. 규칙 섹션에서 추출 추출 구문 분석 규칙 아이콘 을 선택하십시오.

    1. 이름을 입력하십시오.

    2. 선택적으로 설명을 입력하십시오.

    3. 소스 필드를 선택합니다. RegEx 가 적용되는 필드입니다.

    4. 정규식 (RegEx) 을 입력하십시오.

    5. 규칙을 사용하려면 상태를 활성 으로 전환하십시오.

  5. 규칙 추가 를 클릭하고 원하는 규칙 유형을 선택하여 추가 규칙 그룹을 추가하십시오. AND/OR 를 토글하여 추가 규칙을 처리할 방법을 선택하십시오.

  6. 규칙 그룹 만들기를 클릭합니다.

예제: 두 개의 새 필드 작성

다음 예제는 필드 메시지에서 정보를 추출하고 조회하고 시각화할 수 있는 두 개의 새 필드 'bytes' 및 'status' 를 작성합니다.

원래 로그는 다음과 같습니다.

{"level":"INFO", "message": "200 bytes sent status is OK"}

RegEx 는 다음과 같습니다.

message"\s*:\s*"(?P<bytes>\d+)\s*.*?status\sis\s(?P<status>[^"]+)

형식화된 로그는 다음과 같습니다.

{
    "level": "INFO",
    "message": "200 bytes sent status is OK",
    "Bytes": "200",
    "status": "OK"
}

원래 로그가 구조화되지 않은 경우 이름 지정된 캡처 그룹을 기반으로 필드가 추가되고 원래 로그는 text 라는 필드 내에 저장됩니다. 이전 예제를 사용하여 원래 로그가 구조화되지 않도록 변경합니다.

원래 로그는 다음과 같습니다.

"level":"INFO", "message": "200 bytes sent status is OK",

결과 로그는 다음과 같습니다.

{
    "bytes": "200",
    "text": "\"level\":\"INFO\", \"message\": \"200 bytes sent status is OK\"",
    "status": "OK"
}