Aracılığıyla paylaş


Spring Boot ile Azure İzleyici Application Insights kullanma

Not

Spring Boot yerel görüntü uygulamalarıyla bu projeyi kullanabilirsiniz.

Application Insights Java'nın Spring Boot ile etkinleştirilmesi için iki seçenek vardır: Java Sanal Makinesi (JVM) bağımsız değişkeni ve program aracılığıyla.

JVM bağımsız değişkeniyle etkinleştirme

JVM arg -javaagent:"path/to/applicationinsights-agent-3.6.2.jar" değerini öncesinde -jarbir yere ekleyin, örneğin:

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

Docker giriş noktası aracılığıyla Spring Boot

Kapsayıcılar ile ilgili belgelere bakın.

Yapılandırma

Bkz . yapılandırma seçenekleri.

Program aracılığıyla etkinleştirme

Application Insights Java'yı program aracılığıyla etkinleştirmek için aşağıdaki bağımlılığı eklemeniz gerekir:

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>applicationinsights-runtime-attach</artifactId>
    <version></version>
</dependency>

Ve yönteminizin main() başlangıç satırında yer alan sınıfının yöntemini com.microsoft.applicationinsights.attach.ApplicationInsights çağırınattach().

Uyarı

Çağırma yöntemin başında main olmalıdır.

Uyarı

JRE desteklenmez.

Uyarı

İşletim sisteminin geçici dizini yazılabilir olmalıdır.

Örnek:

@SpringBootApplication
public class SpringBootApp {

  public static void main(String[] args) {
    ApplicationInsights.attach();
    SpringApplication.run(SpringBootApp.class, args);
  }
}

Yapılandırma

Programlı etkinleştirme, JVM bağımsız değişken etkinleştirmesiyle aynı yapılandırma seçeneklerini ve sonraki bölümlerde açıklanan farkları destekler.

Yapılandırma dosyası konumu

Varsayılan olarak, Application Insights Java'yı program aracılığıyla etkinleştirirken yapılandırma dosyası applicationinsights.json classpath'ten (src/main/resources, src/test/resources) okunur.

3.4.3'ten, sınıf yolu içindeki bir JSON dosyasının adını sistem özelliğiyle applicationinsights.runtime-attach.configuration.classpath.file yapılandırabilirsiniz. Örneğin, ile -Dapplicationinsights.runtime-attach.configuration.classpath.file=applicationinsights-dev.jsonApplication Insights yapılandırma için dosyasını kullanır applicationinsights-dev.json . Sınıf yolu içinde program aracılığıyla başka bir dosya yapılandırmak için:

public static void main(String[] args) {
    System.setProperty("applicationinsights.runtime-attach.configuration.classpath.file", "applicationinsights-dev.json");
    ApplicationInsights.attach();
    SpringApplication.run(PetClinicApplication.class, args);
}

Not

Spring'in application.properties veya application.yaml dosyaları, Application Insights Java yapılandırması için kaynak olarak desteklenmez.

Sınıf yolunun dışındaki bir dosyanın konumunu değiştirmek için bkz . yapılandırma dosyası yolu yapılandırma seçenekleri .

Bir dosyayı sınıf yolu dışında program aracılığıyla yapılandırmak için:

public static void main(String[] args) {
    System.setProperty("applicationinsights.configuration.file", "{path}/applicationinsights-dev.json");
    ApplicationInsights.attach();
    SpringApplication.run(PetClinicApplication.class, args);
}

bağlantı dizesi program aracılığıyla yapılandırma

İlk olarak bağımlılığı ekleyin applicationinsights-core :

<dependency>
    <groupId>com.microsoft.azure</groupId>
    <artifactId>applicationinsights-core</artifactId>
    <version></version>
</dependency>

Ardından yöntemini şundan sonra ApplicationInsights.attach()çağırınConnectionString.configure:

public static void main(String[] args) {
    System.setProperty("applicationinsights.configuration.file", "{path}/applicationinsights-dev.json");
    ApplicationInsights.attach();
    SpringApplication.run(PetClinicApplication.class, args);
}

Alternatif olarak, spring bileşeninden yöntemini çağırın ConnectionString.configure .

Çalışma zamanında yapılandırılan bağlantı dizesi etkinleştirin:

{
  "connectionStringConfiguredAtRuntime": true
}

Kendi kendine tanılama günlük dosyası konumu

Varsayılan olarak, Application Insights Java'yı program aracılığıyla etkinleştirirken, applicationinsights.log aracı günlüklerini içeren dosya JVM'nin başlatıldığı dizinde (kullanıcı dizini) bulunur.

Bu konumu değiştirmeyi öğrenmek için kendi kendine tanılama yapılandırma seçeneklerinize bakın.