Reputation: 6188
When querying from a particular application insights appInsights1
, after I select the application insights appInsights1
from Azure Portal, I can use union * | where timestamp > ago(1h)
to query all different types of telemetry data within recent 1 hour. Sweet.
If I want to query cross the application insights appInsights1
& appInsights2
, I can do union *, app('appInsights2').requests, app('appInsights2').traces | where timestamp > ago(1h)
.
But what i really wanna achieve here is to have something like, union *, app('appInsights2').* | where timestamp > ago(1h)
, to query all different types of telemetry data from appInsights2
as well. But MS doesn't allow app('appInsights2').*
here. Not sure why, even union *
is perfect ok. Anyway, is there a way i can do it, rather than list all types in a tedious long way, like app('appInsights2').requests, app('appInsights2').traces, app('appInsights2').exceptions, ...
.
Upvotes: 1
Views: 1627
Reputation: 80
I'm Meir from the Azure Monitor product group.
I understand the need but we have limited support for "*" tables, especially when it comes to cross-app queries. These queries are very intensive in compute and IO, much more than queries that specify table names. This substantially intensify when more than one app/workspace is involved.
Our recommendation today is to funnel all your App Insights into one or few Log Analytics Workspaces: https://learn.microsoft.com/en-us/azure/azure-monitor/app/create-workspace-resource In this mode, the workspace may contain tens if not hundreds of tables, but you don't have to union across apps.
Thanks, Meir
Upvotes: 1