Esta es una traducción de la página de documentación original en español. Ayúdanos a mejorarla.

action.create

Descripción

object action.create(object/array actions)

Este método permite crear nuevas acciones.

:::nota clásica Este método está únicamente disponible para los usuarios tipo Admin y Super Admin. Los permisos para llamar al método pueden ser revocados en las opciones del rol de usuario. Ver Roles de usuario para más información. :::

Parámetros

(object/array) Acciones para crear.

Además de las propiedades de acción estándar, el método acepta los siguientes parámetros.

Parámetro Tipo Descripción
filtro objecto Acción filtro objeto para la acción.
operaciones matriz Acción operaciones para crear la acción.
recovery_operations matriz Acciónoperaciones de recuperación para crear la acción.
update_operations matriz Acción actualizar operaciones para crear la acción.

Valores devueltos

(object) Devuelve un objeto que contiene los ID de las acciones creadas bajo la propiedad actionids. El orden de los ID devueltos coincide con el orden de las acciones pasadas.

Ejemplos

Crear una acción de trigger

Cree una acción que se ejecutará cuando un lanzador del host "10084" que tiene la palabra "memoria" en su nombre entra en estado de problema. La acción primero debe enviar un mensaje a todos los usuarios del grupo de usuarios "7". Si el evento no se resuelve en 4 minutos, ejecutará el script "3" en todos los hosts del grupo "2". Al desencadenar la recuperación, notificará a todos los usuarios que hayan recibido cualquier mensaje sobre el problema anterior. Al activar la actualización, un mensaje personalizado con asunto y cuerpo se enviará a todos los que dejaron reconocimientos y comentarios a través de todo tipo de medios.

Solicitud:

{
       ."jsonrpc":"2.0",
       ."method":"action.create",
       ."params":{
       ."name":"Trigger action",
       ."eventsource":0,
       ."status":0,
       ."esc_period"."2m",
       ."filter":{
       ."evaltype":0,
       ."conditions":[
       .{
       ."conditiontype":1,
       ."operator":0,
       ."value":"10084"
       .},
       .{
       ."conditiontype":3,
       ."operator":2,
       ."value":"memory"
       .}
       .]
       .},
       ."operations":[
       .{
       ."operationstype":0,
       ."esc_period":"0s",
       ."esc_step_from":1,
       ."esc_step_to":2,
       ."evaltype":0,
       ."opmessage_grp":[
       .{
       ."usrgrpid":"7"
       .}
       .],
       ."opmessage":{
       ."default_msg":1,
       ."mediatypeid":"1"
       .}
       .},
       .{
       ."operationtype":1,
       ."esc_step_from":3,
       ."esc_step_to":4,
       ."evaltype":0,
       ."opconditions":[
       .{
       ."conditiontype":14,
       ."operator":0,
       ."value":"0"
       .}
       .],
       ."opcommand_grp":[
       .{
       ."groupid":"2"
       .}
       .],
       ."opcommand":{
       ."scriptid":"3"
       .}
       .}
       .],
       ."recovery_operations":[
       .{
       ."operationtype":"11",
       ."opmessage":{
       ."default_msg":1
       .}
       .}.
       .],
       ."update_operations":[
       .{
       ."operationtype":"12",
       ."opmessage":{
       ."default_msg":0,
       ."message"."Cuerpo del mensaje de la operación de actualización personalizado",
       ."subject":"Asunto del mensaje de la operación de actualización personalizado"
       .}
       .}
       .],
       ."pause_suppressed":"0",
       ."notify_if_canceled":"0"
       .},
       ."auth":"038e1d7b1735c6a5436ee9eae095879e",
       ."id":1
       }

Respuesta:

{
        · "jsonrpc": "2.0",
        · "result": {
        · "actionids": [
        · "17"
        · ]
        · },
        · "id": 1
       }

Crear una acción de descubrimiento

Cree una acción que vinculará los hosts descubiertos a la plantilla "10091".

Solicitud:

{
        · "jsonrpc": "2.0",
        · "method": "action.create",
        · "params": {
        · "name": "Discovery action",
        · "eventsource": 1,
        · "status": 0,
        · "filter": {
        · "evaltype": 0,
        · "conditions": [
        · {
        · "conditiontype": 21,
        · "operator": 0,
        · "value": "1"
        · },
        · {
        · "conditiontype": 10,
        · "operator": 0,
        · "value": "2"
        · }
        · ]
        · },
        · "operations": [
        · {
        · "operationtype": 6,
        · "optemplate": [
        · {
        · "templateid": "10091"
        · }
        · ]
        · }
        · ]
        · },
        · "auth": "038e1d7b1735c6a5436ee9eae095879e",
        · "id": 1
       }

Respuesta:

{
        · "jsonrpc": "2.0",
        · "result": {
        · "actionids": [
        · "18"
        · ]
        · },
        · "id": 1
       }

Uso de un filtro de expresión personalizado

Cree una acción desencadenante que utilizará una condición de filtro personalizada. La acción debe enviar un mensaje por cada desencadenante con una gravedad igual o mayor a "Advertencia" para los hosts "10084" y "10106". Los identificadores de la fórmula "A","B" y "C" se han escogido arbitrariamente.

Solicitud:

{
        · "jsonrpc": "2.0",
        · "method": "action.create",
        · "params": {
        · "name": "Trigger action",
        · "eventsource": 0,
        · "status": 0,
        · "esc_period": "2m",
        · "filter": {
        · "evaltype": 3,
        · "formula": "A and (B or C)",
        · "conditions": [
        · {
        · "conditiontype": 4,
        · "operator": 5,
        · "value": "2",
        · "formulaid": "A"
        · },
        · {
        · "conditiontype": 1,
        · "operator": 0,
        · "value": "10084",
        · "formulaid": "B"
        · },
        · {
        · "conditiontype": 1,
        · "operator": 0,
        · "value": "10106",
        · "formulaid": "C"
        · }
        · ]
        · },
        · "operations": [
        · {
        · "operationtype": 0,
        · "esc_period": "0s",
        · "esc_step_from": 1,
        · "esc_step_to": 2,
        · "evaltype": 0,
        · "opmessage_grp": [
        · {
        · "usrgrpid": "7"
        · }
        · ],
        · "opmessage": {
        · "default_msg": 1,
        · "mediatypeid": "1"
        · }
        · }
        · ],
        · "pause_suppressed": "0",
        · "notify_if_canceled": "0"
        · },
        · "auth": "038e1d7b1735c6a5436ee9eae095879e",
        · "id": 1
       }

Respuesta:

{
        · "jsonrpc": "2.0",
        · "result": {
        · "actionids": [
        · "18"
        · ]
        · },
        · "id": 1
       }

Crear una regla de autoregistro de agentes

Agregue un host al grupo hosts "Servidores de Linux" cuando el nombre del host contenga "SRV" o los metadatos contengan "CentOS".

Solicitud:

{
        · "jsonrpc": "2.0",
        · "method": "action.create",
        · "params": {
        · "name": "Register Linux servers",
        · "eventsource": "2",
        · "status": "0",
        · "filter": {
        · "evaltype": "2",
        · "conditions": [
        · {
        · "conditiontype": "22",
        · "operator": "2",
        · "value": "SRV"
        · },
        · {
        · "conditiontype": "24",
        · "operator": "2",
        · "value": "CentOS"
        · }
        · ]
        · },
        · "operations": [
        · {
        · "operationtype": "4",
        · "opgroup": [
        · {
        · "groupid": "2"
        · }
        · ]
        · }
        · ]
        · },
        · "auth": "038e1d7b1735c6a5436ee9eae095879e",
        · "id": 1
       }

Respuesta:

{
        · "jsonrpc": "2.0",
        · "result": {
        · "actionids": [
        · 19
        · ]
        · },
        · "id": 1
       }

Ver también

Filtro de acciónOperación de acción

Fuente

CAction::create() en ui/include/classes/api/services/CAction.php.