Laplie Anderson
d74ffc3db0
Parsing tests from RFC and reference impl
2019-07-16 18:29:59 -04:00
Laplie Anderson
369658c200
Initial cgroups parsing implementation
2019-07-16 18:29:59 -04:00
Tyler Benson
e08e3a787c
Allow null to be set in Scope for Span
...
This is useful to temporarily remove a trace from scope for a defined period.
2019-07-15 19:11:51 -07:00
Nikolay Martynov
b3c970d6c7
Formatting fix
2019-07-11 13:45:40 -04:00
Laplie Anderson
aa3303022d
Send jvm vendor as header to agent ( #909 )
2019-07-10 16:28:10 -04:00
Nikolay Martynov
7863a68a53
Fix typo
2019-06-06 09:41:36 -04:00
Tyler Benson
21c22d6985
Fix log message and add ignores
...
Also add CODEOWNERS
2019-05-24 11:44:10 -07:00
Luca Abbati
ad3401b815
Apply suggestions from CR #827
2019-05-17 10:15:03 +02:00
Luca Abbati
1d5dd5b28a
Refactor merging application root span tags with jmx base tags
2019-05-16 19:54:25 +02:00
Luca Abbati
85684f955b
Remove unused imports from test
2019-05-16 14:51:27 +02:00
Luca Abbati
2a975b31ee
Adapt test to new DDTracer constructor and unserializable field
2019-05-16 14:35:56 +02:00
Luca Abbati
10069847a3
Define the concept of applicationRootSpanTags and apply only to root
...
tags
2019-05-16 12:25:43 +02:00
Luca Abbati
0e9f9d9d02
Refactor names of DDSPan's methods to interact with root span
...
The naming of methods in DDSpan used to detect/retrieve the root span
for a fiven span were slightly misleading. Specifically 'isRootSpan()'
returned true if and only if the span is the root span of teh entire
trace(even in the context of distributed tracing), while getRootSpan()
return the root span of the trace fragment generated by the currently
traced application. I hope that trenaming such methods to
'isTraceRootSpan()' and 'getApplicationRootSpan()' respectively will
help adding some clarity.
The old method names have not been removed for backward comptibility
reasons and tests have been added, but they have been marked as
deprecated.
2019-05-16 11:31:37 +02:00
Luca Abbati
23ffcf0fce
Apply workaround to refresh configuration values during tests
2019-05-15 16:00:14 +02:00
Luca Abbati
c8a04b0a4f
Refactor hostname detection in tracer
2019-05-15 13:42:43 +02:00
Luca Abbati
7fd16d1eef
Add tests for hostname detection
2019-05-13 18:31:15 +02:00
Luca Abbati
c15ecc8026
Properly format code
2019-05-13 11:48:38 +02:00
Luca Abbati
938740569f
Set the hostname on root spans
2019-05-10 16:12:15 +02:00
Tyler Benson
03f44bd8b9
Merge pull request #807 from DataDog/tyler/exclude-config
...
Add config allowing classes to be excluded from transformation
2019-04-23 10:37:01 -07:00
Luca Abbati
0d0fa55f21
Sort decorators factory list alphabetically
2019-04-23 11:52:37 +02:00
Tyler Benson
ec91a75848
Add config allowing classes to be excluded from transformation
...
Add the following system property or corresponding environment variable:
```
dd.trace.classes.exclude=some.packagename.*,some.classname.MyClass$NestedClass
```
2019-04-19 10:41:13 -07:00
Luca Abbati
6e825afef2
Move from ForcedSampling tags to standard DDTags based tags
2019-04-19 16:21:35 +02:00
Luca Abbati
6cbdc2005e
Restore erroneously removed getTags method from span context
2019-04-19 10:42:36 +02:00
Luca Abbati
19e9fb83bb
Remove obsolete forced tracing method from span context
2019-04-19 09:20:17 +02:00
Luca Abbati
d6a5255e8f
Keep tag decorators count in tests up to date
2019-04-18 14:22:09 +02:00
Luca Abbati
fc5b72f86b
Fixed indentations based on google style rules
2019-04-18 13:17:21 +02:00
Luca Abbati
7e157e0561
Move implementation of manual sampling via tag from span to decorators
2019-04-18 13:11:33 +02:00
Luca Abbati
9b705fee2f
Fix code styles errors
2019-04-17 16:46:18 +02:00
Luca Abbati
762930bebd
Run code formatter
2019-04-17 15:19:10 +02:00
Luca Abbati
bff7ac8174
Simplify business logic to set force tracing as a tag
2019-04-17 14:39:54 +02:00
Luca Abbati
f92e2bbdf6
Rebrand priority sampling while being BC with legacy approach to set it
2019-04-17 14:31:39 +02:00
Tyler Benson
a11b888d7a
Update ratpack instrumentation and remove default disabled.
2019-04-08 18:26:08 -07:00
Nikolay Martynov
a245ec4949
Upgradle gradle
2019-04-03 12:56:15 -04:00
Nikolay Martynov
de980c2d52
Merge pull request #787 from DataDog/mar-kolya/compiler-config-fix
...
Mar kolya/compiler config fix
2019-04-01 09:15:39 -04:00
Tyler Benson
e4c0175ed0
Merge pull request #785 from DataDog/tyler/pendingtrace-init
...
Ensure that PendingTrace.SPAN_CLEANER initialized with Tracer
2019-03-29 10:22:07 -07:00
Tyler Benson
bc9b96222d
Add fixme for future testing task.
2019-03-29 10:03:53 -07:00
Nikolay Martynov
65630a702d
Make SpanCleaner initialization explicit
2019-03-29 12:21:17 -04:00
Nikolay Martynov
4c8a790c3b
DDTracer: minor javadoc fix
2019-03-29 09:42:52 -04:00
Tyler Benson
a9760f24fc
Ensure that PendingTrace.SPAN_CLEANER initialized with Tracer
...
Otherwise it might get initialized by a different classloader which would prevent that classloader from being unloaded.
2019-03-28 11:26:43 -07:00
Masayasu Yamamoto
e5c504bceb
Fix log message
2019-03-28 22:38:01 +09: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
f98884235f
Review changes.
2019-03-21 08:10:36 -07:00
Tyler Benson
2a49998180
Allow truncation for 128 bit B3 headers.
...
This is accepted practice in the Zipkin community, so we shouldn’t break this.
2019-03-20 16:02:32 -07:00
Nikolay Martynov
2c5d2ce70d
Create TagContext during B3 headers extration
2019-03-20 12:28:39 -07:00
Nikolay Martynov
42cc3594dc
Improve injection/extraction styles configuration
2019-03-20 12:28:39 -07:00
Nikolay Martynov
4eb7936245
Implement B3 headers extraction and injection
2019-03-20 12:28:39 -07:00
Tyler Benson
7ffcf5ad4d
Change DDAgentWriter to use Disruptor
...
Serialize payloads as they arrive, send to agent when size exceeds 5MB.
If a flood of traces fills up the RingBuffer, we still count the traces that are discarded for stats reporting.
Do we want to allow configuration of the RingBuffer size?
2019-03-19 09:44:23 -07:00
Nikolay Martynov
f3cef4a1e1
Implement HTTP timeout when sending traces to Datadog agent
...
To ensure we do not pile up traces causing memory overconsumption if agent is slow to respond.
2019-03-15 11:44:19 -07:00
Nikolay Martynov
63e0c0f032
Support Unix Domain Socket proxy to send traces
2019-03-15 11:36:44 -07:00
Tyler Benson
0f07776191
Agent doesn’t like getting floats.
...
Convert to doubles instead.
2019-03-14 14:36:14 -07:00
Tyler Benson
576e554445
Migrate Mongo to Decorator
2019-03-05 20:50:06 -05:00
Tyler Benson
50279d64fe
Span type should only be an attribute and not inherited
...
Previously we were inheriting from the parent and also often setting as a tag.
Apply default span assertion to verify the spanType is being checked properly. (Include error state too.)
2019-02-28 12:39:51 -08:00
Tyler Benson
99f2d97cd5
review fixes
2019-02-26 08:32:43 -08:00
Tyler Benson
a33b6ddaa0
Implement trace origin header and propagation support
2019-02-26 08:26:31 -08:00
Tyler Benson
db47fde8d1
Group Elasticsearch instrumentation into common folder
...
Also migrate to decorator.
2019-02-22 13:28:11 -08:00
Tyler Benson
9c8e689b6d
Add decorator for couchbase instrumentation
2019-02-21 15:27:26 -08:00
Tyler Benson
4dd4ee0c05
Trace Analytics Config
...
Also make the instrumentation names a sorted list so the evaluation order is consistent.
2019-02-20 10:56:14 -08:00
Nikolay Martynov
f33600d1f2
Merge pull request #701 from DataDog/mar-kolya/improve-executor-instrumentation
...
Allow non-wrapped tasks in disabled executors
2019-02-11 12:18:36 -05:00
Nikolay Martynov
bae2d7dde8
Allow non-wrapped tasks in disabled executors
...
Some executors cannot handle tasks that have been wrapped into
`{Runnable,Callable}Wrapper` because they require certain subclass of
`{Callable,Runnable}` in order to work. We have a test that
effectively disables instrumentation for such executors.
This change makes sure that tasks that do not need to be
wrapped (which essentially means anything that is not lambda) still
get traced in such executors. One notable example of affected executor
type is `ScheduledThreadPoolExecutor`.
2019-02-11 11:47:34 -05:00
Tyler Benson
8a4c2815d2
Merge pull request #700 from DataDog/tyler/api-tracer-shutdown
...
New API: Add shutdown callback to shutdown the Tracer
2019-02-11 08:21:55 -08:00
Nikolay Martynov
b672a0fffc
Fix ContinuableScope bug when parent span was not closed after scope was closed
2019-02-08 20:13:32 -05: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
2283040a5b
Make internal name usage consistent with setting name.
2019-02-08 10:26:40 -08:00
Nikolay Martynov
931e6ff8af
Merge pull request #688 from DataDog/mar-kolya/webflux-fixes
...
Fix webflux integration to not rely in active span
2019-02-07 12:45:50 -05:00
Tyler Benson
996c1ce625
invert instanceof check
2019-02-06 08:35:10 -08:00
Tyler Benson
326577d7df
Remove codec for inject/extract
...
In preparation for OT 0.32 support.
2019-02-05 15:07:33 -08:00
Nikolay Martynov
16fe4bd370
Add some debug logging to ContinuableScope
2019-02-05 10:10:49 -05:00
Tyler Benson
03bcdc97cc
Move awaitGC to common utility package
2019-01-25 10:32:09 -08:00
Tyler Benson
68d93ce969
Merge pull request #640 from DataDog/tyler/event-sampling
...
Initial support for setting Event Sample Rate via tags
2019-01-22 08:22:46 -08:00
Nikolay Martynov
28e1749c2a
Merge pull request #662 from DataDog/mar-kolya/partial-trace-flush
...
Add support for partial trace flush
2019-01-22 10:16:43 -05:00
Nikolay Martynov
2a7cebc311
Add support for partial trace flush
...
Add a configuration option and logic to flush purtial traces to the
agent if ongoing trace becomes too large.
2019-01-17 09:09:50 -05:00
Tyler Benson
a411f7cc5e
Upgrade jackson-dataformat-msgpack to 0.8.16
2019-01-16 13:46:20 -05:00
Tyler Benson
bbfcb26cd1
Implement support for setting Event Sample Rate via tags
...
This only adds the API, no changes to the integrations.
2019-01-04 15:26:12 -08:00
Tyler Benson
82dcc3ce6c
Merge pull request #629 from DataDog/ark/jmx-tagging
...
Add languages tag to jmx/runtime tags
2018-12-28 09:34:20 -08:00
Tyler Benson
761ea7042a
Fix size calculations and improve DDTracerTest
2018-12-27 17:08:46 -08:00
Tyler Benson
8b910b46d1
Update tests for `language` tag in root span
2018-12-27 16:00:47 -08:00
Andrew Kent
e9f1436522
Additional continuable-scope tests
2018-12-19 17:12:58 -08:00
Andrew Kent
1ed64da10e
Add internal scope listener api
2018-12-19 13:21:07 -08:00
Andrew Kent
5132f0da4b
wip: Add languages tag to jmx/runtime tags
2018-12-17 13:32:50 -08:00
Andrew Kent
2dfc3ed465
Do not set the sampler rate for RateByServiceSampler
2018-12-13 08:24:09 -08:00
Andrew Kent
52eaacc929
Enable priority sampling by default
2018-12-12 18:29:08 -08:00
Nikolay Martynov
7728f9918e
Remove shutdown hook when DDTracer is shutdown
...
This is similar to the problem with weak map supplier and may lead to
a memory leak if we created/estroy many DDTracer objects.
2018-12-05 15:02:44 -05:00
Tyler Benson
983077d150
Move mock/assert deps out of common dependencies
2018-11-30 10:02:26 -08:00
Nikolay Martynov
2e8dc9d08f
Fix Ratpack tests that got broken by ExecutorInstrumentation refactoring
...
It turns out closing continuation also closes parent span. This is not
very good in cases when we end up not using continuation if
continuation in a state has already been setup.
This patch provides way to close continuation in a way that doesn't
affect parent scope.
2018-11-29 15:21:46 -08:00
Andrew Kent
cf033baf7e
Merge pull request #591 from henry-megarry/master
...
implementing add reference to work with opentracing-spring-cloud-starter
2018-11-26 20:06:06 +00:00
Nikolay Martynov
80cd7cd500
Do testAnnotationProcessor deps.autoservice in modules with services in tests
...
Otherwise sometimes tests cannod discover services
2018-11-23 09:44:49 -05:00
henry-megarry
001c5f7349
implementing add reference to work with opentracing-spring-cloud-starter
2018-11-21 14:27:13 -06:00
Tyler Benson
e888b170c4
Merge pull request #582 from DataDog/tyler/servlet-dispatch
...
Fix servlet async dispatch
2018-11-16 15:06:38 -08:00
Tyler Benson
93c046a664
Add support for DD_TRACE_AGENT_PORT setting
...
Makes this more consistent with other apm language clients.
2018-11-16 11:09:26 -08:00
Tyler Benson
cde02e1ae5
Fix servlet async dispatch
...
Finish existing trace and propagate to the next request.
Improve dispatch testing.
2018-11-16 08:55:11 -08:00
Andrew Kent
d2a8b7fb28
Ensure tracer traceCounter is always shared with DDApi
2018-11-16 08:16:18 -08:00
Nikolay Martynov
1b43a18eb4
Put back DDTracer constructor that got removed
2018-11-15 11:57:42 -05:00
Tyler Benson
188bdf498f
Add comments and remove unneeded code.
2018-10-23 16:40:39 +10:00
Tyler Benson
a603eee841
Fix issue with saving tags when not propagating trace.
...
Previously, when setting headers as tags, the tags would only be saved if the request was propagated from another trace.
2018-10-23 16:37:22 +10:00
Nikolay Martynov
34372533c1
Add config for tags that propagate to JMXFetch and spans
...
Also add runtime-id tag to root span and JMXFetch metrics
2018-10-22 15:51:20 -04:00
Tyler Benson
78c6f881ed
Merge pull request #535 from DataDog/tyler/rabbit
...
Add instrumentation for RabbitMQ’s AMQP library
2018-10-19 23:26:50 +10:00
Isak W
57f021c631
Add test case for trace/span id serialization
2018-10-18 00:45:23 +02:00
Tyler Benson
8ffeb5bedf
Add instrumentation for RabbitMQ’s AMQP library
2018-10-17 16:32:24 +10:00
Isak W
484d54d796
Parse trace/span id as BigInteger rather than letting msgpack parse it
2018-10-16 23:07:50 +02:00