Tyler Benson
34b7225a13
Add instrumentation name to allow configuring `@Trace`
...
Specifically, this allows annotated/configured methods to be reported to App Analytics:
- System Property: `-Ddd.trace-annotation.analytics.enabled=true`
- Environment Variable: `DD_TRACE_ANNOTATION_ANALYTICS_ENABLED=true`
or
- System Property: `-Ddd.trace-config.analytics.enabled=true`
- Environment Variable: `DD_TRACE_CONFIG_ANALYTICS_ENABLED=true`
2020-03-03 15:11:11 -08:00
Tyler Benson
f70c35842d
Move matchers to separate package and split matcher classes out
2020-02-24 08:31:12 -08:00
Tyler Benson
51bffa2e8a
Move agent api classes to bootstrap package so they're not analyzed by muzzle
...
Also move jdbc classes to bootstrap to reduce size and complexity of those reference checkers.
These changes reduce the total file size of these instrumentation classes by 635k, which should also result in decent memory savings.
2020-02-10 15:09:15 -08:00
Blinkingor
8d83172128
clazz -> segment rename
2020-01-29 18:41:29 +01:00
Blinkingor
db485d10da
final configString
2020-01-28 16:20:02 +01:00
Blinkingor
811051d111
Remove overlapping tests and fix failing unit test
2020-01-28 16:06:23 +01:00
Blinkingor
10b963d277
Codenarc fixes
2020-01-28 15:35:39 +01:00
Blinkingor
cf876b5e67
Fix import order
2020-01-28 15:21:50 +01:00
Blinkingor
1e390984c1
Fix potential StackOverFlowError on regexp
2020-01-28 10:28:37 +01:00
Trask Stalnaker
847a76cb04
Add missing tag verification
2019-11-22 10:59:47 -08:00
dougqh
6b096c2240
Replacing Advice.class references
...
Replacing Advice.class references with string construction.
This stops the JVM from loading the Advice classes which are used as templates for byte buddy and doesn't ever need to be run directly.
This eliminates ~130 class loads at start-up -- and saves 0.5MiB in metaspace
2019-11-18 16:09:30 -05:00
Trask Stalnaker
9182b64078
Switch to new Tags class in tests
2019-10-24 21:04:57 -07:00
Trask Stalnaker
a9d3360701
Remove test dependency on GlobalTracer
2019-10-24 20:53:14 -07:00
Trask Stalnaker
377df7b789
Update trace-annotation to new agent api
2019-10-19 16:52:42 -07:00
Laplie Anderson
5719a783ad
Make trace annotation instrumentation async propagating
2019-10-07 18:29:26 +02:00
Tyler Benson
cd6dcf393b
Apply fixed default operation name for @Trace generated spans
...
This should help reduce issues with multiple top level spans.
2019-09-05 16:21:27 -07:00
Tyler Benson
95a294a560
Remove common (redundant) dependencies
2019-08-06 14:51:04 -07:00
Laplie Anderson
cad2a3d4a4
Set resource name in a way that doesn't need to reference DDSpanBuilder
2019-07-19 12:26:17 -04:00
Laplie Anderson
d101bea085
Add DDSpanBuilder to helper classes of both instrumentations
2019-07-19 12:11:10 -04:00
Laplie Anderson
331b8c8e99
Add resource name to the @Trace annotation
2019-07-19 09:52:19 -04:00
Luca Abbati
a8dd35ef57
Improve AgentRunner and ConfigUtils class based on CR comments
2019-06-13 12:40:10 +02:00
Luca Abbati
e1ceda8f0e
Improve config usage as instance based on CR
2019-06-12 14:00:36 +02:00
Luca Abbati
b6572bfd55
Reset test tracer in TraceAnnotationsTest to pick new configs
2019-06-05 18:52:25 +02:00
Luca Abbati
ae03abe63c
Adapt tests to the new Config approach instance vs static
2019-06-05 12:17:09 +02:00
Luca Abbati
901efee50e
Remove static usage of low level config methods from outside the config class
2019-06-04 15:13:40 +02:00
Tyler Benson
9cdf049ca7
Extract ConfigUtils
2019-05-30 09:09:29 -07: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
34242e4849
Migrate method tracing instrumentation to Decorator
2019-02-27 09:40:08 -08:00
Tyler Benson
a98c22ac3a
Introduce base decorators
2019-02-20 16:11:18 -08:00
Tyler Benson
bbcd2f6949
Move other Utils to utils package
2019-02-05 11:43:05 -08:00
Tyler Benson
6cebabbada
Move integrations config to Config class.
2019-02-05 08:20:49 -08:00
Tyler Benson
fe52180bfc
Apply proper generic signature for Instrumenter.Default transformers()
...
Previously it was missing the MethodDescription portion.
2019-01-04 15:25:12 -08:00
Andrew Kent
0240ad5154
Move default instrumentation declarations to Instrumenter.Default
2018-12-11 18:01:40 -08:00
Tyler Benson
cbb29069fe
Apply component tag more consistently
2018-11-14 11:31:40 -08:00
Tyler Benson
432ce89a07
Add assertTraces to AgentTestRunner with implied argument
...
This will also help with auto complete when writing tests.
2018-10-15 10:19:00 +10:00
Tyler Benson
3f2ec7dc48
Move to separate packages
2018-08-16 12:24:27 +10:00
Tyler Benson
4583d12b31
Cleanup method signatures and servlet 2 instrumentation
...
adding the abstract servlet instrumentation reduces code duplication and makes it more similar to servlet 3 instrumentation.
2018-08-13 15:14:10 +10:00
Nikolay Martynov
6bc1d1ab8e
Implement `saveHasSuperType` and use it instead of `hasSuperType`
...
The idea is to just 'trim' type hierarchy 'up-trees' that we cannot
resolve dring instrumentation instead of failing to instrument completely.
2018-07-31 20:13:59 -04:00
Andrew Kent
541a6998a4
Hook up muzzle to Instrumenter.Default's matcher
2018-07-10 17:26:49 -04:00
Andrew Kent
836f49205b
TraceConfigInstrumentation implements Instrumenter directly
2018-07-10 17:26:49 -04:00
Andrew Kent
02a3e6a5d3
New Instrumentation API
2018-07-06 17:17:32 -04:00
Tyler Benson
46878d24d3
Name service based on servlet context
...
This only applies if a service name hasn’t been set or is empty.
This is particularly useful for environments that deploy multiple war files to the same app server.
2018-05-11 13:59:03 +10:00
Tyler Benson
d5d24c50c7
Replace @Unroll’s with a rule to always unroll.
2018-05-10 15:24:59 +10:00
Tyler Benson
9606dd3467
Fix TraceConfig tests
2018-05-08 11:00:59 +10:00
Tyler Benson
c81615b255
Allow configuration of additional trace annotations
...
List can be set to empty if needed.
2018-05-07 13:27:23 +10:00
Tyler Benson
441bf59e80
Add tracing for other annotations and config
...
Allows for specifying additional traced methods via env var or sys prop config.
2018-05-07 13:27:23 +10:00
Tyler Benson
f35e2e6ebe
Remove various warnings and other cleanup
...
Also upgrade some plugins.
2018-05-04 14:05:06 +10:00
Tyler Benson
84b7080860
Fix AgentInstaller ignores and @Trace naming
2018-05-03 13:03:53 +10:00
Andrew Kent
3eac216a04
Use defaultTransformers in all instrumentation
2018-03-20 15:59:11 -07:00
Tyler Benson
fb74c7b4cb
Wrap super/parent type matchers in failSafe
...
To prevent errors on injected classes.
2018-03-09 14:45:08 +10:00