Please use the following system variables to create an Alert Template with custom content. If you need help to configure your template, please create a support ticket.

Description Variable
Monitoring Device Name
@Model.RootResponse.Device.Name
Notification Type

Possible values:

  • OK
  • Error
@Model.Type
Monitoring Task Name
@Model.RootResponse.Task?.Name

The value is empty for Uptime/downtime HTTP-based monitoring.

Monitoring Target Name
@Model.FirstErrorResponse?.Task?.Name

The name of the target that generated the error

Target URL
@Model.FirstErrorResponse?.Uri
Monitoring Task Name in Online Report
@Model.FirstErrorResponse?.Name

For HTTP-based uptime monitoring, this is equal to the target name.

Web Element URL that generated an error
@Model.FirstErrorResponse?.Target

For HTTP-based uptime monitoring, this is equal to the target URL.

Monitoring Location Name
@Model.RootResponse.Monitor.Name
Error State Start Time
@Model.CurrentState.StartTime
Previous State Start Time
@Model.CurrentState.PreviousState?.StartTime
Notification Time
@Model.RootResponse.Start
First Detected Error Type
@(Model.FirstErrorResponse!=null && Model.FirstErrorResponse?.AllErrors!=null && Model.FirstErrorResponse.AllErrors.Length > 0 ? Model.FirstErrorResponse.AllErrors[0].ErrorType : "")
First Detected Error Code
@(Model.FirstErrorResponse!=null && Model.FirstErrorResponse?.AllErrors!=null && Model.FirstErrorResponse.AllErrors.Length > 0 ? Model.FirstErrorResponse.AllErrors[0].ErrorCode : "")
First Detected Error Description
@(Model.FirstErrorResponse!=null && Model.FirstErrorResponse?.AllErrors!=null && Model.FirstErrorResponse.AllErrors.Length > 0 ? Model.FirstErrorResponse.AllErrors[0].Reason : "")
Full List of Errors
@if(Model.FirstErrorResponse != null && Model.FirstErrorResponse.AllErrors != null) {
@:"ALLErrors":[
@foreach(var error in Model.FirstErrorResponse.AllErrors) {
@:{ "ErrorType": "@error.Name", "ErrorCode": "@error.ErrorCode", "Reason" : "@error.Reason" }
}
@:]
}
DNS Trace Link

(if applicable)

@string.Format("{0}/DnsTree.aspx?id={1}", Model.DMUserLink, Model.RootResponse.ID)

May take time to generate.

Network Response Report Link

(if applicable)

@string.Format("{0}/DnsTree.aspx?id={1}", Model.DMUserLink, Model.FirstErrorResponse?.ID)
Traceroute History Link

(if applicable)

@if(Model.FirstErrorResponse != null && !string.IsNullOrEmpty(Model.FirstErrorResponse.Uri)) {
@:"TraceRouteLink" : "string.Format(\"{0}/TraceRouteHistory.aspx?FP={1}\", Model.DMUserLink, Uri.EscapeDataString(Model.GetTraceLinkParam(Model.FirstErrorResponse.SV_DurationMS, Model.FirstErrorResponse.Monitor.ID, Model.FirstErrorResponse.Start, Model.FirstErrorResponse.Uri)))",
}
Response Waterfall Chart Link
@Model.WaterFallLink?id=@Model.RootResponse.ID
Online Report Link
@Model.DMUserLink/OnlineReporting.aspx?CUID=@Model.OnlineReportCUID
First Tag Name
@(Model.RootResponse.Device.Tags!=null && Model.RootResponse.Device.Tags.Count > 0 ? Model.RootResponse.Device.Tags[0].Name : "")
First Tag Color
@(Model.RootResponse.Device.Tags!=null && Model.RootResponse.Device.Tags.Count > 0 ? Model.RootResponse.Device.Tags[0].Color : "")
First Tag Text Color
@(Model.RootResponse.Device.Tags!=null && Model.RootResponse.Device.Tags.Count > 0 ? Model.RootResponse.Device.Tags[0].TextColor : "")
Full Tag List
@if(Model.RootResponse.Device.Tags != null && Model.RootResponse.Device.Tags.Count > 0) {
@:"DeviceTags":[
@foreach(var tag in Model.RootResponse.Device.Tags) {
@:{ "Name": "@tag.Name", "Color": "@tag.Color", "TextColor" : "@tag.TextColor" }
}
@:]
}