Introdução (Complementar)
Nas seções a seguir, saiba como obter a instrumentação automática do Java para ambientes técnicos específicos.
Serviço de Aplicativo do Azure
Para obter mais informações, consulte Monitoramento de aplicativos para o Serviço de Aplicativo do Azure e Java.
Azure Functions
Para obter mais informações, confira Monitoramento do Azure Functions com o Azure Monitor Application Insights.
Azure Spring Apps
Para obter mais informações, confira Usar o agente em processo do Application Insights para Java no Azure Spring Apps.
Contêineres
Observação
Com os aplicativos Spring Boot Native Image, use o projeto Azure Monitor OpenTelemetry Distro/Application Insights no aplicativo Java de imagem nativa do Spring Boot em vez do agente Java do Application Insights.
Ponto de entrada do Docker
Se estiver usando o formulário exec, adicione o parâmetro -javaagent:"path/to/applicationinsights-agent-3.5.2.jar"
à lista de parâmetros em algum lugar antes do parâmetro "-jar"
, por exemplo:
ENTRYPOINT ["java", "-javaagent:path/to/applicationinsights-agent-3.5.2.jar", "-jar", "<myapp.jar>"]
Se estiver usando o formulário do shell, adicione o argumento -javaagent:"path/to/applicationinsights-agent-3.5.2.jar"
da JVM (Máquina Virtual Java) em algum lugar antes de -jar
, por exemplo:
ENTRYPOINT java -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" -jar <myapp.jar>
Arquivo do Docker
Um exemplo de Dockerfile:
FROM ...
COPY target/*.jar app.jar
COPY agent/applicationinsights-agent-3.5.2.jar applicationinsights-agent-3.5.2.jar
COPY agent/applicationinsights.json applicationinsights.json
ENV APPLICATIONINSIGHTS_CONNECTION_STRING="CONNECTION-STRING"
ENTRYPOINT["java", "-javaagent:applicationinsights-agent-3.5.2.jar", "-jar", "app.jar"]
Neste exemplo, você copiará os arquivos applicationinsights-agent-3.5.2.jar
e applicationinsights.json
de uma pasta agent
(você pode escolher qualquer pasta do computador). Esses dois arquivos devem estar na mesma pasta do contêiner do Docker.
Imagens de contêiner de um parceiro
Se você estiver usando uma imagem de contêiner de um parceiro que não pode modificar, monte o JAR do agente Java do Application Insights no contêiner externamente. Defina a variável de ambiente para o contêiner JAVA_TOOL_OPTIONS=-javaagent:/path/to/applicationinsights-agent.jar
.
Spring Boot
Para obter mais informações, consulte Usar o Application Insights do Azure Monitor com o Spring Boot.
Servidores de Aplicativo Java
Para obter mais informações sobre como configurar o agente Java do Application Insights, confira Habilitar o OpenTelemetry do Azure Monitor para Java. As seções a seguir trazem detalhes que podem ser úteis ao configurar o argumento -javaagent:...
da JVM em diferentes servidores de aplicativos.
Tomcat 8 (Linux)
Tomcat instalado por meio do apt-get ou por meio do yum
Se você instalou o Tomcat por meio do apt-get
ou do yum
, deverá ter um arquivo /etc/tomcat8/tomcat8.conf
. Adicione esta linha ao final desse arquivo:
JAVA_OPTS="$JAVA_OPTS -javaagent:path/to/applicationinsights-agent-3.5.2.jar"
Tomcat instalado por meio de download e descompactado
Se você instalou o Tomcat por meio do download e o descompactou do https://tomcat.apache.org, deverá ter um arquivo <tomcat>/bin/catalina.sh
. Crie um novo arquivo no mesmo diretório chamado <tomcat>/bin/setenv.sh
com os conteúdos a seguir.
CATALINA_OPTS="$CATALINA_OPTS -javaagent:path/to/applicationinsights-agent-3.5.2.jar"
Se o arquivo <tomcat>/bin/setenv.sh
já existir, modifique esse arquivo e adicione -javaagent:path/to/applicationinsights-agent-3.5.2.jar
a CATALINA_OPTS
.
Tomcat 8 (Windows)
Executar o Tomcat a partir da linha de comando
Localize o arquivo <tomcat>/bin/catalina.bat
. Crie um novo arquivo no mesmo diretório chamado <tomcat>/bin/setenv.bat
com os conteúdos a seguir.
set CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.5.2.jar
Aspas não são necessárias, mas se você quiser incluí-las, o posicionamento adequado será:
set "CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.5.2.jar"
Se o arquivo <tomcat>/bin/setenv.bat
já existir, modifique esse arquivo e adicione -javaagent:path/to/applicationinsights-agent-3.5.2.jar
a CATALINA_OPTS
.
Executar o Tomcat como serviço Windows
Localize o arquivo <tomcat>/bin/tomcat8w.exe
. Execute esse executável e -javaagent:path/to/applicationinsights-agent-3.5.2.jar
adicione ao abaixo da Java Options
guia Java
.
JBoss Enterprise Application Platform 7
No Red Hat JBoss EAP (Enterprise Application Platform) 7, é possível configurar um servidor autônomo ou um servidor de domínio.
Servidor autônomo
Adicione -javaagent:path/to/applicationinsights-agent-3.5.2.jar
à variável de JAVA_OPTS
ambiente existente no arquivo JBOSS_HOME/bin/standalone.conf
(Linux) ou JBOSS_HOME/bin/standalone.conf.bat
(Windows):
JAVA_OPTS="-javaagent:path/to/applicationinsights-agent-3.5.2.jar -Xms1303m -Xmx1303m ..."
...
Servidor de Domínio
Adicionar -javaagent:path/to/applicationinsights-agent-3.5.2.jar
ao existente jvm-options
no JBOSS_HOME/domain/configuration/host.xml
:
...
<jvms>
<jvm name="default">
<heap size="64m" max-size="256m"/>
<jvm-options>
<option value="-server"/>
<!--Add Java agent jar file here-->
<option value="-javaagent:path/to/applicationinsights-agent-3.5.2.jar"/>
<option value="-XX:MetaspaceSize=96m"/>
<option value="-XX:MaxMetaspaceSize=256m"/>
</jvm-options>
</jvm>
</jvms>
...
Se você estiver executando vários servidores gerenciados em um só host, será necessário adicionar applicationinsights.agent.id
a system-properties
para cada server
:
...
<servers>
<server name="server-one" group="main-server-group">
<!--Edit system properties for server-one-->
<system-properties>
<property name="applicationinsights.agent.id" value="..."/>
</system-properties>
</server>
<server name="server-two" group="main-server-group">
<socket-bindings port-offset="150"/>
<!--Edit system properties for server-two-->
<system-properties>
<property name="applicationinsights.agent.id" value="..."/>
</system-properties>
</server>
</servers>
...
O valor applicationinsights.agent.id
especificado deve ser exclusivo. Você usará o valor para criar um subdiretório no diretório do Application Insights. Cada processo de JVM precisa de sua própria configuração local do Application Insights e do arquivo de log local do Application Insights. Além disso, se você estiver gerando um relatório para o coletor central, os vários servidores gerenciados compartilharão o arquivo applicationinsights.properties
e, portanto, a applicationinsights.agent.id
especificada será necessária para substituir a configuração agent.id
nesse arquivo compartilhado. O applicationinsights.agent.rollup.id
pode ser especificado de forma semelhante no servidor system-properties
se você precisar substituir a configuração agent.rollup.id
por servidor gerenciado.
Jetty 9
Adicione essas linhas à start.ini
:
--exec
-javaagent:path/to/applicationinsights-agent-3.5.2.jar
Payara 5
Adicionar -javaagent:path/to/applicationinsights-agent-3.5.2.jar
ao existente jvm-options
no glassfish/domains/domain1/config/domain.xml
:
...
<java-config ...>
<!--Edit the JVM options here-->
<jvm-options>
-javaagent:path/to/applicationinsights-agent-3.5.2.jar>
</jvm-options>
...
</java-config>
...
WebSphere 8
Abra o console de gerenciamento.
Acesse Servidores>Servidores de aplicativos WebSphere>Servidores de aplicativos. Escolha os servidores de aplicativos apropriados e selecione Gerenciamento de Processo e Java>Definição de processo>Máquina Virtual Java.
Em
Generic JVM arguments
, adicione o argumento de JVM a seguir.-javaagent:path/to/applicationinsights-agent-3.5.2.jar
Salve e reinicie o servidor de aplicativos.
OpenLiberty 18
Crie um novo arquivo jvm.options
no diretório do servidor (por exemplo, <openliberty>/usr/servers/defaultServer
) e adicione esta linha:
-javaagent:path/to/applicationinsights-agent-3.5.2.jar
Outras pessoas
Consulte a documentação do servidor de aplicativos sobre como adicionar argumentos da JVM.