• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

이 한글 문서는 사용자의 편의를 위해 기계 번역되었습니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

JMX 모니터링 통합

JMX 통합을 통해 사용자는 JMX로 측정항목을 노출하는 모든 애플리케이션을 모니터링할 수 있습니다. 통합에는 JVM에서 주요 측정항목을 자동으로 수집하는 기본 컬렉션 파일이 포함되어 있습니다.

호환성 및 요구 사항

통합을 설치하기 전에 다음 요구 사항을 충족하는지 확인하십시오.

빠른 시작

Kubernetes 또는 ECS 환경에서 JMX를 실행하지 않는 경우 안내 설치를 권장합니다. 안내식 설치에서는 인프라 에이전트와 CLI를 사용하여 JMX 통합을 설정하고, 사용자 환경에서 실행 중인 다른 애플리케이션과 로그 소스를 검색한 다음 계측해야 할 애플리케이션을 추천합니다.

가이드 설치는 대부분의 설정에서 작동합니다. 그러나 필요에 맞지 않으면 아래에 다른 설치 옵션이 있습니다.

시작할 준비가 되셨습니까? 사용하는 데이터 센터 지역 에 따라 관련 버튼을 클릭합니다. 설치가 완료되면 이 설명서로 돌아와서 구성 옵션을 검토하십시오.

안내 설치, 미국 지역

설치

가이드 설치를 사용하지 않는 경우 환경에 대한 지침을 따르십시오.

' '

통합 업데이트

이 통합은 자동으로 업데이트되지 않습니다. 최상의 결과를 얻으려면 통합 패키지인프라 에이전트를 정기적으로 업데이트하십시오.

설치 후 작업

설치가 완료되면 구성 옵션을 설정할 수 있습니다. 통합이 작동하려면 일부 구성이 필요하고 일부는 선택 사항입니다.

통합 구성

통합의 YAML 형식 구성은 필수 로그인 자격 증명을 배치하고 데이터 수집 방법을 구성할 수 있는 곳입니다. 변경하는 옵션은 설정 및 기본 설정에 따라 다릅니다.

설치 방법에 따라 통합을 구성하는 몇 가지 방법이 있습니다.

통합 구성 파일

구성 파일에는 interval , timeout 또는 inventory_source 와 같은 모든 통합에 적용할 수 있는 공통 설정이 있습니다. 이러한 공통 설정에 대한 모든 내용을 읽으려면 구성 형식 문서를 참조하십시오.

JMX와 관련된 특정 설정은 구성 파일의 env 섹션을 사용하여 정의됩니다. 이러한 설정은 JMX 인스턴스에 대한 연결과 기타 보안 설정 및 기능을 제어합니다. 유효한 설정 목록은 이 문서의 다음 섹션에 설명되어 있습니다.

구성 옵션은 다음과 같습니다. 예제 구성은 예제 구성 파일 을 참조하십시오.

메트릭 컬렉션 파일

메트릭 컬렉션 정의 파일은 통합에 수집할 메트릭을 알려주는 구조화된 YAML 파일입니다. 구성 예시는 메트릭 컬렉션 파일 예시 를 참조하십시오.

기본 JVM 메트릭 컬렉션 파일: /etc/newrelic-infra/integrations.d/jvm-metrics.yml

조직 및 유지 관리를 쉽게 하기 위해 다른 컬렉션 파일을 작성할 수 있습니다. 예제는 구성 파일 을 참조하십시오.

Kubernetes 주석을 사용한 컬렉션 구성

Kubernetes 주석을 사용하여 컬렉션 구성을 제공할 수 있습니다. 이를 달성하려면 nri-jmx 애플리케이션에 대한 구성 파일을 생성할 Kubernetes 클러스터에 configMap 을 배포해야 합니다.

이 구성 파일에서 Kubernetes 주석을 포함하여 통합 구성에서 자리 표시자를 사용할 수 있도록 하는 컨테이너 자동 검색 에 대한 명령을 지정해야 합니다.

Tomcat 애플리케이션에서 JVM을 모니터링하는 configMap 의 예:

다음으로 주석을 사용하여 컬렉션 구성을 정의합니다. 예를 들어 다음은 주석이 있는 Tomcat 배포입니다.

apiVersion: apps/v1
kind: Deployment
metadata:
name: tomcat-deployment
labels:
app: java
spec:
replicas: 1
selector:
matchLabels:
app: java
template:
metadata:
annotations:
newrelic.config: >-
{
"collect": [
{
"domain": "java.lang",
"event_type": "JVMSample",
"beans": [
{
"query": "type=GarbageCollector,name=*",
"attributes": [
"CollectionCount",
"CollectionTime"
]
},
{
"query": "type=Memory",
"attributes": [
"HeapMemoryUsage.Committed",
"HeapMemoryUsage.Init",
"HeapMemoryUsage.Max",
"HeapMemoryUsage.Used",
"NonHeapMemoryUsage.Committed",
"NonHeapMemoryUsage.Init",
"NonHeapMemoryUsage.Max",
"NonHeapMemoryUsage.Used"
]
},
{
"query": "type=Threading",
"attributes": [
"ThreadCount",
"TotalStartedThreadCount"
]
},
{
"query": "type=ClassLoading",
"attributes": [
"LoadedClassCount"
]
},
{
"query": "type=Compilation",
"attributes": [
"TotalCompilationTime"
]
}
]
}
]
}
labels:
app: java
spec:
containers:
- name: tomcat
image: tomcat:10.0.12
ports:
- containerPort: 9999
env:
- name: CATALINA_OPTS
value: '-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false'

맞춤형 커넥터

JMX를 사용하면 사용자 지정 커넥터를 사용하여 애플리케이션과 통신할 수 있습니다. 사용자 지정 커넥터를 사용하려면 nrjmx 클래스 경로에 사용자 지정 커넥터를 포함해야 합니다.

기본적으로 하위 폴더 connectors 은(는) 클래스 경로에 있습니다. 이 폴더가 없으면 nrjmx가 설치된 폴더 아래에 만듭니다.

예를 들어, JBoss에 대한 지원을 추가하려면 기본(Linux) 라이브러리 경로 /usr/lib/nrjmx/ ( /usr/lib/nrjmx/connectors/ ) 아래에 connectors 라는 폴더를 만들고 여기에 사용자 지정 커넥터 jar( $JBOSS_HOME/bin/client/jboss-cli-client.jar )를 복사합니다. 이제 JBoss에 대해 JMX 쿼리를 실행할 수 있습니다.

구성 예

호스트에 설치하기 위한 파일 구성 예:

호스트 내 통합 구성의 일반 구조에 대한 자세한 내용은 구성 을 참조하십시오.

데이터 이름 지정

메트릭은 샘플 형태로 전송 및 저장됩니다. 메트릭 데이터 및 메타데이터를 포함하는 키-값 쌍의 목록입니다. 각 샘플은 데이터베이스에 이벤트 로 저장됩니다.

New Relic에 보고된 JMX 데이터를 만들고 이름을 지정하는 것은 귀하의 책임입니다. 이러한 이유로 New Relic은 이벤트 유형의 이름을 지정할 때 이러한 규칙을 따를 것을 강력히 권장합니다. 일관된 명명 체계를 유지하려면 다음을 수행하십시오.

  • 낙타 케이스를 사용하십시오.
  • 어떤 데이터가 포함되어 있는지 명확하게 식별할 수 있는 이름을 사용하십시오.

예시: MyorgApplicationSample

Recommendation: 다양한 응용 프로그램에서 유사한 지표에 대해 동일한 명명 체계를 사용합니다.

데이터 찾기 및 사용

이 서비스의 데이터는 통합 대시보드 에 보고됩니다.

JMX 데이터는 구성 파일 에 지정된 사용자 정의 이벤트 유형 에 첨부됩니다. 예를 들어 JMX 통합을 사용하여 Tomcat을 모니터링하는 데 관심이 있는 경우 TomcatSample }이라는 event_type 를 정의하고 해당 이벤트 유형을 쿼리합니다 .

문제 해결을 위해 이 데이터를 쿼리 하거나 사용자 지정 차트 및 대시보드를 만들 수 있습니다.

데이터를 찾고 사용하는 방법에 대한 자세한 내용은 통합 데이터 이해 를 참조하십시오.

측정항목 데이터

통합에 의해 생성된 메트릭에는 수집하는 MBean 과 관련된 메타데이터가 포함됩니다. NRQL 쿼리 에서 이 메타데이터를 사용하여 쿼리가 원하는 빈에 대한 데이터만 반환하도록 데이터를 필터링하고 패싯할 수 있습니다. 또한 메트릭 이름이 모든 Bean 간에 고유하지 않아도 되므로 메트릭을 고유하게 식별하는 데 사용할 수도 있습니다.

각 이벤트에는 다음 메타데이터가 포함됩니다.

이름

설명

displayName

이러한 메트릭에 대한 JMX 도메인 이름입니다.

entityName

엔티티 유형 "domain:"이 추가된 이러한 메트릭의 JMX 도메인 이름입니다.

host

메트릭이 수집되는 JMX 호스트입니다.

query

이러한 측정항목을 수집하는 데 사용되는 쿼리입니다.

bean

이러한 메트릭이 수집된 속성의 Bean입니다.

key:<mbean_key>

Bean 이름의 각 키에 대해 Bean 키 값과 함께 “key:<mbean_key> 이라는 메트릭 세트에 속성이 추가됩니다.

NRQL 쿼리 예

다음은 수집된 모든 JVM 가비지 수집기를 모니터링하는 메타데이터를 활용하는 NRQL 쿼리의 예입니다.

SELECT latest(CollectionTime)
FROM JVMSample
FACET `key:name`
WHERE `key:type` = 'GarbageCollector'

측정항목 데이터 속성

JMX 통합은 다음 메트릭 데이터 속성을 수집합니다.

이름

설명

HeapMemoryUsage.Used

사용된 총 Java 힙 메모리입니다.

HeapMemoryUsage.Committed

사용하도록 커밋된 총 Java 힙 메모리입니다.

HeapMemoryUsage.Init

할당된 초기 Java 힙 메모리입니다.

HeapMemoryUsage.Max

사용 가능한 최대 Java 힙 메모리입니다.

NonHeapMemoryUsage.Used

사용된 총 Java 비힙 메모리입니다.

NonHeapMemoryUsage.Committed

사용하도록 커밋된 전체 Java 비힙 메모리입니다.

NonHeapMemoryUsage.Init

할당된 초기 Java 비힙 메모리입니다.

NonHeapMemoryUsage.Max

사용 가능한 최대 Java 비힙 메모리입니다.

ThreadCount

라이브 스레드 수입니다.

CollectionCount

발생한 총 가비지 컬렉션 수입니다.

CollectionTime

대략적인 누적 가비지 수집 시간이 경과했습니다.

인벤토리 데이터

JMX 통합은 JMX 통합의 설정 보고서를 캡처합니다. 데이터는 인벤토리 페이지config/jmx 소스 아래에서 사용할 수 있습니다. 인벤토리 데이터에 대한 자세한 내용은 통합 데이터 이해를 참조하세요.

문제점 해결

문제 해결 팁:

' '

' '

소스 코드 확인

이 통합은 오픈 소스 소프트웨어입니다. 즉 , 소스 코드를 탐색하고 개선 사항을 보내거나 자신만의 포크를 만들어 빌드할 수 있습니다.

Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.