Démarrage (supplément)

Dans les sections suivantes, découvrez comment obtenir l’autoinstrumentation Java pour des environnements techniques spécifiques.

Azure App Service

Pour plus d’informations, consultez Supervision des applications pour Azure App Service et Java.

Azure Functions

Pour plus d’informations, consultez Surveillance d’Azure Functions avec Application Insights d’Azure Monitor.

Azure Spring Apps

Pour plus d’informations, consultez Utiliser l’agent in-process Java d’Application Insights dans Azure Spring Apps.

conteneurs

Remarque

Avec les applications Spring Boot Native Image, utilisez le projet Distribution OpenTelemetry Azure Monitor / Application Insights dans l’application Java d’image native Spring Boot au lieu de l’agent Java Application Insights.

Point d’entrée Docker

Si vous utilisez le formulaire exec, ajoutez le paramètre -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" à la liste de paramètres quelque part avant le paramètre "-jar", par exemple :

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

Si vous utilisez le formulaire shell, ajoutez l’argument JVM (Java Virtual Machine) -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" quelque part avant -jar, par exemple :

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

Fichier Docker

Exemple 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"]

Dans cet exemple, vous copiez les fichiers applicationinsights-agent-3.5.2.jar et applicationinsights.json à partir d’un dossier agent (vous pouvez choisir n’importe quel dossier de votre ordinateur). Ces deux fichiers doivent se trouver dans le même dossier du conteneur Docker.

Images conteneur de partenaires

Si vous utilisez une image conteneur partenaire que vous ne pouvez pas modifier, montez le fichier jar de l’agent Java Application Insights dans le conteneur de l’extérieur. Définissez la variable d’environnement du conteneur JAVA_TOOL_OPTIONS=-javaagent:/path/to/applicationinsights-agent.jar.

Spring Boot

Pour plus d’informations, consultez Utilisation d’Azure Monitor Application Insights avec Spring Boot.

Serveurs d’application Java

Pour plus d’informations sur la configuration de l’agent Java Application Insights, consultez Activation d’Azure Monitor OpenTelemetry pour Java. Les sections suivantes fournissent des détails qui peuvent être utiles lors de la configuration de l’argument JVM -javaagent:... sur différents serveurs d’applications.

Tomcat 8 (Linux)

Tomcat installé via apt-get ou yum

Si vous avez installé Tomcat via apt-get ou yum, vous devez disposer d’un fichier /etc/tomcat8/tomcat8.conf. Ajoutez cette ligne à la fin de ce fichier :

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

Tomcat installé via le téléchargement et la décompression

Si vous avez installé Tomcat via le téléchargement et la décompression depuis https://tomcat.apache.org, vous devez disposer d’un fichier <tomcat>/bin/catalina.sh. Créez un fichier dans le même répertoire nommé <tomcat>/bin/setenv.sh avec le contenu suivant :

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

Si le fichier <tomcat>/bin/setenv.sh existe déjà, modifiez-le et ajoutez -javaagent:path/to/applicationinsights-agent-3.5.2.jar à CATALINA_OPTS.

Tomcat 8 (Windows)

Exécuter Tomcat à partir de la ligne de commande

Localisez le fichier <tomcat>/bin/catalina.bat. Créez un fichier dans le même répertoire nommé <tomcat>/bin/setenv.bat avec le contenu suivant :

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

Les guillemets ne sont pas nécessaires, mais si vous souhaitez les inclure, le positionnement qui convient est le suivant :

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

Si le fichier <tomcat>/bin/setenv.bat existe déjà, modifiez-le et ajoutez -javaagent:path/to/applicationinsights-agent-3.5.2.jar à CATALINA_OPTS.

Exécuter Tomcat en tant que service Windows

Localisez le fichier <tomcat>/bin/tomcat8w.exe. Exécutez ce fichier exécutable et ajoutez -javaagent:path/to/applicationinsights-agent-3.5.2.jar à Java Options sous l’onglet Java.

JBoss Enterprise Application Platform 7

Dans Red Hat JBoss Enterprise Application Platform (EAP) 7, vous pouvez configurer un serveur autonome ou un serveur de domaine.

Serveur autonome

Ajoutez -javaagent:path/to/applicationinsights-agent-3.5.2.jar à la variable d’environnement JAVA_OPTS existante dans le fichier 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 ..."
    ...

Serveur de domaine

Ajoutez -javaagent:path/to/applicationinsights-agent-3.5.2.jar à jvm-options dans 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>
...

Si vous exécutez plusieurs serveurs managés sur un seul hôte, vous devez ajouter applicationinsights.agent.id au system-properties pour chaque 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>
...

La valeur applicationinsights.agent.id spécifiée doit être unique. Vous utilisez la valeur pour créer un sous-répertoire sous le répertoire Application Insights. Chaque processus JVM a besoin de sa propre configuration Application Insights locale et de son propre fichier journal Application Insights local. En outre, si vous signalez au collecteur central, plusieurs serveurs managés partagent le fichier applicationinsights.properties, de sorte que le applicationinsights.agent.id spécifié est nécessaire pour remplacer le paramètre de agent.id dans ce fichier partagé. applicationinsights.agent.rollup.id peut être spécifié de manière similaire dans l’élément system-properties du serveur si vous devez écraser le paramètre agent.rollup.id par serveur géré.

Jetty 9

Ajoutez ces lignes à start.ini :

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

Payara 5

Ajoutez -javaagent:path/to/applicationinsights-agent-3.5.2.jar à jvm-options dans 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. Ouvrez la console de gestion.

  2. Accédez à Serveurs>Serveurs d’applications WebSphere>Serveurs d’applications. Choisissez les serveurs d’applications appropriés, puis sélectionnez définition de processus>de gestion des processus>machine virtuelle Java.

  3. Dans Generic JVM arguments, ajoutez l’argument JVM suivant.

    -javaagent:path/to/applicationinsights-agent-3.5.2.jar
    
  4. Enregistrez et redémarrez le serveur d’applications.

OpenLiberty 18

Créez un fichier jvm.options dans le répertoire du serveur (par exemple <openliberty>/usr/servers/defaultServer), puis ajoutez cette ligne :

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

Autres

Pour plus d’informations sur l’ajout d’arguments JVM, consultez la documentation de votre serveur d’applications.