Tyler Benson
43fbf28035
Revert "Remove experimental jdbc and servlet integrations until further evaluation"
...
This reverts commit 2432a92230
.
2020-01-10 12:53:24 -08:00
Tyler Benson
6b9c92eefa
Merge pull request #1164 from DataDog/tyler/jdbc-error-handling
...
Better error handling for getClientInfo in JDBCDecorator
2020-01-09 09:20:46 -08:00
Tyler Benson
7cb24f35c0
Better error handling for getClientInfo in JDBCDecorator
...
An exception there caused a span to be created but then never finished.
2020-01-08 15:10:54 -08:00
Tyler Benson
5e8af8439a
Optimize HasSuperMethodMatcher logic
...
Instead of filtering then iterating, just iterate through everything and apply filter inline.
This will help avoid allocation for filter iterator and improve if early match is found.
2020-01-07 17:10:01 -08:00
Tyler Benson
8500dbc2ba
Merge pull request #1156 from DataDog/tyler/ddagentwriter-split
...
Split DDAgentWriter into smaller classes
2020-01-03 11:19:28 -08:00
Tyler Benson
03dd908fdb
Merge pull request #1158 from DataDog/tyler/aws-1-tagging
...
Add various tags for AWS SDK v1.x
2020-01-03 08:38:56 -08:00
Tyler Benson
4947dc3bd3
Add various tags for AWS SDK v1.x
...
This brings it inline with the v2 instrumentation.
2020-01-02 13:23:30 -08:00
Tyler Benson
dacafe4217
Merge pull request #1157 from DataDog/pawel/rmi-add-client-and-server-info-to-decorators
...
[rmi] add instrumentation names to client and server decorators, remove default client service name
2020-01-02 11:41:40 -08:00
Laplie Anderson
6b6554996a
Merge pull request #1155 from DataDog/landerson/muzzle-scan-classloader-matcher
...
Add classloader matcher to muzzle scan
2019-12-30 10:12:59 -05:00
Pawel Chojnacki
bbaf7278a6
[rmi] remove rmi client service name
2019-12-24 11:59:29 +01:00
Pawel Chojnacki
a4b0dcbc9f
[rmi] add instrumentation names to client and server decorators
2019-12-23 19:05:34 +01:00
Tyler Benson
ab33ed4a02
Begin 0.41.0
2019-12-23 10:04:47 -08:00
Tyler Benson
b8210ceea5
Version 0.40.0
2019-12-23 09:33:30 -08:00
Pawel Chojnacki
65c701dd51
Merge pull request #1128 from DataDog/pawel/add_rmi_support
...
Add RMI support
2019-12-23 14:38:46 +01:00
Pawel Chojnacki
f71ba14016
[rmi] use simple thread local for propagating context
...
+ add more documentation
2019-12-23 13:25:14 +01:00
Tyler Benson
9020b74128
Merge pull request #1147 from DataDog/tyler/kafka-async
...
Add async propagation flags for kafka consumer.
2019-12-20 14:55:36 -08:00
Tyler Benson
0a89f2a57c
Extract DDAgentResponseListener from DDApi.
...
Reduce references to DDApi
2019-12-20 14:49:31 -08:00
Tyler Benson
24e2fe6da7
Move DDApi and rename to DDAgentApi
...
Reduce visibility back to what it was before refactoring.
2019-12-20 14:36:45 -08:00
Tyler Benson
84f9d80258
Extract TraceSerializingDisruptor class from DDAgentWriter
2019-12-20 14:22:32 -08:00
Tyler Benson
97ed587547
Extract TraceConsumer from DDAgentWriter
...
Unfortunately this required making some things public that were previously private or package visible. I expect this to be temporary.
2019-12-20 14:17:33 -08:00
Tyler Benson
8fdd30d3ed
Make TraceConsumer a static class
2019-12-20 13:41:09 -08:00
Tyler Benson
2ea76494f8
Extract DisruptorEvent and EventTranslator classes from DDAgentWriter
2019-12-20 13:40:38 -08:00
Laplie Anderson
f181fa721f
Add classloader matcher to muzzle scan
2019-12-20 16:17:08 -05:00
Laplie Anderson
00f9e310be
Merge pull request #1154 from DataDog/landerson/jax-rs-client-lazy-builder
...
JAX-RS ClientBuilder thread safety
2019-12-20 16:15:37 -05:00
Laplie Anderson
97b947919f
Add a comment
2019-12-20 15:27:32 -05:00
Tyler Benson
6e57041a6a
Extract Monitor classes from DDAgentWriter
2019-12-20 12:09:14 -08:00
Laplie Anderson
7338bbdd06
Register on JAX-RS client instead of builder
2019-12-20 13:15:04 -05:00
Laplie Anderson
7920a25b7e
Merge pull request #1152 from DataDog/landerson/decorator-flag
...
Disable decorators via config
2019-12-20 11:09:21 -05:00
Pawel Chojnacki
3f21f6419d
[rmi] Split context propagation to server and client instrumentation
...
+ Separate extra code from advices
+ cleanup helper definitions
2019-12-20 16:16:53 +01:00
Pawel Chojnacki
c3308042d3
[rmi] use ObjectEndpoint#toString() to avoid need for reflection to be able to compare object identifiers.
2019-12-20 12:10:35 +01:00
Tyler Benson
ad22bd9cfc
Merge pull request #1150 from DataDog/tyler/fix-disruptor-shutdown
...
Allow flush to return if executor already shut down
2019-12-19 16:12:02 -08:00
Laplie Anderson
712a5c1483
Disable decorators via config
2019-12-19 13:02:59 -05:00
Tyler Benson
32db01200c
Merge pull request #1131 from fujigon/feature/debugging
...
apply comma split logic to servlet request extract adapter
2019-12-19 09:06:12 -08:00
Pawel Chojnacki
bb05700806
[rmi] Improve connection overhead and add additional metadata
...
- Cache response per connection to ensure as little communication overhead as possible is needed
- change context payload serialization to use plain hashmap
+ add more logging
- only set parent context on root entry point
+ use decorator to create spans
- Use Instrumentation context to avoid reflection
- separate integration parts into packages
2019-12-19 17:21:16 +01:00
Pawel Chojnacki
832605a01a
[rmi] Add distributed context propagation
...
The flow for context propagation is as follows.
* <p>We inject into StreamRemoteCall constructor used for invoking remote tasks and performs a
* backwards compatible check to ensure if the other side is prepared to receive context propagation
* messages then if successful sends a context propagation message
*
* <p>Context propagation consist of a Serialized HashMap with all data set by usual context
* injection, which includes things like sampling priority, trace and parent id
*
* <p>As well as optional baggage items
*
* <p>On the other side of the communication a special Dispatcher is created when a message with
* DD_CONTEXT_CALL_ID is received.
*
* <p>If the server is not instrumented first call will gracefully fail just like any other unknown
* call. With small caveat that this first call needs to *not* have any parameters, since those will
* not be read from connection and instead will be interpreted as another remote instruction, but
* that instruction will essentially be garbage data and will cause the parsing loop to throw exception
* and shutdown the connection which we do not want
2019-12-19 17:21:07 +01:00
Pawel Chojnacki
0ee80a0b95
[rmi] Instrumentation for RMI 1.2 and later
...
includes instrumentation of client and server endpoints
currently missing passing of execution context from client to server
2019-12-19 17:20:50 +01:00
Tyler Benson
fb8f7af342
Merge pull request #1149 from DataDog/tyler/jdk-muzzle
...
Add option for muzzle validation on the specific JDK version
2019-12-19 08:14:54 -08:00
kfujita
b707a3aab9
move multi-value aware logic to Extractor.
2019-12-19 13:33:08 +09:00
kfujita
0f3125498c
add test case
2019-12-19 13:33:03 +09:00
kfujita
a5e693bb92
assert fix same as JettyServlet3Test
2019-12-19 13:32:09 +09:00
Laplie Anderson
dc0cbeb95d
apply comma split logic to servlet request extract adapter
2019-12-19 13:32:09 +09:00
Tyler Benson
619fdeda37
Merge pull request #1148 from DataDog/tyler/span-error
...
Capture error message even if no exception object provided.
2019-12-18 15:33:56 -08:00
Tyler Benson
25d0d98dff
Allow flush to return if executor already shut down
...
Otherwise it could block shutdown if executor is stopped before disruptor.
2019-12-18 14:23:46 -08:00
Tyler Benson
31b77cbd7b
Capture error message even if no exception object provided.
...
This is currently only used by the GoogleHttpClient instrumentation, but may be used by customers too.
2019-12-18 13:49:24 -08:00
Tyler Benson
ded28674d3
Add option for muzzle validation on the specific JDK version
...
This is still useful to validate various aspects of the integrations even if it doesn't need to check against maven.
2019-12-18 13:40:19 -08:00
Tyler Benson
7095ea3426
Add async propagation flags for kafka consumer.
2019-12-18 10:40:54 -08:00
Tyler Benson
b3f15ca133
Merge pull request #1146 from DataDog/tyler/boostrap-log-exception
...
Add better exception handling in Agent initialization
2019-12-17 22:03:42 -08:00
Tyler Benson
96edbe8b8a
Add better exception handling in Agent initialization
...
An invalid statsd hostname causes an exception for jmxfetch. This should be an error, but not prevent the app from starting.
Also improved log variable name consistency.
2019-12-17 14:15:42 -08:00
Tyler Benson
fc59355a69
Merge pull request #1141 from DataDog/tyler/tag-query
...
Fix tagging query string for additional servers
2019-12-17 10:11:40 -08:00
Tyler Benson
99992df998
Fix tagging query string for additional servers
...
Add test to common test suite and adapt each test.
2019-12-17 09:33:27 -08:00