문제
우리를 위해 , , 그리고 기능을 사용하면 계정이나 애플리케이션이 그룹화하여 더 잘 관리할 수 있는 많은 개별 메트릭 타임슬라이스 데이터 포인트를 보내는 경우가 있을 수 있습니다. 이러한 상황을 설명하기 위해 metric grouping issue [메트릭 그룹화 문제] 또는 MGI [MGI라는] 용어를 사용합니다. 이 경우 에이전트는 New Relic에 불필요하게 많은 양의 데이터를 전송하므로 New Relic 차트, 테이블 및 보고서의 효율성이 저하됩니다.
메트릭 그룹화 문제는 특히 이름이 URL을 기반으로 하는 경우 웹 트랜잭션에서 가장 일반적으로 발생합니다. 애플리케이션에서 보고한 다른 메트릭에서도 발생할 수 있습니다. 예를 들어:
- 애플리케이션이 인터넷을 크롤링하고 각 외부 호출이 다른 도메인으로 이동하는 경우
- 요청을 받을 때마다 소프트웨어가 임시 데이터베이스 테이블을 동적으로 생성하는 경우
- UUID, 기사 이름 또는 유사한 고유 구성 요소를 포함하는 사용자 정의 계측 을 사용하는 경우
메트릭을 효과적으로 그룹화하는 대신(컨트롤러, 영구 데이터베이스 테이블 또는 특정 외부 서비스와 같이) 잠재적으로 무한한 메트릭 목록을 생성할 수 있는 모든 상황은 메트릭 그룹화 문제가 될 수 있습니다.
해결책
메트릭 그룹화가 무엇이며 어떻게 문제가 발생할 수 있는지 이해함으로써 New Relic이 애플리케이션과 어떻게 작동하여 메트릭을 효과적으로 그룹화하고 메트릭 그룹화 문제가 발생하지 않도록 방지하는지 더 잘 이해할 수 있습니다.
다음은 성능 문제가 있는 패턴을 보다 쉽게 식별할 수 있도록 메트릭 그룹화가 트랜잭션을 구성하는 데 도움이 되는 "이전" 및 "이후"의 예입니다.
앱에서 메트릭 그룹화 문제가 발생하지 않도록 하려면:
- New Relic 릴리스 정보를 확인하여 최신 버전의 New Relic 에이전트를 실행하고 있는지 확인하세요.
- 필요한 경우 APM/모바일/브라우저 에이전트를 최신 버전으로 업데이트하세요 .
- 몇 분 기다렸다가 New Relic UI에서 새 데이터를 확인하세요.
- 이름이
MetricCardinalityNearLimit
인 이벤트에 대해NrIntegrationError
를) 확인/쿼리합니다. 이러한 이벤트는 앱이 카디널리티 제한에 가까워지면 발생합니다.
문제가 지속되면 에이전트에 대한 절차를 따르십시오.
에이전트 | MGI 방지 |
---|---|
모든 에이전트 | 측정항목 그룹화 문제의 원인 에 대한 정보를 검토합니다. |
브라우저 | URL 그룹을 추가 합니다. |
가다 | Go 트랜잭션 의 이름을 바꿉니다. |
자바 | Java 메트릭 그룹화 문제 를 참조하십시오. |
.그물 |
|
노드.js | 요청 API 호출 로 트랜잭션의 이름을 바꿉니다. |
PHP | |
파이썬 |
|
루비 |
UI에서 메트릭 정규화 규칙을 편집하고 생성할 수도 있습니다. 자세한 내용은 지표 정규화 를 참조하십시오.
원인
메트릭 그룹화 문제는 메트릭 이름(대부분 웹 트랜잭션 이름)의 세분성이 너무 미세하여 소수의 코드 경로에 대해 수백 또는 수천 개의 서로 다른 웹 트랜잭션 이름이 생성될 때 발생합니다. 몇 가지 주요 코드 경로는 고유한 문서, 기사 또는 페이지 등에 대한 다양한 전체 URL 경로를 생성할 수 있으며 URL 경로의 고유한 요소가 트랜잭션 이름에 포함된 경우 이러한 공통 경로 각각에는 고유한 고유한 경로가 있습니다. 이름.
애플리케이션 성능을 모니터링하고 개선하려면 각 개별 기사가 표시되는 속도보다 기능의 평균 성능(예: 사이트에서 기사 보기)을 아는 것이 훨씬 더 유용합니다. 메트릭 그룹화 문제를 방지하기 위해 New Relic은 일반적으로 APM 트랜잭션 페이지 에 해당 기능에 대한 단일 항목(예: /article/view/*
)을 표시합니다.
이 그룹화를 통해 기사를 보는 데 얼마나 많은 시간이 소요되었는지 훨씬 더 잘 알 수 있으며 기사 보기와 관련된 성능 문제를 쉽게 찾을 수 있습니다. 이러한 통계가 수백 또는 수천 개의 트랜잭션에 분산되어 있으면 추세, 회귀 또는 성능 개선을 감지하는 것이 매우 어려울 것입니다.
각 APM 에이전트에는 컨트롤러와 프레임워크를 감지하는 고유한 방법이 있습니다. 대부분은 자동이지만 일부는 구성 파일 에서 옵션을 활성화 또는 비활성화해야 합니다. 메트릭 그룹화 문제가 발생하는 것을 방지하기 위해 권장 사항을 따를 수도 있습니다.