build.gradle.kts 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. import net.ltgt.gradle.errorprone.errorprone
  2. plugins {
  3. id("otel.java-conventions")
  4. id("otel.publish-conventions")
  5. id("otel.jmh-conventions")
  6. }
  7. group = "io.opentelemetry.javaagent"
  8. dependencies {
  9. implementation(project(":javaagent-bootstrap"))
  10. implementation(project(":javaagent-extension-api"))
  11. implementation(project(":javaagent-instrumentation-api"))
  12. implementation(project(":javaagent-tooling:javaagent-tooling-java9"))
  13. implementation(project(":instrumentation-api"))
  14. implementation(project(":instrumentation-api-annotation-support"))
  15. implementation(project(":instrumentation-appender-api-internal"))
  16. implementation(project(":instrumentation-appender-sdk-internal"))
  17. implementation(project(":muzzle"))
  18. implementation("io.opentelemetry:opentelemetry-api")
  19. implementation("io.opentelemetry:opentelemetry-sdk")
  20. implementation("io.opentelemetry:opentelemetry-sdk-extension-autoconfigure")
  21. implementation("io.opentelemetry:opentelemetry-sdk-metrics")
  22. implementation("io.opentelemetry:opentelemetry-sdk-logs")
  23. implementation("io.opentelemetry:opentelemetry-extension-kotlin")
  24. implementation("io.opentelemetry:opentelemetry-extension-aws")
  25. implementation("io.opentelemetry:opentelemetry-extension-trace-propagators")
  26. implementation("io.opentelemetry:opentelemetry-sdk-extension-resources")
  27. implementation("io.opentelemetry:opentelemetry-extension-noop-api")
  28. // Exporters with dependencies
  29. implementation("io.opentelemetry:opentelemetry-exporter-jaeger")
  30. implementation("io.opentelemetry:opentelemetry-exporter-logging")
  31. implementation("io.opentelemetry:opentelemetry-exporter-otlp")
  32. implementation("io.opentelemetry:opentelemetry-exporter-otlp-metrics")
  33. implementation("io.opentelemetry:opentelemetry-exporter-otlp-logs")
  34. implementation("io.opentelemetry:opentelemetry-exporter-otlp-http-trace")
  35. implementation("io.opentelemetry:opentelemetry-exporter-otlp-http-metrics")
  36. implementation("io.opentelemetry:opentelemetry-exporter-otlp-http-logs")
  37. implementation("io.opentelemetry:opentelemetry-exporter-logging-otlp")
  38. implementation("io.opentelemetry:opentelemetry-exporter-prometheus")
  39. implementation("io.prometheus:simpleclient")
  40. implementation("io.prometheus:simpleclient_httpserver")
  41. implementation("io.opentelemetry:opentelemetry-exporter-zipkin")
  42. implementation("io.opentelemetry:opentelemetry-sdk-extension-jaeger-remote-sampler")
  43. api("net.bytebuddy:byte-buddy-dep")
  44. implementation("org.slf4j:slf4j-api")
  45. annotationProcessor("com.google.auto.service:auto-service")
  46. compileOnly("com.google.auto.service:auto-service-annotations")
  47. testCompileOnly("com.google.auto.service:auto-service-annotations")
  48. // Used by byte-buddy but not brought in as a transitive dependency.
  49. compileOnly("com.google.code.findbugs:annotations")
  50. testCompileOnly("com.google.code.findbugs:annotations")
  51. testImplementation(project(":testing-common"))
  52. testImplementation("com.google.guava:guava")
  53. testImplementation("org.assertj:assertj-core")
  54. testImplementation("org.mockito:mockito-core")
  55. testImplementation("org.mockito:mockito-junit-jupiter")
  56. }
  57. // Here we only include autoconfigure but don"t include OTLP exporters to ensure they are only in
  58. // the full distribution. We need to override the default exporter setting of OTLP as a result.
  59. tasks {
  60. withType<Test>().configureEach {
  61. environment("OTEL_TRACES_EXPORTER", "none")
  62. environment("OTEL_METRICS_EXPORTER", "none")
  63. }
  64. // TODO this should live in jmh-conventions
  65. named<JavaCompile>("jmhCompileGeneratedClasses") {
  66. options.errorprone {
  67. isEnabled.set(false)
  68. }
  69. }
  70. }