簡體   English   中英

Spring 與 Datadog 的啟動集成

[英]Spring Boot integration with Datadog

我有一個簡單的 springboot 應用程序並嘗試將 datadog 代理與其集成,但無法使用 Javaagent 運行該應用程序。 已完成以下步驟。

在 pom 中添加依賴項。


    <dependency>
    <groupId>com.datadoghq</groupId>
    <artifactId>dd-java-agent</artifactId>
    <version>0.83.2</version>
    </dependency>

解壓數據狗依賴項和添加的類------------

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.1</version>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>unpack-dependencies</goal>
</goals>
<configuration>
<includeArtifactIds>dd-java-agent</includeArtifactIds>
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
added premain class of datadog agent -----

    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.5</version>
    <configuration>
    <archive>
    <manifestEntries>
    <Premain-Class>datadog.trace.bootstrap.AgentBootstrap</Premain-Class>
    <Can-Redefine-Classes>true</Can-Redefine-Classes>
    <Can-Retransform-Classes>true</Can-Retransform-Classes>
    </manifestEntries>
    </archive>
    </configuration>
    </plugin>

添加了使spring repackager插件找到springboot主類------------

<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.3.4.RELEASE</version>
<configuration>
<mainClass>com.user.info.userInfoApplication</mainClass>
</configuration>
</plugin>

        
Finally when issuing below command fails 

    java -javaagent:user-info-0.0.1-SNAPSHOT.jar -jar user-info-0.0.1-SNAPSHOT.jar
    
    Exception in thread "main" java.lang.ClassNotFoundException: datadog.trace.bootstrap.AgentBootstrap
            at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
            at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
            at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
            at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:431)
            at java.instrument/sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:525)
    FATAL ERROR in native method: processing of -javaagent failed

```````````````````````````````````````````````````````````````````````````````````````````






Spring 啟動時使用 statsd 客戶端將指標和日志發送到本地代理。

https://github.com/ebett/spring-boot-datadog

希望它可以幫助你。

Spring Boot 2.x 支持與 DataDog 的集成。 只需在您的 pom.xml 中添加依賴項:

 <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-datadog</artifactId> </dependency>

然后關注此頁面: https://docs.spring.io/spring-boot/docs/current/reference/html/actuator.html#actuator.metrics.export.datadog

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM