로그 데이터 자동 매핑 및 매핑

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 소요 시간: 5분
  • 기본적으로 상태 로그 분석 AI 엔진은 모든 수신 로그 라인을 올바른 태그에 자동 매핑하려 합니다. 사용자는 JavaScript 함수를 정의하여 자동 매핑 결과를 수동으로 변경할 수 있습니다.

    수신 로그 라인 자동 매핑

    상태 로그 분석 자동 매핑은 로그 샘플과 메타데이터를 애플리케이션 서비스, 구성요소 및 소스 유형의 세 가지 태그에 할당합니다. 애플리케이션 서비스 할당은 데이터 입력 설정에 지정된 애플리케이션 서비스를 기반으로 합니다. 나머지 태그는 자동으로 할당됩니다.

    예를 들어 다음 예시 로그 라인에서 상태 로그 분석는 "source" 필드를 사용하여 구성요소 및 소스 유형을 찾습니다.

    {"beat":{"version":"6.8","name":"abc3.prd.acme.com","hostname":"abc3.prd.acme.com"},"@timestamp":"2020-08-27T10:12:24.792Z","prospector":{"type":"log"},"message":"**** User null is requesting the following page http://www.acme.com PROPS:{"subcategory1":"home pages","httpStatus":"200","loginLevel":"Anonymous","userAgent":"Mozilla5.0", ("pageUrl":\"http://www.acme.com","host":"abc3.prd.acme.com","@version":"1","source":"/opt/oracle/weblogic/abc/online_store3/logs/online_store3.out","offset":3951550786} 

    이 예시에서 상태 로그 분석가 "online_store" 문자열을 추출합니다. source, path, channel, namespace_name, name, pod_name, source_name, and aws_lambda_name 필드 가운데 로그 라인에 존재하는 필드를 분석합니다. 데이터가 Syslog를 통해 전송되는 경우 syslog 태그도 분석합니다.

    불필요한 데이터 추출 중지
    추출한 문자열이 설명이 부족하거나 중복된 텍스트 또는 정보를 포함하는 경우 그러한 불필요한 데이터의 추출을 중지할 수 있습니다. 자세한 내용은 불필요한 로그 데이터 추출 중지 문서를 참조하십시오.
    특정 데이터 추출 보장
    상태 로그 분석가 원하는 특정 용어를 추출하게 할 수 있습니다. 자세한 내용은 특정 로그 데이터 추출 보장 문서를 참조하십시오.

    데이터 입력 소스 매핑

    사용자는 JavaScript 함수를 정의하여 자동 매핑 결과를 수동으로 변경할 수 있습니다. 데이터 입력 매핑을 사용하면 애플리케이션 서비스 및 가용 영역별로 로그 데이터를 구성할 수 있습니다. 하나의 애플리케이션 서비스가 여러 구성요소를 포함할 수 있고, 또 하나의 구성요소가 여러 다른 소스 유형에서 로그를 수신할 수 있습니다. 하지만 애플리케이션 서비스-구성요소 쌍은 고유합니다. 소스 유형은 특정 로그 구조 및 형식을 기반으로 합니다. 애플리케이션 서비스 및 구성요소는 보다 광범위하게 정의되기 때문에 주로 논리적 매핑에 사용됩니다.

    테스트 모드를 활성화하면 로그 데이터 매핑을 완성하는 데만 사용되는 샘플 데이터로 Elasticsearch 저장소가 가득 차는 문제를 방지할 수 있습니다. 데이터 입력이 테스트 모드에 있으면 상태 로그 분석는 소스 유형, 소스 또는 표준 플로우에서 생성되는 기타 객체를 생성하지 않습니다. 이 모드에서는 로그 뷰어에서 구성요소로 나타나는 전용 임시 Elasticsearch 인덱스에 스트리밍된 데이터를 저장합니다. 스크립트를 게시하고 테스트 모드를 종료하면 이러한 임시 인덱스가 삭제되므로 저장소 공간 소비를 최소화할 수 있습니다.

    JavaScript 함수를 정의할 때 테스트를 선택하여 현재 지정된 대로 스크립트 결과를 볼 수 있습니다. 이 기능을 사용하면 생성된 소스 유형과 소스를 미리 볼 수 있습니다. 그런 다음 원하는 결과를 얻을 때까지 스크립트를 수정할 수 있습니다. 예를 들어 여러 버전의 JavaScript 함수의 테스트 결과를 비교하는 것이 유용할 수 있습니다.
    주:
    기본적으로 테스트에서는 100개의 로그 데이터 샘플을 처리합니다. 시스템 속성에서 이 숫자를 사용자 지정할 수 있습니다. 자세한 내용은 전역 상태 로그 분석 시스템 속성 구성 문서를 참조하십시오.
    데이터 입력 설정 중에 시스템이 데이터 입력 소스의 총수를 과도하게 생성할 수 있습니다. 예를 들어 이는 매핑 스크립트에 결함이 있기 때문일 수 있습니다. 시스템 속성에서 데이터 입력당 생성된 소스 수의 제한을 구성할 수 있습니다.
    시스템 속성 설명 기본값
    sn_occ.sources_warning_limit 데이터 입력당 생성된 소스 수에 대한 경고 기준입니다. 500
    sn_occ.sources_critical_limit 데이터 입력당 생성된 소스 수에 대한 한계 기준입니다. 600
    특정 데이터 입력이 생성한 로그 소스의 수는 해당 데이터 입력에 대한 소스 수 필드에 표시됩니다. 데이터 입력 설정 중에 생성된 총 소스 수가 경고 기준에 도달하면 시스템에서 이메일로 경고 알림을 전송합니다. 또한 데이터 입력 매핑, 로그 소스데이터 입력 페이지에도 메시지가 표시됩니다. 알림과 메시지에는 지금까지 생성된 총 소스 수와 이 총계에 가장 많은 소스를 기여한 데이터 입력 3개가 포함됩니다. 수행된 작업이 없는 경우 총수가 한계 기준에 도달할 때까지 시스템에서 소스를 계속 생성합니다. 이 경우 데이터 입력 설정 및 모든 데이터 입력에서의 스트리밍이 자동으로 중지됩니다. 문제가 해결될 때까지 데이터 입력을 수동으로 다시 시작할 수 없습니다. Now Support 지식베이스의 데이터 입력에서 너무 많은 소스를 처리하는 방법 [KB0963067] 문서의 지침을 따라 이 상태를 해결할 수 있습니다.

    로그 데이터 바인딩

    구성 관리 데이터베이스(CMDB)에서 로그 데이터를 구성 항목(CI)에 바인딩하면 CMDB에서 로그와 일치하는 엔드포인트를 검색할 수 있습니다. 데이터 입력을 구성하면 CMDB의 CI에 바인딩된 애플리케이션 서비스에 로그 항목을 바인딩합니다. 로그 항목, 애플리케이션 서비스 및 CI를 바인딩하면 상태 로그 분석 AI 엔진이 이들을 상호 연결하여 근본 원인 분석(RCA)에 사용할 수 있습니다. 자세한 내용은 데이터 입력 구성(Rsyslog, Filebeat 또는 Winlogbeat) 또는 데이터 입력 구성(Elasticsearch) 문서를 참조하십시오.