Introduzione (supplementare)

Nelle sezioni seguenti viene illustrato come ottenere la strumentazione automatica Java per ambienti tecnici specifici.

Servizio app di Azure

Per altre informazioni, vedere Monitoraggio delle applicazioni per app Azure Servizio e Java.

Funzioni di Azure

Per altre informazioni, vedere Monitoraggio di Funzioni di Azure con Application Insights di Monitoraggio di Azure.

Azure Spring Apps

Per altre informazioni, vedere Usare l'agente in-process Java di Application Insights in Azure Spring Apps.

Contenitori

Nota

Con le applicazioni Spring Boot Native Image, usare il progetto di applicazione Java di Spring Boot OpenTelemetry OpenTelemetry in Spring Boot invece dell'agente Java di Application Insights.

Punto di ingresso di Docker

Se si usa il modulo exec , aggiungere il parametro -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" all'elenco dei parametri in un punto precedente al "-jar" parametro, ad esempio:

ENTRYPOINT ["java", "-javaagent:path/to/applicationinsights-agent-3.5.2.jar", "-jar", "<myapp.jar>"]

Se si usa il modulo della shell , aggiungere l'arg -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" Java Virtual Machine (JVM) in un punto precedente -jara , ad esempio:

ENTRYPOINT java -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" -jar <myapp.jar>

File Docker

Esempio di 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"]

In questo esempio si copiano i applicationinsights-agent-3.5.2.jar file e applicationinsights.json da una agent cartella (è possibile scegliere qualsiasi cartella del computer). Questi due file devono trovarsi nella stessa cartella nel contenitore Docker.

Immagini del contenitore partner

Se si usa un'immagine del contenitore partner che non è possibile modificare, montare il file JAR dell'agente Java di Application Insights nel contenitore dall'esterno. Impostare la variabile di ambiente per il contenitore JAVA_TOOL_OPTIONS=-javaagent:/path/to/applicationinsights-agent.jar.

Spring Boot

Per altre informazioni, vedere Uso di Application Insights di Monitoraggio di Azure con Spring Boot.

Server applicazioni Java

Per informazioni sulla configurazione dell'agente Java di Application Insights, vedere Abilitazione di OpenTelemetry di Monitoraggio di Azure per Java. Le sezioni seguenti forniscono informazioni utili per la configurazione dell'arg -javaagent:... JVM in server applicazioni diversi.

Tomcat 8 (Linux)

Tomcat installato tramite apt-get o yum

Se Tomcat è stato installato tramite apt-get o yum, è necessario disporre di un file /etc/tomcat8/tomcat8.conf. Aggiungere questa riga alla fine del file:

JAVA_OPTS="$JAVA_OPTS -javaagent:path/to/applicationinsights-agent-3.5.2.jar"

Tomcat installato tramite download e decomprime

Se Tomcat è stato installato tramite download e decomprimere da https://tomcat.apache.org, è necessario disporre di un file <tomcat>/bin/catalina.sh. Creare un nuovo file nella stessa directory denominata <tomcat>/bin/setenv.sh con il contenuto seguente:

CATALINA_OPTS="$CATALINA_OPTS -javaagent:path/to/applicationinsights-agent-3.5.2.jar"

Se il file <tomcat>/bin/setenv.sh esiste già, modificare il file e aggiungerlo -javaagent:path/to/applicationinsights-agent-3.5.2.jar a CATALINA_OPTS.

Tomcat 8 (Windows)

Eseguire Tomcat dalla riga di comando

Individuare il file <tomcat>/bin/catalina.bat. Creare un nuovo file nella stessa directory denominata <tomcat>/bin/setenv.bat con il contenuto seguente:

set CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.5.2.jar

Le virgolette non sono necessarie, ma se si desidera includerle, la posizione corretta è:

set "CATALINA_OPTS=%CATALINA_OPTS% -javaagent:path/to/applicationinsights-agent-3.5.2.jar"

Se il file <tomcat>/bin/setenv.bat esiste già, modificare il file e aggiungerlo -javaagent:path/to/applicationinsights-agent-3.5.2.jar a CATALINA_OPTS.

Eseguire Tomcat come servizio Windows

Individuare il file <tomcat>/bin/tomcat8w.exe. Eseguire il file eseguibile e aggiungere -javaagent:path/to/applicationinsights-agent-3.5.2.jar all'oggetto Java Options sotto la Java scheda .

JBoss Enterprise Application Platform 7

In Red Hat JBoss Enterprise Application Platform (EAP) 7 è possibile configurare un server autonomo o un server di dominio.

Server autonomo

Aggiungere -javaagent:path/to/applicationinsights-agent-3.5.2.jar alla variabile di ambiente esistente JAVA_OPTS nel file JBOSS_HOME/bin/standalone.conf (Linux) o JBOSS_HOME/bin/standalone.conf.bat (Windows):

    JAVA_OPTS="-javaagent:path/to/applicationinsights-agent-3.5.2.jar -Xms1303m -Xmx1303m ..."
    ...

Server di dominio

Aggiungere -javaagent:path/to/applicationinsights-agent-3.5.2.jar all'oggetto esistente jvm-options in 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 si eseguono più server gestiti in un singolo host, è necessario aggiungere applicationinsights.agent.id a system-properties per ogni 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>
...

Il valore specificato deve essere univoco applicationinsights.agent.id . Usare il valore per creare una sottodirectory nella directory di Application Insights. Ogni processo JVM richiede la configurazione locale di Application Insights e il file di log locale di Application Insights. Inoltre, se si segnala all'agente di raccolta centrale, più server gestiti condividono il applicationinsights.properties file, quindi è necessario specificare l'impostazione per eseguire l'override applicationinsights.agent.id dell'impostazione agent.id in tale file condiviso. Può applicationinsights.agent.rollup.id essere specificato in modo analogo nel server system-properties se è necessario eseguire l'override dell'impostazione agent.rollup.id per ogni server gestito.

Jetty 9

Aggiungere queste righe a start.ini:

--exec
-javaagent:path/to/applicationinsights-agent-3.5.2.jar

Payara 5

Aggiungere -javaagent:path/to/applicationinsights-agent-3.5.2.jar all'oggetto esistente jvm-options in 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

  1. Aprire Console di gestione.

  2. Passare a Server server applicazioni WebSphere Server>applicazioni>Server applicazioni. Scegliere i server applicazioni appropriati e selezionare Java e Process Management Process definition>Java Virtual Machine (Definizione processo di gestione>processi Java).

  3. In Generic JVM argumentsaggiungere l'argomento JVM seguente.

    -javaagent:path/to/applicationinsights-agent-3.5.2.jar
    
  4. Salvare e riavviare il server applicazioni.

OpenLiberty 18

Creare un nuovo file jvm.options nella directory del server ,ad esempio <openliberty>/usr/servers/defaultServer, e aggiungere questa riga:

-javaagent:path/to/applicationinsights-agent-3.5.2.jar

Altri

Vedere la documentazione del server applicazioni su come aggiungere argomenti JVM.