RemedialActionEngine – Scoped
Die bereichsbezogene API „ RemedialActionEngine “ bietet allgemeine Methoden für die Arbeit mit Nachbesserungsaktionen.
- Starten Sie eine Nachbesserungsaktion
- Lösen Sie die Ausführung einer Nachbesserungsaktion aus
- Überprüfen Sie die Berechtigung des angemeldeten Benutzers zum Ausführen der Nachbesserungsaktion
- Überprüfen Sie die Anwendbarkeit der Nachbesserungsaktion für den Zieldatensatz
- Rufen Sie den aktuellen Ausführungsstatus und die Ausgabenutzlast der Zielaktion ab
Diese API erfordert die Store-Anwendung Remedial Actions Framework (com.snc.sn_reacf) und wird im Namespace sn_reacf bereitgestellt.
RemedialActionEngine – beginningRemediation (String remedialAction, String parentTable, String parentRecord, Object actionParams, String targetRecord, String OriginRecord)
Startet eine Nachbesserungsaktion aus dem übergeordneten Datensatz für einen Zieldatensatz. Diese Methode erstellt einen neuen Ausführungsdatensatz für Nachbesserungsaktionen 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 interner_Name oder GlideRecord der Tabelle „Femmleraktion“ [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 der Parameter für Nachbesserungsaktionen.
Hinweis: Der Parameterwert muss vom Typ sein, der in der Tabelle „Nachbesserungsaktionsparameter“ [sn_reacf_remedial_action_parameter] definiert ist. |
| targetRecord | Zeichenfolge oder GlideRecord | Optional. Sys_id oder GlideRecord der konfigurierten Zieltabelle. |
| OriginRecord | Zeichenfolge oder GlideRecord | Optional. Sys_id oder GlideRecord der Tabelle „Ursprung der Nachbesserungsaktion“ [sn_reacf_remedial_action_origin]. |
| Typ | Beschreibung |
|---|---|
| Objekt | |
| <Object>.statusCode | Statuscode der Ausführungsanforderung für Nachbesserungsaktion, z. B. „Erfolgreich“, „Duplicate_Request“ oder „Fehlgeschlagen“. |
| <Object>.actionAusführungRequestId | Sys_id des neuen Datensatzes für die Ausführung der Korrekturaktion oder des doppelten gleichzeitigen Datensatzes für die Ausführung der Korrekturaktion |
| <Object>.übergeordneterDatensatz | Sys_id des übergeordneten Datensatzes des doppelten Ausführungsdatensatzes der gleichzeitigen Nachbesserungsaktion. |
| <Object>.übergeordneteTabelle | Tabellenname des übergeordneten Datensatzes des doppelten Ausführungsdatensatzes der gleichzeitigen Korrekturaktion. |
Das folgende Beispiel zeigt, wie eine 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 Benutzer die Ausführung der angegebenen Nachbesserungsaktion 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 |
|---|---|---|
| remedialActionAusführung | Zeichenfolge oder GlideRecord | Sys_id oder GlideRecord der Tabelle „Ausführung der Nachbesserungsaktion“ [sn_reacf_remedial_action_execution]. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die angibt, ob die Anforderung zur Ausführung der Nachbesserungsaktion abgebrochen werden kann oder nicht. Gültige Werte:
|
Das folgende Beispiel zeigt, wie Sie überprüfen, ob der aktuelle Benutzer die Ausführung einer Nachbesserungsaktion 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 eine Anforderung zur Ausführung einer Nachbesserungsaktion 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 |
|---|---|---|
| remedialActionAusführung | Zeichenfolge oder GlideRecord | Sys_id oder GlideRecord der Tabelle „Ausführung der Nachbesserungsaktion“ [sn_reacf_remedial_action_execution]. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die angibt, ob die Anforderung zur Ausführung der Nachbesserungsaktion abgebrochen werden kann oder nicht. Gültige Werte:
|
Das folgende Beispiel zeigt, wie die Ausführung einer Nachbesserungsaktion in Bezug auf den aktuellen Status abgebrochen wird.
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 (String remedialActionExecution)
Löst eine Ausführung einer Nachbesserungsaktion aus, die gestartet wurde und sich derzeit im Status „Bereit“ befindet. Diese Methode startet die Zielaktion (z. B. CI-Aktion) und verschiebt den Ausführungsstatus der Nachbesserungsaktion in „In Bearbeitung“.
| Name | Typ | Beschreibung |
|---|---|---|
| remedialActionAusführung | Zeichenfolge oder GlideRecord | Sys_id oder GlideRecord der Tabelle „Ausführung der Nachbesserungsaktion“ [sn_reacf_remedial_action_execution]. |
| Typ | Beschreibung |
|---|---|
| Objekt | Objekt enthält „action_execution_table“ und „action_execution_id“ der Ausführung der Nachbesserungsaktion. |
Das folgende Beispiel zeigt, wie eine 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 (String remedialActionExecution)
Ruft den aktuellen Ausführungsstatus und die Ausgabenutzlast der Zielaktion ab.
| Name | Typ | Beschreibung |
|---|---|---|
| remedialActionAusführung | Zeichenfolge oder GlideRecord | Sys_id oder GlideRecord der Tabelle „Ausführung der Nachbesserungsaktion“ [sn_reacf_remedial_action_execution]. |
| Typ | Beschreibung |
|---|---|
| Objekt | Das Objekt enthält das Statusobjekt mit dem Wert und den Anzeigewert des Zielaktionsstatus sowie ein Nutzlast-Array mit den Zielaktionsausgaben, die als Teil der Ausführung der Nachbesserungsaktion ausgeführt werden. Datentyp: Zeichenfolge |
Das folgende Beispiel zeigt, wie der aktuelle Ausführungsstatus und die Ausgabenutzlast der Zielaktion abgerufen werden.
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 (String remedialAction, String 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 Nachbesserungsaktion 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)
Überprüft, ob der Benutzer zum Ausführen der Nachbesserungsaktion berechtigt ist.
| Name | Typ | Beschreibung |
|---|---|---|
| remedialAction | Zeichenfolge oder GlideRecord | Sys_id oder interner_name oder GlideRecord der Tabelle „Nachbesserungsaktion“ [sn_reacf_remedial_action]. |
| Typ | Beschreibung |
|---|---|
| Boolean | Kennzeichnung, die den resultierenden Erfolgsstatus der Autorisierung des Benutzers angibt.
|
Das folgende Beispiel zeigt, wie die Autorisierung zum Ausführen einer Nachbesserungsaktion ü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