Azure Spring Apps'de Application Insights Java İşlem İçi Aracısını kullanma
Not
Temel, Standart ve Kurumsal planları, 3 yıllık kullanımdan kaldırma süresiyle Mart 2025 ortasından itibaren kullanımdan kaldırılacaktır. Azure Container Apps'e geçiş yapmanızı öneririz. Daha fazla bilgi için bkz . Azure Spring Apps kullanımdan kaldırma duyurusu.
Standart tüketim ve ayrılmış plan, altı ay sonra tamamen kapatılarak 30 Eylül 2024'den itibaren kullanımdan kaldırılacaktır. Azure Container Apps'e geçiş yapmanızı öneririz. Daha fazla bilgi için bkz . Azure Spring Apps Standart tüketimini ve ayrılmış planı Azure Container Apps'e geçirme.
Spring Boot Yerel Görüntü uygulamalarıyla, Application Insights Java aracısı yerine Spring Boot yerel görüntüsü Java uygulamasında Azure İzleyici OpenTelemetry Distro / Application Insights'ı kullanın.
Bu makale şunlar için geçerlidir: ✔️ Standart tüketim ve ayrılmış (Önizleme) ✔️ Temel/Standart ✔️ Kurumsal
Bu makalede, Azure Spring Apps'te Application Insights Java aracısını kullanarak uygulamaların nasıl izleneceği açıklanmaktadır.
Bu özellik ile şunları yapabilirsiniz:
- Farklı filtrelerle arama izleme verileri.
- Spring uygulamalarının bağımlılık haritasını görüntüleyin.
- İstek performansını denetleyin.
- Gerçek zamanlı canlı ölçümleri izleyin.
- İstek hatalarını denetleyin.
- Uygulama ölçümlerini denetleyin.
- Uygulama günlüklerini denetleyin.
Application Insights aşağıdakiler dahil olmak üzere birçok gözlemlenebilir perspektif sağlayabilir:
- Uygulama haritası
- Performans
- Hatalar
- Ölçümler
- Canlı Ölçümler
- Kullanılabilirlik
- Günlükler
Application Insights özelliğini kullanma
Application Insights özelliği etkinleştirildiğinde şunları yapabilirsiniz:
Gezinti bölmesinde Application Insights'ı seçerek Application Insights'ın Genel Bakış sayfasını görüntüleyin. Genel Bakış sayfasında, çalışan tüm uygulamalara genel bir bakış gösterilir.
Uygulamalar arasındaki çağrıların durumunu görmek için Uygulama Haritası'nı seçin.
Customers-service arasındaki bağlantıyı seçin ve
petclinic
SQL sorgusu gibi diğer ayrıntıları görüntüleyin.Uç noktaya istekte bulunan tüm uygulamaları görmek için bir uç nokta seçin.
Tüm uygulamaların işlemlerinin, bağımlılıklarının ve rollerinin performans verilerini görmek için gezinti bölmesinde Performans'ı seçin.
Uygulamalarınızdan beklenmeyen hataları veya özel durumları görmek için gezinti bölmesinde Hatalar'ı seçin.
Gezinti bölmesinde Ölçümler'i seçin ve varsa hem Spring Boot ölçümlerini hem de özel ölçümleri görmek için ad alanını seçin.
Farklı boyutların gerçek zamanlı ölçümlerini görmek için gezinti bölmesinde Canlı Ölçümler'i seçin.
Gezinti bölmesinde, Application Insights'ta Kullanılabilirlik testleri oluşturarak Web uygulamalarının kullanılabilirliğini ve yanıt hızını izlemek için Kullanılabilirlik'i seçin.
Gezinti bölmesinde Günlükler'i seçerek tüm uygulamaların günlüklerini veya filtreleme sırasında
cloud_RoleName
bir uygulamanın günlüklerini görüntüleyin.
Azure portalını kullanarak Application Insights'i yönetme
Aşağıdaki yordamı kullanarak Java İşlem İçi Aracısı'nı etkinleştirin.
Hizmete git | Hizmet örneğinizin Genel Bakış sayfası ve ardından İzleme bölümünde Application Insights'ı seçin.
Azure Spring Apps'te Application Insights'ı etkinleştirmek için Application Insights'ı etkinleştir'i seçin.
Application Insights'ın mevcut bir örneğini seçin veya yeni bir tane oluşturun.
Application Insights etkinleştirildiğinde isteğe bağlı bir örnekleme oranı (%10,0) yapılandırabilirsiniz.
Değişiklikleri kaydetmek için Kaydet’i seçin.
Not
Farklı Azure Spring Apps örneklerinde aynı Application Insights örneğini kullanmayın veya karma veriler gösterilir.
Application Insights'ta geçerli ayarları denetlemek veya güncelleştirmek için Portalı kullanabilirsiniz.
Azure portalını kullanarak Application Insights'i etkinleştirme
Application Insights’ı seçin.
Bağlamayı düzenle'yi veya İlişkisiz köprüyü seçerek Application Insights'ı etkinleştirin.
Application Insights veya Örnekleme oranını düzenleyin, ardından Kaydet'i seçin.
Application Insights'ı devre dışı bırakma
Application Insights’ı seçin.
Application Insights'ı devre dışı bırakmak için Bağlamayı kaldır'ı seçin.
Application Insights Ayarlarını Değiştirme
Application Insights bölümünü açmak için Application Insights sütununun altındaki adı seçin.
Derleme Hizmeti'nde Application Insights derleme paketi bağlamalarını düzenleme
Derleme Hizmeti'nde Application Insights derleme paketi bağlamalarının geçerli ayarlarını denetlemek ve güncelleştirmek için şu adımları izleyin:
- Derleme Hizmeti'ne tıklayın.
- Oluşturucunuzu seçin.
- Bağlamalar sütununun altında Düzenle'yi seçin.
Application Insights ayarları, Bağlama türü sütunu altında listelenen ApplicationInsights öğesinde bulunur.
Application Insights derleme paketi bağlamalarını açmak ve düzenlemek için İlişkili köprüyü seçin veya üç noktanın altındaki Bağlamayı Düzenle'yi seçin.
Bağlama ayarlarını düzenleyin, ardından Kaydet'i seçin.
Azure CLI kullanarak Application Insights'i yönetme
Azure CLI komutlarını kullanarak Application Insights'ı yönetebilirsiniz. Aşağıdaki komutlarda, yer tutucu> metni açıklanan değerlerle değiştirmeyi <unutmayın. <Service-instance-name> yer tutucusu, Azure Spring Apps örneğinizin adını ifade eder.
Application Insights’ı Etkinleştir
Azure Spring Apps örneği oluştururken Application Insights'ı yapılandırmak için aşağıdaki komutu kullanın. Bağımsız değişken için app-insights
bir Application Insights adı veya kaynak kimliği belirtebilirsiniz.
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
Aşağıdaki örnekte gösterildiği gibi bir Application Insights bağlantı dizesi (tercih edilen) veya izleme anahtarı da kullanabilirsiniz.
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
Application Insights'ı devre dışı bırakma
Azure Spring Apps örneği oluştururken Application Insights'ı devre dışı bırakmak için aşağıdaki komutu kullanın:
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
Application Insights ayarlarını denetleme
Mevcut bir Azure Spring Apps örneğinin Application Insights ayarlarını denetlemek için aşağıdaki komutu kullanın:
az spring app-insights show \
--resource-group <resource-group-name> \
--name <service-instance-name>
Application Insights'i güncelleştirme
Application Insights'ı bir bağlantı dizesi (tercih edilen) veya izleme anahtarı kullanacak şekilde güncelleştirmek için aşağıdaki komutu kullanın:
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>
Application Insights'ı kaynak adını veya kimliğini kullanacak şekilde güncelleştirmek için aşağıdaki komutu kullanın:
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--app-insights <name-or-resource-ID> \
--sampling-rate <sampling-rate>
Update komutuyla Application Insights'ı devre dışı bırakma
Mevcut bir Azure Spring Apps örneğinde Application Insights'ı devre dışı bırakmak için aşağıdaki komutu kullanın:
az spring app-insights update \
--resource-group <resource-group-name> \
--name <service-instance-name> \
--disable
Application Insights derleme paketi bağlamalarını yönetme
Bu bölüm yalnızca Kurumsal plan için geçerlidir ve önceki bölümü tamamlayan yönergeler sağlar.
Azure Spring Apps Enterprise planı, Azure Uygulaması lication Insights'ı türüyle ApplicationInsights
tümleştirmek için derleme paketi bağlamalarını kullanır. Daha fazla bilgi için bkz . APM tümleştirmesi ve CA sertifikalarını yapılandırma.
Application Insights derleme paketi bağlaması oluşturmak için aşağıdaki komutu kullanın:
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>
Tüm derleme paketi bağlamalarını listelemek ve Application Insights bağlamalarının türünü ApplicationInsights
bulmak için aşağıdaki komutu kullanın:
az spring build-service builder buildpack-binding list \
--resource-group <your-resource-group-name> \
--service <your-service-resource-name> \
--builder-name <your-builder-name>
Application Insights derleme paketi bağlamasını değiştirmek için aşağıdaki komutu kullanın:
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>
Application Insights derleme paketi bağlaması almak için aşağıdaki komutu kullanın:
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>
Application Insights derleme paketi bağlamasını silmek için aşağıdaki komutu kullanın:
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>
Otomasyon
Aşağıdaki bölümlerde Bicep, Azure Resource Manager şablonları (ARM şablonları) veya Terraform kullanarak dağıtımınızı otomatikleştirme adımları açıklanmaktadır.
Bicep
Bicep dosyası kullanarak dağıtmak için aşağıdaki içeriği bir main.bicep dosyasına kopyalayın. Daha fazla bilgi için bkz . Microsoft.AppPlatform Spring/monitoringSettings.
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
}
}
ARM şablonları
ARM şablonu kullanarak dağıtmak için aşağıdaki içeriği bir azuredeploy.json dosyasına kopyalayın. Daha fazla bilgi için bkz . Microsoft.AppPlatform Spring/monitoringSettings.
{
"$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
Terraform dağıtımı için aşağıdaki şablonu kullanın. Daha fazla bilgi için bkz . 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"
}
}
Kurumsal plandaki otomasyon destek bekliyor. Belgeler kullanıma sunulduğu anda eklenir.
Java aracısı güncelleştirme/yükseltme
Java aracısı JDK ile düzenli olarak güncelleştirilir/yükseltilir ve bu durum aşağıdaki senaryoları etkileyebilir.
Not
JDK sürümü yılda üç ayda bir güncelleştirilir/yükseltilir.
- Güncelleştirmeden/yükseltmeden önce Java aracısını kullanan mevcut uygulamalar etkilenmez.
- Güncelleştirme/yükseltme sonrasında oluşturulan uygulamalar Java aracısının yeni sürümünü kullanır.
- Daha önce Java aracısını kullanmayan mevcut uygulamalar, Java aracısının yeni sürümünü kullanmak için yeniden başlatma veya yeniden dağıtma gerektirir.
Derleme paketi güncelleştirildiğinde Java aracısı güncelleştirilir/yükseltilir.
Java aracısı yapılandırması çalışırken yükleme
Azure Spring Apps, uygulamaların yeniden başlatılmasına gerek kalmadan aracı yapılandırması ayarlarını ayarlamak için etkin yükleme mekanizmasına sahiptir.
Not
Çalışırken yükleme mekanizmasının dakikalar içinde gecikmesi vardır.
Java aracısı zaten etkinse Application Insights örneğinde veya
SamplingRate
değerinde yapılan değişiklikler için uygulamanın yeniden başlatılması gerekmez.Java aracısını etkinleştirirseniz uygulamaları yeniden başlatmanız gerekir.
Java aracısını devre dışı bıraktığınızda, uygulamalar dakikalar içinde bir gecikmeden sonra tüm izleme verilerini göndermeyi durdurur. Aracıyı Java çalışma zamanı ortamından kaldırmak için uygulamaları yeniden başlatabilirsiniz.
Azure Spring Apps ile Application Insights arasında kavram eşleştirme
Azure Spring Apps | Application Insights |
---|---|
App |
* Uygulama Eşlemesi/Rolü * Canlı Ölçümler/Rol * Hatalar/Roller/Bulut Rolü * Performans/Roller/Rol Olabilir |
App Instance |
* Uygulama Eşlemesi/Rol Örneği * Canlı Ölçümler/Hizmet Adı * Hatalar/Roller/Bulut Örneği * Performans/Roller/Örnek Olabilir |
Azure Spring Apps'in adı App Instance
aşağıdaki senaryolarda değiştirilir veya oluşturulur:
- Yeni bir uygulama oluşturursunuz.
- Mevcut bir uygulamaya JAR dosyası veya kaynak kodu dağıtırsınız.
- Mavi/yeşil dağıtım başlatırsınız.
- Uygulamayı yeniden başlatırsınız.
- Bir uygulamanın dağıtımını durdurup yeniden başlatırsınız.
Veriler Application Insights'ta depolandığında, Java aracısı etkinleştirildikten sonra oluşturulan veya dağıtılan Azure Spring Apps uygulama örneklerinin geçmişini içerir. Örneğin, Application Insights portalında dün oluşturulan ancak son 24 saat gibi belirli bir zaman aralığında silinen uygulama verilerini görebilirsiniz. Aşağıdaki senaryolarda bunun nasıl çalıştığı gösterilmektedir:
- Bugün 08:00 civarında Java aracısının etkinleştirildiği Azure Spring Apps'ten bir uygulama oluşturdunuz ve bugün 08:10 civarında bu uygulamaya bir JAR dosyası dağıttınız. Bazı testlerin ardından kodu değiştirir ve bugün saat 08:30'da bu uygulamaya yeni bir JAR dosyası dağıtırsınız. Ardından bir mola verin ve saat 11:00 gibi geri döndüğünüzde Application Insights'tan bazı verileri kontrol edin. Şunu görürsünüz:
- Uygulama Haritası'nda son 24 saat içindeki zaman aralıkları ve Hatalar, Performans ve Ölçümler ile üç örnek.
- Uygulama Haritası'nda son bir saat içinde zaman aralığı olan bir örnek ve Hatalar, Performans ve Ölçümler.
- Canlı Ölçümler'deki bir örnek.
- Bugün 08:00 civarında Java aracısının etkinleştirildiği Azure Spring Apps'ten bir uygulama oluşturdunuz ve bugün 08:10 civarında bu uygulamaya bir JAR dosyası dağıttınız. Bugün 08:30 civarında başka bir JAR dosyasıyla mavi/yeşil dağıtım yapmayı deneyin. Şu anda bu uygulama için iki dağıtımınız vardır. Bugün saat 11:00 gibi bir ara verdikten sonra Application Insights'tan bazı verileri denetlemek istiyorsunuz. Şunu görürsünüz:
- Uygulama Haritası'nda son 24 saat içindeki zaman aralıkları ve Hatalar, Performans ve Ölçümler ile üç örnek.
- Uygulama Haritası'nda son saat içindeki zaman aralıkları ve Hatalar, Performans ve Ölçümler ile iki örnek.
- Canlı Ölçümler'de iki örnek.