RemedialActionEngine - Com escopo
. RemedialActionEngine A API fornece métodos para trabalhar com ações corretivas.
- Iniciar uma ação corretiva.
- Acionar a execução de uma ação corretiva.
- Verifique a autorização do usuário conectado para executar a ação corretiva.
- Verifique a aplicabilidade da ação corretiva em relação ao registro de destino.
- Obtenha o status de execução atual e a carga de saída da ação de destino.
Esta API requer a aplicação de armazenamento Estrutura de ações corretivas (com.snc.sn_reacf) e é fornecida em sn_reacf namespace.
RemedialActionEngine - beginRemediation (cadeia de caracteres remedialAction, cadeia de caracteres parentTable, cadeia de caracteres parentRecord, objeto actionParams, cadeia de caracteres targetRecord, cadeia de caracteres originRecord)
Inicia qualquer ação corretiva do registro primário em relação a um registro de destino. Este método cria um novo registro de execução de ação corretiva em um estado "Pronto".
- Se o tipo de parâmetro for um objeto ou matriz, defina cada propriedade e seu tipo.
- Se o tipo de parâmetro for GlideRecord, forneça a tabela associada em sua solicitação.
| Nome | Tipo | Descrição |
|---|---|---|
| Ação corretiva | String ou GlideRecord | Sys_id ou internal_name ou GlideRecord da tabela Ação femial [sn_reacf_remedial_action]. |
| parentTable | Cadeia de caracteres | Nome da tabela do registro primário. |
| parentRecord | Cadeia de caracteres | Sys_id do registro primário. |
| actionParams | Objeto | Opcional. Mapa de nomes e valores de parâmetros de ação corretiva.
Nota: O valor do parâmetro deve ser do tipo definido na tabela Parâmetro de ação corretiva [sn_reacf_remedial_action_parameter]. |
| targetRecord | String ou GlideRecord | Opcional. Sys_id ou GlideRecord da tabela de destino configurada. |
| OriginRecord | String ou GlideRecord | Opcional. Sys_id ou GlideRecord da tabela Origem da ação corretiva [sn_reacf_remedial_action_origin]. |
| Tipo | Descrição |
|---|---|
| Objeto | |
| <Object>.StatusCode | Código de status da solicitação de execução da ação corretiva, ou seja, bem-sucedida, duplicate_request ou falha |
| <Object>.ActionExecutionRequestId | Sys_id do novo registro de execução de ação de Rcorretiva ou registro de execução de ação corretiva simultânea duplicado |
| <Object>.ParentRecord | Sys_id do registro primário do registro de execução de ação corretiva simultânea duplicado. |
| <Object>.ParentTable | Nome da tabela do registro primário do registro de execução de ação corretiva simultânea duplicado. |
O exemplo a seguir mostra como iniciar qualquer ação corretiva. Aqui, a ação corretiva usa uma Ação de IC internamente para encerrar um processo em um IC.
var remedialAction = "9ef9924c436521101a24ff53e9b8f2d2" //sys_id of the Action
var parentTable = "incident"; //table name of the Parent record
var parentRecord = "62733787871e25105763ec6d0ebb3579" //sys_id of the Parent record
var actionParams = {
process_id: "322113"
}
var targetRecord = "af57a3418775e5105763ec6d0ebb356d"; //sys_id of the Target record
var originRecord = "26e78022c3d525104f1a722e3f40dd99"; //sys_id of the Origin record
var remedialActionEngine = new sn_reacf.RemedialActionEngine();
var response = remedialActionEngine.beginRemediation(remedialAction, parentTable, parentRecord, actionParams, targetRecord, originRecord);
gs.info(JSON.stringify(response));
Objeto de saída:
Case 1 :successful :
{
‘statusCode’: ‘successful’,
‘actionExecutionRequestId: ‘979b6060a5954300964fa3aa92874155’
}
Case 2 :Duplicate :
{
‘statusCode’: ‘duplicate_request,
‘actionExecutionRequestId’: ‘552c48888c033300964f4932b03eb092’,
‘parentRecord’ : ‘1a14620f973be110539e35d11153afc8’,
‘parentTable’: ‘incident’
}
Case 3 : Failed
{
‘statusCode’: ‘failed,
}
RemedialActionEngine - canCanCancel(cadeia de caracteres remedialActionExecution)
Este método é usado para verificar se o usuário atual pode ou não cancelar a execução da ação corretiva fornecida.
- Se o tipo de parâmetro for um objeto ou matriz, defina cada propriedade e seu tipo.
- Se o tipo de parâmetro for GlideRecord, forneça a tabela associada em sua solicitação.
| Nome | Tipo | Descrição |
|---|---|---|
| CorrectialActionExecution | String ou GlideRecord | Sys_id ou GlideRecord da tabela Execução da ação corretiva [sn_reacf_remedial_action_execution]. |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica se a solicitação de execução da ação corretiva pode ou não ser cancelada. Valores válidos:
|
O exemplo a seguir mostra como validar se o usuário atual pode cancelar qualquer execução de ação corretiva em seu estado atual.
var remedialActionExecutionId = "9ef9924c436521101a24ff53e9b8f2d2" //sys_id of sn_reacf_remedia_action_execution record
var remedialActionEngine = new sn_reacf.RemedialActionEngine();
var canCancel = remedialActionEngine.canCancel(remedialActionExecutionId)
gs.info("canCancel: " + canCancel);
Saída:
canCancel: true
RemedialActionEngine - cancelExecution (cadeia de caracteres remedialActionExecution)
Cancela uma solicitação de execução de ação corretiva, atualiza o registro de execução para o estado "Cancelado" e retorna verdadeiro após o sucesso.
- Se o tipo de parâmetro for um objeto ou matriz, defina cada propriedade e seu tipo.
- Se o tipo de parâmetro for GlideRecord, forneça a tabela associada em sua solicitação.
| Nome | Tipo | Descrição |
|---|---|---|
| CorrectialActionExecution | String ou GlideRecord | Sys_id ou GlideRecord da tabela Execução da ação corretiva [sn_reacf_remedial_action_execution]. |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica se a solicitação de execução da ação corretiva pode ou não ser cancelada. Valores válidos:
|
O exemplo a seguir mostra como cancelar qualquer execução de ação corretiva de seu estado atual.
var remedialActionExecutionId = "9ef9924c436521101a24ff53e9b8f2d2" //sys_id of sn_reacf_remedia_action_execution record
var remedialActionEngine = new sn_reacf.RemedialActionEngine();
var cancelExecution = remedialActionEngine.cancelExecution(remedialActionExecutionId)
gs.info(‘cancelExecution: ’ + cancelExecution);
Saída:
cancelExecution : true
RemedialActionEngine - executeRemedialAction (cadeia de caracteres remedialActionExecution)
Aciona qualquer execução de ação corretiva que foi iniciada e está no estado Pronto no momento. Este método inicia a Ação Direcionada (por exemplo, Ação de IC) e move o estado de execução da ação corretiva para "Em andamento".
| Nome | Tipo | Descrição |
|---|---|---|
| CorrectialActionExecution | String ou GlideRecord | Sys_id ou GlideRecord da tabela Execução da ação corretiva [sn_reacf_remedial_action_execution]. |
| Tipo | Descrição |
|---|---|
| Objeto | O objeto contém action_execution_table e action_execution_id da execução da ação corretiva. |
O exemplo a seguir mostra como executar qualquer ação corretiva.
var remedialActionExecution = "8ed58be387d2a5100295ebd73cbb35a3"; //Sys_id of the Remedial Action Execution record
var remedialActionEngine = new sn_reacf.RemedialActionEngine();
var response = remedialActionEngine.executeRemedialAction(remedialActionExecution);
gs.info("Response: " + JSON.stringify(response, null, 2));
Saída:
{
"action_execution_table": "sn_cimaf_action_request",
"action_execution_id": "2d7843a787d2a5100295ebd73cbb35d4"
}
RemedialActionEngine - getRemedialActionOutput (cadeia de caracteres remedialActionExecution)
Obtém o status de execução atual e a carga de saída da Ação de destino.
| Nome | Tipo | Descrição |
|---|---|---|
| CorrectialActionExecution | String ou GlideRecord | Sys_id ou GlideRecord da tabela Execução da ação corretiva [sn_reacf_remedial_action_execution]. |
| Tipo | Descrição |
|---|---|
| Objeto | O objeto contém o objeto de status com valor e valor de exibição do status da ação de destino e a matriz de carga com as saídas da ação de destino executadas como parte da execução da ação corretiva. Tipo de dados: Cadeia de caracteres |
O exemplo a seguir mostra como obter o status de execução atual e a carga de saída da Ação de destino.
var remedialActionExecution = "8ed58be387d2a5100295ebd73cbb35a3"; //sys_id of the Remedial Action Execution record
var remedialActionEngine = new sn_reacf.RemedialActionEngine();
var response = remedialActionEngine.getRemedialActionOutput(remedialActionExecution);
gs.info("Response: " + JSON.stringify(response, null, 2));
Saída:
{
"status": {
"value": "completed",
"displayValue": "Completed"
},
"payload": [
"{\"output\":\"SUCCESS: The process with PID 19604 has been terminated.\\r\\n\",\"cmd\":\"taskkill /pid 19604 /f\"}"
]
}
RemedialActionEngine - isApplicable (cadeia de caracteres remedialAction, cadeia de caracteres targetRecord)
Verifica a aplicabilidade de qualquer ação corretiva em relação a um registro de destino.
| Nome | Tipo | Descrição |
|---|---|---|
| Ação corretiva | String ou GlideRecord | Sys_id ou internal_name ou GlideRecord da tabela Ação corretiva [sn_reacf_remedial_action]. |
| targetRecord | String ou GlideRecord | Sys_id ou GlideRecord da tabela de destino configurada. |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica a aplicabilidade do registro de destino para a ação corretiva.
|
O exemplo a seguir mostra como verificar a aplicabilidade de qualquer ação corretiva em relação a um registro de destino.
var remedialAction = "9ef9924c436521101a24ff53e9b8f2d2"; //Sys_id of the Remedial Action Execution record
var targetRecord = "df3799a387a921100295ebd73cbb35c4"; //Sys_id of the Target Record
var remedialActionEngine = new sn_reacf.RemedialActionEngine();
var isApplicable = remedialActionEngine.isApplicable(remedialAction, targetRecord);
gs.info("Is applicable: " + isApplicable);
Saída:
Is applicable: true
RemedialActionEngine - isAuthorized(cadeia de caracteres remedialAction)
Verifica se o usuário está autorizado a executar a ação corretiva.
| Nome | Tipo | Descrição |
|---|---|---|
| Ação corretiva | String ou GlideRecord | Sys_id ou internal_name ou GlideRecord da tabela Ação corretiva [sn_reacf_remedial_action]. |
| Tipo | Descrição |
|---|---|
| Booliano | Sinalizador que indica o status de sucesso resultante da autorização do usuário.
|
O exemplo a seguir mostra como verificar a autorização para executar qualquer ação corretiva.
var actionSysId = "e62f550843e121101a24ff53e9b8f23b"; //Sys_id of the Action
var remedialActionEngine = new sn_reacf.RemedialActionEngine();
var isAuthorized = remedialActionEngine.isAuthorized(actionSysId);
gs.info("Is user authorized: " + isAuthorized);
Saída:
Is user authorized: true