Používání vnitroprocesového agenta Java Application Insights ve službě Azure Spring Apps
Poznámka:
Azure Spring Apps je nový název služby Azure Spring Cloud. Přestože má služba nový název, na některých místech uvidíte starý název, protože pracujeme na aktualizaci prostředků, jako jsou snímky obrazovky, videa a diagramy.
S aplikacemi nativní bitové kopie Spring Boot používejte místo aplikace Aplikace Přehledy Java projekt aplikace v nativní imagi Spring Boot pomocí distrou OpenTelemetry OpenTelemetry / Application Přehledy.
Tento článek se vztahuje na: ✔️ Využití standardu a vyhrazené (Preview) ✔️ Basic/Standard ✔️ Enterprise
Tento článek vysvětluje, jak monitorovat aplikace pomocí agenta Application Přehledy Java v Azure Spring Apps.
Pomocí této funkce můžete:
- Data trasování hledání s různými filtry
- Zobrazení mapy závislostí aplikací Spring
- Zkontrolujte výkon požadavků.
- Monitorujte živé metriky v reálném čase.
- Zkontrolujte selhání požadavků.
- Zkontrolujte metriky aplikace.
- Zkontrolujte protokoly aplikací.
Aplikační Přehledy může poskytovat řadu pozorovatelných perspektiv, mezi které patří:
- Mapa aplikace
- Výkon
- Selhání
- Metriky
- Live Metrics
- Dostupnost
- Protokoly
Použití funkce Přehledy aplikace
Když je povolená funkce Přehledy aplikace, můžete:
V navigačním podokně vyberte Přehledy aplikace a zobrazte stránku Přehled Přehledy aplikace. Na stránce Přehled se zobrazí přehled všech spuštěných aplikací.
Výběrem možnosti Mapa aplikace zobrazíte stav volání mezi aplikacemi.
Vyberte odkaz mezi službami zákazníků a
petclinic
zobrazte další podrobnosti, například dotaz z SQL.Výběrem koncového bodu zobrazíte všechny aplikace provádějící požadavky na koncový bod.
V navigačním podokně vyberte Výkon a zobrazte údaje o výkonu všech operací, závislostí a rolí všech aplikací.
V navigačním podokně vyberte Selhání a zobrazte případné neočekávané chyby nebo výjimky z vašich aplikací.
V navigačním podokně vyberte Metriky a vyberte obor názvů, abyste viděli metriky Spring Bootu i vlastní metriky( pokud existuje).
V navigačním podokně vyberte Živé metriky a zobrazte metriky v reálném čase pro různé dimenze.
V navigačním podokně vyberte Dostupnost a sledujte dostupnost a rychlost odezvy webových aplikací vytvořením testů dostupnosti v Přehledy aplikace.
V navigačním podokně vyberte Protokoly, abyste zobrazili protokoly všech aplikací, nebo protokoly jedné aplikace při filtrování podle
cloud_RoleName
.
Správa Přehledy aplikací pomocí webu Azure Portal
Pomocí následujícího postupu povolte agenta v procesu Javy.
Přejít do služby | Stránka s přehledem instance služby a pak v části Monitorování vyberte Přehledy aplikace.
Pokud chcete povolit Přehledy aplikace v Azure Spring Apps, vyberte Povolit Přehledy aplikací.
Vyberte existující instanci aplikace Přehledy nebo vytvořte novou.
Když je povolená Přehledy aplikace, můžete nakonfigurovat jednu volitelnou vzorkovací frekvenci (výchozí 10,0 %).
Kliknutím na Uložit uložte změny.
Poznámka:
Nepoužívejte stejnou instanci aplikace Přehledy v různých instancích Azure Spring Apps nebo se zobrazují smíšená data.
Pomocí portálu můžete zkontrolovat nebo aktualizovat aktuální nastavení v Přehledy aplikace.
Povolení Přehledy aplikací pomocí webu Azure Portal
Vyberte Application Insights.
Povolte Přehledy aplikace výběrem možnosti Upravit vazbu nebo nevázaný hypertextový odkaz.
Upravte Přehledy aplikace nebo vzorkovací frekvenci a pak vyberte Uložit.
Zakázání Přehledy aplikace
Vyberte Application Insights.
Výběrem možnosti Zrušit vazbu zakažte Přehledy aplikace.
Změna Přehledy Nastavení aplikace
Vyberte název ve sloupci Přehledy aplikace a otevřete oddíl Přehledy aplikace.
Úprava vazeb buildpacku aplikace Přehledy v buildové službě
Chcete-li zkontrolovat a aktualizovat aktuální nastavení pro vazby buildpacku aplikace Přehledy ve službě sestavení, postupujte takto:
- Vyberte Službu sestavení.
- Zvolte tvůrce.
- Ve sloupci Vazby vyberte Upravit .
Nastavení Přehledy aplikace se nachází v položce Aplikace Přehledy uvedená ve sloupci Typ vazby.
Vyberte vázaný hypertextový odkaz nebo vyberte Upravit vazbu pod třemi tečkami a otevřete a upravte vazby balíčku buildpack aplikace Přehledy.
Upravte nastavení vazby a pak vyberte Uložit.
Správa Přehledy aplikací pomocí Azure CLI
Přehledy aplikace můžete spravovat pomocí příkazů Azure CLI. V následujících příkazech nezapomeňte zástupný> text nahradit <hodnotami popsanými. Zástupný <symbol pro název> instance služby odkazuje na název vaší instance Azure Spring Apps.
Povolit Application Insights
Pokud chcete nakonfigurovat aplikační Přehledy při vytváření instance Azure Spring Apps, použijte následující příkaz. app-insights
Pro argument můžete zadat název aplikace Přehledy název nebo ID prostředku.
az spring create \
--resource-group <resource-group-name> \
--name "service-instance-name" \
--app-insights <name-or-resource-ID> \
--sampling-rate <sampling-rate>
az spring create \
--resource-group <resource-group-name> \
--name "service-instance-name" \
--app-insights <name-or-resource-ID> \
--sampling-rate <sampling-rate> \
--sku Enterprise
Můžete také použít Přehledy připojovací řetězec aplikace (upřednostňovaný) nebo instrumentační klíč, jak je znázorněno v následujícím příkladu.
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights-key <connection-string-or-instrumentation-key> \
--sampling-rate <sampling-rate>
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights-key <connection-string-or-instrumentation-key> \
--sampling-rate <sampling-rate> \
--sku Enterprise
Zakázání Přehledy aplikace
Pokud chcete zakázat Přehledy aplikace při vytváření instance Azure Spring Apps, použijte následující příkaz:
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--disable-app-insights
az spring create \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--disable-app-insights \
--sku Enterprise
Kontrola nastavení Přehledy aplikace
Pokud chcete zkontrolovat nastavení Přehledy aplikace existující instance Azure Spring Apps, použijte následující příkaz:
az spring app-insights show \
--resource-group <resource-group-name> \
--name <service-instance-name>
Aktualizace Přehledy aplikace
Pokud chcete aktualizovat Přehledy aplikace tak, aby používala připojovací řetězec (upřednostňovaný) nebo instrumentační klíč, použijte následující příkaz:
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights-key <connection-string-or-instrumentation-key> \
--sampling-rate <sampling-rate>
Pokud chcete aktualizovat Přehledy aplikace tak, aby používal název nebo ID prostředku, použijte následující příkaz:
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights <name-or-resource-ID> \
--sampling-rate <sampling-rate>
Zakázání Přehledy aplikace pomocí příkazu update
Pokud chcete zakázat Přehledy aplikace v existující instanci Azure Spring Apps, použijte následující příkaz:
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--disable
Správa vazeb buildpacku Přehledy aplikací
Tato část se vztahuje pouze na plán Enterprise a obsahuje pokyny, které doplňují předchozí oddíl.
Plán Azure Spring Apps Enterprise používá vazby buildpacku k integraci Aplikace Azure Přehledy s typem ApplicationInsights
. Další informace najdete v tématu Konfigurace integrace APM a certifikátů certifikační autority.
K vytvoření vazby sestavení Přehledy aplikace použijte následující příkaz:
az spring build-service builder buildpack-binding create \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name> \
--type ApplicationInsights \
--properties sampling-percentage=<your-sampling-percentage> \
connection-string=<your-connection-string>
Chcete-li zobrazit seznam všech vazeb buildpacku a najít aplikace Přehledy vazby typuApplicationInsights
, použijte následující příkaz:
az spring build-service builder buildpack-binding list \
--resource-group <your-resource-group-name> \
--service <your-service-resource-name> \
--builder-name <your-builder-name>
Pokud chcete nahradit vazbu buildpacku Přehledy aplikace, použijte následující příkaz:
az spring build-service builder buildpack-binding set \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name> \
--type ApplicationInsights \
--properties sampling-percentage=<your-sampling-percentage> \
connection-string=<your-connection-string>
Pokud chcete získat vazbu sestavení Přehledy aplikace, použijte následující příkaz:
az spring build-service builder buildpack-binding show \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name>
Pokud chcete odstranit vazbu sestavení Přehledy aplikace, použijte následující příkaz:
az spring build-service builder buildpack-binding delete \
--resource-group <your-resource-group-name> \
--service <your-service-instance-name> \
--name <your-binding-name> \
--builder-name <your-builder-name>
Automation
Následující části popisují, jak automatizovat nasazení pomocí Bicep, šablon Azure Resource Manageru (šablon ARM) nebo Terraformu.
Bicep
Pokud chcete nasadit pomocí souboru Bicep, zkopírujte následující obsah do souboru main.bicep . Další informace najdete v tématu Microsoft.AppPlatform Spring/monitoring Nastavení.
param springName string
param location string = resourceGroup().location
resource spring 'Microsoft.AppPlatform/Spring@2020-07-01' = {
name: springName
location: location
properties: {}
}
resource monitorSetting 'Microsoft.AppPlatform/Spring/monitoringSettings@2020-11-01-preview' = {
parent: spring
name: 'default'
properties: {
appInsightsInstrumentationKey: '00000000-0000-0000-0000-000000000000'
appInsightsSamplingRate: 88
}
}
Šablony ARM
Pokud chcete nasadit pomocí šablony ARM, zkopírujte následující obsah do souboru azuredeploy.json . Další informace najdete v tématu Microsoft.AppPlatform Spring/monitoring Nastavení.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"springName": {
"type": "string"
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]"
}
},
"resources": [
{
"type": "Microsoft.AppPlatform/Spring",
"apiVersion": "2020-07-01",
"name": "[parameters('springName')]",
"location": "[parameters('location')]",
"properties": {}
},
{
"type": "Microsoft.AppPlatform/Spring/monitoringSettings",
"apiVersion": "2020-11-01-preview",
"name": "[format('{0}/{1}', parameters('springName'), 'default')]",
"properties": {
"appInsightsInstrumentationKey": "00000000-0000-0000-0000-000000000000",
"appInsightsSamplingRate": 88
},
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springName'))]"
]
}
]
}
Terraform
Pro nasazení Terraformu použijte následující šablonu. Další informace najdete v tématu azurerm_spring_cloud_service.
provider "azurerm" {
features {}
}
resource "azurerm_resource_group" "example" {
name = "example-resources"
location = "West Europe"
}
resource "azurerm_application_insights" "example" {
name = "tf-test-appinsights"
location = azurerm_resource_group.example.location
resource_group_name = azurerm_resource_group.example.name
application_type = "web"
}
resource "azurerm_spring_cloud_service" "example" {
name = "example-springcloud"
resource_group_name = azurerm_resource_group.example.name
location = azurerm_resource_group.example.location
sku_name = "S0"
config_server_git_setting {
uri = "https://github.com/Azure-Samples/piggymetrics"
label = "config"
search_paths = ["dir1", "dir2"]
}
trace {
connection_string = azurerm_application_insights.example.connection_string
sample_rate = 10.0
}
tags = {
Env = "staging"
}
}
Automatizace v plánu Enterprise čeká na podporu. Jakmile bude k dispozici, přidá se dokumentace.
Aktualizace nebo upgrade agenta Java
Agent Java se pravidelně aktualizuje nebo upgraduje pomocí sady JDK, což může mít vliv na následující scénáře.
Poznámka:
Verze sady JDK se aktualizuje nebo upgraduje čtvrtletně za rok.
- Na stávající aplikace, které používají agenta Java před aktualizací nebo upgradem, to neovlivní.
- Aplikace vytvořené po aktualizaci nebo upgradu používají novou verzi agenta Java.
- Existující aplikace, které dříve nepoužíval agenta Java, vyžadují restartování nebo opětovné nasazení, aby používaly novou verzi agenta Java.
Agent Java se aktualizuje nebo upgraduje při aktualizaci buildpacku.
Konfigurace agenta Java za horkého načítání
Azure Spring Apps má mechanismus horkého načítání, který umožňuje upravit nastavení konfigurace agenta bez restartování aplikací.
Poznámka:
Mechanismus načítání za tepla má zpoždění v minutách.
Pokud je agent Java již povolený, změny v instanci nebo
SamplingRate
hodnotě aplikace Přehledy nevyžadují restartování aplikace.Pokud povolíte agenta Java, musíte restartovat aplikace.
Když zakážete agenta Java, aplikace přestanou odesílat všechna data monitorování po prodlevě v minutách. Aplikace můžete restartovat, abyste agenta odebrali z prostředí modulu runtime Java.
Porovnávání konceptů mezi Azure Spring Apps a aplikačními Přehledy
Azure Spring Apps | Application Insights |
---|---|
App |
* Mapa aplikace nebo role * Živé metriky nebo role * Selhání, role nebo cloudová role * Výkon/ Role / Může role |
App Instance |
* Mapa aplikace nebo instance role * Live Metrics /Service Name * Selhání, role nebo cloudová instance * Výkon/ Role / Mohla by instance |
Název App Instance
z Azure Spring Apps se změní nebo vygeneruje v následujících scénářích:
- Vytvoříte novou aplikaci.
- Do existující aplikace nasadíte soubor JAR nebo zdrojový kód.
- Zahájíte modré nebo zelené nasazení.
- Aplikaci restartujete.
- Zastavíte nasazení aplikace a pak ji restartujete.
Když jsou data uložená v Přehledy aplikace, obsahují historii instancí aplikací Azure Spring Apps vytvořených nebo nasazených od povolení agenta Java. Například na portálu Přehledy aplikace můžete zobrazit data aplikace vytvořená včera, ale pak odstraněná v určitém časovém rozsahu, například za posledních 24 hodin. Následující scénáře ukazují, jak to funguje:
- Dnes jste vytvořili aplikaci přibližně 8:00 z Azure Spring Apps s povoleným agentem Java a pak jste do této aplikace nasadili soubor JAR přibližně 8:10 dnes. Po nějakém testování změníte kód a nasadíte do této aplikace nový soubor JAR v 8:30 dnes. Pak si uděláte přestávku a když se vrátíte kolem 11:00, zkontrolujete některá data z aplikace Přehledy. Uvidíte:
- Tři instance v mapě aplikace s časovými rozsahy za posledních 24 hodin a selhání, výkon a metriky
- Jedna instance v mapě aplikace s časovým rozsahem za poslední hodinu a selhání, výkon a metriky
- Jedna instance v živých metrikách
- Dnes jste vytvořili aplikaci přibližně 8:00 z Azure Spring Apps s povoleným agentem Java a pak jste do této aplikace nasadili soubor JAR přibližně 8:10 dnes. Přibližně 8:30 dnes zkusíte modré/zelené nasazení s jiným souborem JAR. V současné době máte pro tuto aplikaci dvě nasazení. Po přestávkě kolem 11:00 dnes chcete zkontrolovat některá data z aplikace Přehledy. Uvidíte:
- Tři instance v mapě aplikace s časovými rozsahy za posledních 24 hodin a selhání, výkon a metriky
- Dvě instance v mapě aplikace s časovými rozsahy za poslední hodinu a selhání, výkon a metriky.
- Dvě instance v živých metrikách