En una política, una condición identifica qué desencadena una alerta. Puede emplear la API REST para deshabilitar y habilitar condiciones. También puedes deshabilitar y habilitar condiciones en la UI.
Las políticas no se pueden habilitar ni deshabilitar, ya sea a través de la API o la UI. Las políticas sólo se pueden crear, eliminar o cambiar sus condiciones.
Antes de usar la API REST
La API REST ya no es la forma preferida de gestionar sus alertas mediante programación. Para obtener más contexto, lea la Introducción a las API de .
Requisitos
Modificar cualquier atributo en una condición usando la API requiere:
- Una clave de API y permisos para gestionar alerta
- La condición es
id
(disponible en API Explorer: Alerts Conditions > GET > List) - Si su organización aloja datos en el centro de datos de la UE, asegúrese de utilizar los extremos de API adecuados para las cuentas de la región de la UE.
Activar y desactivar una condición
El proceso para deshabilitar o habilitar una condición es el mismo proceso general para cambiar cualquier atributo en una condición. Un ejemplo más detallado viene después de este procedimiento general:
Busque el ID de la póliza que contiene la condición que desea cambiar.
Si se desconoce el ID de la política, utilice el nombre o tipo de la política para realizar una llamada API y encontrar el ID de la política. Para obtener más información sobre este proceso, consulte Listar una única política.
Con el ID de la política, realice una llamada API que devuelva las condiciones asociadas con esa política. Hay cuatro categorías de condiciones diferentes. Si no conoce la categoría, es posible que sea necesario realizar hasta cuatro API de llamadas para encontrar la condición.
Para el JSON devuelto, busque el objeto JSON de la condición que desea cambiar.
Copie y pegue el JSON de la condición en un editor de texto de su elección y edite el JSON. Para habilitar la condición, establezca
"enabled"
entrue
. Para deshabilitar la condición, establezca"enabled"
enfalse
.Actualice la condición enviando su JSON editado mediante una solicitud de Actualización de API. Nuestros diferentes productos requieren diferentes solicitudes de API.
Ejemplo: deshabilitar una condición APM
El siguiente ejemplo muestra cómo deshabilitar una condición para una condición apm_app_metric
. Con la excepción de los tipos de API de llamada requeridos, el proceso es similar al proceso para cambiar otros tipos de condiciones.
Obtenga el
policy_id
de la política que desea actualizar. Para una política imaginaria denominadaLogjam Alert
, el comando sería:bash$curl -X GET 'https://api.newrelic.com/v2/alerts_policies.json' \>-H "X-Api-Key:$API_KEY" -i \>-G --data-urlencode 'filter[name]= Logjam Alert' # policy_nameEl resultado de esta solicitud podría verse así:
{"policies": [{"id": 85, // policy_id"incident_preference": "PER_POLICY","name": "Logjam Alert","created_at": 1461176510393,"updated_at": 1461176510393}]}Enumere todas las condiciones de esta política y localice el
condition_id
:bash$curl -X GET 'https://api.newrelic.com/v2/alerts_conditions.json' \>-H "X-Api-Key:$API_KEY" -i \>-G -d 'policy_id=85'El resultado de esta solicitud podría verse así:
{"conditions": [{"id": 12345, // condition_id"type": "apm_app_metric","name": "Apdex (Low)","enabled": true, // Note the condition is enabled"entities": ["8288171"],"metric": "apdex","terms": [{"duration": "5","operator": "below","priority": "critical","threshold": "1","time_function": "any"}]},{"id": 2468, // another condition_id"type": "apm_app_metric","name": "Throughput (Low)",...}]}Copie el JSON solo para la condición en cuestión y péguelo en un editor de texto. Cambie
"enabled": true
a"enabled": false
. El JSON editado se vería así:bash$curl -X PUT 'https://api.newrelic.com/v2/alerts_conditions/12345.json' \>-H "X-Api-Key:$API_KEY" -i \>-H 'Content-Type: application/json' \>-d \>'{$"condition": {$"type": "apm_app_metric",$"name": "Apdex (Low)",$"enabled": false,$"entities": [$"8288171"$],$"metric": "apdex",$"terms": [${$"duration": "5",$"operator": "below",$"priority": "critical",$"threshold": "1",$"time_function": "any"$}$]$}$}'Actualice la condición enviando el JSON de condición editado mediante una solicitud de Actualización de API. Para esta condición específica, debe seguir los pasos en Actualizar condiciones para políticas de APM. Otras condiciones del producto tendrían otras solicitudes de API, como se detalla en Actualizar solicitudes de API.