Řešení pro správu konektoru Application Insights (zastaralé)

Symbol Application Insights

Poznámka

Díky podpoře dotazů mezi prostředky se už řešení pro správu konektoru Application Insights nevyžaduje. Je zastaralý a odebraný z Azure Marketplace spolu s portálem OMS, který byl oficiálně vyřazen 15. ledna 2019 pro komerční cloud Azure. 30. března 2019 bude vyřazen pro cloud Azure US Government.

Stávající připojení budou fungovat až do 30. června 2019. Po vyřazení portálu OMS neexistuje způsob, jak z portálu nakonfigurovat a odebrat existující připojení. V části Odebrání konektoru pomocí PowerShellu níže najdete skript o odebrání existujících připojení pomocí PowerShellu.

Pokyny k dotazování dat protokolů Application Insights pro více aplikací najdete v tématu Sjednocení několika prostředků Application Insights služby Azure Monitor. Další informace o vyřazení portálu OMS najdete v tématu Přechod na portál OMS do Azure.

Řešení konektoru Application Insights vám pomůže diagnostikovat problémy s výkonem a pochopit, co uživatelé dělají s vaší aplikací, když se monitoruje pomocí Application Insights. Zobrazení stejné telemetrie aplikací, která vidí vývojáři v Application Insights, jsou k dispozici v Log Analytics. Když ale integrujete aplikace Application Insights se službou Log Analytics, zvýší se viditelnost aplikací tím, že budete mít data o operacích a aplikacích na jednom místě. Stejná zobrazení vám pomůžou spolupracovat s vývojáři aplikací. Běžná zobrazení můžou pomoct zkrátit dobu, po které je potřeba zjistit a vyřešit problémy s aplikací i platformou.

Při použití řešení můžete:

  • Zobrazení všech aplikací Application Insights na jednom místě, i když jsou v různých předplatných Azure
  • Korelace dat infrastruktury s daty aplikací
  • Vizualizace dat aplikací s perspektivami při prohledávání protokolu
  • V Azure Portal přejděte z dat Log Analytics do aplikace Application Insights.

Poznámka

Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Připojené zdroje

Na rozdíl od většiny ostatních řešení Log Analytics agenti neshromažďují data pro konektor Application Insights. Všechna data používaná řešením pocházejí přímo z Azure.

Připojený zdroj Podporuje se Description
Agenti systému Windows No Řešení neshromažďuje informace od agentů systému Windows.
Agenti systému Linux No Řešení neshromažďuje informace z agentů pro Linux.
Skupina pro správu SCOM No Řešení neshromažďuje informace od agentů v připojené skupině pro správu SCOM.
Účet úložiště Azure No Řešení nesbíná informace ze služby Azure Storage.

Požadavky

  • Pokud chcete získat přístup k informacím konektoru Application Insights, musíte mít předplatné Azure.
  • Musíte mít aspoň jeden nakonfigurovaný prostředek Application Insights.
  • Musíte být vlastníkem nebo přispěvatelem prostředku Application Insights.

Konfigurace

  1. Povolte řešení Azure Web Apps Analytics z Azure Marketplace nebo pomocí postupu popsaného v tématu Přidání řešení Log Analytics z galerie řešení.
  2. Přejděte na Azure Portal. Výběrem možnosti Všechny služby otevřete Application Insights. Pak vyhledejte Application Insights.
  3. V části Předplatná vyberte předplatné, které obsahuje prostředky Application Insights, a pak v části Název vyberte jednu nebo více aplikací.
  4. Klikněte na Uložit.

Přibližně za 30 minut budou data k dispozici a dlaždice Application Insights se aktualizuje o data, jako na následujícím obrázku:

Dlaždice Application Insights

Další body, které je potřeba mít na paměti:

Sady Management Pack

Toto řešení neinstaluje žádné sady Management Pack v připojených skupinách pro správu.

Použití řešení

Následující části popisují, jak můžete pomocí oddílů zobrazených na řídicím panelu Application Insights zobrazit data z aplikací a pracovat s nimi.

Zobrazení informací o konektoru Application Insights

Kliknutím na dlaždici Application Insights otevřete řídicí panel Application Insights a podívejte se na následující části.

Snímek obrazovky řídicího panelu Application Insights zobrazující oddíly pro Aplikace, Objem dat a Dostupnost

Snímek obrazovky řídicího panelu Application Insights s oddíly požadavků na server, selhání a výjimky

Řídicí panel obsahuje oddíly zobrazené v tabulce. Každý oddíl obsahuje až 10 položek, které odpovídají kritériím daného oddílu pro zadaný rozsah a časový rozsah. Můžete spustit prohledávání protokolu, které vrátí všechny záznamy, když kliknete na Zobrazit vše v dolní části oddílu nebo když kliknete na záhlaví oddílu.

Sloupec Popis
Aplikace – počet aplikací Zobrazuje počet aplikací v prostředcích aplikace. Uvádí také názvy aplikací a pro každou z nich počet záznamů aplikace. Kliknutím na číslo spusťte prohledávání protokolu. ApplicationInsights | summarize AggregatedValue = sum(SampledCount) by ApplicationName

Kliknutím na název aplikace spusťte prohledávání protokolu aplikace, které zobrazuje záznamy aplikace na hostitele, záznamy podle typu telemetrie a všechna data podle typu (na základě posledního dne).
Objem dat – hostitelé odesílající data Zobrazuje počet hostitelů počítačů, kteří odesílají data. Zobrazí také seznam hostitelů počítačů a počtu záznamů pro každého hostitele. Kliknutím na číslo spusťte prohledávání protokolu. ApplicationInsights | summarize AggregatedValue = sum(SampledCount) by Host

Kliknutím na název počítače spusťte prohledávání protokolu hostitele, které zobrazuje záznamy aplikací na hostitele, záznamy podle typu telemetrie a všechna data podle typu (na základě posledního dne).
Dostupnost – výsledky webtestů Zobrazuje prstencový graf pro výsledky webového testu, který označuje úspěšné nebo neúspěšné. Kliknutím na graf spusťte prohledávání protokolu. ApplicationInsights | where TelemetryType == "Availability" | summarize AggregatedValue = sum(SampledCount) by AvailabilityResult

Výsledky ukazují počet úspěšných a neúspěšných testů. Zobrazuje všechny Web Apps s provozem na poslední chvíli. Kliknutím na název aplikace zobrazíte prohledávání protokolu s podrobnostmi o neúspěšných webových testech.
Požadavky serveru – požadavky za hodinu Zobrazuje spojnicový graf požadavků serveru za hodinu pro různé aplikace. Když najedete myší na čáru v grafu, zobrazí se první 3 aplikace přijímající požadavky za určitý bod v čase. Zobrazuje také seznam aplikací, které přijímají požadavky, a počet žádostí za vybrané období.

Kliknutím na graf spusťte prohledávání ApplicationInsights | where TelemetryType == "Request" | summarize AggregatedValue = sum(SampledCount) by ApplicationName, bin(TimeGenerated, 1h) protokolu, které zobrazuje podrobnější spojnicový graf požadavků serveru za hodinu pro různé aplikace.

Kliknutím na aplikaci v seznamu spustíte prohledávání ApplicationInsights | where ApplicationName == "yourapplicationname" and TelemetryType == "Request" and iff(isnotnull(toint(RequestSuccess)), RequestSuccess == false, RequestSuccess == "false") == true protokolu, které zobrazuje seznam požadavků, grafy požadavků v průběhu času a doby trvání požadavků a seznam kódů odpovědí na požadavky.
Selhání – Neúspěšné požadavky za hodinu Zobrazuje spojnicový graf neúspěšných žádostí o aplikaci za hodinu. Najeďte myší na graf a zobrazí se 3 aplikace s neúspěšnými požadavky pro určitý bod v čase. Zobrazuje také seznam aplikací s počtem neúspěšných požadavků pro každou z nich. Kliknutím na graf spusťte prohledávání ApplicationInsights | where TelemetryType == "Request" and iff(isnotnull(toint(RequestSuccess)), RequestSuccess == false, RequestSuccess == "false") == true | summarize AggregatedValue = sum(SampledCount) by ApplicationName, bin(TimeGenerated, 1h) protokolu, které zobrazuje podrobnější spojnicový graf neúspěšných žádostí aplikace.

Kliknutím na položku v seznamu spustíte prohledávání ApplicationInsights | where ApplicationName == "yourapplicationname" and TelemetryType == "Request" and iff(isnotnull(toint(RequestSuccess)), RequestSuccess == false, RequestSuccess == "false") == true protokolu, které zobrazuje neúspěšné požadavky, grafy žádostí o selhání v průběhu času a doby trvání požadavků a seznam kódů odpovědí na neúspěšné žádosti.
Výjimky – výjimky za hodinu Zobrazuje spojnicový graf výjimek za hodinu. Když najedete myší na graf, zobrazí se první 3 aplikace s výjimkami pro určitý bod v čase. Zobrazuje také seznam aplikací s počtem výjimek pro každou z nich. Kliknutím na graf spustíte prohledávání protokolu, ApplicationInsights | where TelemetryType == "Exception" | summarize AggregatedValue = sum(SampledCount) by ApplicationName, bin(TimeGenerated, 1h) které zobrazí podrobnější graf odkazů s výjimkami.

Kliknutím na položku v seznamu spustíte prohledávání ApplicationInsights | where ApplicationName == "yourapplicationname" and TelemetryType == "Exception" protokolu, které zobrazuje seznam výjimek, grafy výjimek v průběhu času a neúspěšných požadavků a seznam typů výjimek.

Když kliknete na libovolnou položku na řídicím panelu, zobrazí se ve vyhledávání perspektiva Application Insights. Perspektiva poskytuje rozšířenou vizualizaci na základě vybraného typu telemetrie. Proto se mění obsah vizualizace pro různé typy telemetrie.

Když kliknete kamkoli do části Aplikace, zobrazí se výchozí perspektiva Aplikace .

Perspektiva aplikací Application Insights

Perspektiva ukazuje přehled aplikace, kterou jste vybrali.

Oddíl Dostupnost zobrazuje zobrazení jiné perspektivy, kde můžete zobrazit výsledky webových testů a související neúspěšné požadavky.

Perspektiva dostupnosti Application Insights

Když kliknete na libovolné místo v částech Požadavky nebo Selhání serveru , komponenty perspektivy se změní, abyste získali vizualizaci související s požadavky.

Oddíl Selhání Application Insights

Když kliknete na libovolné místo v části Výjimky , zobrazí se vizualizace, která je přizpůsobená výjimkám.

Oddíl Výjimky Application Insights

Bez ohledu na to, jestli na řídicím panelu konektoru Application Insights kliknete na něco, zobrazí se na stránce Vyhledávání všechny dotazy vracející data Application Insights s perspektivou Application Insights. Pokud například prohlížíte data Application Insights, * dotaz zobrazí také kartu perspektivy jako na následujícím obrázku:

Application Insights

Komponenty perspektivy se aktualizují v závislosti na vyhledávacím dotazu. To znamená, že výsledky můžete filtrovat pomocí libovolného vyhledávacího pole, které vám umožní zobrazit data z:

  • Všechny vaše aplikace
  • Jedna vybraná aplikace
  • Skupina aplikací

Přejděte na aplikaci v Azure Portal

Oddíly konektoru Application Insights jsou navržené tak, abyste při použití Azure Portal mohli přejít na vybranou aplikaci Application Insights. Řešení můžete použít jako monitorovací platformu vysoké úrovně, která vám pomůže řešit potíže s aplikací. Když v některé z připojených aplikací uvidíte potenciální problém, můžete přejít k jeho podrobnostem ve vyhledávání Log Analytics nebo přejít přímo do aplikace Application Insights.

Pokud se chcete otočit, klikněte na tři tečky (...), které se zobrazí na konci každého řádku, a vyberte Otevřít v Application Insights.

Poznámka

Možnost Otevřít v Application Insights není v Azure Portal dostupná.

Otevřít v Application Insights

Ukázkově opravená data

Application Insights poskytuje opravu vzorkování , která pomáhá snížit provoz telemetrie. Když v aplikaci Application Insights povolíte vzorkování, získáte menší počet položek uložených ve službě Application Insights i v Log Analytics. I když se na stránce konektoru Application Insights a v perspektivách zachová konzistence dat, měli byste vzorkovaná data pro vlastní dotazy opravit ručně.

Tady je příklad opravy vzorkování v dotazu prohledávání protokolu:

ApplicationInsights | summarize AggregatedValue = sum(SampledCount) by TelemetryType

Pole Počet vzorků se nachází ve všech položkách a zobrazuje počet datových bodů, které položka představuje. Pokud pro aplikaci Application Insights zapnete vzorkování, bude počet vzorků větší než 1. Pokud chcete spočítat skutečný počet položek vygenerovaných vaší aplikací, sečte pole Počet vzorků .

Vzorkování ovlivňuje pouze celkový počet položek, které vaše aplikace generuje. Vzorkování polí metrik, jako jsou RequestDuration nebo AvailabilityDuration , nemusíte opravovat, protože tato pole zobrazují průměr pro reprezentované položky.

Vstupní data

Řešení přijímá z připojených aplikací Application Insights následující typy telemetrických dat:

  • Dostupnost
  • Výjimky
  • Žádosti
  • Zobrazení stránek – aby pracovní prostor přijímal zobrazení stránek, musíte nakonfigurovat aplikace tak, aby tyto informace shromažďovali. Další informace najdete v tématu PageViews.
  • Vlastní události – aby pracovní prostor přijímal vlastní události, musíte nakonfigurovat aplikace tak, aby tyto informace shromažďovali. Další informace najdete v tématu TrackEvent.

Log Analytics přijímá data z Application Insights, jakmile jsou k dispozici.

Výstupní data

Pro každý typ vstupních dat se vytvoří záznam s typemApplicationInsights . Záznamy ApplicationInsights mají vlastnosti uvedené v následujících částech:

Obecná pole

Vlastnost Popis
Typ ApplicationInsights
IP adresa klienta
TimeGenerated Čas záznamu
ApplicationId Instrumentační klíč aplikace Application Insights
ApplicationName Název aplikace Application Insights
Instance role ID hostitele serveru
DeviceType Klientské zařízení
Rozlišení obrazovky
Kontinent Kontinent, ze kterého žádost pochází
Země Země/oblast, ze které žádost pochází
Provincii Provincie, stát nebo národní prostředí, odkud žádost pochází
City (Město) Město nebo město, kde žádost pochází
isSynthetic Určuje, jestli byl požadavek vytvořen uživatelem nebo automatizovanou metodou. True = automatizovaná metoda nebo nepravda = uživatel vygenerovaný
Vzorkovací rychlost Procento telemetrie vygenerované sadou SDK odesílané na portál Rozsah 0,0–100,0.
SampledCount 100/(SamplingRate). Například 4 => 25 %
IsAuthenticated Pravda nebo nepravda
ID operace Položky, které mají stejné ID operace, se na portálu zobrazí jako Související položky. ID požadavku se obvykle
ParentOperationID ID nadřazené operace
OperationName
SessionId Identifikátor GUID pro jednoznačnou identifikaci relace, ve které byl požadavek vytvořen
SourceSystem ApplicationInsights

Pole specifická pro dostupnost

Vlastnost Popis
Typ telemetrie Dostupnost
AvailabilityTestName Název webového testu
AvailabilityRunLocation Geografický zdroj požadavku HTTP
AvailabilityResult Označuje výsledek úspěšného webového testu.
AvailabilityMessage Zpráva připojená k webovému testu
Počet dostupnosti 100/(vzorkovací frekvence). Například 4 => 25 %
DataSizeMetricValue 1.0 nebo 0.0
DataSizeMetricCount 100/(vzorkovací frekvence). Například 4 => 25 %
Doba trvání dostupnosti Doba trvání webového testu v milisekundách
AvailabilityDurationCount 100/(vzorkovací frekvence). Například 4 => 25 %
AvailabilityValue
AvailabilityMetricCount
Id testu dostupnosti Jedinečný identifikátor GUID pro webový test
AvailabilityTimestamp Přesné časové razítko testu dostupnosti
AvailabilityDurationMin Pro vzorkované záznamy toto pole zobrazuje minimální dobu trvání webového testu (milisekundy) pro reprezentované datové body.
AvailabilityDurationMax Pro vzorkované záznamy toto pole zobrazuje maximální dobu trvání webového testu (milisekundy) pro reprezentované datové body.
AvailabilityDurationStdDev Pro vzorkované záznamy toto pole zobrazuje směrodatnou odchylku mezi všemi dobami trvání webového testu (milisekundy) pro reprezentované datové body.
AvailabilityMin
AvailabilityMax
AvailabilityStdDev  

Pole specifická pro výjimky

Typ ApplicationInsights
Typ telemetrie Výjimka
Exceptiontype Typ výjimky
Metoda výjimky Metoda, která vytvoří výjimku
ExceptionAssembly Sestavení zahrnuje architekturu, verzi a token veřejného klíče.
ExceptionGroup Typ výjimky
ExceptionHandledAt Označuje úroveň, která zpracovala výjimku.
ExceptionCount 100/(vzorkovací frekvence). Například 4 => 25 %
ExceptionMessage Zpráva o výjimce
VýjimkaStack Úplný zásobník výjimky
ExceptionHasStack Pravda, pokud výjimka obsahuje zásobník

Pole specifická pro požadavek

Vlastnost Popis
Typ ApplicationInsights
Typ telemetrie Žádost
Kód odpovědi Odpověď HTTP odeslaná klientovi
Žádost o úspěch Označuje úspěch nebo neúspěch. True nebo false
ID požadavku ID pro jednoznačnou identifikaci požadavku
Název požadavku GET/POST + ZÁKLAD ADRESY URL
Doba trvání požadavku Doba trvání požadavku (v sekundách)
URL Adresa URL požadavku bez hostitele
Host Hostitel webového serveru
UrlBase Úplná adresa URL požadavku
ApplicationProtocol Typ protokolu používaného aplikací
Počet požadavků 100/(vzorkovací frekvence). Například 4 => 25 %
RequestDurationCount Vzorkovací frekvence 100/(). Například 4 => 25 %
RequestDurationMin Pro vzorkované záznamy toto pole zobrazuje minimální dobu trvání požadavku (milisekundy) pro reprezentované datové body.
RequestDurationMax U vzorkovaných záznamů toto pole zobrazuje maximální dobu trvání požadavku (milisekundy) pro reprezentované datové body.
RequestDurationStdDev Pro vzorkované záznamy toto pole zobrazuje směrodatnou odchylku mezi všemi dobami trvání požadavků (milisekundy) pro reprezentované datové body.

Ukázky hledání v protokolech

Toto řešení nemá sadu ukázkových prohledávání protokolů zobrazených na řídicím panelu. Ukázkové dotazy prohledávání protokolů s popisy se ale zobrazují v části Zobrazení informací o konektoru Application Insights .

Odebrání konektoru pomocí PowerShellu

Po vyřazení portálu OMS neexistuje způsob, jak z portálu nakonfigurovat a odebrat existující připojení. Existující připojení můžete odebrat pomocí následujícího skriptu PowerShellu. K provedení této operace musíte být vlastníkem nebo přispěvatelem pracovního prostoru a čtenářem prostředku Application Insights.

$Subscription_app = "App Subscription Name"
$ResourceGroup_app = "App ResourceGroup"
$Application = "Application Name"
$Subscription_workspace = "Workspace Subscription Name"
$ResourceGroup_workspace = "Workspace ResourceGroup"
$Workspace = "Workspace Name"

Connect-AzAccount
Set-AzContext -SubscriptionId $Subscription_app
$AIApp = Get-AzApplicationInsights -ResourceGroupName $ResourceGroup_app -Name $Application 
Set-AzContext -SubscriptionId $Subscription_workspace
Remove-AzOperationalInsightsDataSource -WorkspaceName $Workspace -ResourceGroupName $ResourceGroup_workspace -Name $AIApp.Id

Seznam aplikací můžete načíst pomocí následujícího skriptu PowerShellu, který vyvolá volání rozhraní REST API.

Connect-AzAccount
$Tenant = "TenantId"
$Subscription_workspace = "Workspace Subscription Name"
$ResourceGroup_workspace = "Workspace ResourceGroup"
$Workspace = "Workspace Name"
$AccessToken = "AAD Authentication Token" 

Set-AzContext -SubscriptionId $Subscription_workspace
$LAWorkspace = Get-AzOperationalInsightsWorkspace -ResourceGroupName $ResourceGroup_workspace -Name $Workspace

$Headers = @{
    "Authorization" = "Bearer $($AccessToken)"
    "x-ms-client-tenant-id" = $Tenant
}

$Connections = Invoke-RestMethod -Method "GET" -Uri "https://management.azure.com$($LAWorkspace.ResourceId)/dataSources/?%24filter=kind%20eq%20'ApplicationInsights'&api-version=2015-11-01-preview" -Headers $Headers
$ConnectionsJson = $Connections | ConvertTo-Json

Tento skript vyžaduje nosný ověřovací token pro ověřování v Azure Active Directory. Jedním ze způsobů, jak tento token načíst, je použití článku na webu dokumentace k rozhraní REST API. Klikněte na Vyzkoušet a přihlaste se ke svému předplatnému Azure. Nosný token můžete zkopírovat z náhledu požadavku , jak je znázorněno na následujícím obrázku.

Nosný token

Můžete také načíst seznam aplikací, které používají dotaz protokolu:

ApplicationInsights | summarize by ApplicationName

Další kroky