New Relic의 사용자 지정 계측 편집기를 사용하면 Java 앱 사용자가 New Relic 사용자 인터페이스를 통해 사용자 지정 계측을 구현할 수 있습니다. 편집기는 애플리케이션 코드를 수정할 수 없고 계측할 메서드가 많지 않은 경우 선호되는 선택입니다. 다른 계측 옵션과 각각을 사용하는 이유는 Java 사용자 지정 계측 을 참조하세요.
사용자 정의 편집기를 사용하려면: one.newrelic.com > All capabilities > APM & services > (select a Java app) > Settings > Instrumentation 으로 이동하세요. 사용자 정의 편집기를 사용하여 다음을 수행합니다.
- 지원되지 않는 프레임워크를 계측합니다.
- 계측되지 않은 방법에 대한 추가 통찰력을 얻으십시오.
- 특정 거래를 무시하십시오 .
요구 사항
사용자 정의 계측 편집기를 사용하려면 다음 요구 사항을 충족해야 합니다.
사용자 정의 계측 정의
New Relic 사용자 인터페이스에서 사용자 정의 계측을 정의하려면 스레드 프로파일링 세션을 사용하여 애플리케이션의 각 스레드에 대한 자세한 스택 추적을 수집하십시오. 가능하면 프로덕션 앱에서 계측 규칙을 변경하기 전에 사전 프로덕션 환경에서 사용자 지정 계측을 테스트하십시오.
두 환경 모두에서 사용자 정의 계측 편집기를 사용하여 계측할 메서드를 정의하고 변경 사항을 적용합니다.
새 스레드 프로파일러 세션 을 만듭니다. 충분한 데이터를 수집하려면 세션 길이를 2분 이상으로 설정하십시오.
one.newrelic.com > All capabilities > APM & services > (select an app) > Settings > Instrumentation 로 이동합니다. Recently collected thread profiles 목록이 나타날 때까지 페이지 하단으로 스크롤한 다음 가장 최근 스레드 프로필을 선택합니다.
계측되지 않은 위치를 찾기 위해 개별 방법을 확장합니다. 행동 양식.
특정 노드에 대한 계측 규칙을 정의하려면 Instrument 또는 Ignore 선택하고 필요한 경우 규칙을 맞춤설정하세요.
설정을 저장하려면 Confirm instrumentation changes 선택합니다.
구현하다, 배포하다 Instrumentation 페이지 의 변경사항:
변경 사항을 자동으로 구현하고 배포하려면
Deploy instrumentation changes
선택합니다.
변경 사항을 수동으로 구현하고 배포하려면
Export XML
선택하고 리소스 내보내기를 참조하세요.
주의
가능하면 과도한 계측을 피하십시오. 계측된 각 추가 방법으로 에이전트는 더 많은 리소스를 사용하고 애플리케이션은 더 많은 오버헤드를 발생시킵니다. 또한 계측을 배포하면 잠시 동안 더 높은 오버헤드가 발생합니다. 이로 인해 몇 초 동안 애플리케이션 요청이 눈에 띄게 느려질 수 있습니다.
UI에서 변경 사항을 적용한 경우 에이전트는 몇 가지 수집 주기 (일반적으로 몇 분) 내에 메서드 계측을 시작합니다.
편집기를 사용한 수동 계측
스레드 프로필을 사용하지 않고 편집기에서 직접 계측 지점을 생성할 수도 있습니다.
사용자 정의 편집기에서
Add manual instrumentation
선택하여 리소스를 생성하거나 무시할 클래스와 메서드를 수동으로 입력하세요.
계측 편집기에서 변경 사항을 배포합니다.
이 방법을 사용하여 계측을 추가하면 스레드 프로필에서 사용할 수 있는 것 이상의 추가 기능이 노출됩니다. 서명으로 메서드를 일치시키는 것 외에도 반환 유형, 인터페이스의 메서드 및 Java 주석별로 메서드를 계측할 수도 있습니다.
이러한 더 복잡한 계측 유형은 편집기에서 생성 및 삭제할 수 있지만 편집할 수는 없습니다.
중요
메서드가 Instrumentation not allowed
으로 표시된 경우 맞춤 계측에 대한 New Relic의 문제 해결 절차를 따르세요.
수동으로 변경 사항 배포
또한 사용자 정의 계측 편집기를 사용하여 사용자 정의 계측 세트를 구축한 다음 계측 파일을 내보내고 수동으로 앱 서버로 가져올 수도 있습니다. 이는 높은 보안 모드 사용자에게 필요합니다.
로그를 내보내려면 UI통해 로그를 정의하세요. 그런 다음 Instrumentation 페이지에서 Export xml 선택하고 앱 서버에서 파일을 가져옵니다.
페이지 기능
Instrumentation 페이지는 다음 기능을 지원합니다.
원하는 경우... | 이게 ... |
---|---|
사용자 지정 계측 일시 중지 또는 비활성화 |
|
기존 계측 가져오기 |
|
계측 지점 편집 또는 삭제 | 수동 계측 은 편집할 수 없으며 삭제만 할 수 있습니다.
|
계측 기록 보기 |
|
인스트루먼테이션 옵션
사용자 정의 계측 편집기를 사용하여 다음 옵션을 정의할 수 있습니다.
Instrumentation options | Comments |
---|---|
기기 방법 | 선택한 메소드를 시작했습니다. 편집된 메서드는 뉴렐릭 UI 에 표시됩니다. Instrument 는 다음 하위 옵션을 지원합니다. |
맞춤 속성 보고 | 메소드 매개변수는 트랜잭션의 속성으로 캡처할 수 있습니다. New Relic은 이러한 속성을 트랜잭션 추적, 추적된 오류 및 보안상의 이유로 사용자 정의 로그 편집기를 사용한 사용자 정의 속성 캡처는 기본적으로 disabled 이며 높은 보안 모드를 사용하는 동안에는 활성화할 수 없습니다. 사용자 정의 로그 편집기를 사용하여 사용자 정의 속성을 보고하고 로그 에이전트가 높음 보안 모드에 있는 것을 원하지 않는 경우 높음 보안 모드를 비활성화한 후 newrelic.yml 의
|
거래 무시 | 이 방법을 완전히 무시하십시오 . 에이전트는 이 방법의 메트릭을 보고하지 않으며 이 방법은 Apdex 계산에 기여하지 않습니다. |
"시작" 옵션이 있는 결과
Instrument methods > Start the transaction when this method executes 선택하면 에이전트 동작은 스레드에 기존 트랜잭션이 있는지 여부에 따라 달라집니다.
클래스 또는 메서드가 계측될 때:
"Start the transaction" 플래그가 선택되어 있습니까? | |
---|---|
Yes | No |
해당 스레드에 기존 트랜잭션 is 이 있고 Start the transaction 플래그 is 가 선택된 경우:
| 해당 스레드의 기존 트랜잭션 is 과 Start the transaction 플래그가 확인되지 않은 경우 에이전트는 클래스/메서드를 기존 트랜잭션에 포함합니다. |
트랜잭션이 해당 스레드에 없고 Start the transaction 플래그 is 가 선택된 경우:
| 트랜잭션이 해당 스레드에 없고 Start the transaction 플래그가 확인되지 않은 경우:
|