Microsoft Fabric Updates Blog

Implementing proactive monitoring with KQL query alerts with Activator

Driving actions from real-time organizational data is important for making informed data-driven decisions and improving overall efficiency. By leveraging data effectively, organizations can gain insights into customer behaviour, operational performance, and market trends, enabling them to respond promptly to emerging issues and opportunities.

Setting alerts on KQL queries can significantly enhance this proactive approach, especially in scenarios such as customer support. For instance, by monitoring key metrics like response times, ticket volumes, and satisfaction scores, support teams can identify patterns and anomalies that may indicate underlying problems.

Using Activator to set alerts on KQL Queries

Contoso Retailers, a fictitious company, wants to implement a proactive monitoring system by setting alerts on their KQL queries. This will enable them to actively monitor their customer support tickets, for order transactions or customer accounts etc., and drive timely actions based on their real-time data. For example, when the number of unresolved high-priority tickets exceeds a predefined threshold, an alert is immediately triggered. This alert notifies the support team to prioritize these tickets, ensuring that critical issues are addressed promptly.

1 – Drive actions from KQL Queries

Before you can set alerts on a KQL query, you need to create an Eventhouse and create an Eventstream that will enable you to stream real-time data into your KQL database. You can learn more about how to Create an eventhouse and how to Create an evenstream from our documentation.

When an eventstream is created, a default child KQL database is also created and can be used to stream data into. This database also has a default KQL queryset that you can use to check if your data is being streamed into the database.

RawData
| take 10

For this requirement, you need to define a rule logic to check if the number of unresolved high-priority tickets exceeds 10 within an hour. You can run a KQL query that will return the results and select which fields you will send with the alert. For example:

TransformedData
| where Status == "Unresolved"
| where CreatedDate < ago(1h)
| summarize UnresolvedCount = count() by IssuePriority, IssueCategory
| render columnchart

Next, you need to set an alert on the KQL query you just ran. Inside the query editor, you can select the Set an alert option and then define the frequency you want the alert to run and how it will be triggered by setting the condition to check if the count of unresolved tickets exceeds 10 and is high priority. Also provide details once the rule has been triggered.

A screen showing a kql query and setting an alerting on the query in Microsoft Fabric

Some things to consider when setting an alert on a KQL query, if your query does not have the render [your chosen chart] line your alert will trigger on each event on your data but if you have that line, the alert will trigger on each event grouped by your chosen field – in this case IssuePriority.

Lastly, provide the details for the Action by choosing Teams as the way to send the alert.

For complex logic, you can view and manage the alert in the Activator UI to monitor the activation history and dig into the data that triggered the aler .

In the Activator UI you can use additional actions, and rather than just alerting based on the set condition on this query, you can kick off a data pipeline or run a custom Power Automate flow with additional logic.

Additionally, you can create a Real-Time dashboard so you can visualize the results of the query. You can select Pin to Dashboard then provide the dashboard details like Tile name and Dashboard name.
KQL Query visualized in a Real-Time dashboard as Unresolved Tickets by Priority
Note: This dashboard can be edited to add more tiles with visualizations to help Contoso retailers to meet the goals.

The query used for this requirement had UnresolvedCount as a variable and IssuePriority & IssueCategory as fields, these three will be the only fields passed through to the alert and you may not be able to use other fields when further configuring the alert. If you want to pass more fields to the alert, you will need to include them in the KQL query as well.

This is one of the ways of how would drive actions from a KQL queries using Activator, there are other use cases like Quality Control Manufacturing, Customer Service, Application Logs Monitoring etc.

Resources

Stream data into Microsoft Fabric with Real-Time Intelligence

Create and activate an Activator rule tutorial

Create Activator alerts from a KQL Queryset  

Activator Basic Concepts

Query data in a KQL Queryset  

Related blog posts

Implementing proactive monitoring with KQL query alerts with Activator

March 31, 2025 by Arun Vijayraghavan

Microsoft Fabric is a unified, secure, and user-friendly data platform equipped with features necessary for developing enterprise-grade applications with minimal or no coding required. Last year, the platform was enhanced by introducing SQL Database in Fabric, facilitating AI application development within Microsoft Fabric. In a previous blog post, we discussed how to build a chatbot … Continue reading “AI Ready Apps: build RAG Data pipeline from Azure Blob Storage to SQL Database in Microsoft Fabric within minutes”

March 31, 2025 by Yitzhak Kesselman

Since we announced the general availability of Microsoft Fabric Real-Time Intelligence in November 2024, the response from organizations worldwide has been extraordinary. Businesses across industries recognize the competitive advantage that comes from timely decisions and actions, understanding that every second, every event—and every detail—counts. Whether it’s tracking bags or shipments, optimizing hospital bed availability, promptly … Continue reading “Unlock the power of Real-Time Intelligence in the Era of AI: why Fabric Real-Time Intelligence is a game-changer “