#ação.criar COMENTÁRIO https://git.zabbix.com/projects/WEB/repos/documentation/browse/en/manual/api/reference/action/create.md?at=refs%2Fheads%2Frelease%2F6.0 CONTEXTO c7f202d4 RECURSO Documentação 6.0•manual/api/reference/action/create.xliff

Descrição

object action.create(object/array actions)

Este método permite criar novas ações.

Este método está disponível apenas para Admin e Superadministrador tipos de usuário. As permissões para chamar o método podem ser revogadas na função de usuário definições. Veja Usuário funções Para maiores informações.

Parâmetros

(objeto/array) Ações para criar.

Além das propriedades de ação padrão, o O método aceita os seguintes parâmetros.

|Parâmetro|Tipo|Descrição| |---------|----------------------------------- ------------|-----------| |filter|objeto|Ação filtro objeto para a ação.| |operações|array|Ação operações para criar para a ação.| |recovery_operations|array|Ação operações de recuperação para criar para a ação.| |update_operations|array|Ação update operations para criar para a ação.|

Valores de retorno

(object) Retorna um objeto contendo os IDs das ações criadas sob a propriedade actionids. A ordem dos IDs retornados corresponde a ordem das ações passadas.

Exemplos

Crie uma ação trigger

Criar uma ação de gatilho que será acionada quando um gatilho (com a palavra "memória" em seu nome) do host "10084" entrar em estado de PROBLEMA. A ação terá 4 operações configuradas. A primeira operação imediata enviará uma mensagem para todos os usuários no grupo de usuários "7" via tipo de mídia "1". Se o evento não for resolvido em 30 minutos, a segunda operação executará o script "5" (script com escopo "Operação de ação") em todos os hosts do grupo "2". Se o evento for resolvido, uma operação de recuperação notificará todos os usuários que receberam quaisquer mensagens relacionadas ao problema. Se o evento for atualizado, uma operação de reconhecimento/atualização notificará (com um assunto e mensagem personalizados) todos os usuários que receberam quaisquer mensagens relacionadas ao problema.

Solicitação:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "esc_period": "30m",
               "filter": {
                   "evaltype": 0,
                   "conditions": [
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10084"
                       },
                       {
                           "conditiontype": 3,
                           "operator": 2,
                           "value": "memory"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 0,
                       "esc_step_from": 1,
                       "esc_step_to": 1,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   },
                   {
                       "operationtype": 1,
                       "esc_step_from": 2,
                       "esc_step_to": 2,
                       "opconditions": [
                           {
                               "conditiontype": 14,
                               "operator": 0,
                               "value": "0"
                           }
                       ],
                       "opcommand_grp": [
                           {
                               "groupid": "2"
                           }
                       ],
                       "opcommand": {
                           "scriptid": "5"
                       }
                   }
               ],
               "recovery_operations": [
                   {
                       "operationtype": "11",
                       "opmessage": {
                           "default_msg": 1
                       }
                   }    
               ],
               "update_operations": [
                   {
                       "operationtype": "12",
                       "opmessage": {
                           "default_msg": 0,
                           "message": "Custom update operation message body",
                           "subject": "Custom update operation message subject"
                       }
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Resposta:

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

Crie uma ação de descoberta

Crie uma ação de descoberta que vinculará os hosts descobertos ao template"10091".

Solicitação:

{
           "jsonrpc": "2.0",
           "método": "ação.criar",
           "parâmetros": {
               "name": "Ação de descoberta",
               "origem do evento": 1,
               "estado": 0,
               "filtro": {
                   "evaltype": 0,
                   "condições": [
                       {
                           "tipo de condição": 21,
                           "operador": 0,
                           "valor": "1"
                       },
                       {
                           "tipo de condição": 10,
                           "operador": 0,
                           "valor": "2"
                       }
                   ]
               },
               "operações": [
                   {
                       "tipo de operação": 6,
                       "otimizar": [
                           {
                               "templateid": "10091"
                           }
                       ]
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Resposta:

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

Usando um filtro de expressão personalizada

Crie uma ação trigger que utiliza uma expressão personalizada - "A e (B ou C)" - para avaliar as condições da ação. Uma vez que um gatilho com uma severidade maior ou igual a "Aviso" do host "10084" ou do host "10106" entra em estado de PROBLEMA, a ação enviará uma mensagem para todos os usuários no grupo de usuários "7" via tipo de mídia "1". Os IDs das fórmulas "A", "B" e "C" foram escolhidos arbitrariamente.

Solicitação:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "esc_period": "15m",
               "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_step_from": 1,
                       "esc_step_to": 1,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Resposta:

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

Create agent autoregistration rule

Crie uma ação de auto-registro que adiciona um host ao grupo de hosts "2" quando o nome do host contém "SRV" ou os metadados contêm "AlmaLinux".

Solicitação:

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

Resposta:

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

Consulte também

Fonte

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