RemedialActionEngine – Umfang
Die RemedialActionEngine Die API bietet Methoden für die Arbeit mit Korrekturaktionen.
- Starten Sie eine Korrekturaktion.
- Löst die Ausführung einer Korrekturaktion aus.
- Überprüfen Sie die Autorisierung des angemeldeten Anwenders, um die Korrekturaktion auszuführen.
- Überprüfen Sie die Anwendbarkeit der Nachbesserungsaktion für den Zieldatensatz.
- Ruft den aktuellen Ausführungsstatus und die Ausgabenutzlast der Zielaktion ab.
Diese API erfordert die Store-Anwendung „Framework für Korrekturaktionen“ (com.snc.sn_reacf) und wird in bereitgestellt sn_Reacf Namespace.
RemedialActionEngine – beginRemediation (Zeichenfolge RemedialAction, Zeichenfolge parentTable, Zeichenfolge parentRecord, Objekt actionParams, Zeichenfolge targetRecord, Zeichenfolge „OriginalDatensatz“)
Startet jede Korrekturaktion aus dem übergeordneten Datensatz für einen Zieldatensatz. Diese Methode erstellt einen neuen Ausführungsdatensatz für eine Korrekturaktion im Status „bereit“.
- Wenn der Parametertyp ein Objekt oder Array ist, definieren Sie jede Eigenschaft und ihren Typ.
- Wenn der Parametertyp GlideRecord ist, geben Sie die zugehörige Tabelle in Ihrer Anforderung an.
| Name | Typ | Beschreibung |
|---|---|---|
| RemedialAction | Zeichenfolge oder GlideRecord | SYS_ID oder internal_Name oder GlideRecord der Tabelle „Frauenaktion“ [sn_reacf_Remedial_action]. |
| parentTable | Zeichenfolge | Tabellenname des übergeordneten Datensatzes. |
| parentRecord | Zeichenfolge | SYS_ID des übergeordneten Datensatzes. |
| actionParams | Objekt | Optional. Zuordnung der Parameternamen und Werte der Korrekturaktion.
Hinweis: Der Parameterwert muss vom Typ sein, der in der Tabelle „Parameter der Korrekturaktion“ [sn_reacf_Remedial_action_Parameter] definiert ist. |
| targetRecord | Zeichenfolge oder GlideRecord | Optional. SYS_ID oder GlideRecord der konfigurierten Zieltabelle. |
| Originaldatensatz | Zeichenfolge oder GlideRecord | Optional. SYS_ID oder GlideRecord der Tabelle „Ursprung der Korrekturaktion“ [sn_reacf_Remedial_action_origin]. |
| Typ | Beschreibung |
|---|---|
| Objekt | |
| <Object>.StatusCode | Statuscode der Anforderung zur Ausführung der Korrekturaktion, z. B. „Success“, „duplicate_Request“ oder „failed“ |
| <Object>.ActionExecutionRequestId | SYS_ID des neuen Datensatzes der Ausführung der Korrekturaktion oder des doppelten Datensatzes der Ausführung der gleichzeitigen Korrekturaktion |
| <Object>.ParentRecord | SYS_ID des übergeordneten Datensatzes des doppelten gleichzeitigen Ausführungsdatensatzes der Korrekturaktion. |
| <Object>.ParentTable | Tabellenname des übergeordneten Datensatzes des doppelten Datensatzes der gleichzeitigen Ausführung der Korrekturaktion. |
Das folgende Beispiel zeigt, wie eine Korrekturaktion gestartet wird. Hier verwendet die Nachbesserungsaktion intern eine CI-Aktion, um einen Prozess für ein CI zu beenden.
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));
Ausgabeobjekt:
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 – canCancel(Zeichenfolge remedialActionExecution)
Diese Methode wird verwendet, um zu überprüfen, ob der aktuelle Anwender die Ausführung der angegebenen Korrekturaktion abbrechen kann oder nicht.
- Wenn der Parametertyp ein Objekt oder Array ist, definieren Sie jede Eigenschaft und ihren Typ.
- Wenn der Parametertyp GlideRecord ist, geben Sie die zugehörige Tabelle in Ihrer Anforderung an.
| Name | Typ | Beschreibung |
|---|---|---|
| RemedialActionExecution | Zeichenfolge oder GlideRecord | SYS_ID oder GlideRecord der Tabelle „Ausführung der Korrekturaktion“ [sn_reacf_Remedial_action_Execution]. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die angibt, ob die Anforderung zur Ausführung der Korrekturaktion abgebrochen werden kann oder nicht. Gültige Werte:
|
Das folgende Beispiel zeigt, wie überprüft werden kann, ob der aktuelle Anwender die Ausführung einer Korrekturaktion im aktuellen Status abbrechen kann.
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);
Ausgabe:
canCancel: true
RemedialActionEngine – cancelExecution(Zeichenfolge remedialActionExecution)
Bricht eine Anforderung zur Ausführung einer Korrekturaktion ab, aktualisiert dann den Ausführungsdatensatz auf den Status „Abgebrochen“ und gibt bei Erfolg „wahr“ zurück.
- Wenn der Parametertyp ein Objekt oder Array ist, definieren Sie jede Eigenschaft und ihren Typ.
- Wenn der Parametertyp GlideRecord ist, geben Sie die zugehörige Tabelle in Ihrer Anforderung an.
| Name | Typ | Beschreibung |
|---|---|---|
| RemedialActionExecution | Zeichenfolge oder GlideRecord | SYS_ID oder GlideRecord der Tabelle „Ausführung der Korrekturaktion“ [sn_reacf_Remedial_action_Execution]. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die angibt, ob die Anforderung zur Ausführung der Korrekturaktion abgebrochen werden kann oder nicht. Gültige Werte:
|
Das folgende Beispiel zeigt, wie Sie die Ausführung von Korrekturaktionen im aktuellen Status abbrechen.
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);
Ausgabe:
cancelExecution : true
RemedialActionEngine – executeRemedialAction (Zeichenfolge remedialActionExecution)
Löst eine Ausführung der Korrekturaktion aus, die gestartet wurde und sich derzeit im Status „bereit“ befindet. Diese Methode startet die gezielte Aktion (z. B. CI-Aktion) und verschiebt den Ausführungsstatus der Korrekturaktion in „in Bearbeitung“.
| Name | Typ | Beschreibung |
|---|---|---|
| RemedialActionExecution | Zeichenfolge oder GlideRecord | SYS_ID oder GlideRecord der Tabelle „Ausführung der Korrekturaktion“ [sn_reacf_Remedial_action_Execution]. |
| Typ | Beschreibung |
|---|---|
| Objekt | Das Objekt enthält Action_Execution_table und action_Execution_ID der Ausführung der Korrekturaktion. |
Das folgende Beispiel zeigt, wie Korrekturaktionen ausgeführt werden.
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));
Ausgabe:
{
"action_execution_table": "sn_cimaf_action_request",
"action_execution_id": "2d7843a787d2a5100295ebd73cbb35d4"
}
RemedialActionEngine – getRemedialActionOutput (Zeichenfolge „remedialActionExecution“)
Ruft den aktuellen Ausführungsstatus und die Ausgabenutzlast der Zielaktion ab.
| Name | Typ | Beschreibung |
|---|---|---|
| RemedialActionExecution | Zeichenfolge oder GlideRecord | SYS_ID oder GlideRecord der Tabelle „Ausführung der Korrekturaktion“ [sn_reacf_Remedial_action_Execution]. |
| Typ | Beschreibung |
|---|---|
| Objekt | Das Objekt enthält das Statusobjekt mit dem Wert und dem Anzeigewert des Status der Zielaktion und das Nutzlast-Array mit den Ausgaben der Zielaktion, die als Teil der Ausführung der Korrekturaktion ausgeführt werden. Datentyp: Zeichenfolge |
Das folgende Beispiel zeigt, wie Sie den aktuellen Ausführungsstatus und die Ausgabenutzlast der Zielaktion abrufen.
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));
Ausgabe:
{
"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 (Zeichenfolge RemedialAction, Zeichenfolge targetRecord)
Überprüft die Anwendbarkeit von Korrekturaktionen für einen Zieldatensatz.
| Name | Typ | Beschreibung |
|---|---|---|
| RemedialAction | Zeichenfolge oder GlideRecord | SYS_ID oder internal_Name oder GlideRecord der Tabelle „Nachbesserungsaktion“ [sn_reacf_Remedial_action]. |
| targetRecord | Zeichenfolge oder GlideRecord | SYS_ID oder GlideRecord der konfigurierten Zieltabelle. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die die Anwendbarkeit des Zieldatensatzes für die Korrekturaktion angibt.
|
Das folgende Beispiel zeigt, wie die Anwendbarkeit einer Korrekturaktion für einen Zieldatensatz überprüft wird.
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);
Ausgabe:
Is applicable: true
RemedialActionEngine – IsAuthorized(Zeichenfolge RemedialAction)
Überprüft, ob der Anwender berechtigt ist, die Korrekturaktion auszuführen.
| Name | Typ | Beschreibung |
|---|---|---|
| RemedialAction | Zeichenfolge oder GlideRecord | SYS_ID oder internal_Name oder GlideRecord der Tabelle „Nachbesserungsaktion“ [sn_reacf_Remedial_action]. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die den resultierenden Erfolgsstatus der Autorisierung des Anwenders angibt.
|
Das folgende Beispiel zeigt, wie die Autorisierung zum Ausführen von Korrekturaktionen überprüft wird.
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);
Ausgabe:
Is user authorized: true