Commit Graph

131 Commits

Author SHA1 Message Date
Luca Abbati d865a1a249
Format code 2019-06-17 08:22:44 -04:00
Luca Abbati a3be0cbf9f
Merge branch 'master' of github.com:DataDog/dd-trace-java into labbati/config-file 2019-06-17 08:11:50 -04:00
Luca Abbati d0b32147a8
Be more friendly for config file to unix users using tilde for home 2019-06-17 08:10:50 -04:00
Luca Abbati f578c9ccf2
Remove system properties and envs left-over in Config tests 2019-06-14 11:50:11 +02:00
Tyler Benson 4c5793bddf Add `dd.trace.db.client.split-by-instance` Config 2019-06-13 15:52:37 -07:00
Luca Abbati 12dc7c4fd8
Remove unused imports 2019-06-13 14:35:32 +02:00
Luca Abbati da05772897
Add properties file to a comment listing all the source of configuration 2019-06-13 14:35:32 +02:00
Luca Abbati bfd9680d75
Fix typos 2019-06-13 14:35:32 +02:00
Luca Abbati 076c2b1b4e
Removing synchronized as the load properties method no longer set the static istance 2019-06-13 14:35:32 +02:00
Luca Abbati 4dd6708852
Update comment on Config class to show new functionality 2019-06-13 14:35:31 +02:00
Luca Abbati 1d57a5873b
Tests for functionality: Config fallback to properties files 2019-06-13 14:35:31 +02:00
Luca Abbati 6fc69ba64e
Config to fallback to properties file to load settings 2019-06-13 14:35:31 +02:00
Luca Abbati d0fbbf85ce
Format code 2019-06-12 14:35:48 +02:00
Luca Abbati e1ceda8f0e
Improve config usage as instance based on CR 2019-06-12 14:00:36 +02:00
Luca Abbati 1dc8467c26
Merge branch 'master' of github.com:DataDog/dd-trace-java into labbati/non-static-config 2019-06-06 18:11:43 +02:00
Nikolay Martynov 7863a68a53 Fix typo 2019-06-06 09:41:36 -04:00
Luca Abbati 057ca7b66e
Refresh the tracer with changed config properties now that we are using instances 2019-06-05 15:38:00 +02:00
Luca Abbati 8debe771d4
Fix tests after changing config from static to instance access 2019-06-05 10:56:20 +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 fc9f1d120c Misc fixes. 2019-05-29 13:54:35 -07:00
Tyler Benson 71101ac8d0 Add http.query.string tag when enabled
Disabled by default.

Enable for http servers with:
* System Property: `dd.http.server.tag.query-string=true`
* Environment Variable: `DD_HTTP_SERVER_TAG_QUERY_STRING=true`

Enable for http clients with:
* System Property: `dd.http.client.tag.query-string=true`
* Environment Variable: `DD_HTTP_CLIENT_TAG_QUERY_STRING=true`
2019-05-29 13:54:35 -07:00
Tyler Benson 4d01f52b67 Change JMXFetch config keys
`agent.conf.d` -> `jmxfetch.config.dir`
`jmxfetch.configs` -> `jmxfetch.config`

Enabling bundled JMXFetch configs:
`dd.integration.<integration>.enabled=true` -> `dd.jmxfetch.<integration>.enabled=true`
2019-05-23 15:00:46 -07:00
Luca Abbati b09aa1a59d Enable JMXFetch by default 2019-05-23 11:09:07 -07:00
Tyler Benson b505c60543 Use jmx AppConfig Builder instead of factory method
Expose new options for configuring JMXFetch with standard datadog-agent config files with `jvm_direct: true` set as an instance attribute (this will be ignored by the datadog-agent).

For Example:
* `dd.agent.conf.d=/opt/datadog-agent/etc/conf.d`
* `dd.jmxfetch.configs=activemq.d/conf.yaml,jmx.d/conf.yaml`
will load jmx configs in those two files that have `jvm_direct: true` in their `instance` setup.

Environment variables can also be used: `DD_AGENT_CONF_D` and `DD_JMXFETCH_CONFIGS`

Depends on https://github.com/DataDog/jmxfetch/releases/tag/0.29.0 being released.
2019-05-21 17:13:56 -07:00
Luca Abbati 06f13fd570
Simplify how we calculate local root span tags 2019-05-17 22:32:03 +02:00
Luca Abbati 7a9d54d2c1
Avoid setting hostname tag on local root span if empty (followup) 2019-05-17 22:01:14 +02:00
Luca Abbati 0da9991805
Avoid setting hostname tag on local root span if empty (followup) 2019-05-17 22:00:44 +02:00
Luca Abbati 3b8257a123
Avoid setting hostname tag on local root span if empty 2019-05-17 21:55:02 +02:00
Luca Abbati 6399fee839
Remove caching of hostname detection in config class 2019-05-17 17:46:16 +02:00
Luca Abbati 8b2b83bc13
Merge branch 'master' of github.com:DataDog/dd-trace-java into labbati/hostname 2019-05-17 10:16:43 +02: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 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 8231ea1cb2
Merge branch 'master' of github.com:DataDog/dd-trace-java into labbati/hostname 2019-05-15 13:48:26 +02:00
Luca Abbati c8a04b0a4f
Refactor hostname detection in tracer 2019-05-15 13:42:43 +02:00
Tyler Benson cc23fee614 Add config to enable individual executors
Or all executors, bypassing the allow list.

`dd.trace.executor=com.MyCustomExecutor,com.OtherExecutor`
`dd.trace.executors.all=true`

Turns out in many cases, executors that we say we’re skipping, are still being traced because they extend from an already instrumented executor.
2019-05-14 10:03:44 -07:00
Nikolay Martynov 076d14f727 Remove unused config field 2019-05-10 13:45:43 -04:00
Luca Abbati 938740569f
Set the hostname on root spans 2019-05-10 16:12:15 +02:00
Nikolay Martynov 5ff04bd1e9 Allow tracing be disabled via config 2019-05-09 10:20:06 -04:00
Luca Abbati 0dd6659c80
Add configuration param to report hostname 2019-05-09 12:27:13 +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
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 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 762930bebd
Run code formatter 2019-04-17 15:19:10 +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 216ecaa05e
Merge pull request #804 from DataDog/tyler/partial-flush-default
Set default value for partial trace flush to 1k
2019-04-16 10:57:26 -07:00