Bir Java uygulaması için aracıyı yükledikten sonra Cloud Monitor 2.0 uygulamayı izlemeye başlar. Uygulama topolojisi, çağrı yığınları, anormal işlemler, yavaş işlemler ve SQL analizi gibi bir dizi izleme verisini görüntüleyebilirsiniz. Bu konuda, bir Java uygulaması için aracıyı nasıl manuel olarak yükleyeceğiniz açıklanmaktadır.
Kubernetes ortamında dağıtılan uygulamalar için manuel aracı kurulumu önerilmez. Bunun yerine, bir bileşen yükleyerek aracıyı kurun. Daha fazla bilgi için bkz. ack-onepilot bileşenini kullanarak Container Service for Kubernetes (ACK) ve Container Compute Service (ACS) için Java aracısını yükleme.
Ön koşullar
Başlamadan önce aşağıdakileri doğrulayın:
Ağınız ARMS aracı bağlantı gereksinimlerini karşılar
JDK sürümünüz Desteklenen JDK sürümleri arasındadır
JVM maksimum yığın belleği (
-Xmx) en az 256 MB'tır
Aracıyı yükleme
Cloud Monitor 2.0 konsoluna giriş yapın ve bir çalışma alanı seçin. Sol gezinme bölmesinde Integration Center öğesine tıklayın.
Java Application Monitor kartına tıklayın ve ardından Manual Installation seçeneğine tıklayın.
-
Aşağıdaki yöntemlerden birini kullanarak aracı paketini indirin:
Konsoldan -- Java Application Monitor panelindeki indirme talimatlarını izleyin.
Komut satırından -- Bulunduğunuz bölgeye uygun
wgetkomutunu çalıştırın. Aşağıdaki tablodan bölgenizi seçin.
-
İndirilen ZIP dosyasını bir çalışma dizinine çıkarın:
unzip AliyunJavaAgent.zip -d <working-directory><working-directory>ifadesini, aracıyı yüklemek istediğiniz dizinle değiştirin. -
AppName ve LicenseKey parametrelerini ekleyin.
Java Application Monitoring panelinden LicenseKey değerini alın. AppName parametresi, ARMS içinde bağlanılacak uygulamayı belirtir. Uygulama adını özelleştirebilirsiniz. Dağıtık mimaride bir uygulama birden çok eş örnek içerebilir.
ÖnemliLicenseKey her çalışma alanı için özeldir. Yeni bir çalışma alanı için yeni bir LicenseKey almanız gerekir.
AppName ve LicenseKey bilgilerini aşağıdaki yöntemlerden biriyle ekleyebilirsiniz.
Yöntem 1 (Önerilen): Başlatma betiğinde
{LicenseKey}ve{AppName}ifadelerini, konsoldan aldığınız LicenseKey değeri ve uygulamanızın AppName değeriyle değiştirin.-
Yöntem 2: Farklı uygulamalar için başlatma betiğini yeniden kullanmak istiyorsanız, aracı yapılandırma dosyasını değiştirerek LicenseKey ve AppName değerlerini belirtebilirsiniz. Bunu yapmak için aşağıdaki adımları uygulayın:
Not4.4.0 öncesi aracı sürümlerinde bu yöntem uygulamayı varsayılan çalışma alanına bağlar.
Önceki adımda açtığınız sürüm dosyasında Java aracı sürümünü kontrol edin.
-
Aracı yapılandırma dosyasını değiştirin.
4.0.0 ve üzeri sürümdeki aracılar
Aracı dizininde arms-agent.properties adlı bir dosya oluşturun ve aşağıdaki yapılandırmaları ekleyin. Ardından, yapılandırma dosyasını etkinleştirmek için başlatma komutuna
-Dotel.javaagent.configuration-file=/path/to/arms-agent.propertiesparametresini ekleyin veyaOTEL_JAVAAGENT_CONFIGURATION_FILE=/path/to/arms-agent.propertiesortam değişkenini ayarlayın.arms.licenseKey={LicenseKey} arms.appName={AppName}4.0.0 öncesi sürümdeki aracılar
Aracı paketi içindeki arms-agent.config dosyasına aşağıdaki yapılandırmaları ekleyin.
arms.licenseKey={LicenseKey} arms.appName={AppName}NotAracı yapılandırma dosyasındaki diğer yapılandırma öğeleri hakkında daha fazla bilgi için bkz. Java aracı yapılandırma dosyasını ve varsayılan raporlama bölgesini değiştirme.
-
Başlatma komutuna bağlantı komutunu ekleyin.
{user.workspace}ifadesini, aracı kurulum paketini çıkardığınız dizinle değiştirin. demoApp.jar ifadesini JAR paketinizin gerçek yoluyla değiştirin.Not2.7.3.5 öncesi bir aracı sürümü kullanıyorsanız, bu konudaki AliyunJavaAgent/aliyun-java-agent.jar ifadesini ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar ile değiştirin. Aracıyı en kısa sürede en son sürüme yükseltmenizi öneririz.
Windows işletim sisteminde betikteki
/karakterini\ile ve.shdosya uzantısını.batile değiştirin.V2.7.1.4 ve sonraki aracı sürümleri uygulama güvenliğini destekler. Uygulama İzleme'ye bağlanırken uygulama güvenliğini etkinleştirmek için betiğe
-Darms.appsec.enable=trueparametresini ekleyin. Uygulama güvenliğinin faturalandırma kuralları hakkında daha fazla bilgi için bkz. Faturalandırma.
Çalışma zamanı ortamı
Adımlar
Spring Boot veya
java -jarkomutu kullanılarak başlatılan diğer Java uygulamalarıBaşlatma komutuna -javaagent parametresini ekleyin. -javaagent parametresinin -jar parametresinden önce yer aldığından emin olun.
java -javaagent:/{user.workspace}/AliyunJavaAgent/aliyun-java-agent.jar -Darms.licenseKey={LicenseKey} -Darms.appName={AppName} -Darms.workspace={workspace} -jar demoApp.jarTomcat
Aşağıdaki yapılandırmayı {TOMCAT_HOME}/bin/setenv.sh dosyasına ekleyin.
JAVA_OPTS="$JAVA_OPTS -javaagent:/{user.workspace}/AliyunJavaAgent/aliyun-java-agent.jar -Darms.licenseKey={LicenseKey} -Darms.appName={AppName} -Darms.workspace={workspace} "Tomcat sürümünüzde setenv.sh yapılandırma dosyası yoksa {TOMCAT_HOME}/bin/catalina.sh dosyasını açın ve önceki yapılandırmayı JAVA_OPTS tanımından sonra ekleyin. Örnek için catalina.sh dosyasının 256. satırına bakın.
Jetty
Aşağıdaki yapılandırmayı {JETTY_HOME}/start.ini yapılandırma dosyasına ekleyin.
aliyun-java-agent.jar --exec -javaagent:/{user.workspace}/AliyunJavaAgent/aliyun-java-agent.jar -Darms.licenseKey={LicenseKey} -Darms.appName={AppName} -Darms.workspace={workspace}Tek bir sunucuda aynı uygulamanın birden çok örneğini dağıtmak için JVM işlemlerini ayırt etmek amacıyla -Darms.agentId parametresini (mantıksal kimlik) kullanın. Örneğin:
java -javaagent:/{user.workspace}/AliyunJavaAgent/aliyun-java-agent.jar -Darms.licenseKey={LicenseKey} -Darms.appName={AppName} -Darms.workspace={workspace} -Darms.agentId=001 -jar demoApp.jar Java uygulamasını yeniden başlatın.
(İsteğe bağlı) Docker ile yükleme
Docker ortamları için Dockerfile dosyanızı değiştirmek üzere aşağıdaki Dockerfile örneğine başvurabilirsiniz.
# Replace {original-docker-image:tag} with your image address.
FROM {original-docker-image:tag}
# Replace the working directory as needed.
WORKDIR /root/
# Refer to the agent installation steps above to get the agent download URL for your region. Note the difference between the public endpoint and the VPC endpoint.
RUN wget "http://arms-apm-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/AliyunJavaAgent.zip" -O AliyunJavaAgent.zip
# Decompress the agent.
RUN unzip AliyunJavaAgent.zip -d /root/
# Write LicenseKey, AppName, and workspace to environment variables.
ENV arms_licenseKey={LicenseKey}
ENV arms_appName={AppName}
ENV arms_workspace={workspace}
# Concatenate the required startup script and append it to the JAVA_TOOL_OPTIONS environment variable.
ENV JAVA_TOOL_OPTIONS ${JAVA_TOOL_OPTIONS} '-javaagent:/root/AliyunJavaAgent/aliyun-java-agent.jar -Darms.licenseKey='${arms_licenseKey}' -Darms.appName='${arms_appName}' -Darms.workspace='${arms_workspace}
# Check the JAVA_TOOL_OPTIONS environment variable.
RUN env | grep JAVA_TOOL_OPTIONS
# Add custom Dockerfile logic below.
# ......
İzleme ayrıntılarını görüntüleme
Cloud Monitor 2.0 konsoluna giriş yapın ve bir çalışma alanı seçin. Sol gezinme bölmesinde All features > Application Observability > Application Monitoring yolunu izleyin.
Application List sayfasında bağlı uygulamalarınız listelenir. Ayrıntılı izleme verilerini görüntülemek için bir application name değerine tıklayın.