경고 조건은 인시던트가 생성되는 시기를 정의하는 핵심 요소입니다. 이는 의미 있는 경고를 구축하기 위한 필수적인 시작점 역할을 합니다. 경고 조건에는 알림을 받기 전에 충족된 매개변수 또는 임계값이 포함됩니다. 과도한 경고를 완화하거나 새롭거나 비정상적인 동작이 나타날 때 팀에 알릴 수 있습니다.
새 경고 조건 만들기
경고 조건은 정의된 임계값에 대해 특정 이벤트 집합을 측정하고 지정된 기간 동안 임계 값이 충족되면 인시던트를 여는 지속적으로 실행되는 쿼리입니다.
이 예에서는 Alert condition details 페이지를 사용하여 새로운 공지 조건을 수동으로 생성하는 방법을 보여줍니다. 하지만 공지조건을 만드는 방법은 여러 가지가 있습니다. 다음에서 공지 조건을 생성할 수 있습니다.
NRQL 쿼리를 사용하여 경고 조건이 경고의 기초로 사용할 신호를 정의할 수 있습니다. 이 예에서는 다음 쿼리를 사용합니다.
SELECT average(duration)
FROM PageView
WHERE appName ='WebPortal'
공지 조건에 이 쿼리를 사용하면 뉴렐릭에게 WebPortal 에서 페이지를 로드하는 데 필요한 평균 지연 시간 또는 지속 시간을 알고 싶다는 뜻이 됩니다. 골든의 핵심 신호인 지연시간에 대한 사전 경고는 잠재적 성능 저하에 대한 조기 경고를 제공합니다.
New Relic의 쿼리 언어인 NRQL 사용 방법에 대한 자세한 내용은 NRQL 문서를 참조하세요.
고급 신호 설정 미세 조정
신호를 정의한 후 Run 클릭합니다. 차트가 나타나고 귀하가 설정한 시위가 표시됩니다.
이 예에서는 차트에 WebPortal 의 평균 지연 시간이 표시됩니다. Next 클릭하고 공지 조건 구성을 시작하세요.
이 예에서는 WebPortal 에서 지연 시간을 모니터링하기 위해 생성한 조건에 대한 고급 신호 설정을 맞춤설정합니다.
창 기간은 New Relic이 경고 조건에서 분석을 위해 데이터를 그룹화하는 방법을 정의합니다. 올바른 설정을 선택하는 것은 데이터의 빈도와 원하는 세부 정보 수준에 따라 다릅니다.
High-frequency data (for example, pageviews every minute): 변동 및 추세에 대한 데이터 빈도(이 경우 1분)에 맞춰 기간을 설정합니다.
Low-frequency data (for example, hourly signals): 패턴과 이상 징후를 드러내기에 충분한 데이터를 캡처하는 기간을 선택합니다(예: 시간별 신호의 경우 60분).
필요와 경험에 따라 기간을 맞춤설정할 수 있다는 점을 기억하세요. 경고 조건 생성에 익숙해지면 시작하고 실험할 때 기본값을 사용하는 것이 좋습니다.
기존 집계 방법은 인구가 적거나 간격 간에 상당한 변동을 보이는 데이터를 처리할 때 부족할 수 있습니다. 슬라이딩 윈도우 집계를 사용하여 이러한 데이터를 분석하고 적시에 경고를 효과적으로 트리거하는 방법은 다음과 같습니다.
Smooth out the noise: 큰 집계 창을 만드는 것부터 시작하세요. 이 기간(예: 5분)은 버퍼 역할을 하여 데이터에 내재된 "노이즈" 또는 변동성을 완화합니다. 이는 격리된 스파이크 또는 딥으로 인해 트리거되는 허위 알림을 방지하는 데 도움이 됩니다.
Avoid lag with a sliding window: 큰 창이 데이터 분석에 도움이 되지만, 이전 값을 확인하기 전에 전체 간격이 경과할 때까지 기다리면 공지 공지에서 상당한 지연이 발생할 수 있습니다. 더 작은 슬라이딩 기간(예: 1분)을 권장합니다. 이 슬라이딩 윈도우를 더 큰 집계 창 내에서 데이터를 스캔하는 움직이는 프레임으로 상상해 보십시오. 프레임이 더 작은 간격으로 진행될 때마다 집계 값(예: 평균)이 계산됩니다.
Set your threshold duration: 이제 더 작은 슬라이딩 창의 컨텍스트 내에서 공지사항 값, 릴레이를 정의할 수 있습니다. 이를 통해 현재 프레임의 집계 값이 더 큰 창의 평활화 효과를 희생하지 않고 원하는 범위에서 크게 벗어날 때 알림을 신속하게 트리거할 수 있습니다.
일반적으로 event flow 스트리밍 방법을 사용하는 것이 좋습니다. 이는 시스템에 자주 그리고 꾸준히 들어오는 데이터에 가장 적합합니다. event timer 선택하는 것이 더 나은 방법이 될 수 있는 특별한 경우가 있지만, 첫 번째 공지에는 기본값인 event flow 권장합니다. 이 간단한 비디오를 시청하는 것이 좋습니다(약 1시간). 5분 31초) 어떤 스트리밍 방법을 선택해야 할지 더 잘 이해할 수 있습니다.
경고 조건의 지연 기능은 일관되지 않은 데이터 수집으로 인해 발생하는 잠재적인 문제로부터 보호합니다. 이는 버퍼 역할을 하여 경고를 트리거하기 전에 데이터가 도착하고 처리되는 데 추가 시간을 허용합니다. 이는 오탐을 방지하고 보다 정확한 사고 생성을 보장하는 데 도움이 됩니다.
작동 방식:
적절한 지연 설정은 수신 데이터의 일관성을 평가하여 결정됩니다.
일관된 데이터: 데이터 포인트가 1분 이내에 타임스탬프와 함께 일관되게 도착하는 경우 더 낮은 지연 설정으로 충분합니다.
일관성 없는 데이터: 과거 또는 미래의 몇 분에 걸친 타임스탬프와 함께 데이터 포인트가 도착하는 경우 불일치를 수용하기 위해 더 높은 지연 설정이 필요합니다.
버퍼 생성:
선택한 지연 설정은 경고 조건이 정의된 임계값에 대해 데이터를 평가하기 전에 대기 기간을 도입합니다.
이 버퍼는 데이터 불일치가 해결될 시간을 허용하여 잘못된 경고가 발생할 가능성을 줄입니다.
WebPortal 애플리케이션의 지연 시간 문제를 팀에 알리기 위한 경고 조건을 생성 중입니다. 이 예에서 애플리케이션은 New Relic 데이터를 일관되게 보냅니다. 애플리케이션에서 New Relic으로 신호의 지속적인 스트림이 전송되고 신호에 예상되는 공백이 없으므로 공백 채우기 전략을 선택할 필요가 없습니다.
격차 채우기 전략은 데이터 수집이 간헐적이거나 불완전할 수 있는 시나리오를 다룹니다. 이는 누락된 데이터 포인트를 예상 값으로 대체하는 방법을 제공하여 데이터 스트림에 공백이 있는 경우에도 경고 조건이 여전히 효과적으로 작동할 수 있도록 보장합니다.
간격 채우기를 해제해야 하는 경우:
Consistent data flow: WebPortal 제작의 경우처럼 예상되는 공백 없이 일관되게 뉴렐릭에 데이터를 보내는 경우 일반적으로 공백 채우기가 필요하지 않습니다. 이러한 경우 공백 메우기 전략을 없음으로 설정하는 것이 가장 적절한 접근 방식인 경우가 많습니다.
주요 고려사항:
Popular use case: 간격 채우기의 일반적인 용도는 수신된 데이터가 없는 창에 0 값을 삽입하는 것입니다.
Anomaly thresholds: gap-filling 값은 이상 전동 값, 릴레이를 사용할 때 마지막 관측된 값으로부터 표준의 개수로 해석됩니다. 예를 들어, 간격을 0 값으로 채우면 변경 사항이 없다고 가정하여 마지막으로 표시된 값이 복제됩니다.
경고 조건이 컨테이너인 경우 임계값은 각 경고 조건이 따라야 하는 규칙입니다. 데이터가 시스템으로 스트리밍되면 경고 조건은 이러한 규칙에 해당하는 사건을 검색합니다. 경고 조건에서 사용자가 설정한 모든 조건을 충족하는 시스템의 데이터를 확인하면 인시던트가 생성됩니다. 사고는 시스템에 문제가 있다는 신호이므로 살펴봐야 합니다.
이상 임계값은 특정 숫자 값보다 예상 패턴과의 편차가 더 중요한 경우에 이상적입니다. 미리 정의된 제한을 설정할 필요 없이 비정상적인 활동을 모니터링할 수 있습니다. New Relic의 이상 탐지 기능은 시간이 지남에 따라 데이터를 동적으로 분석하여 진화하는 시스템 동작을 반영하도록 임계값을 조정합니다.
이상 탐지 설정:
상위 또는 하위 선택:
예상보다 높거나 낮은 편차에 대해 경고를 받으려면 상한 및 하한을 선택합니다.
비정상적으로 높은 값에만 초점을 맞추려면 상한만을 선택합니다.
우선순위 할당:
잠재적인 문제에 대한 신속한 주의를 보장하려면 초기 경고의 우선순위 수준을 중요로 설정하세요.
위반 기준을 정의합니다.
기본 설정으로 시작합니다. 쿼리가 5분 이상 예측 값에서 표준 편차 3만큼 벗어나는 값을 반환하면 인시던트를 엽니다.
특정 애플리케이션 및 경고 요구 사항에 맞게 필요에 따라 이러한 설정을 사용자 정의합니다.
이상 가리킴, 정적 레버 값과 달리, 관측값은 전체를 살펴보지 않고 시스템 기록을 기반으로 비정상적인 동작이 무엇인지 판단합니다. 대신, 정적 레버 값은 시스템이 설정한 기준과 다르게 동작할 때마다 인시던트를 엽니다.
이상치와 정적 임계값 모두에 대한 우선순위 수준을 설정해야 합니다. 자세한 내용은 위 섹션을 참조하세요.
손실된 신호 효율성, 한계는 손실된 신호가 손실된 것으로 간주하기 전에 얼마나 기다릴지 결정합니다. 해당 시간 내에 신호가 돌아오지 않으면 새로운 인시던트를 열거나 관련 인시던트를 닫을 수 있습니다. 신호가 종료될 것으로 예상되면 인시던트 열기를 건너뛰도록 선택할 수도 있습니다. 시스템의 예상 동작과 데이터 수집 빈도에 따라 그래픽, 하드웨어 및 소프트웨어 한계를 설정하세요. 예를 들어, 웹 사이트에서 트래픽이 완전히 손실되거나 처리량이 발생하는 경우 뉴렐릭으로 전송된 해당 텔레메트리 데이터도 중단됩니다. 이러한 신호 손실을 모니터링하는 것은 이러한 정전에 대한 조기 경보 시스템의 역할을 할 수 있습니다.
경고 조건 세부 정보 추가
프로세스의 이 시점에서는 이제 완전히 정의된 조건이 있고 원할 때 인시던트가 열릴 수 있도록 모든 규칙을 설정했습니다. 위의 설정에 따라 경고 조건이 시스템에서 설정한 임계값을 위반하는 이러한 동작을 인식하면 인시던트가 생성됩니다. 이제 이 조건에 이름을 지정하고 정책에 연결하기만 하면 됩니다.
정책은 인시던트의 분류 시스템입니다. 정책을 생성하면 수신되는 모든 인시던트를 정리하는 도구가 생성됩니다. 뉴렐릭에게 들어오는 모든 정보를 어디로 보낼지, 얼마나 자주 보낼지, 어디로 보낼지 알려주는 정책을 workflows 에 연결할 수 있습니다.
조건 명명에 대한 모범 사례에는 필수 정보를 한눈에 전달하는 구조화된 형식이 포함됩니다. 조건 이름에 다음 요소를 포함합니다.
우선순위: P1, P2, P3와 같이 공지의 심각도나 긴급도를 나타냅니다.
신호: 높은 평균 지연 시간 또는 낮은 처리량과 같은 지표 또는 조건을 모니터로 지정합니다.
엔터티: WebPortal 앱 또는 데이터베이스 서버와 같은 영향을 받는 시스템, 애플리케이션 또는 구성 요소를 식별합니다.
이 구조를 따르는 올바른 형식의 조건 이름의 예는 P2 | High Avg Latency | WebPortal App 입니다.
제목 템플릿 사용은 선택 사항이지만 권장됩니다. 공지 조건은 귀하가 감시하고자 하는 오래된 값, 릴레이의 집합을 정의합니다. 해당 레버값 중 하나라도 위반되면 인시던트가 생성됩니다. 의미 있는 제목 템플릿을 사용하면 문제를 정확히 찾아내고 중단을 더 빠르게 해결할 수 있습니다.
Java 앱의 인스턴스 메트릭에 의해 위반될 때 인시던트를 여는 임계값을 설정할 수 있습니다.
임계값의 범위를 특정 인스턴스 로 지정하면 잠재적인 문제가 발생한 위치를 보다 빠르게 식별할 수 있습니다. 예를 들어, 이는 앱 인스턴스의 하위 집합에서만 발생하는 이상을 감지하는 데 유용합니다. 이러한 종류의 이상 현상은 많은 수의 인스턴스에서 메트릭을 집계하는 앱에서 놓치기 쉽습니다.
APM에서 모니터링하는 Java 앱의 경우 단일 JVM의 힙 크기 또는 스레드 수가 예상 작동 범위를 벗어날 때 인시던트를 여는 임계값을 설정할 수 있습니다.
우리는 앱에서 선택한 각 항목 에 대해 개별적으로 경고 값, 이탈 위반을 평가합니다. 조건을 생성할 때 Java 앱의 공지 사항에 대한 조건 유형으로 JVM health metric 선택한 다음 사용 가능한 레버 값 중 하나를 선택하세요.
교착 상태 스레드
힙 메모리 사용량
CPU 사용 시간
가비지 컬렉션 CPU 시간
역 임계값이 충족되면 인시던트가 자동으로 닫히지만 UI를 사용하여 JVM 상태 지표에 대해 인시던트가 강제 종료되는 시간을 변경할 수도 있습니다. 기본값은 24시간입니다.
웹 앱의 응답 시간이 이 값보다 높거나 낮거나 같을 때 백분위수를 레버 값 , 즉 조건에 따라 정의하는 옵션이 포함되어 있습니다. 예를 들어 운영 담당자가 average 웹 응답 시간이 아닌 앱 서버의 overall웹 프로세서 응답 시간에 대해 백분위수를 공지하려는 경우에 유용합니다.
공지사항 목록에서 복사하려는 알림의 점 3개 아이콘을 클릭하고 Duplicate condition 선택하세요.
Copy alert condition 에서 목록을 검색하거나 스크롤하여 이 조건을 추가하려는 정책을 선택합니다.
선택 사항: 필요한 경우 조건의 이름을 변경합니다.
선택사항: 토글 스위치를 클릭하여 Enable on save
Copy condition 선택합니다.
기본적으로 선택된 공지사항은 Disabled [비활성화] 상태에서 복사된 조건을 추가하게 됩니다. 표준 절차에 따라 공지에 더 많은 조건을 추가 하거나 복사한 다음 필요에 따라 조건을Enable [활성화합니다] . 또한 새 조건은 원래 조건에 추가된 태그를 복사하지 않습니다.