build.gradle.kts 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. plugins {
  2. id("otel.javaagent-instrumentation")
  3. }
  4. muzzle {
  5. pass {
  6. coreJdk()
  7. }
  8. }
  9. dependencies {
  10. compileOnly("com.google.auto.value:auto-value-annotations")
  11. annotationProcessor("com.google.auto.value:auto-value")
  12. compileOnly(project(":javaagent-tooling"))
  13. testImplementation("com.newrelic.agent.java:newrelic-api:5.14.0")
  14. testImplementation("io.opentracing.contrib.dropwizard:dropwizard-opentracing:0.2.2") {
  15. isTransitive = false
  16. }
  17. testImplementation("com.signalfx.public:signalfx-trace-api:0.48.0-sfx1")
  18. // Old and new versions of kamon use different packages for Trace annotation
  19. testImplementation("io.kamon:kamon-annotation_2.11:0.6.7") {
  20. isTransitive = false
  21. }
  22. testImplementation("io.kamon:kamon-annotation-api:2.1.4")
  23. testImplementation("com.appoptics.agent.java:appoptics-sdk:6.20.1")
  24. testImplementation("com.tracelytics.agent.java:tracelytics-api:5.0.10")
  25. testImplementation("org.springframework.cloud:spring-cloud-sleuth-core:2.2.4.RELEASE") {
  26. isTransitive = false
  27. }
  28. // For some annotations used by sleuth
  29. testCompileOnly("org.springframework:spring-core:4.3.30.RELEASE")
  30. }
  31. tasks {
  32. val testIncludeProperty by registering(Test::class) {
  33. filter {
  34. includeTestsMatching("ConfiguredTraceAnnotationsTest")
  35. }
  36. include("**/ConfiguredTraceAnnotationsTest.*")
  37. jvmArgs("-Dotel.instrumentation.external-annotations.include=package.Class\$Name;OuterClass\$InterestingMethod")
  38. }
  39. val testExcludeMethodsProperty by registering(Test::class) {
  40. filter {
  41. includeTestsMatching("TracedMethodsExclusionTest")
  42. }
  43. include("**/TracedMethodsExclusionTest.*")
  44. jvmArgs("-Dotel.instrumentation.external-annotations.exclude-methods=TracedMethodsExclusionTest\$TestClass[excluded,annotatedButExcluded]")
  45. }
  46. test {
  47. filter {
  48. excludeTestsMatching("ConfiguredTraceAnnotationsTest")
  49. excludeTestsMatching("TracedMethodsExclusionTest")
  50. }
  51. }
  52. check {
  53. dependsOn(testIncludeProperty)
  54. dependsOn(testExcludeMethodsProperty)
  55. }
  56. }