Skip to main content
Core Concepts

Avenue has several core concepts to help users instrument great observability across their organization.

Updated over a year ago

This page will review key concepts (Monitors, Signals, Subscribers)

Monitors create signals which send to subscribers.

Example:

[Monitor] New Orders

[Signal] Each Unique Order

[Subscriber] Salesforce, Slack

Monitors

A monitor in Avenue is a workflow that allows you to track and observe data in your data warehouse using SQL or another database type. Monitors serve as the core concept within Avenue, enabling you to define conditions and triggers for generating signals.

There are 4 types of monitors available:

  1. Event-based Monitor: This type of monitor runs a query on a schedule and triggers a signal when a new row is found or an existing row has been modified.

  2. Metric-based Monitor: These monitors run queries on a schedule, comparing specified values within rows against threshold conditions (e.g., greater than, less than) to determine if they meet alerting criteria.

  3. Reports: Report monitors execute queries on a schedule and generate signals containing all returned rows from the query, providing comprehensive information about the queried data set.

  4. Form-based or Webhook Monitor: Unlike other monitor types associated with database queries, form-based monitors allow users to create signals directly by submitting forms with specific values or information attached. These can be triggered by a Webhook.

Each monitor can have subscribers

Signals

A signal in Avenue refers is unit of work or ticket that is generated by a monitor. It represents a specific event, condition, or data point that has met the triggering criteria defined within the monitor.

When a monitor detects a relevant change or condition in your data warehouse based on its predefined rules and queries, it generates a signal. The signal contains information such as the trigger conditions that were met, the associated monitor, timestamps, and any relevant metadata.

Signals serve as notifications and indicators for you to take action based on the monitored events or conditions. They provide visibility into important occurrences within your data sources and act as prompts for investigation, resolution, or other follow-up actions. You can customize how signals are processed through configurations such as selecting

  1. notification-only signals (which simply pass through information)

  2. creating incident signals (which have an associated status like "open", "in progress", etc.). Incident signals are often used to track and manage the progress of work related to specific issues flagged by monitors.

Subscribers

Monitors generate signals which can have subscribers who receive alerts when signals are generated. Subscribers can be configured to receive notifications through various channels such as Slack, SMS, email, or custom webhooks.

Explore the full list of subscribers available here.

Did this answer your question?