Použití služby Azure Monitor Application Přehledy s Spring Bootem
Poznámka:
S aplikacemi nativní bitové kopie Spring Boot můžete tento projekt použít.
Existují dvě možnosti povolení aplikace Přehledy Javě pomocí Spring Bootu: argument Java Virtual Machine (JVM) a programově.
Povolení pomocí argumentu JVM
Přidejte ho -javaagent:"path/to/applicationinsights-agent-3.5.2.jar"
někam předtím -jar
, například:
java -javaagent:"path/to/applicationinsights-agent-3.5.2.jar" -jar <myapp.jar>
Spring Boot přes vstupní bod Dockeru
Viz dokumentace související s kontejnery.
Konfigurace
Viz možnosti konfigurace.
Povolení prostřednictvím kódu programu
Pokud chcete povolit aplikaci Přehledy Javu programově, musíte přidat následující závislost:
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>applicationinsights-runtime-attach</artifactId>
<version>3.5.2</version>
</dependency>
A vyvolat attach()
metodu com.microsoft.applicationinsights.attach.ApplicationInsights
třídy, která je na začátku řádku vaší main()
metody.
Upozorňující
Vyvolání musí být na začátku main
metody.
Upozorňující
JRE se nepodporuje.
Upozorňující
Dočasný adresář operačního systému by měl být zapisovatelný.
Příklad:
@SpringBootApplication
public class SpringBootApp {
public static void main(String[] args) {
ApplicationInsights.attach();
SpringApplication.run(SpringBootApp.class, args);
}
}
Konfigurace
Programové povolení podporuje všechny stejné možnosti konfigurace jako povolení argumentu JVM s rozdíly, které jsou popsány v dalších částech.
Umístění konfiguračního souboru
Ve výchozím nastavení se při programovém povolení aplikace Přehledy Javě načte konfigurační soubor applicationinsights.json
z cesty ke třídě (src/main/resources
, src/test/resources
).
Z verze 3.4.3 můžete nakonfigurovat název souboru JSON v cestě ke třídě pomocí applicationinsights.runtime-attach.configuration.classpath.file
systémové vlastnosti.
Například s -Dapplicationinsights.runtime-attach.configuration.classpath.file=applicationinsights-dev.json
, Aplikace Přehledy používá applicationinsights-dev.json
soubor pro konfiguraci. Postup programové konfigurace jiného souboru v cestě k třídě:
public static void main(String[] args) {
System.setProperty("applicationinsights.runtime-attach.configuration.classpath.file", "applicationinsights-dev.json");
ApplicationInsights.attach();
SpringApplication.run(PetClinicApplication.class, args);
}
Poznámka:
application.properties
Spring nebo application.yaml
soubory nejsou podporované jako zdroje pro konfiguraci aplikace Přehledy Javě.
Viz možnosti konfigurace cesty ke konfiguračnímu souboru a změňte umístění souboru mimo cestu ke třídě.
Pokud chcete programově nakonfigurovat soubor mimo cestu ke třídě:
public static void main(String[] args) {
System.setProperty("applicationinsights.configuration.file", "{path}/applicationinsights-dev.json");
ApplicationInsights.attach();
SpringApplication.run(PetClinicApplication.class, args);
}
Konfigurace připojovací řetězec prostřednictvím kódu programu
Nejprve přidejte applicationinsights-core
závislost:
<dependency>
<groupId>com.microsoft.azure</groupId>
<artifactId>applicationinsights-core</artifactId>
<version>3.5.2</version>
</dependency>
Potom volejte metodu ConnectionString.configure
za ApplicationInsights.attach()
:
public static void main(String[] args) {
System.setProperty("applicationinsights.configuration.file", "{path}/applicationinsights-dev.json");
ApplicationInsights.attach();
SpringApplication.run(PetClinicApplication.class, args);
}
Alternativně volejte metodu ConnectionString.configure
z komponenty Spring.
Povolte připojovací řetězec nakonfigurované za běhu:
{
"connectionStringConfiguredAtRuntime": true
}
Umístění souboru protokolu samoobslužné diagnostiky
Při programovém povolení aplikace Přehledy Javě se soubor obsahující protokoly agenta nachází v adresáři, applicationinsights.log
ze kterého se spustí JVM (uživatelský adresář).
Informace o tom, jak toto umístění změnit, najdete v možnostech konfigurace samoobslužné diagnostiky.