Commit Graph

43 Commits

Author SHA1 Message Date
Laplie Anderson 6cd530a541 Move decorators to bootstrap 2020-03-11 18:41:29 -04:00
Trask Stalnaker 8949d6c05f Make sure CallDepthThreadLocalMap is always reset 2020-02-20 16:53:57 -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
Trask Stalnaker 1987e86ebf Normalize tag verification order 2019-11-22 10:59:45 -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
Tyler Benson a8ca47ed03 Skip spring controller and dropwizard trace if no trace present
Also prefer early return instead of deep nesting for null check.
2019-10-24 14:40:08 -07:00
Trask Stalnaker 05e6544ded Update spymemcached-2.12 to new agent api 2019-10-19 16:52:42 -07:00
Tyler Benson 95a294a560 Remove common (redundant) dependencies 2019-08-06 14:51:04 -07:00
Tyler Benson 2c240754fc Additional testing for split-by-instance config
Some DB’s don’t define an instance, so verify the setting has no effect for them.
2019-06-14 10:08:17 -07:00
Tyler Benson 3be6868981 Update Mongo instance name and remove memcache instance name
For mongo, use description if set, fallback to db name.

Memcache doesn’t have a good “instance name” that would work as service name, so clear it out for now.
2019-06-13 12:35:16 -07:00
Nikolay Martynov 6fd630831f Stop using `scopeManager().activate(span, true)` 2019-04-08 11:54:47 -04:00
Nikolay Martynov 2bba4c5591 Make sure span is opened and closed with scope in spymemcached 2019-04-05 11:13:53 -04:00
Tyler Benson bca5614508 Migrate Memcache instrumentation to Decorator 2019-03-12 11:47:25 -07:00
Nikolay Martynov 9272f88fe6 Increase docker container timeout in tests to help with stability on underpowered machines running builds 2019-03-04 11:59:41 -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 bbcd2f6949 Move other Utils to utils package 2019-02-05 11:43:05 -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
Tyler Benson 9bd2b86d2e Add assertion to ensure latestDepTest dependencies are different from test. 2018-11-12 08:15:24 -08:00
Tyler Benson 8ffeb5bedf Add instrumentation for RabbitMQ’s AMQP library 2018-10-17 16:32:24 +10: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
Gary 79d3327475
Enable Spymemcached instrumentation by default 2018-09-28 14:51:10 -04:00
Gary 827b721ae4
add comment about build vs muzzle versions 2018-09-26 14:26:58 -04:00
Qiyang Huang 347002c0f6 Muzzle Spymemcached
Add muzzle block and remove class loader matcher method.
2018-09-19 14:37:25 -04:00
Tyler Benson 2761615436 Couchbase instrumentation 2018-09-05 14:46:22 +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
Tyler Benson 094552cad3 memcache 2018-07-31 12:53:50 +10:00
Tyler Benson ff9ef671f3 Apply formatter on groovy files. 2018-07-31 12:09:28 +10:00
Tyler Benson 51919a77bb Apply formatter on java files. 2018-07-31 12:07:43 +10:00
Tyler Benson b5c8a8b8fc Apply formatter on gradle files. 2018-07-31 12:04:00 +10:00
Nikolay Martynov 44b364332a Remove unused field and method 2018-07-26 10:11:20 -04:00
Nikolay Martynov 732bce82d0 Fix typo 2018-07-23 10:04:53 -04:00
Nikolay Martynov f9f135cbd6 Do not run Spymemcached tests locally under Java7
since it requires external Memcached container running because
testcontainers doesn't work on Java7.
2018-07-23 10:04:53 -04:00
Andrew Kent 6faf63d6d8 Add missing memcached helper 2018-07-10 17:26:49 -04:00
Andrew Kent 02a3e6a5d3 New Instrumentation API 2018-07-06 17:17:32 -04:00
Nikolay Martynov 0e62ee8ec6 Make spymemcached instrumentation disabled by default 2018-06-15 14:25:51 -04:00
Nikolay Martynov dd8f5ced07 Spymemcached: be slightly mode defensive in instumentation 2018-06-14 13:37:35 -04:00
Nikolay Martynov ba37ccc552 Spymemcached: use cache span type 2018-06-14 13:37:35 -04:00
Nikolay Martynov 940633b388 Spymemcached: Make abstract method in CompletionListener 2018-06-14 13:37:31 -04:00
Nikolay Martynov 30695555f9 Spymemcached: remove unnecessary unboxing and minor cleanup 2018-06-13 22:43:36 -04:00
Nikolay Martynov dafd52cb7a Spymemcached: add instumentation 2018-06-13 22:38:18 -04:00
Nikolay Martynov 63c4cdff87 Memcached testing: add support for testoingcontainers 2018-06-13 13:06:23 -04:00