Para algunos tipos de condiciones, puede definir una plantilla de descripción que transmita información útil a los procesos posteriores para mejorar las respuestas a los eventos de alerta o para su uso por otros sistemas. Puede crear una plantilla de descripción en la interfaz de usuario o con GraphQL.
Requisitos
La plantilla de descripción característica está disponible para:
- NRQL condición de alerta
- Monitoreo de infraestructura condición de alerta
El campo de la plantilla de descripción tiene un tamaño máximo de caracteres de 4000.
¿Qué es una plantilla de descripción?
Para algunos tipos de condiciones, puede crear una plantilla de descripción que pase información sobre una condición y sus eventos de alerta aguas abajo. Al usar una descripción, puede:
- Capture el motivo de la condición.
- Definir la señal que se monitorea
- Definir los próximos pasos
- Agregar metadatos a sistemas posteriores
El campo Description template le permite utilizar una estructura de plantilla general que, cuando se genera un evento de alerta, sustituye las secciones genéricas por valores específicos. Por ejemplo, supongamos que usó esto en una descripción:
This is my condition name : The hostname is : Un evento de alerta resultante de esta condición completaría los detalles y recibiría una notificación como esta:
This is my condition name : My Great Alert ConditionThe hostname is : ip-123-45-67-89.us-west-1.compute.internalCrear una plantilla de descripción
/ <img title="description template" alt="A screenshot displaying a sample description template" src="/images/alerts_screenshot-full_custom-incident-description-alerts.webp" /> <figcaption> <DNT>one.newrelic.com > All capabilities > Alerts & AI > Alert conditions (Policies) > (select a policy) > (select a condition)</DNT>: Click <DNT>+ Add description template</DNT> to open the field. </figcaption> /
Puede crear una plantilla de descripción empleando el campo dedicado para alertas NRQL o la sección Describe esta condición para alertas de infraestructura.
Ejemplo de plantilla de descripción
A continuación se muestra un ejemplo de plantilla de descripción:
This is my condition name : The hostname is : Owning Team: Product: ec2VpcId: Service name : AWS Region : AWS Availability Zone: Department : Environment: Cluster: Cluster Role: EC2 Instance Type: EC2 InstanceID: EC2 AmiId: EC2 Root Device Type: Cómo utilizar el atributo
Los atributos que puede utilizar en una plantilla de descripción son un subconjunto de los atributos adjuntos al evento de alerta. Aquí hay algunos detalles sobre los atributos disponibles y cómo utilizarlos:
Atributos de eventos de alerta: Para cualquiera de los atributos estándar disponibles para usar en una plantilla de descripción, use el formato
{{AN_ATTRIBUTE}}. Por ejemplo:The target name is :Atributo etiqueta: Para etiquetas, usarías el formato
{{tags.TAG_NAME}}. Hay dos tipos de etiqueta:Etiquetas relacionadas con entidades: For infrastructure conditions only. Puedes encontrar etiquetas relacionadas con entidades disponibles yendo al explorador de entidades y buscando en Metadata and tags de un servicio, o viendo los detalles del evento de alerta. Este es un ejemplo del uso de etiquetas en una plantilla de descripción:
The AWS region is :Responsible team :Etiqueta de cláusula de faceta: For NRQL conditions only. Si una condición NRQL usa una cláusula
FACET, puede usar el formatotagspara usar esos valores en su plantilla de descripción. Por ejemplo, si la consulta NRQL incluyeraFACET hostName, cluster, podría usar esto:The host is :The cluster is :
Tenga en cuenta que los nombres de las etiquetas no pueden incluir espacios en blanco. Los valores expandidos pueden incluir espacios en blanco, pero no los nombres de la etiqueta en sí.
Crea una plantilla de descripción con GraphQL
Puede crear una plantilla de descripción en una condición de alerta NRQL mediante una mutación GraphQL con esa descripción.
Aquí hay una plantilla de mutación vacía:
mutation { alertsNrqlConditionStaticUpdate( accountId: YOUR_ACCOUNT_ID id: "YOUR_CONDITION_ID" condition: { description: "" } ) { YOUR_CUSTOM_INCIDENT_DESCRIPTION }}Aquí hay un ejemplo de mutación con una plantilla de descripción:
mutation { alertsNrqlConditionStaticUpdate( accountId: 123456 id: "123456" condition: { description: "timestamp : {{timestamp}} \n accountId : {{accountId}} \n type : {{type}} \n event : {{event}} \n description : {{description}} \n policyId : {{policyId}} \n policyName: {{policyName}} \n conditionName : {{conditionName}} \n conditionId : {{conditionId}} \n product : {{product}} \n conditionType : {{conditionType}} \n RunbookUrl : {{runbookUrl}} \n nrqlQuery : {{nrqlQuery}} \n nrqlEventType : {{nrqlEventType}} \n targetID : {{targetId}} \n targetName : {{targetName}} \n commandLine : {{tags.commandLine}} \n entityGuid : {{tags.entityGuid}} \n entityName : {{tags.entityName}} \n fullHostname : {{tags.fullHostname}} \n instanceType : {{tags.instanceType}} \n processDisplayName : {{tags.processDisplayName}}" } ) { description }}- Para obtener más información sobre las condiciones NRQL y el uso de la API NerdGraph, vaya a API NerdGraph: alerta de condición NRQL.
- Para las condiciones de monitoreo de infraestructura, puede crear la plantilla de descripción al crear una condición de alerta de monitoreo de infraestructura.
- Para obtener información sobre cómo estructurar una plantilla de descripción, consulte la plantilla de ejemplo y las instrucciones de atributo/etiqueta.
Mencionar usuario o canal de notificación en Slack
Al crear una descripción que sabes que se enviará a Slack, es posible que desees @mention un usuario o generar una notificación para todo el canal (por ejemplo, @here o @channel). Para lograr esto, simplemente incluya el ID de usuario o una notificación para todo el canal en la descripción rodeada de caracteres < y > .
A continuación se muestra un ejemplo para mencionar a un usuario:
Attention <@LewCirne>A continuación se muestra un ejemplo para generar una notificación para todo el canal:
Attention <!channel>Importante
Tenga en cuenta que la convención de Slack para notificaciones de todo el canal en Webhooks entrantes es utilizar un prefijo ! en lugar de @. Por ejemplo, !here o !channel.