Monitors watch the data you care about and trigger signals.
Getting started
Navigate to the Monitors tab to create a new Monitor. You can also search, sort, and filter through all of your organization's existing Monitors.
Monitor Description
First, click on the Create Monitor
button. Give an insightful name and emoji to your Monitor to capture a sense of what the Monitor will do. After that, you will be able to add the new monitor to a group on your Dashboard.
There are four types of monitors: Event Monitor (transmits notifications in the event of data-related occurrences), Report Monitor, Metric Monitor, and Slack/Webhook.
Next, choose the tags for the monitor from the ones your organization has already created. This will ensure that any signals generated by the monitor will be labeled with the selected tags automatically.
Select the Data
There exists two distinct methods through which data can be chosen for the monitor.
Data View
This alternative permits the utilization of data defined in an extant data view created by your organization.
SQL Query
You can alternatively create a SQL query to select the data.
Subsequently, you will need to specify the column that uniquely identifies a row. Avenue will leverage the value of this column to ascertain if a row is new. This step is crucial to ensure the seamless functioning of the monitor.
You can also apply filters to make sure that only the important rows trigger alerts.
Next, choose the dynamic tags for the monitor from the available columns. This means that any signals generated by the monitor will be automatically labeled with the corresponding value of the selected columns. To activate this feature, you will need to run the SQL query.
💡 Note: Make sure that you use a distinct column to identify a new row.
Configure Alert Conditions
For Metric Monitors only, an additional step exists to configure aggregated alerting conditions.
For all Metric Types other than “count”, Avenue will aggregate the value of the most recent run, as well as all of the previous runs in the given time frame. For “count”, Avenue will only look at that most recent run.
If a Monitor’s metric becomes unhealthy, it will trigger an incident once. After that, it will wait until the metric becomes healthy again to re-trigger an incident.
Set Up the Signal
You have the option to configure the frequency of the alert checks, either by selecting from various periodicities or by utilizing a cron expression.
When configuring actions for the signals discharged by the monitor, you will be presented with two distinct options.
Notification Only
This will merely notify your subscribers and would not necessitate any additional action.
Create Incident
This will require intervention, and the signal ought to be resolved on Avenue. It is also feasible to establish auto-resolving and auto-assignment policies in this scenario.
Customize the Signals
Here, you first have the option to aggregate changes. If enabled, Avenue will generate one signal encompassing all the rows within a monitor run. Alternatively, if disabled, it will create one signal for each row.
Subsequently, you can furnish your signal with a title and a body. Tailor alerts and reports to exactly your needs by formatting and previewing how the Monitor's notifications would look across different platforms. You can also include resolution steps that will be available on the signal's details page.
Embed data from your query in the notification's title and message using double curly brackets like {{column}}.
Any column from your monitor can be embedded dynamically. To see the column names, Run Query in the SQL editor in the top-half of the form and be sure to spell the same.
Add Subscribers
Now, you can add subscribers to the signals. These are the people, groups, or services who have subscribed to the signal and will receive alerts whenever the monitor fires a signal. You can choose from several options like SMS, Slack, Webhook, Linear, Asana, and more.
To ensure that the person receives notifications, it is necessary to add their phone number, email address, or other necessary contact endpoint as chosen to trigger the notification.
You can also make subscribers dynamic by utilizing columns/fields from your SQL or webhook.
To activate manual mode, toggle the switch to the Manual
position, which will enable you to input the information manually. To switch back to automatic routing, toggle the switch away from Manual
, which will reveal a dropdown list of your Teams for selection.
You can also include escalation groups by selecting the Add Escalation Group
button. This feature can be employed when you desire the signal to be elevated if someone has not attended to it within the designated time frame. You can elect whom to transmit the signal to and how long after it should be escalated.
Test Notification
You cannot send test notifications for Webhook/Slack Monitors
Finally, you have the option to send a test notification to your first escalation group and confirm expected behavior.
Playbooks
As an optional step, you can add a Playbook to your Monitor. This is a set of instructions to act as a guide for anyone tasked with resolving the issue. Playbooks are optional, and can be pulled from existing templates or created specifically for individual Monitors.
Once you're happy with it, you can go ahead and click on the Create New Monitor
button.
You can also leverage Avenue Actions. This feature will enable you to execute actions in your other tools directly from Avenue Signals, thereby enabling all workflow assignments to occur within Avenue.
FAQs:
Do I have to add my Monitor to a Monitor Group or give it Tags in this step?
No, that is optional, and can easily be done after the Monitor has been created as well.
Can I go back and change my Monitor Type later?
Yes, all actions from all sections are editable after the Monitor has been created. That being said, the Monitor Type selected affects later steps, and should be chosen carefully.
What is a Data View?
A Data View is simply a collection of data used to kick off the Signal process. In this step, you’re essentially creating a custom Data View for this Monitor. Instead, you also have the option to use an existing Data View, which is created in another part of the app and can be used in multiple Monitors.
Which column(s) should I select to uniquely identify a row?
You can select any column you want to be referenced for changes. When Avenue evaluates whether or not to trigger an alert, it only looks in the columns selected. If a change occurs in a column outside of those selected, the alert will not trigger.
What if I have more than one column selected?
If you have more than one column selected, an alert will trigger if a change occurs in any of those columns.
Can I preview my data?
Yes. You can preview the data fetched from your SQL query by pressing the “Run Query” button bellow the text editor. This will display the rows fetched from your specified data source via the query.
Will the filters I create be applied to the rows shown in the preview?
No. The preview only reflects the rows fetched by your SQL query, and nothing more.
What does it mean to Auto-Resolve a Signal?
If a Signal is triggered by a change in some row, that Signal will be marked as “Resolved” once that row stops showing up in the query results, either because it was deleted or no longer matches the specifications for that query. This is useful when you want to track an abnormality that may “fix itself” over time.
What does it mean to Auto-Assign a Signal?
Then a Signal is kicked off, it will automatically get assigned to a specified team or user. This can be useful when you know that certain Signals will fall under a specific domain of responsibility and don’t want to randomize ownership.
Will my message look different depending on the different tools I use?
The messages may vary slightly depending on which third party destination they’re delivered to. Toggle the lower right hand button to see what forms the message can take.
What happens if I don’t set a custom title and body?
The title will be whatever is in the Signal title input field, even if it is a blank space. If the Signal body input field is blank, Avenue will deliver the raw query results as the notification body.
How many Subscribers can exist per Escalation Group?
Each Escalation Group needs at least one Subscriber, but can have many.
What does it mean to automatically escalate an Escalation Group?
If none of the Subscribers in an Escalation Group actions upon the Signal within a given time period, the Signal will automatically be sent out to the Subscribers in the next Escalation Group.
What if I don’t want to automatically escalate a Signal?
Simply select “never” in the auto escalate picker.
What happens if I send a test Signal?
A sample notification to all of the specified Subscribers will be sent, with the given escalation rules. On certain platforms, a “test signal” marker will be applied.
What does it mean to customize formatting and notifications for an individual Subscriber?
For each Subscriber, you have the option to include custom formatting and notification preferences. This will alter the message for that individual Subscriber, and the types of updates they will get.
What does it mean to set a “manual” Subscriber?
Notification preferences can be set on a Team and User level inside the Avenue app. If you toggle the manual option, you get a dropdown of all of the Teams and Users who have set their notification preferences and are available to receive updates straight to them.
How do I disable Slack or email notifications for status updates?
Yes, you can easily configure your notifications for each monitor:
Open the monitor in question.
Scroll down to the subscribers section.
Toggle the 'Customize Formatting and Notifications' option.
Uncheck the 'Status Updates' option to disable these notifications.
Is a Playbook required?
No, Playbooks are strictly optional, but can act as powerful tools in your workstream process.
Can you add dynamic info to playbooks?
Yes. Provided you have run your query, you can simply select which columns you want to include in the “Task Description” and “Additional info”.
Does the Monitor incorporate existing rows to generate signals during setup?
No, the Monitor does not consider previously existing rows when initially executed.