Начало работы (дополнение)

В следующих разделах вы узнаете, как получить автоинструментацию Java для конкретных технических сред.

Служба приложений Azure

Дополнительные сведения см. в разделе "Мониторинг приложений" для службы приложение Azure и Java.

Функции Azure

Дополнительные сведения см. в разделе Мониторинг решения "Функции Azure" с помощью Azure Monitor в Application Insights.

Azure Spring Apps

Дополнительные сведения см. в статье Использование внутрипроцессного агента Java Application Insights в Приложениях Azure Spring.

Контейнеры

Примечание.

С помощью приложений Spring Boot Native Image используйте дистрибутив Azure Monitor OpenTelemetry или Application Аналитика в проекте приложения Java для машинного образа Spring Boot вместо агента Java приложения Аналитика Java.

Точка входа Docker

Если используется форма exec, добавьте параметр -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" в список параметров — где-то перед параметром "-jar", например:

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

Если вы используете форму оболочки, добавьте arg -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" виртуальной машины Java (JVM) где-то раньше-jar, например:

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

Файл Docker

Пример 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"]

В этом примере вы копируете applicationinsights-agent-3.5.2.jar файлы applicationinsights.json из agent папки (вы можете выбрать любую папку компьютера). Эти два файла должны находиться в одной папке в контейнере Docker.

Образы контейнеров партнеров

Если вы используете образ контейнера партнера, который нельзя изменить, подключите jar-файл агента Java приложения Аналитика java извне. Задайте переменную среды для контейнера JAVA_TOOL_OPTIONS=-javaagent:/path/to/applicationinsights-agent.jar.

Spring Boot

Дополнительные сведения см. в статье "Использование приложения Azure Monitor Аналитика с Spring Boot".

Серверы приложений Java

Сведения о настройке агента Приложения Аналитика Java см. в статье "Включение Azure Monitor OpenTelemetry для Java". В следующих разделах содержатся сведения, которые могут быть полезны при настройке -javaagent:... arg JVM на разных серверах приложений.

Tomcat 8 (Linux)

Tomcat установлен через apt-get или yum

Если вы установили Tomcat через apt-get или yumу вас должен быть файл /etc/tomcat8/tomcat8.conf. Добавьте следующую строку в конец этого файла:

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

Tomcat, установленный с помощью скачивания и распаковки

Если вы установили Tomcat через скачивание и распакуйте его https://tomcat.apache.org, у вас должен быть файл <tomcat>/bin/catalina.sh. Создайте в том же каталоге новый файл с именем <tomcat>/bin/setenv.sh, содержащий следующее:

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

Если файл <tomcat>/bin/setenv.sh уже существует, измените этот файл и добавьте -javaagent:path/to/applicationinsights-agent-3.5.2.jar его CATALINA_OPTS.

Tomcat 8 (Windows)

Запуск Tomcat из командной строки

Найдите файл <tomcat>/bin/catalina.bat. Создайте в том же каталоге новый файл с именем <tomcat>/bin/setenv.bat, содержащий следующее:

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

Кавычки не являются обязательными, но если вы хотите их включить, правильное расположение для них выглядит так:

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

Если файл <tomcat>/bin/setenv.bat уже существует, измените этот файл и добавьте -javaagent:path/to/applicationinsights-agent-3.5.2.jar его CATALINA_OPTS.

Запуск Tomcat в качестве службы Windows

Найдите файл <tomcat>/bin/tomcat8w.exe. Запустите этот исполняемый файл и добавьте -javaagent:path/to/applicationinsights-agent-3.5.2.jar к Java Options на вкладке Java.

Платформа корпоративных приложений JBoss 7

В Red Hat JBoss Enterprise Application Platform (EAP) 7 можно настроить автономный сервер или доменный сервер.

Отдельный сервер

Добавьте -javaagent:path/to/applicationinsights-agent-3.5.2.jar в существующую переменную среды JAVA_OPTS в файле JBOSS_HOME/bin/standalone.conf (Linux) или JBOSS_HOME/bin/standalone.conf.bat (Windows):

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

Сервер домена

Добавьте -javaagent:path/to/applicationinsights-agent-3.5.2.jar к существующему параметру jvm-options в 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>
...

Если вы используете несколько управляемых серверов на одном узле, необходимо добавить applicationinsights.agent.id в system-properties каждый из них 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>
...

Указанное значение applicationinsights.agent.id должно быть уникальным. Значение используется для создания подкаталога в каталоге Application Аналитика. Для каждого процесса JVM требуется собственный локальный файл конфигурации приложения Аналитика и локального файла журнала приложения Аналитика. Кроме того, если отчеты центральному сборщику, несколько управляемых серверов совместно applicationinsights.properties используют файл, поэтому указанный applicationinsights.agent.id параметр необходим для переопределения agent.id параметра в этом общем файле. Можно applicationinsights.agent.rollup.id также указать в сервере system-properties , если необходимо переопределить agent.rollup.id параметр на каждом управляемом сервере.

Jetty 9

Добавьте следующие строки в start.ini:

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

Payara 5

Добавьте -javaagent:path/to/applicationinsights-agent-3.5.2.jar к существующему параметру jvm-options в 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. Откройте консоль управления.

  2. Перейдите на> серверы> серверов приложений WebSphere. Выберите соответствующие серверы приложений и выберите виртуальную машину Java и определения>процесса управления процессами>Java.

  3. Добавьте Generic JVM argumentsследующий аргумент JVM.

    -javaagent:path/to/applicationinsights-agent-3.5.2.jar
    
  4. Сохраните и перезапустите сервер приложений.

OpenLiberty 18

Создайте файл jvm.options в каталоге сервера (например, <openliberty>/usr/servers/defaultServerи добавьте следующую строку:

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

Другие

Дополнительные сведения о добавлении аргументов виртуальной машины Java приведены в документации по серверу приложений.