Provádění dotazů protokolu v Azure Monitor, které jsou rozloženy mezi pracovními prostory a aplikacemi
protokoly Azure Monitor podporují dotazování napříč několika pracovními prostory Log Analytics a Application Insights aplikacemi ve stejné skupině prostředků, jiné skupině prostředků nebo jiném předplatném. Získáte tak zobrazení dat v rámci systému.
pokud spravujete odběry v jiných klientech Azure Active Directory (azure AD) prostřednictvím Azure Lighthouse, můžete do vašich dotazů zahrnout Log Analytics pracovní prostory vytvořené v těchto klientech zákazníka .
Existují dvě metody dotazování na data, která jsou uložená ve více pracovních prostorech a aplikacích:
- Explicitně zadáním pracovního prostoru a podrobností aplikace. Tato technika je podrobně popsána v tomto článku.
- Implicitně pomocí dotazů kontextu prostředků. Při dotazování v kontextu konkrétního prostředku, skupiny prostředků nebo předplatného budou relevantní data načtena ze všech pracovních prostorů, které obsahují data pro tyto prostředky. Application Insights data uložená v aplikacích nebudou načtena.
Důležité
pokud používáte prostředek Application Insights na základě pracovního prostoru, telemetrie je uložená v Log Analytics pracovním prostoru se všemi ostatními daty protokolů. Pomocí výrazu pracovní prostor () můžete napsat dotaz, který obsahuje aplikace ve více pracovních prostorech. Pro více aplikací ve stejném pracovním prostoru nepotřebujete dotaz mezi jednotlivými pracovními prostory.
Omezení dotazů mezi prostředky
- počet Application Insightsch prostředků a Log Analytics pracovních prostorů, které můžete zahrnout do jednoho dotazu, je omezený na 100.
- Dotaz mezi prostředky není v Návrháři zobrazení podporován. Dotaz můžete vytvořit v Log Analytics a připnout ho na řídicí panel Azure pro vizualizaci dotazu protokolu nebo zahrnutí do sešitů.
- Dotazy na více prostředků v upozorněních protokolu jsou podporovány pouze v aktuálním rozhraní scheduledQueryRules API. Pokud používáte starší rozhraní API pro výstrahy Log Analytics, budete muset Přepnout na aktuální rozhraní API.
dotazování napříč Log Analyticsmi pracovními prostory a z Application Insights
pokud chcete odkazovat na jiný pracovní prostor v dotazu, použijte identifikátor pracovního prostoru a pro aplikaci z Application Insights použijte identifikátor aplikace .
Určení prostředků pracovního prostoru
Následující příklady ukazují dotazy napříč Log Analytics pracovními prostory pro vrácení souhrnných počtů protokolů z tabulky aktualizací v pracovním prostoru s názvem ContosoRetail-IT.
Určení pracovního prostoru lze provést jedním z několika způsobů:
Název prostředku – je popisný název pracovního prostoru, který se někdy označuje jako název součásti.
Důležité
Vzhledem k tomu, že názvy aplikací a pracovních prostorů nejsou jedinečné, může být tento identifikátor dvojznačný. Doporučuje se, aby tento odkaz byl podle kvalifikovaného názvu, ID pracovního prostoru nebo ID prostředku Azure.
workspace("contosoretail-it").Update | countKvalifikovaný název – je úplný název pracovního prostoru, který se skládá z názvu předplatného, skupiny prostředků a názvu komponenty v tomto formátu: název předplatného/ skupina prostředků/název součásti.
workspace('contoso/contosoretail/contosoretail-it').Update | countPoznámka
Vzhledem k tomu, že názvy předplatných Azure nejsou jedinečné, může být tento identifikátor dvojznačný.
ID pracovního prostoru – ID pracovního prostoru je jedinečný a neměnný identifikátor přiřazený ke každému pracovnímu prostoru reprezentovanému jako globálně jedinečný identifikátor (GUID).
workspace("b459b4u5-912x-46d5-9cb1-p43069212nb4").Update | countID prostředku Azure – jedinečná identita pracovního prostoru definovaná v Azure ID prostředku použijete, pokud je název prostředku dvojznačný. U pracovních prostorů je ve formátu: /Subscriptions/SubscriptionId/ResourceGroups/resourceGroup/Providers/Microsoft. OperationalInsights/pracovní prostory/součásti.
Například:
workspace("/subscriptions/e427519-5645-8x4e-1v67-3b84b59a1985/resourcegroups/ContosoAzureHQ/providers/Microsoft.OperationalInsights/workspaces/contosoretail-it").Update | count
Určení aplikace
následující příklady vrátí souhrnný počet požadavků provedených proti aplikaci s názvem fabrikamapp v Application Insights.
určení aplikace v Application Insights lze provést pomocí výrazu aplikace (identifikátor) . Argument identifikátor určuje aplikaci pomocí jedné z následujících možností:
Název prostředku – jedná se o lidský čitelný název aplikace, který se někdy označuje jako název součásti.
app("fabrikamapp")Poznámka
Identifikace aplikace podle názvu předpokládá jedinečnost napříč všemi přístupnými předplatnými. Pokud máte více aplikací se zadaným názvem, dotaz z důvodu nejednoznačnosti se nezdařil. V takovém případě je nutné použít jeden z ostatních identifikátorů.
Kvalifikovaný název – je celé jméno aplikace, složené z názvu předplatného, skupiny prostředků a názvu komponenty v tomto formátu: název předplatného/ skupina prostředků/název součásti.
app("AI-Prototype/Fabrikam/fabrikamapp").requests | countPoznámka
Vzhledem k tomu, že názvy předplatných Azure nejsou jedinečné, může být tento identifikátor dvojznačný.
ID – identifikátor GUID aplikace.
app("b459b4f6-912x-46d5-9cb1-b43069212ab4").requests | countID prostředku Azure – jedinečná identita aplikace definovaná pro Azure ID prostředku použijete, pokud je název prostředku dvojznačný. Formát je: /Subscriptions/SubscriptionId/ResourceGroups/resourceGroup/Providers/Microsoft. OperationalInsights/Components/ Component.
Například:
app("/subscriptions/b459b4f6-912x-46d5-9cb1-b43069212ab4/resourcegroups/Fabrikam/providers/microsoft.insights/components/fabrikamapp").requests | count
Provádění dotazu napříč několika prostředky
Můžete zadávat dotazy na více prostředků z libovolné instance prostředků, můžou se jednat o pracovní prostory a aplikace v kombinaci.
Příklad pro dotaz ve dvou pracovních prostorech:
union Update, workspace("contosoretail-it").Update, workspace("b459b4u5-912x-46d5-9cb1-p43069212nb4").Update
| where TimeGenerated >= ago(1h)
| where UpdateState == "Needed"
| summarize dcount(Computer) by Classification
Použití dotazu mezi prostředky pro více prostředků
při použití dotazů mezi prostředky ke korelaci dat z více Log Analyticsch pracovních prostorů a Application Insights prostředků může být dotaz složitý a obtížný. Funkce v Azure Monitorch dotazech protokolu byste měli využít k oddělení logiky dotazů z oboru prostředků dotazů, což zjednodušuje strukturu dotazu. následující příklad ukazuje, jak můžete monitorovat více prostředků Application Insights a vizualizovat počet neúspěšných žádostí podle názvu aplikace.
vytvořte dotaz podobný následujícímu, který odkazuje na rozsah Application Insightsch prostředků. withsource= SourceAppPříkaz přidá sloupec, který určuje název aplikace, která protokol odeslala. Uložte dotaz jako funkci s aliasem applicationsScoping.
// crossResource function that scopes my Application Insights resources
union withsource= SourceApp
app('Contoso-app1').requests,
app('Contoso-app2').requests,
app('Contoso-app3').requests,
app('Contoso-app4').requests,
app('Contoso-app5').requests
Tuto funkci teď můžete použít v dotazu mezi prostředky, jako je následující. Alias funkce applicationsScoping vrací sjednocení tabulky requests ze všech definovaných aplikací. Dotaz pak filtruje neúspěšné žádosti a vizualizuje trendy podle aplikace. V tomto příkladu je operátor Parse volitelný. Extrahuje název aplikace z vlastnosti SourceApp .
applicationsScoping
| where timestamp > ago(12h)
| where success == 'False'
| parse SourceApp with * '(' applicationName ')' *
| summarize count() by applicationName, bin(timestamp, 1h)
| render timechart
Poznámka
Tuto metodu nelze použít s upozorněními protokolu, protože ověření přístupu prostředků pravidla výstrahy, včetně pracovních prostorů a aplikací, se provádí při vytváření výstrahy. Přidání nových prostředků do funkce po vytvoření výstrahy není podporováno. Pokud upřednostňujete použití funkce pro obory prostředků v upozorněních protokolu, je nutné upravit pravidlo výstrahy na portálu nebo pomocí šablony Správce prostředků pro aktualizaci oboru prostředků. Případně můžete do dotazu protokolu výstrahy zahrnout seznam prostředků.

Další kroky
- Přehled dotazů protokolu a způsobu strukturování dat protokolu Azure Monitor najdete v tématu Analýza dat protokolu v Azure monitor .