Java 互換性要件
Dash が新機能を発表!インシデントマネジメント、Continuous Profiler など多数の機能が追加されました! Dash イベントで発表された新機能!

Java 互換性要件

互換性

Java Datadog Trace ライブラリはオープンソースです。詳細については、Github リポジトリをご覧ください。

Datadog は、Oracle JDK と OpenJDK の両方の Java JRE 1.7 以上を公式にサポートしています。Datadog は Java のアーリーアクセスバージョンを公式にサポートしていません。

ベータインテグレーションはデフォルトで無効になっていますが、個別に有効にできます。

  • システムプロパティ: -Ddd.integration.<インテグレーション名>.enabled=true
  • 環境変数: DD_INTEGRATION_<インテグレーション名>_ENABLED=true

Web フレームワークの互換性

dd-java-agent には、次のウェブフレームワークの自動トレースのサポートが含まれます。

Web フレームワークのトレーシングでは以下の確認が可能です。

  • HTTP リクエストの応答タイミング
  • HTTP リクエスト用のタグ (ステータスコード、メソッドなど)
  • エラーとスタックトレースの取得
  • Web リクエストと分散型トレーシングの間で作成された作業のリンク
サーバーバージョンサポートの種類インスツルメンテーション名 (コンフィギュレーションに使用)
Akka-Http サーバー10.0+完全対応akka-httpakka-http-server
Finatra Web2.9+完全対応finatra
Grizzly2.0+ベータgrizzly
Grizzly-HTTP2.3.20+ベータgrizzly-filterchain
Java Servlet 互換2.3+、3.0+完全対応servletservlet-2servlet-3
Jax-RS アノテーションJSR311-API完全対応jax-rsjaxrsjax-rs-annotationsjax-rs-filter
Jetty (非 Servlet)8+ベータjettyjetty-8
Netty HTTP サーバー3.8+完全対応netty, netty-3.8, netty-4.0, netty-4.1
Play2.3-2.8完全対応playplay-action
Ratpack1.5+完全対応ratpack
Spark Java2.3+ベータsparkjava (要 jetty)
Spring Web (MVC)4.0+完全対応spring-web
Spring WebFlux5.0+完全対応spring-webflux

注: 多くのアプリケーションサーバーは Servlet 互換でそのインスツルメンテーションによって自動的にカバーされます (Tomcat、Jetty、Websphere、Weblogic、JBoss)。 また、Spring Boot のようなフレームワークは、通常サポートされた組み込みアプリケーションサーバーを使うため、本質的に機能します (Tomcat/Jetty/Netty)。

希望するウェブフレームワークが見つかりませんか?Datadog では継続的にサポートを追加しています。サポートが必要な場合は、Datadog サポートにお問い合わせください。

ネットワーキングフレームワークの互換性

dd-java-agent には、次のネットワーキングフレームワークの自動トレースのサポートが含まれます。

ネットワーキングのトレーシングでは以下の確認が可能です

  • リクエストの応答タイミング
  • リクエスト用のタグ (応答コードなど)
  • エラーとスタックトレースの取得
  • 分散型トレーシング
フレームワークバージョンサポートの種類インスツルメンテーション名 (コンフィギュレーションに使用)
Apache HTTP クライアント4.0+完全対応httpclientapache-httpclientapache-http-client
Apache HTTP 非同期クライアント4.0+完全対応httpasyncclientapache-httpasyncclient
AWS Java SDK1.11+、2.2+完全対応aws-sdk
Commons HTTP クライアント2.0+完全対応commons-http-client
Google HTTP クライアント1.19.0+完全対応google-http-client
Grizzly HTTP クライアント1.9+ベータgrizzly-client
gRPC1.5+完全対応grpcgrpc-clientgrpc-server
HttpURLConnectionすべて完全対応httpurlconnectionurlconnection
Kafka-Clients0.11+完全対応kafka
Kafka-Streams0.11+完全対応kafkakafka-streams
Java RMIすべて完全対応rmirmi-clientrmi-server
Jax RS クライアント2.0+完全対応jax-rsjaxrsjax-rs-client
Jersey クライアント1.9+完全対応jax-rsjaxrsjax-rs-client
JMS1 と 2完全対応jmsjms-1jms-2
Netty HTTP クライアント4.0+完全対応nettynetty-4.0netty-4.1
Netty HTTP クライアント4.0+完全対応nettynetty-4.0netty-4.1
Ning HTTP クライアント1.9.0+ベータning
OkHTTP2.2+完全対応okhttpokhttp-2okhttp-3
Play WSClient1.0+完全対応play-ws
Rabbit AMQP2.7+完全対応amqprabbitmq
Spring WebClient5.0+完全対応spring-webfluxspring-webflux-client

希望するネットワーキングフレームワークが見つかりませんか?Datadog では継続的にサポートを追加しています。サポートが必要な場合は、Datadog サポートにお問い合わせください。

データストアの互換性

dd-java-agent には、次のデータベースフレームワーク/ドライバーの自動トレースのサポートが含まれます。

データストアのトレーシングでは以下の確認が可能です

  • リクエストの応答タイミング
  • クエリ情報 (サニタイジングされたクエリ文字列など)
  • エラーとスタックトレースの取得
データベースバージョンサポートの種類インスツルメンテーション名 (コンフィギュレーションに使用)
Couchbase2.0+完全対応couchbase
Cassandra3.X完全対応cassandra
Elasticsearch Transport2.0-6.x完全対応elasticsearchelasticsearch-transportelasticsearch-transport-{2,5,6} (1 つ選択)
Elasticsearch Rest5.0-6.x完全対応elasticsearchelasticsearch-restelasticsearch-rest-5elasticsearch-rest-6
JDBCN/A完全対応jdbcjdbc-datasource
Jedis1.4+完全対応jedisredis
Lettuce4.0+完全対応lettucelettuce-4-asynclettuce-5-rx
MongoDB3.0+完全対応mongo
RediScala1.5+完全対応rediscalaredis
SpyMemcached2.12+完全対応spymemcached

dd-java-agent は、次を含む一般的な JDBC ドライバーとも互換性があります:

  • Apache Derby
  • Firebird SQL
  • H2 データベースエンジン
  • HSQLDB
  • IBM DB2
  • MariaDB
  • MSSQL (Microsoft SQL Server)
  • MySQL
  • Oracle
  • Postgres SQL

希望するデータストアが見つかりませんか?Datadog では継続的にサポートを追加しています。サポートが必要な場合は、Datadog サポートにお問い合わせください。

他のフレームワークの互換性

dd-java-agent には、次の他のフレームワークの自動トレースのサポートが含まれます。

フレームワークバージョンサポートの種類インスツルメンテーション名 (コンフィギュレーションに使用)
Dropwizard Views0.7+完全対応dropwizarddropwizard-view
Hibernate3.5+完全対応hibernatehibernate-core
Hystrix1.4+完全対応hystrix
JSP Rendering2.3+完全対応jspjsp-renderjsp-compile
Slf4J MDC1+完全対応mdc (dd.logs.injection コンフィギュレーションも参照してください)
プロジェクトリアクタ3.1+完全対応reactor-core
Spring Data1.8+完全対応spring-data
Spring Scheduling3.1+完全対応spring-scheduling
Twilio SDK0+完全対応twilio-sdk

希望するフレームワークが見つかりませんか?Datadog では継続的にサポートを追加しています。フレームワークのリクエストは、サポートチームまでお気軽にお問い合わせください。

サポートされていないフレームワークを使ったアプリケーションの可視性を向上させるには、次のことを検討してください:

インテグレーションの無効化

大半のインテグレーションはデフォルトで有効になっています。次の設定により、デフォルトを無効に変更できます。

  • システムプロパティ: -Ddd.integrations.enabled=false
  • 環境変数: DD_INTEGRATIONS_ENABLED=false

インテグレーション箱別に有効または無効にできます (上記のデフォルトをオーバーライド)。

  • システムプロパティ: -Ddd.integration.<インテグレーション名>.enabled=true
  • 環境変数: DD_INTEGRATION_<インテグレーション名>_ENABLED=true

(各インテグレーションの名前については上記を参照してください。)

その他の参考資料

お役に立つドキュメント、リンクや記事: