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

사용자의 편의를 위해 제공되는 기계 번역입니다.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

문제 신고

NerdGraph 튜토리얼: 엔티티 데이터 보기

New Relic의엔터티는 원격 측정을 생성하거나 포함하는 우리가 모니터링하는 모든 것을 말합니다. 엔터티는 New Relic에서 추적하려는 데이터를 찾는 데 도움이 되며 다른 엔터티와의 관계를 이해하면 데이터에 대한 더 많은 통찰력을 얻을 수 있습니다. 다음은 엔터티의 몇 가지 예입니다.

  • APM 이 모니터링하는 애플리케이션.
  • 인프라 모니터링 으로 모니터링되는 클라우드 통합, 서비스 및 호스트.

UI에서 직접 엔터티로 작업하거나( New Relic 엔터티에 대해 알아보기참조) NerdGraph API를 통해 엔터티 작업에 대한 단계를 수행할 수 있습니다. NerdGraph를 시작하는 데 도움이 필요한 경우 New Relic NerdGraph 소개를참조하세요.

중요

엔터티의 골든 메트릭 및 태그로 작업하려면 골든 메트릭 API 자습서 를참조하십시오.

시작하기 전에

엔터티로 작업하기 전에 엔터티에 대해 알아보기를 읽어 보는 것이 좋습니다.

엔터티로 작업할 때 염두에 두어야 할 몇 가지 중요한 사항은 다음과 같습니다.

  • 고유한 GUID는 엔터티(entity.guid 또는 entityGuid)를 식별합니다.
  • 엔터티는 특정 기간 동안 New Relic에 존재합니다.
  • 엔터티는 특정 메트릭 및 이벤트에 대한 데이터를 탐색하거나 다른 엔터티와 관련된 데이터를 컨텍스트화하기 위한 유용한 진입점을 제공합니다.

엔터티 검색

New Relic은 속성, 주로 이름뿐 아니라 엔티티 유형 및 기타 값으로 엔티티를 검색합니다. 검색은 검색 기준과 일치하는 엔터티에 대한 기본 데이터를 반환합니다. 그런 다음 기본 쿼리 결과에서 GUID로 특정 엔터티를 쿼리할 수 있습니다.

domainType 외에 다른 일반적인 항목 속성은 다음과 같습니다.

  • id
  • accountId
  • name
  • domainId
  • alertSeverity
  • reporting

위의 속성 중 하나로 필터링할 수 있습니다. 또한 필터링을 위해 태그를 사용할 수 있습니다.

주의

사용자 지정 루트 수준 엔터티 속성으로 필터링할 수 없습니다. 사용자 지정 속성은 실제 검색 응답에서 엔터티 메타데이터의 일부로만 검색됩니다. 사용자 정의 필드로 필터링하려면 엔티티 태그로 변환하십시오.

다음 두 가지 방법 중 하나로 쿼리를 작성할 수 있습니다.

  1. 쿼리를 작성하는 데 도움이 되도록 queryBuilder 인수를 사용합니다.
  2. 자유 형식 query 인수를 사용하여 고유한 검색을 작성하십시오.

NerdGraph를 사용하여 하나 이상의 엔터티를 쿼리하려면 속성 또는 GUID로 검색할 수 있습니다.

NerdGraph는 한 쿼리에서 반환할 수 있는 총 엔터티 수를 200으로 설정합니다. 쿼리에 대해 모든 엔터티를 검색해야 하는 경우 예제에 설명된 대로 커서 페이지 매김을 사용합니다.

아래 예제외에도 NerdGraph 탐색기를사용하여 API를 실험해 볼 것을 권장합니다. 쿼리 및 변형을 구성하는 데 도움이 되는 인라인 문서가 있습니다.

다음으로 검색 queryBuilder

queryBuilder 인수는 간단한 쿼리를 구성하는 데 유용합니다. 이를 통해 미리 정의된 속성 목록과 해당 일반 값에서 쿼리에 필터를 추가할 수 있습니다. 고급 쿼리의 경우 대신 query 인수를 사용하십시오.

  1. NerdGraph GraphiQL 탐색기 로 이동합니다.

  2. 기본 쿼리를 실행하여 검색 기준과 일치하는 엔터티를 찾습니다. 예를 들어:

    {
    actor {
    entitySearch(queryBuilder: { domain: APM, type: APPLICATION }) {
    query
    results {
    entities {
    name
    entityType
    guid
    }
    }
    }
    }
    }

자유형으로 검색 query

이것은 더 복잡한 쿼리를 만드는 데 유용합니다.

  1. NerdGraph GraphiQL 탐색기 로 이동합니다.

  2. 기본 쿼리를 실행하여 검색 기준과 일치하는 엔터티를 찾습니다. 예를 들어:

    query($query: String!) {
    actor {
    entitySearch(query: $query) {
    count
    results {
    entities {
    name
    entityType
    guid
    }
    }
    }
    }
    }
  3. NerdGraph의 Query variables 섹션에 다음 변수를 추가합니다.

    { "query": "name LIKE 'nerd-graph' AND domainType IN ('APM-APPLICATION')" }

GUID로 엔터티 가져오기

가져오려는 항목의 GUID를 알고 있으면 entity 속성만 사용할 수 있습니다.

{
actor {
entity(guid: "ENTITY_GUID") {
name
entityType
}
}
}

이것은 검색 쿼리로 작성할 수도 있습니다.

{
actor {
entitySearch(query: "id = 'ENTITY_GUID'") {
query
results {
entities {
name
entityType
}
}
}
}
}

또는 동시에 여러 항목을 가져오려면 entities 속성을 사용할 수 있습니다.

{
actor {
entities(guids: ["ENTITY_GUID_1", "ENTITY_GUID_2"]) {
name
entityType
}
}
}

그렇지 않으면 검색어를 사용하세요.

{
actor {
entitySearch(query: "id IN ('ENTITY_GUID_1', 'ENTITY_GUID_2')") {
query
results {
entities {
name
entityType
}
}
}
}
}

쿼리 예시

쿼리는 데이터만 가져오기 위한 요청이며 다른 효과는 없습니다. NerdGraph 쿼리는 정적이 아닙니다. 즉, 필요에 따라 더 많거나 적은 데이터를 요청할 수 있습니다. 각 쿼리에 대해 스키마에서 지원하는 한 검색하려는 데이터를 정확히 지정할 수 있습니다.

NerdGraph의 엔터티는 개체가 공통 필드를 공유할 수 있도록 하는 개념인 GraphQL 인터페이스 에 의존합니다. 이러한 NerdGraph 쿼리 예제에서 볼 수 있듯이 인터페이스는 특정 엔터티 유형에 대한 데이터를 제공하는 데 사용됩니다.

엔터티 관계 만들기 또는 삭제

엔터티는 다른 엔터티와 관계를 가질 수 있습니다. 일부 관계는 New Relic에 의해 자동으로 생성되지만 변형을 사용하여 사용자 지정 관계를 생성하거나 삭제할 수도 있습니다. 이를 수행하는 방법에 대한 몇 가지 설명이 아래에 있지만 New Relic의 다양한 관계 유형을 이해하는 데 도움이 필요한 경우 엔터티 관계를살펴보십시오.

추가 관계를 수동으로 생성하거나 삭제하기 전에 다음 사항에 유의하십시오.

  • 두 엔터티는 각 관계 유형에 대해 하나씩 여러 관계를 가질 수 있습니다.
  • 두 엔터티는 동일한 신뢰할 수 있는 계정에 속한 경우 관계를 유지할 수 있습니다.
  • 각 엔터티에 대해 최대 2000개의 관계를 수동으로 정의할 수 있습니다. 한도에 도달하면 API가 LIMIT_EXCEEDED 오류를 반환합니다.
  • 두 엔터티(소스/대상) 중 하나에 액세스할 수 없는 경우 각 변형이 실패할 수 있습니다.

엔터티의 관계 나열

relatedEntities 필드를 사용하여 항목 쌍이 어떻게 상호 작용하고 관련되어 있는지 확인할 수 있습니다. 이를 통해 업스트림 및 다운스트림 서비스 문제를 해결하고 서비스 맵을 사용할 수 있는 방법과 유사하게 사소한 문제가 더 큰 영향을 미칠 수 있는 방법을 이해할 수 있습니다.

다음 예에서는 특정 GUID로 엔터티를 쿼리하는 방법을 보여줍니다.

query {
actor {
entity(guid: "ENTITY_GUID") {
name
relatedEntities {
results {
source {
entity {
guid
name
}
}
target {
entity {
guid
name
}
}
type
}
}
}
}
}

관계 만들기 또는 바꾸기

entityRelationshipUserDefinedCreateOrReplace변이를 사용하여 항목 관계를 만들거나 바꿉니다. 이름에서 알 수 있듯이 주어진 유형의 두 엔터티 간에 관계를 만들 수 있습니다. 두 엔터티 간에 관계가 이미 존재하는 경우 업데이트된 주어진 값(생성 시간 및 작성자 사용자 ID)으로 다시 추가됩니다.

mutation {
entityRelationshipUserDefinedCreateOrReplace(
sourceEntityGuid: "SOURCE_ENTITY_GUID"
targetEntityGuid: "TARGET_ENTITY_GUID"
type: BUILT_FROM
) {
errors {
message
type
}
}
}

관계 삭제

entityRelationshipUserDefinedDelete변형을 사용하여 항목 관계를 삭제합니다. 소스와 대상은 필수 항목이지만 유형은 필수 항목이 아닙니다. 유형 없이 변형을 실행하면 두 엔터티 간의 모든 관계가 제거됩니다.

mutation {
entityRelationshipUserDefinedDelete(
sourceEntityGuid: "SOURCE_ENTITY_GUID"
targetEntityGuid: "TARGET_ENTITY_GUID"
type: BUILT_FROM
) {
errors {
message
type
}
}
}

항목 삭제

NerdGraph GraphiQL 탐색기 에서 NerdGraph API를 사용하여 계정의 모든 엔터티를 수동으로 삭제할 수 있습니다.

EXT-SERVICEREF-REPOSITORY 항목을 삭제하려면 항목의 GUID를 사용하여 이 변형을 실행하세요.

mutation {
entityDelete(guids: ["ENTITY_GUID_1", "ENTITY_GUID_2"]) {
deletedEntities
failures {
guid
message
}
}
}

중요

entityDelete 변형을 실행한 후 New Relic 에이전트가 항목을 다시 색인화하면 UI에 삭제된 항목이 표시될 수 있습니다.

APM, BROWSERMOBILE 항목을 삭제하려면 항목의 GUID를 사용하여 이 변형을 실행하세요.

mutation {
agentApplicationDelete(guid: "ENTITY_GUID") {
success
}
}

중요

  • agentApplicationDelete 변형을 사용하려면 New Relic 에이전트에 삭제 전 12시간 동안 보고 데이터가 없어야 합니다.
  • 현재 Nerdgraph API를 사용하여 다음 항목 유형 만 제거할 수 있습니다. APM-APPLICATION , EXT-SERVICEREF-REPOSITORY .
  • New Relic 에이전트가 다시 색인을 생성하면 UI에서 삭제된 엔터티를 볼 수 있습니다.
Copyright © 2024 New Relic Inc.

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