Commit Graph

276 Commits

Author SHA1 Message Date
Laplie Anderson 619ecb8170 Fix a couple tests failing with IBM 8 2019-09-03 17:19:46 -04:00
Nikolay Martynov f20909110a Add a commit to AgentClient to migrate it to okhttp 2019-08-15 11:10:03 -04:00
Tyler Benson bbfd02befc Update Jackson to 2.9.9.3
As recommended by https://nvd.nist.gov/vuln/detail/CVE-2019-14379

(Remove unused dependency)
2019-08-12 16:41:57 -07:00
Nikolay Martynov 7863a68a53 Fix typo 2019-06-06 09:41:36 -04:00
Tyler Benson 2052647ec9 Fix content length calculation for larger trace counts
Failure to calculate this correctly causes the agent to drop the request.
2019-03-27 15:06:07 -07:00
Tyler Benson 8f3568c894 Review fixes 2019-02-08 14:00:14 -08:00
Tyler Benson a59eec223f Span metadata must be string values. 2019-02-08 12:05:29 -08:00
Tyler Benson 0e1dce868c Log exceptions from Tracer.finalize() 2019-02-08 11:09:24 -08:00
Tyler Benson 65add99a7b Make shutdown callback weakly reference the tracer.
This should allow finalize to actually be called.  (Also assumes the weak reference isn’t cleared until after finalize is called.)
2019-02-08 11:04:23 -08:00
Tyler Benson 532f4af28f New API: Add shutdown callback to shutdown the Tracer
Also add getMeta() to Span interface.
2019-02-08 10:33:01 -08:00
Tyler Benson bc2041b5b6 New API: Allow creating timestamp with custom time. 2019-02-07 15:48:31 -08:00
Tyler Benson f571f8499f Abstract decorator classes for new API
Intended to be implemented for each instrumentation, then called directly by the instrumentation in the appropriate locations.
2019-01-31 09:04:44 -08:00
Tyler Benson 0d7bedcdf0 Remove defaultServiceName from TracerBuilder 2019-01-30 08:35:15 -08:00
Tyler Benson 8c9a7d24cc Add additional tests and enforce coverage. 2019-01-29 15:56:46 -08:00
Tyler Benson b7ec90a846 Use lombok builder for Tracer construction.
This will work better for long-term support without breaking compatibility for adding new fields.
2019-01-29 15:56:46 -08:00
Nikolay Martynov 633fddc46b Fix race codition in AgentWriterTest 2019-01-25 15:58:59 -05:00
Tyler Benson 03bcdc97cc Move awaitGC to common utility package 2019-01-25 10:32:09 -08:00
Nikolay Martynov 62998ff006
Merge pull request #655 from DataDog/mar-kolya/new-api-agent-writer
Mar kolya/new api agent writer
2019-01-22 17:12:37 -05:00
Nikolay Martynov 95c1c47799 Fix JsonSpan boolean conversion problem
It looks like with newer Jackson we cannot convert number to boolean
anymore. So we have to do this manually.
2019-01-15 15:28:42 -05:00
Nikolay Martynov b65317ff36 New API: add writer builder 2019-01-14 12:31:20 -05:00
Nikolay Martynov fce1af97b8 New API: Add Datadog Agent writer 2019-01-14 12:31:20 -05:00
Nikolay Martynov c61cd844e3 New API: add Datadog agent client
This implementation is missing a few minorish things, but should be able to
generally talk to Datadog agent 'traces' endpoint.

Note: this also drops support for 0.3 Datadog Agent.
2019-01-11 07:48:40 -05:00
Nikolay Martynov 2bf359d2dc Add LogRateLimiter
Some helper code to limit log entiries in client logs
2019-01-07 19:16:51 -05:00
Nikolay Martynov dcb2713f72 New api: Make Clock class package-private since it is an implementation detail 2019-01-07 13:52:16 -05:00
Nikolay Martynov eaafb5fa5d New API: remove `reportWarning` from tracer and use logger instead 2019-01-07 13:52:16 -05:00
Nikolay Martynov ed29969cb8 Initial support for JSON rendering in new API 2019-01-07 13:52:16 -05:00
Nikolay Martynov 8f79538067 New API: use full 64bit random ID range 2019-01-03 20:56:52 -05:00
Nikolay Martynov 3fb98ea51a Wrap finalizers into try/catch 2018-12-21 10:15:19 -05:00
Nikolay Martynov 9674e9f61a Start implementation of the new tracer API
This mainly implements Span, Trace and Continuation logic.
2018-12-21 10:15:15 -05:00
Andrew Kent f498a3ac5a Changes from sync 2018-12-06 17:10:17 -08:00
Andrew Kent 9cc2e58a26 Require all span and trace creation through Tracer 2018-12-06 09:45:29 -08:00
Andrew Kent 3ad6a4b382 First draft of datadog-api 2018-12-06 08:51:25 -08:00
Andrew Kent 0e6a416b57 Initial gradle projects 2018-12-03 11:45:29 -08:00
Tyler Benson becf2a5862 Lots of renaming
Module:
dd-trace -> dd-trace-ot

Packages:
Standardize on `datadog.trace` and `datadog.opentracing` as the package prefixes.
2018-01-09 10:02:06 +10:00
Tyler Benson d95309b9cd Allow setting host/port without specifying writer type. 2018-01-08 17:02:05 +10:00
Tyler Benson 177478bb25 Remove deprecated yaml config
In favor of configuration via env vars and sys props.
2018-01-04 15:07:33 +10:00
Tyler Benson ff1a91214a Add ignores for soon to be removed code. 2017-12-22 07:39:25 -08:00
Tyler Benson e17660203f Missed one…
Also don’t need DDTracerFactoryTest anymore…
2017-12-21 16:47:41 -08:00
Tyler Benson 02460060bc Misc cleanup
Remove out of date “async-tracing” example since it’s more about byteman and no longer relevant.

Minor changes to improve the code test coverage…
2017-12-21 16:31:03 -08:00
Tyler Benson 4822c19c5d Remove legacy config references. 2017-12-21 16:28:18 -08:00
Tyler Benson 0fb057dbcc Allow config to pull from env vars and sys props 2017-12-21 15:31:14 -08:00
Andrew Kent 922b3012e6 Support for eclipse + buildship (#173) 2017-12-14 10:20:27 +01:00
Tyler Benson d933a4049a Move OkHttp instrumentation to byte buddy 2017-12-06 18:07:17 -08:00
Tyler Benson dc89cd174e Name agent writer threadpools and set to daemon
This allows a clean shutdown, instead of keeping the vm running.
2017-12-05 16:25:47 -08:00
Andrew Kent 47b1eec6da Mongo Async Instrumentation and embedded mongo tests. 2017-11-27 09:18:49 -08:00
Andrew Kent b4ba6d8955
Merge pull request #156 from DataDog/tyler/jms
Migrate JMS to Byte Buddy and add JMS 1 support
2017-11-27 08:53:38 -08:00
Andrew Kent 42e08a4a04 Add error reporting documentation. 2017-11-22 13:23:44 -08:00
Tyler Benson 9ba647a2ac Add instrumentation for MessageListener 2017-11-17 16:02:09 -08:00
Tyler Benson 871ce37f80 Migrate JMS to Byte Buddy and add JMS 1 support
This does not yet include instrumentation for MessageListener.
I think there is actually no difference between the instrumentation so we should combine them.
I also added TEXT_MAP as a format that maps to the HTTP Codec.  There is some remapping inside the instrumentation to remove dashes before setting as a property.  This should also be changed when an official format is defined.

This also currently has a problem with Spring Boot applications as the JMS Util references classes not on the system classpath (it needs to be injected into the child classpath)
2017-11-17 12:06:30 -08:00
Tyler Benson 9e53841429 Null tags are intended for “deletion”
This was not well tested and misunderstood.
2017-11-10 16:52:57 -05:00