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