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

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

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

문제 신고

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.