RemedialActionEngine : Bereichsbezogen
Die RemedialActionEngine- API bietet Methoden zum Arbeiten mit Korrekturaktionen.
- Ermöglicht das Starten einer Korrekturaktion.
- Lösen Sie die Ausführung einer Nachbesserungsaktion aus.
- Überprüfen Sie die Berechtigung des angemeldeten Anwenders zum Ausführen der Korrekturaktion.
- Überprüft die Anwendbarkeit der Nachbesserungsaktion für den Zieldatensatz.
- Rufen Sie den aktuellen Ausführungsstatus und die Ausgabenutzlast der gezielten Aktion ab.
Diese API erfordert die Store-Anwendung „Framework für Korrekturaktionen“ (com.snc.sn_reacf) und wird im Namespace sn_reacf bereitgestellt.
RemedialActionEngine – beginnenRemediation (Zeichenfolge remedialAction, Zeichenfolge parentTable, Zeichenfolge parentRecord, Objekt actionParams, Zeichenfolge targetRecord, Zeichenfolge originRecord)
Startet eine beliebige Korrekturaktion aus dem übergeordneten Datensatz für einen Zieldatensatz. Diese Methode erstellt einen neuen Datensatz für die Ausführung von Korrekturaktionen 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 „Femedial-Aktion“ [sn_reacf_remedial_action]. |
| parentTable | Zeichenfolge | Tabellenname des übergeordneten Datensatzes. |
| parentRecord | Zeichenfolge | Sys_id des übergeordneten Datensatzes. |
| actionParams | Objekt | Optional. Zuordnung der Namen und Werte des Parameters für Nachbesserungsaktionen.
Hinweis: Der Parameterwert muss den Typ haben, der in der Parametertabelle der Korrekturaktion [sn_reacf_remedial_action_parameter] definiert ist. |
| targetRecord | Zeichenfolge oder GlideRecord | Optional. Sys_id oder GlideRecord der konfigurierten Zieltabelle. |
| Ursprungsdatensatz | 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 Ausführungsanforderung der Korrekturaktion, z. B. erfolgreich, „duplicate_request“ oder fehlgeschlagen |
| <Object>.actionExecutionRequestId | Sys_id des neuen Datensatzes der Ausführung der Korrekturaktion oder eines duplizierten Datensatzes der gleichzeitigen Ausführung einer Korrekturaktion |
| <Object>.parentRecord | Sys_id des übergeordneten Datensatzes des doppelten Datensatzes der gleichzeitigen Ausführung der Korrekturaktion. |
| <Object>.parentTable | Tabellenname des übergeordneten Datensatzes des doppelten Datensatzes der gleichzeitigen Ausführung der Korrekturaktion. |
Das folgende Beispiel zeigt, wie eine beliebige Nachbesserungsaktion 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(String remedialActionExecution)
Diese Methode wird verwendet, um zu überprüfen, ob der aktuelle Anwender die Ausführung der angegebenen Korrekturaktion abbrechen kann.
- 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 Ausführung der Anforderung für die Korrekturaktion abgebrochen werden kann oder nicht. Gültige Werte:
|
Das folgende Beispiel zeigt, wie überprüft wird, ob der aktuelle Anwender die Ausführung von Korrekturaktionen in seinem 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(String remedialActionExecution)
Bricht die Ausführung einer Anforderung für eine Korrekturaktion ab, aktualisiert 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 Ausführung der Anforderung für die Korrekturaktion abgebrochen werden kann oder nicht. Gültige Werte:
|
Das folgende Beispiel zeigt, wie Sie die Ausführung einer Korrekturaktion aus ihrem 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 die Ausführung aller Korrekturaktionen aus, die gestartet wurden und sich derzeit im Status „Bereit“ befinden. Diese Methode startet die Zielaktion (z. B. CI-Aktion) und ändert 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 | Objekt mit „action_execution_table“ und „action_execution_id“ der Ausführung der Nachbesserungsaktion. |
Das folgende Beispiel zeigt, wie eine beliebige Nachbesserungsaktion ausgeführt wird.
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 | Objekt enthält das Statusobjekt mit dem Wert und dem Anzeigewert des Zielaktionsstatus sowie ein Nutzlast-Array mit den Zielaktionsausgaben, 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 einer Nachbesserungsaktion 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 Nachbesserungsaktion 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(String remedialAction)
Prüft, ob der Anwender berechtigt ist, die Nachbesserungsaktion auszuführen.
| Name | Typ | Beschreibung |
|---|---|---|
| remedialAction | Zeichenfolge oder GlideRecord | Sys_id oder internal_name oder GlideRecord der Tabelle „Korrekturaktion“ [sn_reacf_remedial_action]. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die den resultierenden Erfolgsstatus der Autorisierung des Anwenders angibt.
|
Das folgende Beispiel zeigt, wie Sie die Berechtigung zum Ausführen einer Korrekturaktion überprüfen.
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