将 ServiceDesk Plus 与 PRTG 集成

将 ServiceDesk Plus 与 PRTG 集成

同时使用 ServiceDesk Plus 和 PRTG 的组织现在可以集成到 ServiceDesk Plus 中,以便在 PRTG 上发出警报时自动记录事件。重置警报时,记录的事件将被关闭。

请注意,目前只有云版 ServiceDesk Plus 支持这些功能。不过,内部部署版本不久也将支持这些功能。

 

主要特点
 

  • 触发警报时自动记录事件。

  • 警报重置后关闭工单。

 

下面的截图显示了为警报创建的事件和警报清除后关闭的事件。




 

一旦 PRTG 中的警报被重置,事件将在 SDP 中关闭,并附注 "警报已在 PRTG 中清除,因此请求已关闭"。

 

配置集成

自动记录警报事件

要在 PRTG 中每次触发警报时自动将事件记录到 ServiceDesk Plus 中,您需要在 PRTG 中配置一次以下内容。

从 "设置">"帐户设置">"通知模板 "中创建通知模板,并将通知模板与相应的 "设备">"通知触发器 "部分关联。

下面是选择了发送电子邮件操作的通知模板示例。ServiceDesk Plus 的电子邮件命令功能用于捕获警报详细信息。

必须在 ServiceDesk Plus 中启用电子邮件命令功能,并根据电子邮件命令配置使用分隔符。

 



 

在 "格式">"自定义文本 "部分,复制以下给定文本并保存通知模板。

 @@SUBJECT=[%sitename] %device %name %status %down (%message)@@

@@UDF_CHAR153=%sensorid@@

@@REQUESTTEMPLATE=PRTG Incidents@@

输入创建警报工单的模板名称。请在特定模板中添加 "PRTG 警报标识号 "附加字段,因为该附加字段将用于存储警报传感器 ID。在 PRTG > 自定义文本部分使用附加字段的键值。(字段密钥可在设置 > 自定义 > 附加字段下确定)

现在将此通知模板与通知触发器部分下的相应根/设备关联,如下所示。

 

 

 

警报解除后关闭请求

要在 PRTG 中关闭相应警报时关闭 ServiceDesk Plus 中的事件,请在 ServiceDesk Plus 和 PRTG 中配置以下设置。

ServiceDesk Plus 配置

配置两个业务规则,在警报清除时处理工单关闭。

  • 在 ServiceDesk Plus 中,转到设置 > 自动化 > 业务规则 > 新业务规则。

    请配置名称、条件和其他选项,如下图所示。

 


 

  • 在 "动作"下选择 "自定义动作",然后选择 "自定义功能",复制下面提到的代码并保存页面。此自定义函数关闭事件并附带说明。

 

 

 

 

/*Please provide the udf key of the alert identification number*/

alertIdentificationUdfKey = "udf_char153";

/*Please provide the description of the note content*/

noteDescription = "The alert has been cleared in PRTG, hence closing the request";

deviceId = requestObj.get("udf_fields").get(alertIdentificationUdfKey);

 

requests = zoho.sdp.invokeurl

[

 url :"/app/" + context.get("instance") + "/api/v3/requests"

 type :GET

 parameters:{"input_data":{"list_info":{"search_criteria":{{"field":"udf_fields." + alertIdentificationUdfKey,"condition":"contains","values":{deviceId},"logical_operator":"AND"},{"field":"status.in_progress","condition":"is","value":true,"logical_operator":"AND"}},"row_count":1,"sort_fields":{{"field":"display_id","order":"desc"}}}}}

];

info requests;

if(requests.get("requests") != null && requests.get("requests").size() > 0)

{

 requestId = requests.get("requests").get(0).get("id");

 closeRequest = zoho.sdp.invokeurl

 [

  url :"/app/" + context.get("instance") + "/api/v3/requests/" + requestId

  type :PUT

  parameters:{"input_data":{"request":{"status":{"name":"Closed"}}}}

 ];

 if(closeRequest.get("request") != null)

 {

  addNote = zoho.sdp.invokeurl

  [

   url :"/app/" + context.get("instance") + "/api/v3/requests/" + requestId + "/notes"

   type :POST

   parameters:{"input_data":{"request_note":{"description":noteDescription}}}

  ];

 }

}

return requestObj;

 

 

 

现在配置另一个业务规则,如下图所示,然后保存页面。

 


 

 

PRTG 配置

在 PRTG 中,从 "设置">"帐户设置">"通知模板 "为关闭警报工单创建一个通知模板,并将通知模板关联到相应的设备>"通知触发器 "部分。

下面是一个通知模板示例,其中选择了发送电子邮件操作。ServiceDesk Plus 的电子邮件命令功能用于捕获警报详细信息。



 

在格式 > 自定义文本部分,复制下面提到的文本并保存通知模板。

 

 @@SUBJECT=[%sitename] %device %name %status %down (%message)CLOSURE@@

@@UDF_CHAR153=%sensorid@@ 

 @@REQUESTTEMPLATE=PRTG Incidents@@ 

 

现在将此通知模板与相应的root或设备关联起来 > 通知触发器,如下图所示:

 

 

注:警报实际重置后,事件将关闭,并附注 "警报已在 PRTG 中清除,因此关闭请求"。如果工单仍处于打开状态,请检查您是否配置了请求关闭规则/请求生命周期。