/* 농담 온도 cloud 규칙과 게이트웨이 규칙은 동일한 NRQL 정의를 사용하더라도 서로 다르게 작동하는 경우가 있습니다. 뉴렐릭이 텔레메트리 데이터를 수신하면 데이터가 cloud 규칙에 따라 평가되어 NRDB에 저장되기 전에 여러 번의 변환과 보강을 거칩니다. 하지만 게이트웨이 규칙은 데이터가 뉴렐릭에 의해 변환되고 풍부해지기 전에 사용자의 Insight에서 실행됩니다. 데이터 스키마와 충실도의 차이로 인해 게이트웨이 규칙이 예상대로 작동하지 않을 수 있습니다. 게이트웨이 규칙을 작성할 때 NRQL 정의를 작성할 때 이 문서를 참조하여 게이트웨이에서 다르게 작동하는 모든 속성을 변환하거나 제거하세요. 이는 속성의 이름이 다르거나 속성이 전혀 존재하지 않기 때문일 수 있습니다. 이 문서를 사용하여 게이트웨이 규칙 NRQL 정의에서 식별하려는 속성을 검색하세요. 속성의 이름이 변경된 경우 NRQL에서 원래 속성 대신 이름이 변경된 속성을 사용하면 됩니다. 속성을 사용할 수 없는 경우 게이트웨이 규칙 대신 cloud 규칙을 사용하는 것이 좋습니다. 효과적인 데이터 처리를 보장하려면: - 표에 나열된 삭제 불가능한 속성을 모두 보존하세요. - 필수 속성 무결성을 손상시키지 않고 레코드를 관리하기 위해 테이블에서 샘플 쿼리를 사용합니다. */
데이터 흐름 개요
데이터 소스
데이터는 다양한 소스에서 뉴렐릭 게이트웨이로 입력됩니다.
- APM 에이전트
- 인프라 에이전트
- 메트릭 API
데이터 형식
이렇게 들어오는 데이터는 다양한 속성을 가진 복잡하고 다중 중첩된 JSON으로 구성됩니다.
처리 단계
- 게이트웨이 처리: 초기 데이터 처리가 귀하의 인프라에서 이루어집니다.
- 강화: 게이트웨이 이후에 추가 속성이 추가되고 일부 속성 이름이 변경됩니다.
- 클라우드 규칙 처리: 뉴렐릭 환경에서 이름이 바뀌거나 강화된 속성으로 데이터를 처리합니다.
- 최종 저장: 데이터는 최종적으로 뉴렐릭 데이터베이스(NRDB)에 저장됩니다.
게이트웨이 규칙에 대한 NRQL 쿼리 작성을 위한 고려 사항
이름이 변경된 속성
강화 프로세스 중에 이름이 변경된 속성을 사용하는 경우(게이트웨이 다음, cloud 규칙 이전) 걱정하지 마세요. 뉴렐릭은 이 숙제를 자동으로 처리하므로 NRQL 쿼리는 게이트웨이와 cloud 규칙 수준에서 모두 올바르게 작동합니다.
추가된 속성
일부 속성은 강화 프로세스 중에만 추가됩니다(게이트웨이 후, cloud 규칙 전). 이러한 속성:
- 드롭 규칙에 대한 쿼리에서**** 사용 가능 NRQL cloud
- 게이트웨이 삭제 규칙에 대한 NRQL 쿼리에서 사용할 수 없습니다 (해당 시점에는 존재하지 않기 때문)
모범 사례
게이트웨이 규칙을 작성할 때 일부 속성은 게이트웨이 수준에서 사용할 수 없을 수 있다는 점을 알아두세요. 강화 중에만 추가되는 속성을 사용해야 하는 경우 게이트웨이 규칙 대신 cloud 규칙을 사용하는 것이 좋습니다.
데이터 유형 및 속성 처리
다음 표에는 다음이 나와 있습니다.
- NRQL을 사용하여 삭제 규칙을 만들 수 있는 데이터 유형
- 삭제 규칙이 지원되지 않는 데이터 유형
- 게이트웨이 수준에서 사용할 수 없는 속성
- 지원되는 각 데이터 유형에 대한 샘플 쿼리
데이터 형식 | 삭제 규칙이 지원되나요? | 게이트웨이에서 사용할 수 없는 속성 | 샘플 NRQL 쿼리 |
---|---|---|---|
거래 | 네 | appId, 앱 이름, 컨테이너 ID, 엔티티.guid, entityGuid, 호스트, realAgentId, transactionSubType, transactionType |
|
내 사용자 정의 이벤트 | 네 | appId, appName, containerId, entityGuid, 호스트, realAgentId |
|
오류 추적 | 네 | aggregateFacet, 앱 ID, 앱 이름, 애플리케이션 ID, 개수, 엔티티.guid, entityGuid, 오류.클래스, 메시지, 경로, 예외 클래스, 지문, ID, 메시지, realAgentId, storageId, 타임스탬프, transactionName, transactionUiName |
|
트랜잭션 오류 | 네 | 집계 패싯, 앱 ID, 앱 이름, 컨테이너 ID, 엔티티.guid, entityGuid, 호스트, realAgentId, transactionUiName |
|
연구소 | 네 | 엔티티.guids, messageId, newrelic.logPattern, newrelic.log.batchIndex, newrelic.source |
|
미터법 | 아니요 | appId, 앱 이름, 엔티티.guid, entityGuid, 언어, metricName, metricTimesliceName, newrelic.timeslice.value, 범위, 타임스탬프 | 해당 없음 |
기간 | 네 | appId, 앱 이름, 컨테이너 ID, 기간.ms, 엔티티.guid, 엔티티 이름, 엔터티Guid, 호스트 ID, process.id, realAgentId, 트레이스.id |
|
SQL추적 | 아니요 | applicationIds, callCount, databaseMetricName, 엔티티.guid, id, maxCallTime, minCallTime, 경로, realAgentId, sql, sqlId, storageId, 타임스탬프, totalCallTime, uri | 해당 없음 |
거래 추적 | 아니요 | storageId, uri, 경로, agentRunId, applicationIds, 기간, 출처.guid, guid, id, protocolVersion, realAgentId, 타임스탬프 | 해당 없음 |
지표/게이지 | 네 | newrelic.source(metricAPI), metricName:
|
|
지표/요약 | 네 | newrelic.source(metricAPI), metricName:
|
|
메트릭/카운트 | 네 | newrelic.source(metricAPI), metricName:
|
|
시스템 샘플 | 네 | 없음 |
|
스토리지 샘플 | 네 | 엔티티와 마운트 포인트 |
|
네트워크 샘플 | 네 | 엔티티와 인터페이스 |
|
프로세스 샘플 | 네 | 엔티티앤피드 |
|
컨테이너 샘플 | 네 | 엔티티 가이드, 엔티티 유형, 엔티티 ID |
|