Snippets

KQL snippet: track synthetic probes for an Azure private path

A short query to track synthetic probe failures and separate DNS, TLS, WAF or Application Gateway symptoms on an Azure private path.

06 Jun 2026 azureprivate-endpointdnsapplication-gatewaywafkqlmonitoringrunbook

When a synthetic probe has a stable name, it becomes a useful diagnostic entry point. This query starts from Application Insights availability results and groups failures by location, status and message.

kusto synthetic-private-path-failures.kql
AppAvailabilityResults
| where TimeGenerated > ago(6h)
| where Name has "private-path"
| where Success == false
| summarize failures = count(),
          lastFailure = max(TimeGenerated),
          examples = make_set(Message, 3)
by Name, Location, ResultCode
| order by failures desc

Then correlate with Application Gateway or WAF logs over the same window. If the probe fails without a WAF block, start with DNS, TLS, backend health probe and runner network.