Table of Contents
-
Overview
-
Template Management
- Template Placeholder Variables
Overview
Notification Templates are ways to customize how CloudMonix sends notifications. Specifically, Notification Templates govern the content of what text is published when a notification is sent to a specific endpoint. CloudMonix sends notifications when alerts are raised or cleared, and when actions are requested, executed, or fail.
While most common type of a notification is an email, CloudMonix supports a wide variety of notification providers thru its third-party integrations. Learn more about how to configure Integrations here.
Notifications published and distributed by CloudMonix have pre-defined default templates, so customization is only necessary when specific requirements exist.
Specifically, it is expected that notifications send thru Webhook integration will likely need their XML or JSON webhook payload customized thru the Notification Templates. It is also assumed that companies that need to customize text of alerts for their specific customers, users, etc. may wish to utilize Notification Templates feature of CloudMonix.
Template Management
Notification Templates screen allows users to view, define and manage Notification Templates. Notification templates can be utilized by Notification rules. Learn more about Notification Rules here.
Each template is a text-based string with placeholders for variables that CloudMonix knows how to replace. Templates are specific by notification reason (Alert, Action, or Scaling Action) and by their notification type (ie: target endpoint like Email, Webhooks, Twilio, Slack, Hipchat, etc).
When defining a new Notification Template, first choose appropriate Notification Reason and Type. Screen will populate with default text that CloudMonix uses when no template is specified. Modify the text and save as necessary. Default button will reset the body of template to default value. Test button will ensure that any placeholder fields that are specified can be replaced by CloudMonix at runtime.
Special Notes
-
CloudMonix will escape string data inside placeholder variables. However, escaping any custom text specified in the template itself is responsibility of the user
-
CloudMonix does NOT support any condition replacement logic within templates. Only a string-replacing mechanism is performed at this time
Template Placeholder Variables
The following is a complete list of all placeholder variables. In order for placeholder variable to be replaced, it needs to be surrounded by curly braces, like so: {variable-name}
Name | Type | Applies to Alerts | Applies to Actions | Applies to Scaling Actions | Description |
SubscriptionId | guid | Yes | Yes | Yes | Unique ID of overall parent Subscription entity that manages 1 or more CloudMonix accounts. |
AccountId | guid | Yes | Yes | Yes | Unique ID of CloudMonix account. FYI: value of AccountId can also be observed on Account Information screen |
AccountName | string | Yes | Yes | Yes | Name of CloudMonix account. |
ResourceId | guid | Yes | Yes | Yes | Unique ID of CloudMonix resource that owns the notification published |
ResourceName | string | Yes | Yes | Yes | Name of CloudMonix resource that owns the notification published |
ResourceDescription | string | Yes | Yes | Yes | Additional context information about resource that owns the notification published (usually its basic connection information as managed by its cloud/host provider) |
ResourceDescriptionFormat | string | Yes | Yes | Yes | Same as ResourceDescription but with dash ("-") prepended if necessary |
CheckId | guid | Yes |
Yes | Yes | Unique ID of the alert or action that caused notification. This value will be the same across multiple calls for the same Alert On/Off notifications, or for the same Action Executed/Error'ed/Requested notifications |
CheckName | string | Yes | Yes | Yes | Name of the alert or action that caused notification. |
InstanceName | string | Yes | Yes | For multi-instance resources, such as Azure Cloud Roles, InstanceName will contain a name of the instance that caused the alert or action to be fired. Otherwise, InstanceName is an empty string |
|
InstanceNameFormat | string | Yes | Yes | Same as InstanceName but with dash ("-") prepended if necessary | |
SeverityName | string | Yes | Yes | Yes | Severity of alert or action that caused notification. Possible values are: Verbose, Information, Warning, Error and Critical |
CheckValue | string | Yes | Value of alert: On or Off | ||
ActionStatus | string | Yes | Yes | State of the executing action: Requested, Executed, or Error | |
CheckTime | datetime | Yes | Yes | Yes | Check time (in UTC) of the monitoring cycle. Equivalent to CheckTimeUtc system variable available in Alert/Action expressions |
OriginalScaleSize | int | Yes | The "scale from" value for given Scaling action | ||
TargetScaleSize | int | Yes | The "scale to" value for a given Scaling action | ||
EvaluationData | string | Yes | Yes | Yes | Expression and metric values that caused alert or action to get published/raised |
ExtendedInfo | string | Yes | Yes | Yes | Specific information that was gathered during the monitoring cycle by CloudMonix that maybe useful for debugging purposes |
CurrentDateTime | datetime | Yes | Yes | Yes | Precise timestamp (in UTC) as to when action/alert notification is being published to its endpoint. This timestamp maybe slightly after CheckTime, as CheckTime is captured during the start of monitoring cycle, while CurrentDateTime is captured near its end. |
Link | string | Yes | Yes | Yes | URL to the historical dashboard tuned to CheckTime. By using this URL, user is able to see their CloudMonix dashboards precisely at the time when alert/action were requested. |
CredentialName | string | Yes | Yes | Yes | Name of the credential associated with the resource |