New Relic Java 에이전트는 newrelic.yml 파일에서 구성을 읽습니다. 기본적으로 에이전트는 newrelic.jar 이 포함된 디렉토리 에서 이 파일을 찾습니다. newrelic.config.file 시스템 속성을 정규화된 파일 이름으로 설정하여 구성 파일의 위치를 재정의할 수 있습니다.
New Relic 계정 (영구 무료)을 만들고 Java 에이전트를 설치 한 후 환경에 맞게 Java 에이전트를 구성할 수 있습니다.
구성 파일 구조
newrelic.yml 파일은 다양한 환경에 해당하는 스탠자로 분할됩니다.
시험
개발
각색
생산(기본값)
New Relic은 공통 스탠자의 설정을 이러한 환경 각각에 적용합니다. newrelic.environment 시스템 속성을 환경 이름으로 설정하여 다른 환경을 기본값으로 선택할 수 있습니다.
newrelic.yml 을 편집하는 경우 YAML 형식 을 준수하도록 주의하십시오. New Relic의 Java 에이전트와 함께 파일을 사용하기 전에 YAML 유효성 검사기를 사용하여 구문이 정확한지 확인하고 다음 규칙을 따르세요.
자바 에이전트 newrelic.yml
요구 사항
체재
YML 파일은 대소문자를 구분합니다.
들여쓰기
모든 들여쓰기는 2자씩 증가해야 합니다. 다른 들여쓰기는 에이전트 시작 시 Unable to parse configuration file 오류를 발생시킵니다.
파일의 동일한 스탠자에 있는 데이터에 대해 동일한 수준의 들여쓰기를 사용하십시오.
하위 절을 추가로 2칸 들여씁니다.
파일 변경 사항
변경 사항을 적용하려면 JVM 호스트 프로세스를 다시 시작해야 합니다.
예외:log_level 및 audit_mode 에 대한 속성 변경은 다시 시작할 필요가 없습니다. 회로 차단기에서 속성 변경은 다시 시작할 필요가 없습니다.
구성 설정 우선 순위
구성 파일의 설정을 재정의하려면 시스템 속성 재정의 를 사용하십시오. 특정 환경에서는 환경 변수 를 사용하여 구성 파일과 시스템 속성을 모두 재정의할 수도 있습니다. 환경 변수는 주로 Heroku를 지원하기 위해 존재합니다. 사용하면 서버 측 구성이 다른 모든 구성 설정보다 우선 적용됩니다.
Java 에이전트를 사용하면 서버 측 구성이 다른 모든 설정을 재정의합니다. 환경 변수는 Java 시스템 속성을 재정의합니다. 자바 속성은 newrelic.yml 파일의 사용자 구성 설정을 재정의합니다. 사용자 설정은 newrelic.yml 기본 설정보다 우선합니다.
Java 확장 디렉토리 구성
Java 에이전트는 프로세스 시작 시 구성 파일을 읽습니다. 파일이 있는 디렉토리를 식별하려면 새 디렉토리를 생성하거나 기존 확장 디렉토리를 지정하십시오.
확장 디렉토리를 생성하려면:
newrelic.jar 및 newrelic.yml 이 있는 디렉토리로 이동합니다. 이름이 extensions 인 디렉토리를 만듭니다.
에이전트를 활성화하는 플래그입니다. 에이전트를 강제 실행하거나 실행하지 않으려면 이 설정을 사용하십시오.
유형
뜨다
기본값
1.0
애플리케이션의 Apdex 점수에 대한 apdex_t 임계값(초)입니다. Java 에이전트 버전 1.2.008 이상의 경우 apdex_t 값이 UI에서 설정되고 newrelic.yml 의 값은 무시됩니다.
유형
정수
기본값
(없음)
동일한 시스템의 동일한 앱에 대한 JVM을 구별하기 위한 번호입니다. New Relic 은 고유성을 위해 호스트/포트를 사용 하므로 각 JVM의 시작 인수에 다음과 같은 스위치를 넣어 JVM을 구별할 수 있습니다.
-Dnewrelic.config.appserver_port=8081
appserver_port 을 사용하여 JVM의 이름을 지정하고 다시 시작하면 드롭다운 및 프로파일링 인터페이스에서 개별적으로 볼 수 있어야 합니다.
중요
이것은 New Relic의 변경 사항일 뿐입니다. 호스트가 어떤 식으로든 통신하는 포트에는 실제로 영향을 미치지 않습니다.
유형
부울
기본값
false
에이전트 로그 파일에 New Relic으로 전송된 모든 데이터의 일반 텍스트 로깅을 활성화합니다. 이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml 에 대한 변경 사항을 알 수 있습니다.
유형
문자열
값 형식
/path/to/ca/cert/bundle.pem
에이전트가 New Relic에 대한 보안 연결을 설정하는 데 사용할 사용자 지정 SSL 인증서 번들의 경로를 지정합니다. 사용자 지정 SSL 인증서 번들에 New Relic에 연결하기에 충분한 인증서가 포함되어 있지 않으면 필요한 인증서를 사용자 지정 인증서 번들에 병합 해야 합니다.
유형
부울
기본값
false
다음 SSL 인증서가 에이전트 jar에 번들로 제공됩니다.
META-INF/certs/eu-newrelic-com.pem
META-INF/certs/eu01-nr-data-net.pem
META-INF/certs/newrelic-com.pem
기본적으로( use_private_ssl: false ) 에이전트는 JDK에 번들된 SSL 인증서를 사용하여 ca_bundle_path 에서 지정한 New Relic 또는 사용자 정의 SSL 인증서 번들에 대한 보안 연결을 설정합니다. 에이전트와 함께 번들로 제공되는 SSL 인증서를 사용하려면 use_private_ssl: true 를 설정하십시오.
참고: { ca_bundle_path 이 설정된 경우 use_private_ssl 은 무시됩니다.
유형
부울
기본값
false
각 웹 앱에 대해 개별적으로 데이터 보고를 활성화합니다. 자동 앱 이름 지정 지원을 활성화하려면 true 으로 설정합니다. 각 웹 앱의 이름은 자동으로 감지되고 에이전트는 각각에 대해 별도로 데이터를 보고합니다. 이것은 New Relic의 웹 앱에 대한 보다 세분화된 성능 분석을 제공합니다.
선택적 확장 디렉토리 의 위치를 정의합니다. 이 속성이 설정되지 않은 경우 에이전트는 newrelic.jar 및 newrelic.yml 와 동일한 디렉터리에서 extensions 이라는 하위 디렉터리를 찾습니다.
유형
부울
기본값
false
높은 보안 을 활성화하려면 이 속성을 true 으로 설정하고 New Relic 사용자 인터페이스의 높은 보안 속성을 활성화해야 합니다. 높은 보안을 활성화하면 SSL이 켜져 있고 요청 및 메시지 대기열 매개변수가 수집되지 않으며 쿼리를 원시 형식으로 New Relic에 보낼 수 없습니다.
보다 간결한 트랜잭션 추적 세부 정보를 위해 에이전트는 Scala Futures를 트랜잭션 세그먼트로 보고하지 않으며 해당 Futures는 트랜잭션의 총 시간 에 기여하지 않습니다.
scala_futures_as_segments 을 활성화하면 오버헤드가 증가합니다. Scala Futures가 트랜잭션 세그먼트로 보고하여 트랜잭션 추적에서 볼 수 있도록 하려면 활성화할 수 있습니다.
scala_futures_as_segments:
enabled: true
환경 변수
환경 변수가 가장 높은 우선 순위를 가지며 시스템 속성 및 yml 구성 설정을 재정의합니다.
환경 변수를 설정하려면 export VARNAME=value 명령을 사용합니다.
환경 변수를 영구적으로 설정하려면 내보내기 행을 ~/.bashrc 또는 ~/.bash_profile 과 같은 파일에 추가하십시오.
환경 변수를 설정하여 시스템 속성 또는 newrelic.yml 의 모든 설정을 재정의할 수 있습니다. 구성 파일의 지정된 설정에 해당하는 환경 변수는 모든 점( . ) 및 대시( - )가 밑줄( _ )로 대체된 NEW_RELIC 접두사가 붙은 설정 이름입니다. 예를 들어, log_level 설정에 대한 환경 변수는 NEW_RELIC_LOG_LEVEL 입니다.
스탠자에 중첩된 설정의 경우 스탠자 이름을 설정 이름 앞에 추가합니다. 예를 들어, transaction_tracer 스탠자의 enabled 설정에 대한 환경 변수는 NEW_RELIC_TRANSACTION_TRACER_ENABLED 입니다.
시스템 속성을 설정하여 newrelic.yml 파일의 모든 설정을 재정의할 수 있습니다. 구성 파일의 지정된 설정에 해당하는 시스템 속성은 newrelic.config 접두사가 붙은 설정 이름입니다. 예를 들어, log_level 설정의 시스템 속성은 newrelic.config.log_level 입니다.
스탠자에 중첩된 설정의 경우 스탠자 이름을 설정 이름 앞에 추가합니다. 예를 들어 transaction_tracer 스탠자의 enabled 설정에 대한 시스템 속성은 newrelic.config.transaction_tracer.enabled 입니다.
구성 설정을 재정의하는 것 외에도 에이전트는 다음 시스템 속성을 인식합니다.
유형
문자열
기본값
(none)
New Relic UI에서 "host:port" 라벨을 장식할 표시 이름 을 설정합니다. Java 에이전트 3.17 이상이 필요합니다.
유형
문자열
기본값
(없음)
newrelic 구성 파일에 대한 완전한 경로를 포함하는 문자열입니다. 비어 있으면 에이전트는 newrelic.yml 이 newrelic.jar 과 동일한 디렉토리에 있다고 가정합니다.
유형
부울
기본값
(없음)
디버그 로깅을 활성화합니다.
유형
문자열
기본값
(없음)
에이전트가 사용할 환경 구성이 포함된 문자열입니다.
유형
문자열
기본값
(없음)
에이전트의 홈 디렉토리를 포함하는 문자열입니다. 기본값은 에이전트 jarfile과 동일한 디렉토리입니다.
유형
문자열
기본값
newrelic_agent.log
에이전트 로그 파일의 이름이 포함된 문자열입니다.
속성
이러한 옵션을 설정하려면 attributes 스탠자를 사용합니다. 이를 재정의 하려면 newrelic.config.attributes 접두사가 붙은 시스템 속성을 사용하십시오.
속성은 트랜잭션 추적, 추적된 오류, 브라우저 모니터링 및 트랜잭션 이벤트에 대한 정보를 제공하는 키-값 쌍입니다. 또한 각 대상 아래에 속성 스탠자가 있습니다. 자세한 내용은 Java 에이전트 속성 , 속성 활성화 및 비활성화 및 속성 예제 를 참조하십시오.
이 설정을 사용하여 브라우저 모니터링에 대한 모든 속성을 켜거나 끌 수 있습니다. 조회할 수 있는 데이터 입니다. 루트 수준에서 attributes.enabled 이 false이면 browser_monitoring 에서 이 속성이 설정되는 방식에 관계없이 브라우저 모니터링에서 속성이 전송되지 않습니다.
유형
문자열 목록
기본값
(없음)
속성이 browser_monitoring 에 대해 활성화된 경우 이 목록에 있는 모든 속성 키는 페이지 보기에서 New Relic으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
유형
문자열 목록
기본값
(없음)
이 목록에 있는 모든 속성 키는 페이지 보기에서 New Relic으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
회로 차단기
이러한 설정은 Java 회로 차단기 의 동작을 사용자 정의합니다. 이러한 설정은 기본적으로 newrelic.yml 에 포함되지 않습니다. JVM을 변경한 후에는 JVM을 다시 시작할 필요가 없습니다.
회로 차단기가 트립되어야 하는 여유 힙 메모리의 비율을 사용자 지정합니다. 여유 힙 메모리의 백분율이 memory_threshold 미만이고 가비지 수집에 소요된 CPU 시간이 gc_cpu_threshold 보다 크면 회로 차단기가 작동합니다. 회로 차단기가 트립될 가능성을 줄이려면 memory_threshold 를 줄이거나 gc_cpu_threshold 을 늘립니다. 애플리케이션의 작동 성능 및 동작에 따라 필요에 따라 이러한 값을 조정합니다.
유형
정수(0-100)
기본값
10
회로 차단기가 트립되어야 하는 가비지 수집 CPU 시간의 백분율을 사용자 지정합니다. 여유 힙 메모리의 백분율이 memory_threshold 미만이고 가비지 수집에 소요된 CPU 시간이 gc_cpu_threshold 보다 크면 회로 차단기가 작동합니다. 회로 차단기가 트립될 가능성을 줄이려면 memory_threshold 를 줄이거나 gc_cpu_threshold 을 늘립니다. 애플리케이션의 작동 성능 및 동작에 따라 필요에 따라 이러한 값을 조정합니다.
클라우드 플랫폼 활용도
이러한 옵션은 utilization 스탠자에 설정되며 newrelic.config.utilization 접두사가 붙은 시스템 속성을 사용하여 재정의할 수 있습니다.
에이전트는 사용 정보를 수집하여 New Relic 서비스에 보냅니다. 에이전트는 Amazon Web Services(AWS) EC2 인스턴스 및 Docker 컨테이너에서 정보를 수집할 수 있습니다.
유형
부울
기본값
true
에이전트가 AWS 메타데이터 API를 폴링하는지 여부를 결정한다.
유형
부울
기본값
true
에이전트가 파일 시스템에서 도커 정보를 읽는지 여부를 판별합니다.
교차 애플리케이션 추적기
중요
교차 애플리케이션 추적은 에이전트 버전 7.4.0부터 더 이상 사용되지 않으며 향후 에이전트 버전에서 제거될 예정입니다.
교차 애플리케이션 추적을 사용하는 대신 분산 추적 기능을 사용하는 것이 좋습니다. 분산 추적은 애플리케이션 간 추적 기능을 개선한 것으로 대규모 분산 시스템에 권장됩니다.
교차 애플리케이션 추적 옵션은 cross_application_tracer 스탠자에 설정되며 newrelic.config.cross_application_tracer 접두사가 있는 시스템 속성을 사용하여 재정의 할 수 있습니다.
교차 애플리케이션 추적 은 Apache HttpClient 라이브러리를 사용하여 외부 호출에 요청 및 응답 헤더를 추가합니다. 이것은 다른 New Relic Agents에 의해 모니터링되는 애플리케이션을 호출할 때 더 나은 성능 데이터를 제공합니다.
유형
부울
기본값
true
교차 애플리케이션 추적 은 기본적으로 활성화되어 있습니다. 이것을 끄려면 false로 설정하십시오.
맞춤 이벤트
맞춤 이벤트는 custom_insights_events 스탠자에서 설정되며 newrelic.config.custom_insights_events 접두사가 붙은 시스템 속성을 사용하여 재정의 할 수 있습니다.
분산 추적을 사용하면 분산 시스템을 통해 이동하는 요청의 경로를 볼 수 있습니다. 구성 파일에서 distributed_tracing 스탠자에서 설정할 수 있습니다. newrelic.config.distributed_tracing 접두사 시스템 속성을 사용하여 재정의할 수 있습니다.
기본적으로 지원되는 에이전트 버전은 분산 추적을 위해 newrelic 헤더와 W3C 추적 컨텍스트 헤더를 모두 사용합니다. newrelic 분산 추적 헤더는 W3C 추적 컨텍스트 헤더를 지원하지 않는 이전 에이전트와의 상호 운용성을 허용합니다. W3C 추적 컨텍스트 헤더를 지원하는 에이전트 버전은 분산 추적을 위해 newrelic 헤더보다 우선합니다.
newrelic 헤더를 사용하지 않으려는 경우 이를 true 로 설정하면 에이전트가 newrelic 헤더를 제외하고 분산 추적에 W3C Trace Context 헤더만 사용하게 됩니다.
이러한 옵션은 error_collector 스탠자에 설정되며 달리 명시되지 않는 한 newrelic.config.error_collector 접두사가 붙은 시스템 속성을 사용하여 재정의 할 수 있습니다. 오류 수집기는 포착되지 않은 예외에 대한 정보를 캡처하고 볼 수 있도록 이를 New Relic으로 보냅니다.
팁
UI를 통해 오류를 구성하는 방법을 포함하여 Java 에이전트에 대한 오류를 구성하는 방법은 Java 에이전트 오류 구성 을 참조하십시오.
유형
부울
기본값
true
오류 수집을 활성화합니다.
유형
정규화된 class_name 문자열 목록이 포함된 스탠자
기본값
(없음)
지정된 예외 클래스 이름은 무시되며 오류율이나 Apdex 점수에 영향을 미치지 않거나 APM에 보고됩니다. 시스템 속성으로 지정할 수 없습니다.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml 에 대한 변경 사항을 알 수 있습니다.
에이전트가 무시해야 하는 예외 클래스 이름을 지정합니다. 무시된 메시지는 오류율이나 Apdex 점수에 영향을 미치지 않거나 APM에 보고되지 않습니다. 다음으로 구성된 yaml 쌍을 포함합니다.
APM에 보고되지 않아야 하는 완전한 예외 클래스 이름
그리고
비교할 예외 message 목록(최소 하나는 필수)
예외 클래스 이름이 오류와 일치하지만 메시지가 일치하지 않는 경우 해당 오류 는 무시되지 않습니다 . 메시지 문자열은 일치에 contains 을 사용합니다. 메시지는 자체적으로 제공될 수 없으며 항상 정규화된 클래스 이름과 쌍을 이루어야 합니다. 시스템 속성으로 지정할 수 없습니다.
이 설정은 동적이므로 실행 중인 에이전트는 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\"]}"
유형
쉼표로 구분된 문자열 및 범위 목록
기본값
404
오류로 처리되어서는 안 되는 HTTP 상태 코드의 개별 및 파선 범위로 구성된 쉼표로 구분된 목록입니다.
이 속성이 newrelic.yml 구성 파일에서 주석 처리되면 404 상태 코드가 자동으로 무시됩니다. 서버 측 구성 을 사용할 때 무시하려면 상태 코드 404를 지정해야 합니다.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml 에 대한 변경 사항을 알 수 있습니다.
예를 들어:
error_collector:
ignore_status_codes: 404,507-511
유형
정규화된 class_name 문자열 목록이 포함된 스탠자
기본값
(없음)
APM에 오류를 보고하는 동안 지정된 예외 클래스가 오류율 또는 Apdex 점수에 영향을 미치지 않도록 합니다. 시스템 속성으로 지정할 수 없습니다.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml 에 대한 변경 사항을 알 수 있습니다.
예상대로 표시되어야 하는 정규화된 예외 클래스 이름으로 구성되어 오류율이나 Apdex 점수에 영향을 미치지 않도록 하는 yaml 쌍과 일치시킬 예외 message 목록(후자 중 하나 이상은 필수)을 포함합니다. 예외 클래스 이름이 오류와 일치하지만 메시지가 일치하지 않으면 해당 오류는 예상대로 표시 되지 않으므로 오류율과 Apdex 점수에 영향을 미칩니다.
메시지 문자열은 일치를 위해 contains 을 사용합니다. 메시지는 자체적으로 제공될 수 없으며 항상 정규화된 클래스 이름과 쌍을 이루어야 합니다. 시스템 속성으로 지정할 수 없습니다.
이 설정은 동적이므로 실행 중인 에이전트는 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\"]}"
유형
쉼표로 구분된 문자열 및 범위 목록
기본값
(없음)
예상대로 표시되어 오류율 또는 Apdex 점수에 영향을 미치지 않도록 방지할 HTTP 상태 코드의 개별 및 파선 범위로 구성된 쉼표로 구분된 목록입니다.
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml 에 대한 변경 사항을 알 수 있습니다.
예를 들어:
error_collector:
expected_status_codes: 415,500-506
유형
부울
기본값
true
이 설정을 사용하여 추적된 오류에 대한 모든 속성을 켜거나 끌 수 있습니다. 루트 수준에서 attributes.enabled 이 false 이면 이 속성이 error_collector 에서 설정되는 방식에 관계없이 추적된 오류에 속성이 전송되지 않습니다.
유형
문자열 목록
기본값
(없음)
추적된 오류에 대해 속성이 활성화된 경우 이 목록에 있는 모든 속성 키는 추적된 오류의 New Relic으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
유형
문자열 목록
기본값
(없음)
이 목록에 있는 속성 키는 추적된 오류에서 New Relic으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
유형
부울
기본값
true
트랜잭션에서 여러 오류가 발견되면 기본적으로 마지막 오류만 보고됩니다. 대신 이 속성을 false 으로 설정하면 발견된 첫 번째 오류만 보고합니다. 자세한 내용은 noticeError API 를 참조하세요. 예를 들어:
error_collector:
ignoreErrorPriority: false
유형
쉼표로 구분된 문자열 목록
기본값
(없음)
지정된 모든 예외 클래스 이름은 오류로 처리되지 않습니다. Java 에이전트 3.40.0부터 더 이상 사용되지 않으며 ignore_classes 으로 대체되었습니다.
예를 들어:
error_collector:
ignore_errors: some.other.MyException
외부 추적자
외부 추적 옵션은 external_tracer 스탠자에 설정되며 newrelic.config.external_tracer 접두사가 붙은 시스템 속성을 사용하여 재정의 할 수 있습니다.
유형
부울
기본값
false
이 설정을 사용하여 오류 및 트랜잭션 추적에 대한 나가는 요청 URI 컬렉션을 제어할 수 있습니다. 이 정보를 수집하지 않으려면 true로 설정하십시오.
호스트 이름 구성
이러한 옵션은 process_host 스탠자에 설정되며 newrelic.config.process_host 접두사가 붙은 시스템 속성을 사용하여 재정의 할 수 있습니다.
로컬 에이전트 구성 파일에서 이러한 설정을 변경하는 것은 동적이며 적용하기 위해 에이전트를 다시 시작할 필요가 없습니다. 예시 구성:
application_logging:
enabled: true
forwarding:
enabled: true
max_samples_stored: 10000
metrics:
enabled: true
local_decorating:
enabled: false
컨텍스트 구성의 로그는 application_logging 스탠자에서 설정되며 newrelic.config.application_logging 접두사가 있는 시스템 속성을 사용하여 재정의 할 수 있습니다. 사용 가능한 유일한 옵션은 다음과 같습니다.
유형
부울
기본값
true
핵심 Logs in Context 기능을 활성화하려면 true 으로 설정합니다. 활성화되면 로그가 장식되거나 New Relic으로 전송되는지 여부에 관계없이 추가 로깅 프레임워크 계측이 활성화됩니다.
중요
에이전트 릴리스 7.7.0 이상에는 기본적으로 에이전트 구성 파일에서 이 기능이 활성화되어 있습니다.
로그 측정항목 수집을 포함하여 이 기능을 완전히 비활성화하려면 false 으로 설정합니다.
지원되는 로깅 프레임워크를 사용 중이고 에이전트를 사용하여 애플리케이션 로그를 New Relic으로 보내려는 경우 newrelic.config.application_logging.forwarding 접두사가 붙은 시스템 속성으로 재정의할 수 있는 forwarding 스탠자 아래의 설정을 통해 이를 제어할 수 있습니다. 사용 가능한 옵션은 다음과 같습니다.
유형
부울
기본값
진정한
New Relic에 애플리케이션 로그 전송을 활성화합니다.
중요
에이전트 릴리스 7.7.0 이상에는 기본적으로 에이전트 구성 파일에서 이 기능이 활성화되어 있습니다.
로그 전달 기능을 사용하면 데이터 수집이 증가하여 청구에 영향을 미칠 수 있습니다. 자세한 내용은 데이터 수집 추적 에 대한 설명서를 참조하십시오.
기존 로그 전달 솔루션이 있고 컨텍스트에서 자동 로그를 사용하도록 에이전트를 업데이트하는 경우 이전 로그 전달기를 비활성화해야 합니다 . 그렇지 않으면 앱에서 이중 로그 라인을 전송합니다. 계정에 따라 이중 청구가 발생할 수 있습니다. 자세한 내용은 절차에 따라 특정 로그 전달자 를 비활성화하십시오.
장식된 로그를 New Relic으로 보내려면 이것을 true 으로 설정합니다.
장식된 로그를 New Relic으로 전송하지 않으려면 이것을 false 으로 설정합니다.
유형
정수
기본값
10,000
보낼 분당 최대 로그 줄 수를 지정하는 양의 정수입니다.
로그 전송을 효과적으로 비활성화하려면 이 값을 0 으로 설정합니다.
중요
이것은 분당 전송된 로그 수를 제어합니다. max_samples_stored 을 0(또는 12보다 작은 값)으로 설정하면 기능 자체가 비활성화되지 않지만 결과적으로 New Relic에 로그 줄이 전송되지 않습니다.
전송되는 로그 라인의 양을 줄이려면 이 값을 더 낮게 설정하십시오(로그 샘플링이 발생할 수 있음). 더 많은 로그 라인을 보내려면 이 값을 더 높게 설정하십시오.
개별 로그 라인을 장식하고 보낼 수 있을 뿐만 아니라 Java 에이전트는 New Relic UI의 로그 차트에 표시되는 로깅 메트릭 데이터도 캡처할 수 있습니다. 이는 metrics 스탠자 아래의 설정으로 제어되며 newrelic.config.application_logging.metrics 접두사가 붙은 시스템 속성으로 재정의할 수 있습니다. 사용 가능한 유일한 옵션은 다음과 같습니다.
유형
부울
기본값
진정한
NR1 요약 페이지의 차트에 표시되는 로그 및 로그 수준에 대한 메트릭 정보 캡처를 활성화합니다.
에이전트가 로그에 대한 메트릭 정보를 캡처할 수 있도록 하려면 이 설정을 true로 둡니다.
이 기능을 비활성화하려면 이것을 false 으로 설정하십시오.
중요
로그 메트릭 수집을 비활성화하면 요약 페이지의 로그 차트가 공백으로 표시됩니다.
local_decorating 스탠자를 사용하면 로컬 로그 줄 장식을 제어할 수 있으며 newrelic.config.application_logging.local_decorating 접두사가 붙은 시스템 속성으로 재정의할 수 있습니다. 사용 가능한 유일한 옵션은 다음과 같습니다.
유형
부울
기본값
false
이것은 로컬에 저장된 로그 라인의 장식 여부를 제어합니다. 이는 로그 전달 활성화 여부와 무관하며 별도의 로그 전달 솔루션을 사용하려는 고객을 지원하는 데 사용됩니다.
에이전트가 지원되는 프레임워크에 의해 로컬로 저장된 로그 라인에 메타데이터를 연결하는 컨텍스트에서 로그를 추가하도록 하려면 이것을 true 으로 설정합니다.
중요
로컬 로그 데코레이션을 활성화하면 애플리케이션 로그 파일에 연결 메타데이터가 추가되어 디스크 스토리지가 증가합니다. 이것이 허용되지 않는 경우 이 기능을 비활성화하십시오.
로그 전달이 활성화된 경우 로컬 로그 데코레이션을 사용할 필요가 없습니다. 그렇게 하면 연결 메타데이터가 로그 메시지에 불필요하게 추가되어 시각적으로 산만해질 수 있습니다.
로컬 데코레이션 기능을 끄려면 이것을 false 으로 설정하십시오. 이것은 New Relic으로 전송되는 로그 라인의 장식에는 영향을 미치지 않습니다 .
로깅 구성
이는 일반 구성 변수의 일부입니다. 디버깅을 위해 자주 조정되기 때문에 여기에서 분류됩니다.
일부 로깅 구성 변수는 동적이며 적용하기 위해 호스트를 다시 시작할 필요가 없습니다. 예를 들어, 로그 파일이 너무 빠르게 증가하는 경우 log_level 을 덜 자세한 설정으로 설정하여 보고율을 줄일 수 있습니다.
다음은 로그 회전에 영향을 미치는 구성 변수의 우선 순위입니다.
log_daily 이 true 이면 다른 로그 회전 설정은 무시됩니다.
log_file_count 이 1 또는 0 이면 크기 제한이 무시됩니다.
마지막으로 에이전트는 log_limit_in_kbytes 을 적용합니다.
증가율에 따라 로그 파일 크기가 설정된 값을 약간 초과할 수 있습니다.
유형
부울
기본값
false
매일 로그를 롤링하려면 true 으로 설정합니다. 로그 회전에 영향을 미치는 다른 구성 변수를 재정의합니다.
유형
정수
기본값
1
로그 회전을 사용할 때 보관할 최대 로그 파일 수입니다.
유형
문자열
기본값
newrelic_agent.log
정규화되지 않은 로그 파일 이름 또는 표준 출력에 로그할 문자열 STDOUT 입니다.
유형
문자열
기본값
logsnewrelic.jar 이 있는 하위 디렉토리
로그 파일 경로입니다.
팁
log_file_path 이 지정된 경우 디렉토리가 이미 존재해야 합니다. 기본값이 사용되는 경우 에이전트는 디렉터리 생성을 시도합니다.
유형
문자열
기본값
info
로그 상세 수준입니다.
에이전트는 자체 로그 파일을 사용하여 애플리케이션의 로깅과 별도로 로깅을 유지합니다. 자세한 옵션은 다음과 같습니다.
off
severe
warning
info
fine
finer
finest
이 설정은 동적이므로 실행 중인 에이전트는 JVM을 다시 시작하지 않고도 newrelic.yml 에 대한 변경 사항을 알 수 있습니다.
유형
정수
기본값
0
로그 파일이 회전되는 로그 파일 크기(KB)입니다. 제한이 없는 경우 0 으로 설정합니다.
메시지 추적기
이러한 옵션은 message_tracer 스탠자에 설정되며 newrelic.config.message_tracer 접두사가 붙은 시스템 속성을 사용하여 재정의 할 수 있습니다.
유형
부울
기본값
true
추적 프로그램 속성에 메시지 속성을 추가합니다. 끄려면 이것을 false 으로 설정하십시오.
스팬 이벤트
분산 추적 에 대해 스팬 이벤트 가 보고됩니다. 스팬 이벤트를 보고하려면 분산 추적을 활성화해야 합니다.
스팬 구성은 span_events 스탠자에서 설정되며 newrelic.config.span_events 접두사가 있는 시스템 속성을 사용하여 재정의 할 수 있습니다. 옵션에는 다음이 포함됩니다.
유형
부울
기본값
true
스팬 이벤트 보고를 활성화/비활성화하는 데 사용됩니다.
유형
정수
기본값
2000
에이전트 수집 주기 동안 캡처할 수 있는 Span 이벤트 수를 결정합니다. Java 에이전트 7.4.0 이상에서 사용할 수 있습니다.
중요
Span 이벤트 수를 늘리면 추가 에이전트 오버헤드가 발생할 수 있습니다. 최대값은 New Relic에 의해 서버 측에서 부과될 수 있습니다.
유형
부울
기본값
true
이 설정을 사용하여 스팬 이벤트의 모든 속성을 켜거나 끌 수 있습니다. 루트 수준의 attributes.enabled 이 false 인 경우 이 속성( span_events.attributes.enabled )이 설정되는 방식에 관계없이 스팬 이벤트에 속성이 전송되지 않습니다.
유형
문자열 목록
기본값
(없음)
스팬 이벤트에 속성이 활성화된 경우 이 목록에 있는 모든 속성 키는 span_events 의 New Relic으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
유형
문자열 목록
기본값
(없음)
이 목록에 있는 모든 속성 키는 스팬 이벤트에서 New Relic으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
이러한 옵션은 strip_exception_messages 스탠자에 설정되며 달리 명시되지 않는 한 newrelic.config.strip_exception_messages 접두사가 붙은 시스템 속성을 사용하여 재정의 할 수 있습니다. 이 구성을 사용하여 Java 예외 메시지가 New Relic에 보고되는지 여부를 제어할 수 있습니다.
유형
부울
기본값
false
기본적으로 이는 에이전트가 모든 예외에서 New Relic 수집기 로 메시지를 보낸다는 것을 의미하는 false 으로 설정됩니다.
이것을 true 으로 설정하면 에이전트가 민감한 정보를 실수로 캡처하는 것을 방지하기 위해 예외에서 메시지를 제거합니다.
이 설정을 사용하여 트랜잭션 세그먼트의 모든 속성을 켜거나 끌 수 있습니다. 루트 수준의 attributes.enabled 가 false 이면 이 속성( transaction_segments.attributes.enabled )이 설정되는 방식에 관계없이 속성이 트랜잭션 세그먼트로 전송되지 않습니다.
유형
문자열 목록
기본값
(없음)
트랜잭션 세그먼트에 대해 속성이 활성화된 경우 이 목록에 있는 모든 속성 키는 트랜잭션 세그먼트의 New Relic으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
유형
문자열 목록
기본값
(없음)
이 목록에 있는 모든 속성 키는 트랜잭션 세그먼트의 New Relic으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
트랜잭션 추적기
이러한 옵션은 transaction_tracer 스탠자에 설정되며 newrelic.config.transaction_tracer 접두사가 붙은 시스템 속성을 사용하여 재정의 할 수 있습니다.
트랜잭션 추적 은 느린 트랜잭션에 대한 심층 정보를 캡처하고 이를 New Relic 서비스로 보냅니다. 트랜잭션에는 발행된 쿼리 문을 포함하여 트랜잭션의 정확한 호출 순서가 포함됩니다.
중요
거래 이름 끝에 대괄호 [suffix] 를 사용하지 마십시오. New Relic은 자동으로 이름에서 괄호를 제거합니다. 대신 필요한 경우 괄호 (suffix) 또는 기타 기호를 사용하십시오.
유형
부울
기본값
true
트랜잭션 추적 프로그램은 기본적으로 활성화되어 있습니다. 끄려면 이것을 false 으로 설정하십시오.
느린 쿼리 및 EXPLAIN 계획( 지원되는 경우 )이 캡처되지 않는 쿼리 실행 시간 임계값(초)입니다. record_sql 이 raw 또는 obfuscated 으로 설정된 경우에만 느린 쿼리와 관련이 있습니다. explain_enabled 가 true 으로 설정된 경우에만 EXPLAIN 계획과 관련이 있습니다.
유형
정수
기본값
2000 년
SQL 쿼리 문자열의 문자 제한입니다. 많은 양의 정보가 포함된 느린 SQL 쿼리가 많은 경우 성능이나 New Relic에서 데이터를 보는 속도에 부정적인 영향을 미칠 수 있습니다. 정보와 성능의 적절한 균형을 찾을 때까지 값을 점진적으로 늘리십시오.
유형
부울
기본값
false
New Relic에 업로드하는 대신 에이전트 로그 파일에 쿼리를 로깅하려면 true 으로 설정합니다. 쿼리는 record_sql 모드를 사용하여 기록됩니다.
유형
문자열
기본값
obfuscated
트랜잭션 추적기가 켜져 있으면 쿼리 문을 선택적으로 기록할 수 있습니다. 레코더에는 세 가지 모드가 있습니다.
off: 쿼리를 보내지 않습니다.
raw: 쿼리문을 원래 형태로 보냅니다.
obfuscated: 숫자 및 문자열 리터럴을 제거합니다.
유형
부울
기본값
False
Java 에이전트 버전 3.12.1이 false 로 변경될 때까지 기본값은 true }입니다.
이 옵션은 Play 2.x+ 전용입니다. Play/Scala 계측은 Thread.getStackTrace() 를 사용하여 추적 프로그램 이름을 개선할 수 있지만 오버헤드가 증가합니다.
유형
정수
기본값
0.5
SQL 호출에서 스택 추적을 수집하기 위한 임계값(초)을 정의합니다. SQL 문이 이 임계값을 초과하면 에이전트는 현재 스택 추적을 캡처합니다. 이것은 긴 SQL 호출이 시작되는 위치를 정확히 찾아내는 데 유용합니다.
유형
정수
기본값
20
이 설정을 사용하여 다양한 트랜잭션 추적을 제어합니다. top_n 은 추적이 생성될 고유하고 느린 트랜잭션의 수를 나타내는 정수입니다.
트랜잭션 추적이 앱에서 가장 느린 실제 트랜잭션을 보다 정확하게 반영하려면 이 값을 더 낮게 설정하십시오.
더 다양한 트랜잭션 배열을 샘플링하려면 값을 더 높게 설정하십시오.
값이 0이면 가장 느린 트랜잭션 만 항상 추적됩니다. 항상 가장 느린 하나 또는 두 개의 트랜잭션이 있을 수 있고 동일한 트랜잭션 추적을 반복적으로 보는 것은 아마도 많은 가치를 제공하지 못할 것이기 때문에 이것은 최적이 아닌 것으로 간주됩니다.
동일한 트랜잭션이 가장 느린 경우가 많으면 top_n 설정을 통해 시간 경과에 따라 Java 에이전트가 가장 느린 n 트랜잭션을 샘플링할 수 있습니다. 이를 통해 애플리케이션에 대한 더 많은 다양성과 더 많은 통찰력을 얻을 수 있습니다.
유형
문자열(부동 소수점)
기본값
apdex_f
트랜잭션을 추적할 수 있는 시기를 결정하는 데 사용되는 시간 임계값입니다. 트랜잭션의 응답 시간이 이 임계값을 초과하면 트랜잭션 추적 이 기록되어 New Relic으로 전송됩니다.
기본값은 apdex_f (기본값)이며 임계값을 "Frustrated"Apdex 수준(apdex_t 값의 4배)으로 설정합니다. 초 수를 나타내는 부동 소수점 값을 입력하여 특정 시간 임계값을 설정할 수도 있습니다.
유형
문자열
기본값
(없음)
중요
이 구성은 에이전트 버전 5.10.0부터 더 이상 사용되지 않으며 향후 에이전트 버전에서 제거됩니다. 대신 collect_slow_queries_from 을(를) 사용하십시오.
기본적으로 높은 보안 모드 에서는 에이전트가 느린 쿼리 를 수집할 수 없습니다. 높은 보안이 활성화된 경우에도 DataStax 드라이버에서 Cassandra 쿼리를 수집하려면 이 옵션을 활성화합니다. 높은 보안을 사용하지 않는 경우 에이전트는 느린 쿼리를 자동으로 수집합니다.
기본적으로 높은 보안 모드 에서는 에이전트가 느린 쿼리 를 수집할 수 없습니다. 높은 보안이 활성화된 경우에도 DataStax 드라이버에서 Cassandra 쿼리를 수집하려면 이 옵션을 활성화합니다. 높은 보안을 사용하지 않는 경우 에이전트는 느린 쿼리를 자동으로 수집합니다.
이 설정을 사용하여 트랜잭션 추적에 대한 모든 속성을 켜거나 끌 수 있습니다. 루트 수준의 attributes.enabled 이 false 이면 이 속성( transaction_tracer.attributes.enabled )이 설정되는 방식에 관계없이 속성이 트랜잭션 추적으로 전송되지 않습니다.
유형
문자열 목록
기본값
(없음)
트랜잭션 추적에 대한 속성이 활성화된 경우 이 목록에 있는 모든 속성 키는 트랜잭션 추적의 New Relic으로 전송됩니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
유형
문자열 목록
기본값
(없음)
이 목록에 있는 모든 속성 키는 트랜잭션 추적에서 New Relic으로 전송되지 않습니다. 자세한 내용은 에이전트 속성 규칙 을 참조하십시오.
유형
정수
기본값
3000
트랜잭션당 생성할 수 있는 토큰의 수를 제한합니다. 이 값을 늘리면 에이전트가 사용하는 메모리 양과 New Relic으로 전송되는 데이터 양이 증가하기 때문에 성능에 영향을 미칠 수 있습니다.
유형
정수
기본값
3000
트랜잭션당 생성할 수 있는 세그먼트 수를 제한합니다. 이 값을 늘리면 에이전트가 사용하는 메모리 양과 New Relic으로 전송되는 데이터 양이 증가하기 때문에 성능에 영향을 미칠 수 있습니다.