- 11 minutes to read

Managing the E-mail Alarm plugin

Send alerts from Nodinite as e-mail

The e-mail Alarm Plugin sends an email when the status of Monitor Views changes, according to your configuration, for Users with the email property set.

Emails can be sent both when errors occur and when issues are resolved (positive and negative ACKs), ensuring your team is always informed.

Warning

OAuth/OpenID Connect Authentication Mode Limitation: The Email alarm plugin requires user email addresses to be available in Nodinite user profiles. When using OAuth 2.0 / OpenID Connect authentication (Azure AD/Entra ID), user email addresses are not automatically populated in Nodinite user records. This alarm plugin is only fully functional with Kerberos/Windows authentication mode, where email addresses are retrieved from Active Directory.

For OAuth/OpenID environments, use the E-mail with options alarm plugin instead, which allows you to specify email recipients directly without relying on user profile email addresses. Alternative notification methods include Microsoft Teams or webhooks. See Install Nodinite v7 - OpenID for authentication mode details.

Tip

You should use the E-mail with options if possible, as that Alarm Plugin provides more advanced features and flexibility.

graph LR alert(fa:fa-bolt Alert)--> |Users with email configured| mail[fa:fa-envelope Mail]

The e-mail Alarm Plugin comes pre-installed with the Nodinite Core Services.


Configuring the Email Alarm Plugin

There are two ways to configure the Alarm Plugin:

  1. Global configuration
  2. Specific Settings in Monitor Views

global-configuration

Configure the Alarm Plugin using Nodinite's Web Client by navigating to "Administration" > "Settings" > "Alarm Plugins" and selecting "Email". Review the Add or manage Alarm Plugin for generic details.

Global Configuration tab (6.1.0.38)
Example of the global configuration for the Email Alarm Plugin.

There are three different tabs with settings:

  1. General
  2. Recipients
  3. SMTP Options

Basic tab

In the General tab, the System Administrator can set essential properties.
Basic tab (6.1.0.38)

Property Description
Web Client URL The URL for end-users to access your Nodinite Web Client instance
Subject The subject pattern of the email. Available variables: , , , , , , and

Recipients tab

In the Recipients tab, the System Administrator can enter the list of recipients.

Recipients tab (6.1.0.38)

Important

User Email Addresses Required: Email alarms are sent to Users configured in Monitor Views who have the MailAddress property populated. In Kerberos/Windows authentication mode, email addresses are automatically retrieved from Active Directory. In OAuth 2.0 / OpenID Connect mode (Azure AD/Entra ID), email addresses are not automatically available in user records, making this alarm plugin ineffective.

If using OAuth/OpenID authentication, switch to the E-mail with options alarm plugin, which allows you to specify recipient email addresses directly in the alarm configuration, independent of user profile data. See authentication mode comparison for details.

Property Description
Test Mail To The email address to use as the receiver for test mails
From The email address to use as the sender for mail alarms

SMTP Options tab

Configure the essential SMTP settings from within the Server tab:
SMTP Options tab (6.1.0.38)

Property Description
Server DNS name or IP address of the SMTP server
Port The port used to connect to the SMTP server. Default is 25; for encrypted connections, 587 or 465 are commonly used
Enable SSL Whether to use an SSL connection to the SMTP server
Use Authentication Whether the server requires authentication to send emails
User name User name for SMTP authentication
Password Password for SMTP authentication

Specific Settings in Monitor Views New 7.x

From any Monitor View where the Email Alarm Plugin is used, you can create reusable alarm entries that override the global settings. Each alarm entry inherits settings from the global Email plugin and allows you to customize specific sections using override checkboxes.

Specific Settings
Example: Monitor View-specific Email alarm entry showing override options.

Override Basic Options

Check the Override Basic options checkbox to customize basic settings for this specific alarm entry.

Override Basic Options
Example: "Override Basic options" checkbox at the top of the Basic tab.

When override checkbox is CHECKED:

Property Description
Web Client URL Custom URL for the Web Client (used to generate links in emails)
Subject Custom email subject for this alarm entry. Variables like {Customer}, {Environment}, {Status} can be used
From Custom "From" email address for this alarm entry (e.g., alerts@acme.com)

Override SMTP Options

Check the Override SMTP Settings options checkbox to use a custom SMTP server for this specific alarm entry.

Override SMTP Options
Example: "Override SMTP Settings options" checkbox. When checked, use custom SMTP server settings.

When override checkbox is CHECKED:

  • Server – Custom SMTP server hostname or IP
  • Port – Custom SMTP port (25, 587, 465)
  • Enable SSL – Enable/disable SSL for this entry
  • Use Authentication – Enable/disable SMTP authentication
  • Credentials – Username/password for SMTP authentication

Override Monitoring State Options

Check the Override Monitoring state options checkbox to customize which monitoring states trigger email alerts for this specific entry.

Override Monitoring State Options
Example: "Override Monitoring state options" checkbox. When checked, customize when email alarms fire.

When override checkbox is CHECKED:

  • Trigger on changed Resource state – Send alarm when individual resource changes state (vs Monitor View state)
  • Send Alarm on OK – Send email when Monitor View enters OK state
  • Send Alarm on Warning – Send email when Monitor View enters Warning state
  • Send Alarm on Error – Send email when Monitor View enters Error state
  • Send Alarm on Unavailable – Send email when Monitor View enters Unavailable state
  • Send Alarm on Connection Error – Send email when Monitor View enters Connection Error state

Override Recurrence

Check the Enable Recurrence checkbox to configure recurring email alerts for ongoing issues.

Override Recurrence
Example: Recurrence override settings for the Email Alarm Plugin.

When override checkbox is CHECKED:
Configure different recurrence intervals for each monitoring state (OK, Warning, Error, Unavailable, Connection Error) to ensure persistent problems generate recurring email alerts.

Learn more about configuring recurrence intervals →

Change Stylesheet

Select a custom Stylesheet to format the email content for this alarm entry.

Execute and Restore Alarm test

When an Alarm test is executed, an email with the selected status is sent to the Test Mail address (configured in the Global configuration).

Important

If you do not receive any emails and there were no errors reported, make sure to check the junk mail folder.

Info

The "Restore Alarm test" is similar to "Execute Alarm test", but instead sends an email with the OK status.


Stylesheet

The plugin supports stylesheets of type XSLT.

Here's an example input to use for previewing or modifying the stylesheet Alarm Plugin Object XML.

Working example with data

Default subject is: Status Report from Nodinite - [{Customer} | {Environment}] - With {Status}

Variables to use in the subject field:

  • – Customer name of the Nodinite installation
  • – Environment name (Prod, Test) of the Nodinite installation
  • Nodinite version
  • – List of Monitor View statuses Errors, OK
  • – List of Monitor View statuses and the number for each status 2 Errors, 1 OK
  • – Date when the alarm was triggered
  • {Alarm.JsonPath:...} – Advanced option using JsonPath to extract data from the alarm object sent to the alarm
    • ... is a JsonPath to get the name of the log views, use expression {Alarm.JsonPath:MonitorViews[*].Name}

Example of the JSON object to apply the JsonPath on:

{
	"MonitorViews": [{
		"MonitorViewId": 1,
		"Name": "Test View",
		"Description": "Simple unit testing view.",
		"WebSite": null,
		"StatusCode": {
			"StatusCode": 0,
			"Name": "OK"
		},
		"NumberOfMonitoredResources": 2,
		"Integrations": [{
			"IntegrationId": 1,
			"Name": "INT001 - Orders to first company",
			"Description": "",
			"WebSite": "https://www.nodinite.com",
			"CustomFields": [{
				"CustomFieldId": 1,
				"Name": "SLA",
				"Description": "",
				"WebSite": null,
				"ValueType": {
					"CustomFieldTypeId": 1,
					"Name": "Text",
					"Description": null,
					"WebSite": null
				},
				"CustomValues": [{
					"CustomValueId": 1,
					"Value": "Gold",
					"Description": "Act fast!!",
					"WebSite": "https://www.nodinite.com",
					"ValueType": {
						"CustomFieldTypeId": 1,
						"Name": "Text",
						"Description": null,
						"WebSite": null
					}
				}]
			}],
			"CustomMetaDatas": [{
				"CustomMetaDataId": 1,
				"Name": "Summary",
				"Description": "My integration is the perfect one",
				"WebSite": "https://www.nodinite.com",
				"DataType": 1,
				"CustomValues": [{
					"CustomValueId": 1,
					"Value": "My integration is the perfect one",
					"Description": "Act fast!!",
					"WebSite": "https://www.nodinite.com",
					"ValueType": null
				}]
			}]
		}],
		"ChangedResources": [{
			"ResourceId": 1,
			"Name": "First Resource - Send Port",
			"Description": null,
			"WebSite": "https://www.nodinite.com/resource/send-port",
			"Monitoring Agent Configuration": {
				"SourceId": 1,
				"Name": "Test Monitoring Agent Configuration",
				"Description": "Simple Monitoring Agent Configuration for testing purposes only.",
				"Server": null,
				"Environment": null,
				"Version": null,
				"WebSite": "https://www.nodinite.com/"
			},
			"Category": {
				"CategoryId": 1,
				"Name": "Send Ports",
				"Description": "Send ports category.",
				"WebSite": null
			},
			"Application": {
				"ApplicationId": 1,
				"Name": "BizTalk System",
				"Description": "Default biztalk application",
				"WebSite": "https://www.nodinite.com/application/biztalk-system"
			},
			"StatusCode": {
				"StatusCode": 0,
				"Name": "OK"
			},
			"LogText": "All OK!"
		},
		{
			"ResourceId": 2,
			"Name": "Second Resource - Receive Port",
			"Description": null,
			"WebSite": null,
			"Monitoring Agent Configuration": {
				"SourceId": 1,
				"Name": "Test Monitoring Agent Configuration",
				"Description": "Simple Monitoring Agent Configuration for testing purposes only.",
				"Server": null,
				"Environment": null,
				"Version": null,
				"WebSite": "https://www.nodinite.com/"
			},
			"Category": {
				"CategoryId": 2,
				"Name": "Receive Ports",
				"Description": "Receive ports category.",
				"WebSite": "https://www.nodinite.com/category/receive-ports"
			},
			"Application": {
				"ApplicationId": 1,
				"Name": "BizTalk System",
				"Description": "Default biztalk application",
				"WebSite": "https://www.nodinite.com/application/biztalk-system"
			},
			"StatusCode": {
				"StatusCode": 0,
				"Name": "OK"
			},
			"LogText": "All OK!"
		}],
		"Users": [{
			"UserId": 1,
			"Name": "\\IBSS\\IMuser",
			"Description": null,
			"MailAddress": "support@nodinite.com"
		}]
	},
	{
		"MonitorViewId": 2,
		"Name": "Second View",
		"Description": "Simple test view (second).",
		"WebSite": null,
		"StatusCode": {
			"StatusCode": 2,
			"Name": "ERROR"
		},
		"NumberOfMonitoredResources": 2,
		"Integrations": [],
		"ChangedResources": [{
			"ResourceId": 10,
			"Name": "LogAPI Queue",
			"Description": "Queue for Nodinite's LogAPI.",
			"WebSite": null,
			"Monitoring Agent Configuration": {
				"SourceId": 2,
				"Name": "MSMQ",
				"Description": "Monitoring Agent Configuration to monitor MSMQ queues.",
				"Server": "IBSS-DEV01",
				"Environment": "Production",
				"Version": "1.0",
				"WebSite": null
			},
			"Category": {
				"CategoryId": 10,
				"Name": "MSMQ Queue",
				"Description": "MSMQ Queues category",
				"WebSite": "https://msdn.microsoft.com/en-us/library/ms711472%28v=vs.85%29.aspx"
			},
			"Application": null,
			"StatusCode": {
				"StatusCode": 2,
				"Name": "ERROR"
			},
			"LogText": "Number of messages in queue exceeded error limit."
		},
		{
			"ResourceId": 11,
			"Name": "LogAPI Test Queue",
			"Description": "",
			"WebSite": null,
			"Monitoring Agent Configuration": {
				"SourceId": 2,
				"Name": "MSMQ",
				"Description": "Monitoring Agent Configuration to monitor MSMQ queues.",
				"Server": "IBSS-DEV01",
				"Environment": "Production",
				"Version": "1.0",
				"WebSite": null
			},
			"Category": {
				"CategoryId": 10,
				"Name": "MSMQ Queue",
				"Description": "MSMQ Queues category",
				"WebSite": "https://msdn.microsoft.com/en-us/library/ms711472%28v=vs.85%29.aspx"
			},
			"Application": null,
			"StatusCode": {
				"StatusCode": 1,
				"Name": "WARNING"
			},
			"LogText": "Number of messages in queue exceeded warning limit, but not error limit."
		}],
		"Users": [{
			"UserId": 1,
			"Name": "\\IBSS\\IMuser",
			"Description": null,
			"MailAddress": "support@nodinite.com"
		}]
	}],
	"Version": "5.0.0.0",
	"Environment": "Test",
	"Customer": "Nodinite",
	"Created": "2019-01-01T01:00:00.000000Z",
	"WebClientUrl": "http://localhost/Nodinite/WebClient/",
	"IsRecurring": false,
	"ProductStatus": {
		"IsTrial": false,
		"ExpirationDate": null
	}
}

Next Step

E-mail with options
Add or manage Alarm Plugin
Monitor Views

Alarm Plugin Types:
Event Log
HTTP Webhook
E-mail with options

Configuration:
Alarm Plugins - Overview
Stylesheets
Alarm Plugin Object XML

Related Features:
Monitoring Service
Users
Core Services