Elastik APM Java Aracısı ile Spring Boot uygulamalarını izleme
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.
Bu makale şunlar için geçerlidir: ✔️ Temel/Standart ❌ Kurumsal
Bu makalede, Azure Spring Apps'te çalışan Spring Boot uygulamalarını izlemek için Elastik APM Aracısı'nın nasıl kullanılacağı açıklanmaktadır.
Elastik Gözlemlenebilirlik Çözümü ile aşağıdakiler için birleştirilmiş gözlemlenebilirlik elde edebilirsiniz:
- Elastik APM Java Aracısını kullanarak ve Azure Spring Apps ile kalıcı depolama kullanarak uygulamaları izleyin.
- Azure Spring Apps günlüklerini Elastik'e göndermek için tanılama ayarlarını kullanın. Daha fazla bilgi için bkz . Tanılama ayarlarını kullanarak elastik (ELK) ile günlükleri analiz etme.
Aşağıdaki videoda Elastic kullanan Spring Boot uygulamaları için birleştirilmiş gözlemlenebilirlik tanıtilmiştir.
Önkoşullar
Spring Petclinic uygulamasını dağıtma
Bu makalede spring petclinic örneği, gerekli adımları adım adım izleyin. Örnek uygulamayı dağıtmak için aşağıdaki adımları kullanın:
Spring Boot uygulamalarını dağıtma ve ortam değişkenlerini ayarlama bölümüne ulaşana kadar Azure Spring Apps ve MySQL kullanarak Spring Boot uygulamalarını dağıtma bölümündeki adımları izleyin.
Azure Spring Apps'te çalıştırılacak bir uygulama oluşturmak için aşağıdaki komutla Azure CLI için Azure Spring Apps uzantısını kullanın:
az spring app create \ --resource-group <your-resource-group-name> \ --service <your-Azure-Spring-Apps-instance-name> \ --name <your-app-name> \ --is-public true
Azure Spring Apps için özel kalıcı depolamayı etkinleştirme
Özel kalıcı depolamayı etkinleştirmek için aşağıdaki adımları kullanın:
Azure Spring Apps'te kendi kalıcı depolama alanınızı etkinleştirme bölümünde yer alan adımları izleyin.
Azure Spring Apps uygulamalarınız için kalıcı depolama alanı eklemek için aşağıdaki Azure CLI komutunu kullanın.
az spring app append-persistent-storage \ --resource-group <your-resource-group-name> \ --service <your-Azure-Spring-Apps-instance-name> \ --name <your-app-name> \ --persistent-storage-type AzureFileVolume \ --share-name <your-Azure-file-share-name> \ --mount-path <unique-mount-path> \ --storage-name <your-mounted-storage-name>
Elastik APM Java Aracısı'nı etkinleştirme
Devam etmeden önce Elastik APM sunucusu bağlantı bilgilerinizin kullanışlı olması gerekir. Bu bilgiler, Azure'da Elastic'i dağıtmış olduğunuzu varsayar. Daha fazla bilgi için bkz . Microsoft Azure'da Elastik'i dağıtma ve yönetme. Bu bilgileri almak için aşağıdaki adımları kullanın:
Azure portalında Elastik dağıtımınızın Genel Bakış sayfasına gidin ve Elastik Bulut Dağıtımını Yönet'i seçin.
Elastik Bulut Konsolu'nda dağıtımınızın altında APM & Fleet bölümünü seçerek Elastik APM Sunucusu uç noktasını ve gizli dizi belirtecini alın.
Maven Central'dan Elastic APM Java Agent'ı indirin.
Elastik APM Aracısı'nı daha önce etkinleştirdiğiniz özel kalıcı depolama alanına yükleyin. aracı JAR dosyasını eklemek için Azure Dosyalar hare'ye gidin ve Karşıya Yükle'yi seçin.
Elastik APM uç noktasını ve gizli dizi belirtecini aldıktan sonra, uygulamaları dağıtırken Elastic APM Java aracısını etkinleştirmek için aşağıdaki komutu kullanın. Yer tutucu
<agent-location>
, Elastic APM Java Aracısı'nın bağlı depolama konumunu ifade eder.az spring app deploy \ --name <your-app-name> \ --artifact-path <unique-path-to-your-app-jar-on-custom-storage> \ --jvm-options='-javaagent:<elastic-agent-location>' \ --env ELASTIC_APM_SERVICE_NAME=<your-app-name> \ ELASTIC_APM_APPLICATION_PACKAGES='<your-app-package-name>' \ ELASTIC_APM_SERVER_URL='<your-Elastic-APM-server-URL>' \ ELASTIC_APM_SECRET_TOKEN='<your-Elastic-APM-secret-token>'
Sağlamayı otomatikleştirme
Terraform, Bicep veya Azure Resource Manager şablonu (ARM şablonu) kullanarak bir sağlama otomasyonu işlem hattı da çalıştırabilirsiniz. Bu işlem hattı, oluşturup dağıttığınız tüm yeni uygulamaları izlemek ve izlemek için eksiksiz bir uygulamalı kullanım deneyimi sağlayabilir.
Terraform kullanarak sağlamayı otomatikleştirme
Terraform şablonunda ortam değişkenlerini yapılandırmak için şablona aşağıdaki kodu ekleyin ve ...> yer tutucularını kendi değerlerinizle değiştirin<. Daha fazla bilgi için bkz . Etkin Azure Spring Apps Dağıtımlarını Yönetme.
resource "azurerm_spring_cloud_java_deployment" "example" {
...
jvm_options = "-javaagent:<elastic-agent-location>"
...
environment_variables = {
"ELASTIC_APM_SERVICE_NAME"="<your-app-name>",
"ELASTIC_APM_APPLICATION_PACKAGES"="<your-app-package>",
"ELASTIC_APM_SERVER_URL"="<your-Elastic-APM-server-URL>",
"ELASTIC_APM_SECRET_TOKEN"="<your-Elastic-APM-secret-token>"
}
}
Bicep dosyası kullanarak sağlamayı otomatikleştirme
Bir Bicep dosyasında ortam değişkenlerini yapılandırmak için aşağıdaki kodu dosyaya ekleyin ve ...> yer tutucularını kendi değerlerinizle değiştirin<. Daha fazla bilgi için bkz . Microsoft.AppPlatform Spring/apps/deployments.
deploymentSettings: {
environmentVariables: {
ELASTIC_APM_SERVICE_NAME='<your-app-name>',
ELASTIC_APM_APPLICATION_PACKAGES='<your-app-package>',
ELASTIC_APM_SERVER_URL='<your-Elastic-APM-server-URL>',
ELASTIC_APM_SECRET_TOKEN='<your-Elastic-APM-secret-token>'
},
jvmOptions: '-javaagent:<elastic-agent-location>',
...
}
ARM şablonu kullanarak sağlamayı otomatikleştirme
BIR ARM şablonunda ortam değişkenlerini yapılandırmak için şablona aşağıdaki kodu ekleyin ve ...> yer tutucularını kendi değerlerinizle değiştirin<. Daha fazla bilgi için bkz . Microsoft.AppPlatform Spring/apps/deployments.
"deploymentSettings": {
"environmentVariables": {
"ELASTIC_APM_SERVICE_NAME"="<your-app-name>",
"ELASTIC_APM_APPLICATION_PACKAGES"="<your-app-package>",
"ELASTIC_APM_SERVER_URL"="<your-Elastic-APM-server-URL>",
"ELASTIC_APM_SECRET_TOKEN"="<your-Elastic-APM-secret-token>"
},
"jvmOptions": "-javaagent:<elastic-agent-location>",
...
}
Elastik APM Java Aracıyı Yükseltme
Yükseltmenizi planlamak için bkz . Azure'da Elastik Bulut için yükseltme sürümleri ve APM için Yeni Değişiklikler . APM Sunucusu'nu yükselttikten sonra Elastik APM Java aracısı JAR dosyasını özel kalıcı depolama alanına yükleyin. Ardından güncelleştirilmiş JVM seçenekleriyle yükseltilen Elastic APM Java aracısı JAR'ı işaret ederek uygulamalarınızı yeniden başlatın.
Elastik APM ile uygulamaları ve ölçümleri izleme
Uygulamaları ve ölçümleri izlemek için aşağıdaki adımları kullanın:
Azure portalında Elastik dağıtımınızın Genel Bakış sayfasına gidin ve Kibana bağlantısını seçin.
Kibana açıldıktan sonra arama çubuğunda APM'yi arayın ve ARDıNDAN APM'yi seçin.
Kibana APM, Uygulama İzleme iş akışlarını desteklemek için seçilmiş uygulamadır. Burada istek/yanıt süreleri, aktarım hızı ve hizmetteki işlemler gibi süreyi en çok etkileyen üst düzey ayrıntıları görüntüleyebilirsiniz.
Dağıtılmış izleme gibi işleme özgü ayrıntıları anlamak için belirli bir işlemde detaya gidebilirsiniz.
Elastik APM Java aracısı, sorun giderme amacıyla kullanıcılar için Kibana Uygulaması ile kullanılabilen Azure Spring Apps uygulamalarından JVM ölçümlerini de yakalar.
Elastik çözümde yerleşik yapay zeka altyapısını kullanarak Azure Spring Apps Hizmetleri'nde Anomali Algılama'yı etkinleştirebilir ve Teams bildirimi, JIRA sorunu oluşturma, web kancası tabanlı API çağrısı ve diğerleri gibi uygun bir eylem seçebilirsiniz.