뉴렐릭 Java 에이전트는 newrelic.yml 파일에서 구성을 읽습니다. 기본적으로 에이전트는 newrelic.jar가 포함된 디렉토리에서 이 파일을 찾습니다. newrelic.config.file 시스템 속성을 정규화된 파일 이름으로 설정하여 구성 파일의 위치를 재정의할 수 있습니다.
뉴렐릭 계정(영구 무료)을 만들고 Java 에이전트를 설치한 후 환경에 맞게 Java 에이전트를 구성할 수 있습니다.
구성 파일 구조
newrelic.yml 파일에는 다양한 환경별로 섹션이 마련되어 있습니다.
테스트
개발
스테이징
프로덕션(기본값)
뉴렐릭은 이러한 각 환경에 common 섹션에 나와 있는 설정을 적용합니다. newrelic.environment 시스템 속성을 환경 이름으로 설정함으로써 다른 환경을 기본값으로 선택할 수 있습니다.
newrelic.yml을 편집하는 경우, YAML 형식을 준수하도록 주의하십시오. 뉴렐릭의 Java 에이전트와 함께 파일을 사용하기 전에 YAML 유효성 검사기를 사용하여 구문이 정확한지 확인하고 다음 규칙을 따릅니다.
Java agent newrelic.yml
Requirements
포맷
YML 파일은 대소문자를 구분합니다.
들여쓰기
모든 들여쓰기는 2자씩 증가해야 합니다. 다른 들여쓰기는 에이전트 시작 시 Unable to parse configuration file 오류를 발생시킵니다.
파일의 동일한 섹션에 있는 데이터에 동일한 수준의 들여쓰기를 사용합니다.
하위 섹션은 추가로 공백 두 칸 만큼 들여쓰기합니다.
파일 변경 사항
변경 사항을 적용하려면 JVM 호스트 프로세스를 다시 시작해야 합니다.
Exception:log_level 및 audit_mode에 대한 속성을 변경한 후에는 다시 시작할 필요가 없습니다. 서킷 브레이커에서 속성을 변경한 후에 다시 시작할 필요가 없습니다.
구성 설정 우선순위
구성 파일의 설정을 재정의하려면 시스템 속성 재정의를 사용합니다. 특정 환경에서는 환경 변수를 사용하여 구성 파일과 시스템 속성을 모두 재정의할 수도 있습니다. 환경 변수는 주로 Heroku를 지원하기 위해 존재합니다. 사용하면 서버 측 구성이 다른 모든 구성 설정보다 우선 적용됩니다.
Java 에이전트를 사용하면 서버 측 구성이 다른 모든 설정을 재정의합니다. 환경 변수는 Java 시스템 속성을 재정의합니다. 자바 속성은 newrelic.yml 파일의 사용자 구성 설정을 재정의합니다. 사용자 설정은 newrelic.yml 기본 설정보다 우선합니다.
Java 확장 디렉터리 구성
Java 에이전트는 프로세스 시작 시 구성 파일을 읽습니다. 파일이 있는 디렉터리를 식별하려면 새 디렉터리를 생성하거나 기존 확장 디렉터리를 지정하십시오.
확장 디렉터리를 생성하려면:
newrelic.jar 및 newrelic.yml이 있는 디렉터리로 이동합니다. 이름이 extensions인 디렉터리를 만듭니다.
에이전트를 활성화하는 플래그입니다. 에이전트를 강제 실행하거나 실행하지 않으려면 이 설정을 사용하십시오.
Type
Float
기본
1.0
애플리케이션의 Apdex 점수에 대한 apdex_t 임계값(초)입니다. Java 에이전트 버전 1.2.008 이상의 경우 apdex_t 값이 UI에서 설정되고 newrelic.yml의 값은 무시됩니다.
Type
정수
기본
(없음)
동일한 시스템의 동일한 앱에 대한 JVM을 구별하기 위한 번호입니다. 뉴렐릭은 고유성을 위해 호스트/포트를 사용하므로 각 JVM의 시작 인수에 다음과 같은 스위치를 넣어 JVM을 구별할 수 있습니다.
-Dnewrelic.config.appserver_port=8081
appserver_port를 사용하여 JVM의 이름을 지정하고 다시 시작하면 드롭다운 및 프로파일링 인터페이스에서 개별적으로 볼 수 있어야 합니다.
중요
이것은 뉴렐릭을 위한 변경 사항일 뿐입니다. 호스트가 어떤 식으로든 통신하는 포트에는 실제로 영향을 미치지 않습니다.
Type
Boolean
기본
false
에이전트 로그 파일에 New Relic으로 전송된 모든 데이터의 일반 텍스트 로깅을 활성화합니다. 이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml에 대한 변경 사항을 알 수 있습니다.
Type
문자열
값 형식
/path/to/ca/cert/bundle.pem
에이전트가 뉴렐릭에 대한 보안 연결을 설정하는 데 사용할 커스텀 SSL 인증서 번들의 경로를 지정합니다. 커스텀 SSL 인증서 번들에 뉴렐릭에 연결하기에 충분한 인증서가 포함되어 있지 않으면 필요한 인증서를 커스텀 인증서 번들에 병합해야 합니다.
중요
현재 Java 에이전트와 함께 번들로 제공되는 Java Flight Recorder의 구현은 Telemetry SDK를 사용합니다. ca_bundle_path를 지정하면 JFR 옵션이 뉴렐릭에 연결하는 데 사용하는 인증서가 업데이트되지 않습니다. 맞춤화된 트러스트 저장소를 사용 중이고 Java 에이전트 JFR 구현을 사용하려는 경우, 맞춤화된 트러스트 저장소에 필수 인증서를 추가해야 합니다.
Type
Boolean
기본
false
각 웹 앱에 대해 개별적으로 데이터 보고를 활성화합니다. 자동 앱 이름 지정 지원을 활성화하려면 true로 설정합니다. 각 웹 앱의 이름은 자동으로 감지되고 에이전트는 각각에 대해 별도로 데이터를 보고합니다. 이는 뉴렐릭의 웹 앱에 대한 더욱 세분화된 성능 분석을 제공합니다.
선택적 확장 디렉터리의 위치를 정의합니다. 이 속성이 설정되지 않은 경우 에이전트는 newrelic.jar 및 newrelic.yml과 동일한 디렉터리에서 extensions라는 하위 디렉터리를 찾습니다.
Type
Boolean
기본
false
높은 수준의 보안을 활성화하려면 이 속성을 true로 설정하고 뉴렐릭 사용자 인터페이스의 높은 보안 속성을 활성화해야 합니다. 높은 수준의 보안을 활성화하면 SSL이 켜져 있고 요청 및 메시지 대기열 매개변수가 수집되지 않으며 쿼리를 원시 형식으로 뉴렐릭에 보낼 수 없습니다.
드문 경우지만 레거시 비동기 API를 사용하여 비동기 서블릿 또는 Jetty Continuation의 수명 주기를 추적하는 계측에서 메모리 누수가 발생할 수 있습니다. 메모리 누수는 일시 중단되었지만 재개되지 않은 누수된 트랜잭션으로 표시됩니다. 이 구성은 이러한 시나리오가 발생하지 않도록 하는 우회적인 방법입니다. 메모리 누수가 발생한 경우에만 이 방법을 활성화할 것을 권합니다.
Type
정수
기본
30
에이전트가 각 스택 추적에서 수집하는 라인 수를 제한합니다. 이 값을 높이면 에이전트가 사용하는 메모리 양과 뉴렐릭으로 전송되는 데이터 양이 증가하므로 성능에 영향을 미칠 수 있습니다.
보다 간결한 트랜잭션 추적 세부 정보를 위해 에이전트는 Scala Futures를 트랜잭션 세그먼트로 보고하지 않으며 해당 Futures는 트랜잭션의 총 시간에 기여하지 않습니다.
scala_futures_as_segments를 활성화하면 오버헤드가 증가합니다. Scala Futures가 트랜잭션 세그먼트로 보고하여 트랜잭션 트레이스에서 볼 수 있도록 하려면, 활성화하는 것이 가능합니다.
scala_futures_as_segments:
enabled:true
Type
Boolean
기본
true
세그먼트의 독점 시간이 전체 트랜잭션 시간의 2% 미만인 경우, 해당 메서드 호출에 대한 지표는 Java/other 아래에 집계됩니다.
trim_stats을 false로 설정하면 이 동작이 비활성화되어 메트릭이 개별적으로 표시될 수 있습니다.
trim_stats:false
환경 변수
환경 변수가 가장 높은 우선순위를 가지며 시스템 속성 및 yml 구성 설정을 재정의합니다.
환경 변수를 설정하려면 export VARNAME=value 명령을 사용합니다.
환경 변수를 영구적으로 설정하려면 내보내기 행을 ~/.bashrc 또는 ~/.bash_profile 같은 파일에 추가합니다.
환경 변수를 설정하여 시스템 속성 또는 newrelic.yml의 모든 설정을 재정의할 수 있습니다. 구성 파일의 지정된 설정에 해당하는 환경 변수는 모든 점( . ) 및 대시( - )가 밑줄( _ )로 대체된 NEW_RELIC 접두사가 붙은 설정 이름입니다. 예를 들어, log_level 설정에 대한 환경 변수는 NEW_RELIC_LOG_LEVEL입니다.
시스템 속성을 설정하여 newrelic.yml 파일의 모든 설정을 재정의할 수 있습니다. 구성 파일의 지정된 설정에 해당하는 시스템 속성은 newrelic.config 접두사가 붙은 설정 이름입니다. 예를 들어, log_level 설정의 시스템 속성은 newrelic.config.log_level입니다.
섹션에 중첩된 설정의 경우 섹션 이름을 설정 이름 앞에 추가합니다. 예를 들어 transaction_tracer 섹션의 enabled 설정에 대한 시스템 속성은 newrelic.config.transaction_tracer.enabled입니다.
구성 설정을 재정의하는 것 외에도 에이전트는 다음 시스템 속성을 인식합니다.
Type
Boolean
기본
(없음)
에이전트 버전 8.7.0부터는 true로 설정되고 에이전트가 JBoss EAP/Wildfly로 실행되는 경우, 에이전트가 시스템 클래스 로더에 의해 로드되는 패키지 javax.management의 하위 클래스를 요구할 수 없도록 했습니다. 이는 J2EE/Jakarta 관리 API를 사용할 때 JBoss 모듈과 관련된 애플리케이션 시작 문제를 해결하는 데 도움이 되도록 추가된 것입니다. 보다 자세한 내용은 JBoss/Wildfly 문제 해결 문서를 참조하십시오.
Type
Boolean
기본
(없음)
에이전트가 지원되지 않는 Java 버전으로 실행되도록 허용하는 실험적인 플래그입니다.
Type
문자열
기본
(없음)
New Relic UI에서 "host:port" 라벨을 장식할 표시 이름을 설정합니다. Java 에이전트 3.17 이상이 필요합니다.
Type
문자열
기본
(없음)
newrelic 구성 파일에 대한 완전한 경로를 포함하는 문자열입니다. 비어 있으면 에이전트는 newrelic.yml이 newrelic.jar와 동일한 디렉터리에 있다고 가정합니다.
Type
Boolean
기본
(없음)
디버그 로깅을 활성화합니다.
Type
문자열
기본
(없음)
에이전트가 사용할 환경 구성이 포함된 문자열입니다.
Type
문자열
기본
(없음)
에이전트의 홈 디렉터리를 포함하는 문자열입니다. 기본값은 에이전트 jarfile과 동일한 디렉터리입니다.
Type
문자열
기본
newrelic_agent.log
에이전트 로그 파일의 이름이 포함된 문자열입니다.
AI 모니터링
이 섹션에서는 AI 모니터링을 위한 Java 에이전트 설정 옵션에 대해 자세히 설명합니다. 이 기능은 newrelic.config.ai_monitoring. 접두사가 붙은 시스템 속성 또는 NEW_RELIC_AI_MONITORING_ 접두사가 붙은 환경 변수를 사용하여 ai_monitoring yaml 구성 파일 스탠자에서 설정할 수 있습니다.
중요
분산 추적이 비활성화되거나 높은 보안 모드가 활성화된 경우 AI 모니터링은 AI 데이터를 수집하지 않습니다.
Type
Boolean
기본
false
true로 설정하면 AI 모니터링이 활성화됩니다.
Type
Boolean
기본
true
false로 설정하면 에이전트는 LLM 이벤트에서 캡처된 입력 및 출력 콘텐츠(예: 프롬프트 및 응답의 텍스트 문자열)를 생략합니다. LLM과 송수신되는 민감한 데이터를 기록하지 않으려는 경우 선택할 수 있는 보안 설정입니다.
속성
이러한 옵션은 attributes 섹션을 사용해 설정할 수 있습니다. 이를 재정의하려면 newrelic.config.attributes 접두사가 붙은 시스템 속성을 사용합니다.
속성은 프로세서 트레이스, 트레이스 오류, 및 트랜잭션 이벤트와 관련된 키-값 쌍입니다. 각 대상 아래에는 attribute 섹션이 있습니다. 자세한 내용은 Java 에이전트 속성, 속성 활성화 및 비활성화 및 속성 예제 참조하십시오.
이 설정을 사용하여 브라우저 모니터링에 대한 모든 속성을 켜거나 끌 수 있습니다. 조회할 수 있는 데이터입니다. 루트 수준에서 attributes.enabled가 false이면 browser_monitoring에서 이 속성이 설정되는 방식에 관계없이 브라우저 모니터링에서 속성이 전송되지 않습니다.
Type
문자열 목록
기본
(없음)
속성이 browser_monitoring에 대해 활성화된 경우, 이 목록에 있는 모든 속성 키는 페이지 보기에서 뉴렐릭으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Type
문자열 목록
기본
(없음)
이 목록에 있는 모든 속성 키는 페이지 보기에서 뉴렐릭으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Circuit breaker
이러한 설정은 Java 서킷 브레이커의 동작을 사용자 정의합니다. 이러한 설정은 기본적으로 newrelic.yml에 포함되지 않습니다. JVM을 변경한 후 JVM을 다시 시작할 필요가 없습니다.
서킷 브레이커가 트립되어야 하는 여유 힙 메모리 비율을 맞춤화합니다. 사용 가능한 힙 메모리의 백분율이 memory_threshold 미만이고 가비지 수집에 소요된 CPU 시간이 gc_cpu_threshold보다 크면 서킷 브레이커가 작동합니다. 서킷 브레이커가 트립될 가능성을 줄이려면 memory_threshold를 줄이거나 gc_cpu_threshold를 늘립니다. 애플리케이션의 작동 성능과 동작에 따라 필요하면 이 값을 조정합니다.
Type
정수(0-100)
기본
10
서킷 브레이커가 트립되어야 하는 가비지 수집 CPU 시간의 백분율을 사용자 지정합니다. 사용 가능한 힙 메모리의 백분율이 memory_threshold 미만이고 가비지 수집에 소요된 CPU 시간이 gc_cpu_threshold보다 크면 서킷 브레이커가 작동합니다. 서킷 브레이커가 트립될 가능성을 줄이려면 memory_threshold를 줄이거나 gc_cpu_threshold를 늘립니다. 애플리케이션의 작동 성능 및 동작에 따라 필요에 따라 이러한 값을 조정합니다.
클라우드 플랫폼 활용
utilization 섹션에서 클라우드 플랫폼 활용 설정을 지정하고 newrelic.config.utilization 접두사가 붙은 시스템 속성으로 재정의할 수 있습니다.
에이전트는 활용 정보를 수집하여 뉴렐릭 서비스로 전송합니다. 에이전트는 Amazon Web Services(AWS), Azure, Google Cloud Platform 및 Pivotal Cloud Foundry 인스턴스에서 정보를 수집할 수 있습니다. 또한 도커 컨테이너와 쿠버네티스 서비스와 관련된 정보도 수집합니다.
Type
Boolean
기본
true
에이전트가 AWS 메타데이터 API를 폴링할지 여부를 결정합니다.
Type
Boolean
기본
true
에이전트가 Azure 메타데이터 API를 폴링하는지 여부를 결정합니다.
Type
Boolean
기본
true
에이전트가 Google Cloud Platform 메타데이터 API를 폴링하는지 여부를 결정합니다.
Type
Boolean
기본
true
에이전트가 KUBERNETES_SERVICE_HOST 환경 변수를 보고하는지 여부를 결정합니다.
Type
Boolean
기본
true
에이전트가 Pivotal Cloud Foundry 환경 변수를 읽는지 여부를 결정합니다.
Type
Boolean
기본
true
에이전트가 파일 시스템에서 Docker 정보를 읽을지 여부를 결정합니다.
코드 레벨 메트릭
코드 레벨 메트릭은 메서드 수준에서 코드가 어떻게 작동하는지에 대한 세부적인 인사이트를 제공합니다. 자동으로 계측되거나 @Trace 주석으로 계측된 각 메서드에 대한 메트릭이 표시됩니다.
code_level_metrics 섹션에서 코드 수준 메트릭 옵션을 설정합니다. newrelic.config.code_level_metrics 접두사가 붙은 시스템 속성으로 재정의할 수 있습니다.
Type
Boolean
기본
true
코드 수준 지표는 에이전트 버전 7.10.0에서 기본적으로 비활성화되어 있습니다. 활성화하려면 true로 설정하십시오. 에이전트 버전 7.11.0부터 기본값은 위에서 언급한 대로 true입니다.
에러스 인박스 구성
다음 태그 중 하나를 설정하면 오류를 생성하는 소프트웨어 버전을 식별하는 데 도움이 됩니다.
NEW_RELIC_METADATA_SERVICE_VERSION 배포된 코드 버전(대부분경우 1.2.3으로 표시되는 버전)이 포함된 이벤트 데이터에 대해 tags.service.version을 생성하지만 항상 그런 것은 아닙니다.
NEW_RELIC_METADATA_RELEASE_TAG 릴리스 태그가 포함된 이벤트 데이터에 tags.releaseTag를 생성합니다. (예: v0.1.209 또는 release-209)
NEW_RELIC_METADATA_COMMIT 커밋 SHA를 포함하는 이벤트 데이터에 대해 tags.commit을 생성합니다. 전체 SHA를 사용하거나 처음 7자만 사용할 수 있습니다. (예: 734713b)
향후에 릴리스될 에러스 인박스는 오류를 생성하는 소프트웨어 버전을 자동으로 추적합니다. 버전 데이터가 CodeStream에 표시됩니다.
애플리케이션 간 추적기
중요
애플리케이션 간 추적은 에이전트 버전 7.4.0부터 더 이상 사용되지 않으며 향후 에이전트 버전에서 삭제될 예정입니다.
애플리케이션 간 추적을 사용하는 대신 분산 추적 기능을 사용하시길 권합니다. 분산 추적은 애플리케이션 간 추적 기능을 개선한 것으로 대규모 분산 시스템에 권장됩니다.
cross_application_tracer 섹션에서 애플리케이션 간 추적 옵션을 설정합니다. 이러한 설정은 newrelic.config.cross_application_tracer 접두어가 붙은 시스템 속성으로 재정의할 수 있습니다.
속성 값의 최대 크기로, 그 다음 값은 잘립니다. 기본값은 255 바이트(UTF-8 문자 집합 인코딩)이고 최대 한도는 4095입니다.
이 구성은 Java 에이전트 버전 8.9.0+에 존재합니다.
Type
정수
기본
30000
60초마다 보고되는 샘플링된 사용자 지정 이벤트의 최대 수입니다.
AI 모니터링을 위해 에이전트를 구성할 때 최대값을 100000으로 설정합니다. 최대 LLM 이벤트 양이 캡처되도록 합니다.
클래스 변환기
class_transformer 섹션에서 계측 관련 설정을 할 수 있습니다. newrelic.config.class_transformer 접두사가 붙은 시스템 속성 이나 NEW_RELIC_CLASS_TRANSFORMER_ 접두사가 붙은 환경 변수를 사용해 이러한 설정을 재정의할 수 있습니다.
Type
Boolean
기본
거짓
향상된 Spring 트랜잭션 이름 지정이 활성화되면 정의된 경로 및 HTTP 메서드 다음에 Spring 컨트롤러에서 발생하는 모든 트랜잭션의 이름이 지정됩니다. 예: /customer/v1/edit (POST). 여기에는 WebMVC 관련 주석(@RestController, @Controller, @RequestMapping 등)을 사용하여 인터페이스/클래스를 구현하거나 확장하는 컨트롤러가 포함됩니다.
기본적으로 이는 false로 설정되며, 컨트롤러 클래스 이름과 메서드를 기반으로 해당 컨트롤러 유형에 대한 트랜잭션 이름이 지정됩니다. 예: CustomerController/edit 이는 이전 에이전트 버전에서 가져온 명명 로직입니다. 실제 클래스에 모든 관련 주석이 있는 "표준" 컨트롤러는 여전히 경로 및 HTTP 메서드를 기반으로 이름이 지정됩니다.
이 구성은 Java 에이전트 버전 8.9.0+에 존재합니다.
Type
Boolean
기본
거짓
기본적으로 내장된 액추에이터 엔드포인트와 커스텀 액추에이터 엔드포인트( @endpoint 주석 및 해당 서브클래스 사용)는 모두 뉴렐릭에서 이름이 OperationHandler/handle로 지정됩니다. 이 설정을 활성화하면 실제 베이스 액츄에이터 엔드포인트 URI를 반영해 프로세서 이름이 생성됩니다. 예를 들어, /actuator/loggers 또는 actuator/loggers/com.newrelic을 호출하면 트랜잭션 이름이 actuator/loggers (GET)가 됩니다. 이는 MGI를 방지하기 위함입니다.
Spring Boot v3 이상을 사용하는 경우 지원됩니다.
이 구성은 자바 에이전트 버전 8.15.0 이상에 존재합니다.
Type
문자열
기본
(없음)
에이전트가 계측할 사용자 지정 메서드를 결정하는 데 사용하는 주석 클래스의 전체 클래스 이름을 포함하는 문자열입니다. 사용자 정의 주석에 대한 자세한 정보는 Java 커스텀 메트릭 콜렉션을 참조하십시오.
분산 추적은 분산 시스템을 통해 이동하는 요청의 경로를 볼 수 있도록 해줍니다. 이 기능은 Java 에이전트 버전 7.4.0 이상에서 기본적으로 활성화되어 있습니다.
구성 파일의 distributed_tracing 섹션에서 이를 수동으로 재정의할 수 있습니다. 접두사가 붙은 시스템 속성(newrelic.config.distributed_tracing) 또는 환경 변수(NEW_RELIC_DISTRIBUTED_TRACING_ENABLED)를 사용하여 이를 재정의할 수도 있습니다. 아래 예를 참조하십시오.
기본적으로 지원되는 에이전트 버전은 분산 추적을 위해 newrelic 헤더와 W3C 추적 컨텍스트 헤더를 모두 사용합니다. newrelic 분산 추적 헤더는 W3C 추적 컨텍스트 헤더를 지원하지 않는 이전 에이전트와의 상호 운용성을 허용합니다. W3C 추적 컨텍스트 헤더를 지원하는 에이전트 버전은 분산 추적을 위해 newrelic 헤더보다 우선합니다.
newrelic 헤더를 사용하지 않으려는 경우, 이를 true 로 설정하면 에이전트가 newrelic 헤더를 제외하고 분산 추적에 W3C Trace Context 헤더만 사용하게 됩니다.
error_collector 섹션에서 오류 수집기 설정을 할 수 있습니다. 별도로 명시되지 않는 한, newrelic.config.error_collector 접두사가 붙은 시스템 속성을 사용하여 이러한 설정을 재정의할 수 있습니다. 오류 수집기는 포착되지 않은 예외에 대한 정보를 캡처하여 볼 수 있도록 뉴렐릭으로 보냅니다.
팁
UI를 통해 오류를 구성하는 방법을 포함하여 Java 에이전트에 대한 오류를 구성하는 방법은 Java 에이전트 오류 구성을 참조하십시오.
Type
Boolean
기본
true
오류 수집을 활성화합니다.
Type
정규화된 class_name 문자열 목록이 포함된 섹션
기본
(없음)
지정된 예외 클래스 이름은 무시되며 오류율이나 Apdex 점수에 영향을 주지 않으며, APM에 보고되지 않습니다. Cannot be specified by system property.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml에 대한 변경 사항을 알 수 있습니다.
에이전트가 무시해야 하는 예외 클래스 이름을 지정합니다. 무시된 메시지는 오류율이나 Apdex 점수에 영향을 미치지 않거나 APM에 보고되지 않습니다. 다음으로 구성된 yaml 쌍을 포함합니다.
APM에 보고되지 않아야 하는 완전한 예외 클래스 이름
AND
비교할 예외 message 목록(최소 하나는 필수)
예외 클래스 이름이 오류와 일치하지만 메시지가 일치하지 않으면 해당 오류는 무시되지 않습니다. 메시지 문자열은 매칭에 contains를 사용합니다. 메시지는 단독으로는 제공될 수 없으며 항상 정규화된 클래스 이름과 쌍을 이루어야 합니다. Cannot be specified by system property.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml에 대한 변경 사항을 알 수 있습니다.
예:
error_collector:
ignore_messages:
com.example.MyException:
-"Some error message to ignore"
-"Some other error message to ignore"
com.example.DifferentException:
-"Some different error message to ignore"
환경 변수를 사용하여 무시하려는 예외 클래스 이름과 메시지를 나열할 수 있습니다.
NEW_RELIC_ERROR_COLLECTOR_IGNORE_MESSAGES="{\"com.example.MyException\": [\"Some error message to ignore\", \"Some other error message to ignore\"], \"com.example.DifferentException\": [\"Some different error message to ignore\"]}"
Type
쉼표로 구분된 문자열 및 범위 목록
기본
404
오류로 처리되어서는 안 되는 HTTP 상태 코드의 개별 및 파선 범위로 구성된 쉼표로 구분된 목록입니다.
이 속성이 newrelic.yml 구성 파일에서 주석 처리되면 404 상태 코드가 자동으로 무시됩니다. 서버 측 구성을 사용할 때 무시하려면 상태 코드 404를 지정해야 합니다.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml에 대한 변경 사항을 알 수 있습니다.
예:
error_collector:
ignore_status_codes:404,507-511
Type
정규화된 class_name 문자열 목록이 포함된 섹션
기본
(없음)
APM에 오류를 보고하는 동안 지정된 예외 클래스가 오류율이나 Apdex 점수에 영향을 미치지 않도록 방지합니다. Cannot be specified by system property.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml에 대한 변경 사항을 알 수 있습니다.
예상대로 표시되어 오류율이나 Apdex 점수에 영향을 주지 않는 정규화된 예외 클래스 이름과 매치시킬 예외 message목록으로 구성된 yaml 쌍을 포함합니다. 이 경우 최소 하나가 필요합니다. 예외 클래스 이름이 오류와 일치하지만 메시지가 일치하지 않는 경우 해당 오류는 예상대로 표시되지 않으므로 오류율 및 Apdex 점수에 영향을 미칩니다.
메시지 문자열은 매칭에 contains를 사용합니다. 메시지는 단독으로는 제공될 수 없으며 항상 정규화된 클래스 이름과 쌍을 이루어야 합니다. Cannot be specified by system property.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml에 대한 변경 사항을 알 수 있습니다.
예:
error_collector:
expected_messages:
com.example.MyException:
-"Some expected error message"
-"Some other expected error message"
com.example.DifferentException:
-"Some different expected error message"
환경 변수를 사용하여 예상되는 예외 클래스 이름 및 메시지를 나열할 수 있습니다.
NEW_RELIC_ERROR_COLLECTOR_EXPECTED_MESSAGES="{\"com.example.MyException\": [\"Some error message to ignore\", \"Some other error message to ignore\"], \"com.example.DifferentException\": [\"Some different error message to ignore\"]}"
Type
쉼표로 구분된 문자열 및 범위 목록
기본
(없음)
예상대로 표시되어 오류율 또는 Apdex 점수에 영향을 미치지 않도록 방지할 HTTP 상태 코드의 개별 및 파선 범위로 구성된 쉼표로 구분된 목록입니다.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml에 대한 변경 사항을 알 수 있습니다.
예:
error_collector:
expected_status_codes:415,500-506
예상되는 상태 코드는 NEW_RELIC_ERROR_COLLECTOR_EXPECTED_STATUS_CODES 환경 변수와 함께 사용할 수도 있습니다.
Type
Boolean
기본
true
이 설정을 사용하여 추적된 오류에 대한 모든 속성을 켜거나 끌 수 있습니다. 루트 수준에서 attributes.enabled가 false이면 이 속성이 error_collector에서 설정되는 방식에 관계없이 추적된 오류에 속성이 전송되지 않습니다.
Type
문자열 목록
기본
(없음)
추적된 오류에 대해 속성이 활성화된 경우 이 목록에 있는 모든 속성 키는 추적된 오류의 뉴렐릭으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Type
문자열 목록
기본
(없음)
이 목록에 있는 속성 키는 추적된 오류에서 뉴렐릭으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Type
Boolean
기본
true
트랜잭션에서 여러 오류가 발견되면 기본적으로 마지막 오류만 보고됩니다. 대신 이 속성을 false로 설정하면 발견된 첫 번째 오류만 보고합니다. 자세한 정보는 noticeError API를 참조하십시오. 예를 들어:
error_collector:
ignoreErrorPriority:false
Type
쉼표로 구분된 문자열 목록
기본
(없음)
지정된 모든 예외 클래스 이름은 오류로 처리되지 않습니다. Java 에이전트 3.40.0부터 더 이상 사용되지 않으며 ignore_classes로 대체되었습니다.
예:
error_collector:
ignore_errors: some.other.MyException
외부 추적기
external_tracer 섹션에서 외부 추적 옵션을 설정합니다. 이러한 옵션은 newrelic.config.external_tracer 접두어가 붙은 시스템 속성으로 재정의할 수 있습니다.
Type
Boolean
기본
false
이 설정을 사용하여 오류 및 트랜잭션 트레이스에 대한 나가는 요청 URI 컬렉션을 제어할 수 있습니다. 이 정보를 수집하지 않으려면 true로 설정합니다.
호스트 이름 구성
process_host 섹션에서 호스트 이름 구성 옵션을 설정합니다. 이러한 옵션은 newrelic.config.process_host 접두어가 붙은 시스템 속성으로 재정의할 수 있습니다.
Java 에이전트 버전 7.6.0부터 문맥적 로그 지원이 에이전트에 추가되어 지원되는 로깅 프레임워크에 쉽게 사용할 수 있습니다. 문맥적 로그에 Java 에이전트를 사용하는 방법에 대한 팁은 문맥적 Java 로그를 참조하십시오.
로컬 에이전트 구성 파일에서의 설정 변경은 동적으로 이루어지며, 변경 사항을 적용하기 위해 에이전트를 다시 시작할 필요가 없습니다. 구성 예시:
application_logging:
enabled:true
forwarding:
enabled:true
max_samples_stored:10000
context_data:
enabled:false
include:
exclude:
metrics:
enabled:true
local_decorating:
enabled:false
application_logging 섹션의 컨텍스트 구성에서 로그를 설정합니다. 이는 newrelic.config.application_logging 접두사가 붙은 시스템 속성으로 재정의할 수 있습니다. 사용 가능한 유일한 옵션은 다음과 같습니다.
Type
Boolean
기본
true
핵심 문맥적 로그 기능을 활성화하려면 true로 설정합니다. 활성화되면 로그가 데코레이팅되거나 뉴렐릭으로 전송되는지 여부에 관계없이 추가 로깅 프레임워크 계측이 활성화됩니다.
중요
에이전트 릴리스 7.7.0 이상에는 기본적으로 에이전트 구성 파일에서 이 기능이 활성화되어 있습니다.
로그 메트릭 수집을 포함하여 이 기능을 완전히 비활성화하려면 false로 설정합니다.
로그 전달
지원되는 로깅 프레임워크를 사용하고 에이전트를 사용하여 애플리케이션 로그를 뉴렐릭으로 보내려는 경우 forwarding 섹션 아래의 설정을 통해 이를 제어할 수 있습니다. 이러한 설정은 newrelic.config.application_logging.forwarding 접두사가 붙은 시스템 속성으로 재정의할 수 있습니다. 사용 가능한 옵션은 다음과 같습니다.
Type
Boolean
기본
true
뉴렐릭에 애플리케이션 로그 전송을 활성화합니다.
중요
에이전트 릴리스 7.7.0 이상에는 기본적으로 에이전트 구성 파일에서 이 기능이 활성화되어 있습니다.
로그 전달 기능을 사용하면 데이터 인제스트가 증가하여 요금에 영향을 미칠 수 있습니다. 자세한 내용은 데이터 인제스트 추적에 대한 문서를 참조하십시오.
기존 로그 포워딩(전달) 솔루션이 있고 자동 문맥적 로그를 사용하도록 에이전트를 업데이트하는 경우 반드시 이전 로그 전달자를 비활성화해야 합니다. 그렇지 않으면 앱에서 이중으로 로그 라인을 전송하여, 계정에 따라 이중 청구가 발생할 수 있습니다. 자세한 내용은 특정 로그 전달자를 비활성화하는 절차를 따르십시오.
데코레이팅된 로그를 뉴렐릭으로 보내려면 이를 true로 설정합니다.
데코레이팅된 로그를 뉴렐릭으로 전송하지 않으려면 이를 false로 설정합니다.
Type
정수
기본
10000
전송할 분당 최대 로그 줄 수를 지정하는 양의 정수입니다.
로그 전송을 효과적으로 비활성화하려면 이 값을 0으로 설정합니다.
중요
이는 분당 전송된 로그 수를 제어합니다.max_samples_stored를 0 (또는 12 보다 작은 값)으로 설정해도 기능 자체가 비활성화되지는 않지만 뉴렐릭에 로그 줄이 전송되지 않습니다.
전송되는 로그 라인의 양을 줄이려면 이 값을 더 낮게 설정합니다. (로그 샘플링이 발생할 수 있음) 더 많은 로그 라인을 보내려면 이 값을 더 높게 설정합니다.
각 로그는 연결된 트랜잭션과 동일한 우선순위를 부여받습니다. 트랜잭션 외부에서 발생하는 로그는 랜덤 우선순위를 부여받습니다. 일부 로그는 max_samples_stored에 의해 제한되기 때문에 포함되지 않을 수 있습니다. 예를 들어, 로깅 max_samples_stored가 10,000으로 설정되고 트랜잭션 1에 10,000개의 로그 항목이 있는 경우 트랜잭션 1에 대한 로그 항목만 기록됩니다. 트랜잭션 1에 10,000개 미만의 로그가 있는 경우 트랜잭션 1에 대한 모든 로그를 수신합니다. 그래도 공간이 남아 있으면 트랜잭션 2의 모든 로그를 받습니다.
샘플링된 트랜잭션에 대한 모든 로그가 기록된 후 max_samples_stored의 한도에 도달하지 않은 경우 샘플링에 없는 트랜잭션에 대한 로그 메시지가 전송됩니다. 남아 있는 경우 트랜잭션 외부의 로그 메시지가 기록됩니다.
로그 컨텍스트 데이터
Java 에이전트는 컨텍스트 데이터(logback/slf4j의 매핑된 진단 컨텍스트, log4j2의 ThreadContext)를 캡처하고 해당 콘텐츠를 뉴렐릭에 전달되는 로그의 특성으로 추가할 수 있습니다. forwarding 섹션 아래에 중첩된 context_data 섹션의 설정을 통해 이를 제어할 수 있습니다. 이러한 설정은 newrelic.config.application_logging.forwarding.context_data 접두사가 붙은 시스템 속성으로 재정의할 수 있습니다. 사용 가능한 옵션은 다음과 같습니다.
Type
Boolean
기본
false
컨텍스트 데이터를 뉴렐릭에 대한 로그 속성으로 보내는 true로 설정합니다.
로그의 컨텍스트 데이터를 뉴렐릭으로 전송하지 않으려면 이 값을 false로 설정합니다.
Type
문자열 목록
기본
(없음)
로그 전달에 context_data가 활성화된 경우 이 목록에 있는 모든 속성 키가 로그 레코드의 뉴렐릭으로 전송됩니다. 이 목록이 비어 있으면 모든 속성이 전송됩니다.
Type
문자열 목록
기본
(없음)
로그 전달에 context_data가 활성화된 경우 이 목록에 있는 모든 속성 키가 로그 레코드의 뉴렐릭으로 전송되지 않습니다.
포함 및 제외 목록은 속성 규칙에 정의된 Exclude overrides include, More specific rules take priority, Keys are case-sensitive 및 Use an asterisk for wildcards 규칙을 따릅니다.
로그 메트릭
Java 에이전트는 개별 로그 줄을 데코레이팅하고 전송할 수 있을 뿐만 아니라 로깅 메트릭 데이터를 캡처할 수도 있습니다. 뉴렐릭 UI의 로그 차트에서 이 데이터를 찾을 수 있습니다. metrics 섹션에서 로그 메트릭 설정을 할 수 있습니다. newrelic.config.application_logging.metrics 접두사가 붙은 시스템 속성을 사용하여 이러한 설정을 재정의할 수 있습니다. 사용 가능한 유일한 옵션은 다음과 같습니다.
Type
Boolean
기본
true
APM Summary 페이지의 차트에 표시되는 로그와 로그 레벨에 대한 메트릭 정보의 수집을 활성화합니다.
에이전트가 로그에 대한 메트릭 정보를 캡처할 수 있도록 하려면 이 설정을 true로 둡니다.
이 기능을 비활성화하려면 이를 false로 설정합니다.
중요
로그 메트릭 수집을 비활성화하면 요약 페이지의 로그 차트가 공백으로 표시됩니다.
로그 장식
local_decorating 섹션에서 로그 데코레이션 설정을 할 수 있습니다. 이를 사용하여 로컬 로그 줄이 데코레이션되는 방식을 제어할 수 있습니다. newrelic.config.application_logging.local_decorating 접두사가 붙은 시스템 속성을 사용하여 이러한 설정을 재정의할 수 있습니다. 사용 가능한 유일한 옵션은 다음과 같습니다.
Type
Boolean
기본
false
이것은 로컬에 저장된 로그 라인의 데코레이팅 여부를 제어합니다. 이는 로그 전달 활성화 여부와 무관하며 별도의 로그 전달 솔루션을 사용하려는 고객을 지원하는 데 사용됩니다.
에이전트가 지원되는 프레임워크에 의해 로컬로 저장된 로그 라인에 메타데이터를 연결하는 문맥적 로그를 추가하도록 하려면 이를 true로 설정합니다.
중요
로컬 로그 데코레이팅을 활성화하면 애플리케이션 로그 파일에 연결 메타데이터가 추가되어 디스크 스토리지가 증가합니다. 이것이 허용되지 않는 경우, 이 기능을 비활성화하십시오.
로그 전달이 활성화된 경우 로컬 로그 데코레이션을 사용할 필요가 없습니다. 그렇게 하면 연결 메타데이터가 로그 메시지에 불필요하게 추가되어 시각적으로 산만해질 수 있습니다.
로컬 데코레이팅 기능을 끄려면 이를 false로 설정합니다. 이는 뉴렐릭으로 전송되는 로그 라인의 데코레이팅에는 영향을 미치지 않습니다.
로깅 구성
이는 일반 구성 변수의 일부입니다. 디버깅을 위해 자주 조정되기 때문에 여기에서 분류됩니다.
일부 로깅 구성 변수는 동적이며 적용하기 위해 호스트를 다시 시작할 필요가 없습니다. 예를 들어, 로그 파일이 너무 빨리 증가하는 경우 log_level을 덜 자세한 설정으로 설정하여 보고율을 줄일 수 있습니다.
다음은 로그 회전에 영향을 미치는 구성 변수의 우선순위와 설명입니다.
log_daily가 true인 경우:
log_limit_in_kbytes 값이 0보다 크면 복합 트리거링 정책이 야기됩니다. 이는 로그가 하루에 한 번 또는 정해진 크기에 도달하면 롤링이 되며, 최대 log_file_count 파일을 유지합니다.
log_limit_in_kbytes 값이 0이면 로그가 하루에 한 번 롤링되어 최대 log_file_count 개의 파일을 유지합니다.
log_daily가 false이고 log_limit_in_kbytes > 0인 경우 크기 기반 정책이 설정되며, 정의된 크기에 도달하면 로그가 롤링되어 최대 log_file_count개의 파일을 유지합니다.
프로덕션 소프트웨어에 취약점이 노출되지 않도록 비프로덕션 배포에서만 IAST를 실행하십시오.
security 섹션에서 뉴렐릭 Security 에이전트를 설정할 수 있습니다. 이러한 설정은 newrelic.config.security 접두어가 붙은 시스템 속성으로 재정의할 수 있습니다. 옵션은 다음과 같습니다:
Type
Boolean
기본
false
모든 보안 기능을 완전히 비활성화하려면 이 플래그를 false로 설정합니다. 이 속성은 애플리케이션이 시작되면 읽기만 가능합니다. 기본값은 false입니다.
Type
Boolean
기본
false
보안 데이터를 뉴렐릭으로 보낼지 여부를 결정합니다. 이 항목이 비활성화되고 agent.enabled가 true이면 보안 모듈이 실행되지만 데이터는 전송되지 않습니다. 기본값은 false입니다.
Type
문자열
기본
IAST
뉴렐릭 보안 제공 모드: IAST. 기본값은 IAST입니다. IAST 스캐닝의 침습적인 특성이 있으므로 프로덕션 환경 또는 프로덕션 데이터가 처리되는 환경에서 이 모드를 활성화하면 안됩니다.
Type
문자열
기본
wss://csec.nr-data.net
뉴렐릭 보안의 SaaS 연결 URL입니다. 보안 에이전트가 데이터를 보내는 엔드포인트이며, APM Java 에이전트를 위해 설정한 환경과 일치해야 합니다.
미국 프로덕션: wss://csec.nr-data.net
Type
Boolean
기본
true
RCI 보안 이벤트 감지를 활성화합니다. 기본값은 true입니다.
Type
Boolean
기본
true
RXSS 보안 이벤트 감지를 활성화합니다. 기본값은 true입니다.
Type
Boolean
기본
true
역직렬화 보안 이벤트 감지를 활성화합니다. 기본값은 true입니다.
중요
뉴렐릭 보안 에이전트 IAST(Interactive Applications Security Testing) 모드는 Java 에이전트 버전 8.4.0 이상이 필요합니다.
느린 트랜잭션 감지
이제 Java Agent 버전 8.7.0 이후 에이전트는 SlowTransaction 이벤트를 통해 느린 트랜잭션을 감지할 수 있습니다. 이러한 이벤트는 트랜잭션 길이가 특정 임계값을 초과할 때 기록됩니다. 기본적으로 임계값은 600000밀리초(10분)입니다.
느린 트랜잭션 감지는 slow_transactions으로 설정되며 newrelic.config.slow_transactions 접두사가 붙은 시스템 속성을 사용하여 재정의할 수 있습니다. 옵션은 다음과 같습니다:
Type
Boolean
기본
true
느린 트랜잭션 감지를 활성화/비활성화하는 데 사용됩니다.
Type
정수
기본
600000
SlowTransaction 이벤트가 보고되기 위해 트랜잭션에 소요되는 시간(밀리초)을 결정합니다.
Type
Boolean
기본
true
이 항목이 true로 설정되면 모든 트랜잭션이 완료 시점에서 정의된 한도 값을 초과하는지 확인됩니다. 많은 수의 트랜잭션이 한도 값을 초과하는 경우 모든 SlowTransaction 이벤트와 함께 스택 트레이스가 전송되어 계산 비용이 많이 들 수 있습니다.
스팬 이벤트
분산 추적에 대해 스팬 이벤트가 보고됩니다. 스팬 이벤트를 보고하려면 분산 추적을 활성화해야 합니다.
span_events 섹션에서 스팬 이벤트를 설정합니다. 이러한 설정은 newrelic.config.span_events 접두어가 붙은 시스템 속성으로 재정의할 수 있습니다. 옵션은 다음과 같습니다:
Type
Boolean
기본
true
스팬 이벤트 보고를 활성화/비활성화하는 데 사용됩니다.
Type
정수
기본
2000
Max
10000
에이전트 수집 주기 동안 캡처할 수 있는 Span 이벤트 수를 결정합니다. Java 에이전트 7.4.0 이상에서 사용할 수 있습니다.
AI 모니터링을 위해 에이전트를 구성할 때 최대값을 10000으로 설정합니다. 최대 트레이스 양이 캡처되도록 합니다.
중요
스팬 이벤트 수를 늘리면 에이전트 오버헤드가 추가될 수 있습니다.
Type
Boolean
기본
true
이 설정을 사용하여 스팬 이벤트의 모든 속성을 켜거나 끌 수 있습니다. 루트 수준의 attributes.enabled가 false이면 이 속성( span_events.attributes.enabled )이 설정되는 방식에 관계없이 스팬 이벤트에 속성이 전송되지 않습니다.
Type
문자열 목록
기본
(없음)
스팬 이벤트에 속성이 활성화된 경우, 이 목록에 있는 모든 속성 키는 span_events로 뉴렐릭으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Type
문자열 목록
기본
(없음)
이 목록에 있는 모든 속성 키는 스팬 이벤트에서 뉴렐릭으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
strip_exception_messages 섹션에서 스트립 예외 옵션을 설정합니다. 이러한 옵션은 newrelic.config.strip_exception_messages 접두어가 붙은 시스템 속성으로 재정의할 수 있습니다. Java 예외 메시지가 뉴렐릭에 보고되는지 여부를 제어하려면 이 설정을 활성화합니다.
Type
Boolean
기본
false
기본적으로 이는 에이전트가 모든 예외에서 뉴렐릭 수집기로 메시지를 보낸다는 것을 의미하는 false로 설정됩니다.
이것을 true로 설정하면, 에이전트가 민감한 정보를 실수로 캡처하는 것을 방지하기 위해 예외에서 메시지를 제거합니다.
이 설정을 사용하여 트랜잭션 세그먼트의 모든 속성을 켜거나 끌 수 있습니다. 루트 수준의 attributes.enabled가 false이면 이 속성( transaction_segments.attributes.enabled )이 설정되는 방식에 관계없이 속성이 트랜잭션 세그먼트로 전송되지 않습니다.
Type
문자열 목록
기본
(없음)
트랜잭션 세그먼트에 대해 속성이 활성화된 경우, 이 목록에 있는 모든 속성 키는 트랜잭션 세그먼트의 뉴렐릭으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Type
문자열 목록
기본
(없음)
이 목록에 있는 모든 속성 키는 트랜잭션 세그먼트의 뉴렐릭으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
트랜잭션 추적기
transaction_tracer 섹션에서 트랜잭션 추적기 옵션을 설정합니다. 이러한 옵션은 newrelic.config.transaction_tracer 접두어가 붙은 시스템 속성으로 재정의할 수 있습니다.
트랜잭션 추적은 느린 트랜잭션에 대한 심층 정보를 캡처하고 이를 뉴렐릭 서비스로 보냅니다. 트랜잭션에는 발행된 쿼리 문을 포함하여 트랜잭션의 정확한 호출 순서가 포함됩니다.
중요
트랜잭션 이름 끝에 대괄호 [suffix]를 사용하지 마십시오. 뉴렐릭은 자동으로 이름에서 괄호를 제거합니다. 대신 필요한 경우 괄호 (suffix) 또는 기타 기호를 사용합니다.
느린 쿼리 및 EXPLAIN 계획( 지원되는 경우 )이 캡처되지 않는 쿼리 실행 시간 임계값(초)입니다. record_sql이 raw 또는 obfuscated로 설정된 경우에만 느린 쿼리와 관련이 있습니다. explain_enabled가 true로 설정된 경우에만 EXPLAIN 계획과 관련이 있습니다.
Type
정수
기본
2000
SQL 쿼리 문자열의 문자 제한입니다. 많은 양의 정보가 포함된 느린 SQL 쿼리가 많은 경우 성능이나 뉴렐릭에서 데이터를 보는 속도에 부정적인 영향을 미칠 수 있습니다. 정보와 성능의 적조항한 균형을 찾을 때까지 값을 점진적으로 늘립니다.
Type
Boolean
기본
false
뉴렐릭에 업로드하는 대신 에이전트 로그 파일에 쿼리를 로깅하려면 true로 설정합니다. 쿼리는 record_sql 모드를 사용하여 기록됩니다.
Type
문자열
기본
obfuscated
트랜잭션 추적기가 켜져 있으면 쿼리 문을 선택적으로 기록할 수 있습니다. 레코더에는 세 가지 모드가 있습니다.
off: 쿼리를 보내지 않습니다.
raw: 쿼리문을 원래 형태로 보냅니다.
obfuscated: 숫자 및 문자열 리터럴을 제거합니다.
Type
Boolean
기본
false
Java 에이전트 버전 3.12.1이 false로 변경될 때까지 기본값은 true }입니다.
이 옵션은 Play 2.x+ 전용입니다. Play/Scala 계측은 Thread.getStackTrace()를 사용하여 추적 프로그램 이름을 개선할 수 있지만 오버헤드가 증가합니다.
Type
정수
기본
0.5
SQL 호출에서 스택 트레이스를 수집하기 위한 임계값(초)을 정의합니다. SQL 문이 이 임계값을 초과하면 에이전트는 현재 스택 트레이스를 캡처합니다. 이는 긴 SQL 호출이 시작되는 위치를 정확히 찾아내는 데 유용합니다.
Type
정수
기본
20
이 설정을 사용하여 다양한 트랜잭션 추적을 제어합니다. top_n은 추적이 생성될 고유하고 느린 트랜잭션의 수를 나타내는 정수입니다.
트랜잭션 트레이스가 앱에서 실제로 가장 느린 트랜잭션을 더 정확하게 반영하도록 하려면 이 값이 더 낮게 설정합니다.
보다 다양한 트랜잭션을 샘플링하려면 값을 더 높게 설정합니다.
0 값은 가장 느린 트랜잭션만 항상 추적된다는 것을 의미합니다. 하지만 항상 가장 느린 트랜잭션이 하나 이상 있을 수 있고 동일한 트랜잭션 트레이스를 반복적으로 보는 것은 큰 가치를 제공하지 못할 것이기 때문에 이는 최적이 아닌 것으로 간주됩니다.
동일한 트랜잭션이 가장 느린 경우가 많으면, top_n 설정을 통해 시간 경과에 따라 Java 에이전트가 가장 느린 n 트랜잭션을 샘플링하도록 만들 수 있습니다. 이를 통해 애플리케이션에 대한 더 많은 다양성과 인사이트를 얻을 수 있습니다.
Type
문자열(부동 소수점)
기본
apdex_f
트랜잭션을 추적할 수 있는 시기를 결정하는 데 사용되는 시간 임계값입니다. 트랜잭션의 응답 시간이 이 임계값을 초과하면 트랜잭션 트레이스가 기록되어 뉴렐릭으로 전송됩니다.
기본값은 apdex_f (기본값)이며 임계값을 "Frustrated"Apdex 수준(apdex_t 값의 4배)으로 설정합니다. 초 수를 나타내는 부동 소수점 값을 입력하여 특정 시간 임계값을 설정할 수도 있습니다.
Type
문자열
기본
(없음)
중요
이 구성은 에이전트 버전 5.10.0부터 더 이상 사용되지 않으며 향후 에이전트 버전에서 제거됩니다. 대신 collect_slow_queries_from을 사용합니다.
기본적으로 높은 보안 모드에서는 에이전트가 느린 쿼리를 수집할 수 없습니다. 높은 보안이 활성화된 경우에도 DataStax 드라이버에서 Cassandra 쿼리를 수집하려면 이 옵션을 활성화합니다. 높은 보안을 사용하지 않는 경우 에이전트는 느린 쿼리를 자동으로 수집합니다.
기본적으로 높은 보안 모드에서는 에이전트가 느린 쿼리를 수집할 수 없습니다. 높은 보안이 활성화된 경우에도 DataStax 드라이버에서 Cassandra 쿼리를 수집하려면 이 옵션을 활성화합니다. 높은 보안을 사용하지 않는 경우 에이전트는 느린 쿼리를 자동으로 수집합니다.
이 설정을 사용하여 트랜잭션 트레이스에 대한 모든 속성을 켜거나 끌 수 있습니다. 루트 수준의 attributes.enabled가 false이면 이 속성( transaction_tracer.attributes.enabled )이 설정되는 방식에 관계없이 속성이 트랜잭션 트레이스로 전송되지 않습니다.
Type
문자열 목록
기본
(없음)
트랜잭션 추적에 대해 속성이 활성화된 경우, 이 목록에 있는 모든 속성 키가 트랜잭션 추적의 뉴렐릭으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Type
문자열 목록
기본
(없음)
이 목록에 있는 모든 속성 키는 트랜잭션 추적에서 뉴렐릭으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙을 참조하십시오.
Type
정수
기본
3000
트랜잭션당 생성할 수 있는 토큰의 수를 제한합니다. 이 값을 늘리면 에이전트가 사용하는 메모리 양과 뉴렐릭으로 전송되는 데이터 양이 증가하기 때문에 성능에 영향을 미칠 수 있습니다.
Type
정수
기본
3000
트랜잭션당 생성할 수 있는 세그먼트 수를 제한합니다. 이 값을 높이면 에이전트가 사용하는 메모리 양과 뉴렐릭으로 전송되는 데이터 양이 증가하므로 성능에 영향을 미칠 수 있습니다.