• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

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.

Crea una propuesta

Tutorial de NerdGraph: Ver datos de entidad

entidad en New Relic se refiere a cualquier cosa que monitor que genere o contenga telemetría. entidad le ayuda a encontrar los datos que desea rastrear en New Relic, y si comprende sus relaciones con otras entidades, puede obtener aún más Insights sobre sus datos. A continuación se muestran algunos ejemplos de entidad:

Puede trabajar con entidad directamente en nuestra UI (consulte Más información sobre la entidad New Relic), o puede seguir los pasos aquí sobre cómo trabajar con entidad a través de nuestra API NerdGraph. Si necesita ayuda para comenzar con NerdGraph, consulte nuestra Introducción a New Relic NerdGraph.

Importante

Para trabajar con las métricas doradas y la etiqueta de una entidad, consulte el tutorial de API de métricas doradas.

Antes de empezar

Antes de trabajar con entidad, te recomendamos leer Conoce sobre entidad.

Al trabajar con entidad, algunas cosas importantes a tener en cuenta:

  • Un GUID único identifica una entidad (entity.guid o entityGuid).
  • Una entidad existe en New Relic durante un período de tiempo específico.
  • Una entidad proporciona un punto de entrada útil para explorar datos sobre métricas y eventos específicos o para contextualizar datos relacionados con otras entidades.

Buscar entidad

New Relic busca entidades por su atributo, principalmente su nombre, pero también por tipo de entidad y otros valores. La búsqueda arroja datos básicos sobre la entidad que coincide con los criterios de búsqueda. Luego, a partir de los resultados de la consulta básica, puede consultar una entidad específica por su GUID.

Además de domainType, otros atributos de entidad comunes son:

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

Puedes filtrar por cualquiera de los atributos anteriores. Además, puede utilizar etiqueta para filtrar.

Advertencia

No puede filtrar por propiedades de entidad personalizadas de nivel raíz. Las propiedades personalizadas solo se recuperan como parte de los metadatos de la entidad en la respuesta de búsqueda real. Para filtrar por un campo personalizado, transfórmelo en una etiqueta de entidad.

Puede elaborar una consulta de dos maneras:

  1. Utilice el argumento queryBuilder para ayudarle a elaborar una consulta.
  2. Utilice el argumento query de forma libre para crear su propia búsqueda.

Para utilizar NerdGraph para consultar una o más entidades, puede buscar por atributo o GUID.

Sugerencia

NerdGraph establece el número total de entidades que se pueden devolver en una consulta en 200. Si necesita recuperar todas las entidades para una consulta, utilice la paginación del cursor como se explica en los ejemplos.

Además de los ejemplos siguientes, le recomendamos que experimente con la API utilizando el explorador NerdGraph. Tiene documentación en línea que lo ayudará a construir su consulta y mutaciones.

Buscar con queryBuilder

El argumento queryBuilder es útil para construir una consulta sencilla. Le permite agregar filtros a su consulta a partir de una lista predefinida de atributos y sus valores típicos. Para consultas más avanzadas, utilice el argumento query en su lugar.

  1. Vaya al NerdGraph explorador GraphiQL.

  2. Ejecute una consulta básica para encontrar entidades que coincidan con sus criterios de búsqueda. Por ejemplo:

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

Buscar con forma libre query

Esto es útil para elaborar consultas más complejas.

  1. Vaya al NerdGraph explorador GraphiQL.

  2. Ejecute una consulta básica para encontrar entidades que coincidan con sus criterios de búsqueda. Por ejemplo:

    query($query: String!) {
    actor {
    entitySearch(query: $query) {
    count
    results {
    entities {
    name
    entityType
    guid
    }
    }
    }
    }
    }
  3. Agregue las siguientes variables a la sección Query variables en NerdGraph:

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

Obtener entidad por GUID

Cuando conozca el GUID de la entidad que desea recuperar, puede usar el atributo entity :

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

Esto también se puede escribir como una consulta de búsqueda:

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

O, para buscar varias entidades al mismo tiempo, puedes usar el atributo entities :

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

De lo contrario, utilice una consulta de búsqueda:

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

Ejemplo de consulta

Consulta son solicitudes que están destinadas únicamente a recuperar datos (y no tienen ningún otro efecto). Las consultas de NerdGraph no son estáticas, lo que significa que puedes solicitar más o menos datos según tus necesidades. Para cada consulta, puede especificar exactamente qué datos desea recuperar, siempre que sean compatibles con el esquema.

La entidad en NerdGraph se basa en interfaces GraphQL, un concepto que permite que los objetos compartan campos comunes. Las interfaces se utilizan para proporcionar datos para tipos de entidades específicos, como verá en muchos de estos ejemplos de consulta de NerdGraph.

Crear o eliminar relaciones de entidad

Una entidad puede tener una relación con otra entidad. New Relic crea automáticamente algunas relaciones, pero también puede utilizar mutaciones para crear o eliminar relaciones personalizadas. Tenemos algunas explicaciones a continuación sobre cómo hacer esto, pero si necesita ayuda para comprender los distintos tipos de relaciones en New Relic, eche un vistazo a las relaciones entre entidades.

Antes de crear manualmente relaciones adicionales o eliminarlas, tenga en cuenta lo siguiente:

  • Dos entidades pueden tener múltiples relaciones, una para cada tipo de relación.
  • Dos entidades pueden mantener una relación SI pertenecen a la misma cuenta de confianza.
  • Para cada entidad, puede definir manualmente hasta 2000 relaciones. Cuando se alcance el límite, la API devolverá un error LIMIT_EXCEEDED .
  • Cada mutación puede fallar si no tienes acceso a una de las dos entidades (fuente/objetivo).

Listar relaciones de una entidad

Puede utilizar el campo relatedEntities para ver cómo interactúan los pares de entidades y cómo se relacionan. Esto puede ayudarle a solucionar problemas de servicios ascendentes y descendentes y comprender cómo los problemas menores pueden tener repercusiones mayores, de forma similar a cómo se pueden utilizar los mapas de servicios .

El siguiente ejemplo muestra cómo consultar una entidad por su GUID específico:

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

Crear o reemplazar relaciones

Cree o reemplace relaciones de entidad usando la mutación entityRelationshipUserDefinedCreateOrReplace. Como sugiere su nombre, permite crear una relación entre dos entidades de un tipo determinado. Si la relación ya existe entre las dos entidades, se agregará nuevamente con los valores dados actualizados (la hora de creación y la identificación de usuario del creador):

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

Eliminar relaciones

Elimine las relaciones de entidad usando la mutación entityRelationshipUserDefinedDelete. La fuente y el objetivo son obligatorios, pero el tipo no. Si ejecuta la mutación sin tipo, se eliminan todas las relaciones entre las dos entidades.

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

Eliminar entidad

Puede eliminar manualmente cualquier entidad en su cuenta utilizando la API NerdGraph en el explorador NerdGraph GraphiQL.

Para eliminar entidades EXT-SERVICE y REF-REPOSITORY , ejecute esta mutación con el GUID de la entidad:

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

Importante

Después de ejecutar la mutación entityDelete, es posible que vea una entidad eliminada en su UI si un agente de New Relic la reindexa nuevamente.

Para eliminar entidades APM, BROWSER y MOBILE , ejecute esta mutación con el GUID de la entidad:

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

Importante

  • La mutación agentApplicationDelete requiere que el agente New Relic no tenga datos de informes durante 12 horas antes de la eliminación.
  • Actualmente, solo puedes eliminar los siguientes tipos de entidades utilizando la API de Nerdgraph: APM-APPLICATION, EXT-SERVICE y REF-REPOSITORY.
  • Es posible que vea una entidad eliminada en su UI si un agente de New Relic la reindexa nuevamente.
Copyright © 2024 New Relic Inc.

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