Commit Graph

682 Commits

Author SHA1 Message Date
Xin,Zhang 1b5dd9b3f3
Move spring webflux into optional plugin (#5445)
* Move spring webflux into optional plugin

* Fix compile check

* Fix check style

* Adjust code

* add docs

* Update docs/en/setup/service-agent/java-agent/README.md

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-09-09 09:53:07 +08:00
Brandon Fergerson f8c887e241
Include request method type in rest mapping annotations (#5085) 2020-09-05 23:14:40 +08:00
xbkaishui ae6b4add50
#5311 Fix ActiveMQ NullPointerException (#5412) 2020-08-30 12:09:57 +08:00
Lu Jiajing 9442a51c11
JsonLogger implementation (#5356) (#5357) 2020-08-29 23:17:29 +08:00
hailin0 afc0aef567
Add logic-endpoint and testcase for elasticjob-2.x plugin (#5395) 2020-08-28 14:27:07 +08:00
novayoung f89ed0c315
Optimize: truncate parameterString (#5396) 2020-08-28 12:46:41 +08:00
Xin,Zhang 77d94b4d2a
Fix issue that spring mvc plugin doesn't works when running on reactive api (#5360) 2020-08-26 13:22:39 +08:00
hailin0 1b54b61a88
Add support for spring @Scheduled (#5339) 2020-08-23 17:13:49 +08:00
Lu Jiajing 5bfac1b50f
Remove style-check exception for logger (#5363) 2020-08-21 18:26:25 +08:00
xbkaishui 79c1c0cc76
Support http header tag (#5348) 2020-08-20 10:43:28 +08:00
于玉桔 494d2a5b65
Elastic job plugin use wrong span type (#5347) 2020-08-19 21:21:09 +08:00
于玉桔 ab5555fe27
Support @KafkaPollAndInvoke annotation to replace @Trace when just using the Kafka scenario agent plugin (#5304) 2020-08-13 21:18:04 +08:00
于玉桔 e37fc2e439
Support spring-kafka (#5254) 2020-08-10 19:13:19 +08:00
whfjam fdd242edb0
Update HttpClientExecuteInterceptor.java (#5283)
use the  method httpMethod.setRequestHeader to set the new skywalking headers,so that it can override the exits headers if there is any

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-08-10 13:41:31 +08:00
于玉桔 69297b9ec6
Support Apache ShardingSphere-Elasticjob (#5153) 2020-08-10 10:48:23 +08:00
yangy 9b6a4ed28c
Fix kafka plugin sometimes trace doesn't show span layer (#5264) 2020-08-08 14:39:54 +08:00
zshit dd6f439df1
support collecting feign params (#5235) 2020-08-06 13:09:31 +08:00
于玉桔 7a20c260bb
Add HBase hbase-client plugin (#5225) 2020-08-05 17:55:20 +08:00
于玉桔 4149ac59fe
The Dubbo plugin can collect more information by custom (#5209) 2020-08-04 23:26:56 +08:00
yangy 118e334e7c
Fix ParsePathUtil#parameterEquals method ArrayIndexOutOfBoundsException error and some typo (#5216) 2020-08-01 16:16:57 +08:00
吴晟 Wu Sheng 2f2840cbf5
Begin 8.2.0 iteration. (#5211)
* [maven-release-plugin] prepare release v8.1.0

* [maven-release-plugin] prepare for next development iteration
2020-07-31 20:15:27 +08:00
Xin,Zhang 5cf1d122cc
Fix webflux sharing span across multiple threads (#5177) 2020-07-27 12:44:17 +08:00
吴晟 Wu Sheng 20b1b51798
Separate config initialization in the plugin out of core level Config. (#5136) 2020-07-21 20:51:56 +08:00
Patrick Jiang(白泽) 62f76881de
Fix issue 4965 (#5109) 2020-07-17 17:36:02 +08:00
Brandon Fergerson e356da4b0e
#4907 - Duplicate Spring MVC endpoint fix (#5084) 2020-07-15 13:52:46 +08:00
Brandon Fergerson c8fc457e82
Better Vert.x endpoint names (#5064) 2020-07-09 23:32:43 +08:00
kezhenxu94 32202e053a
BugFix: x-le tag format in GraphQL plugin (#5054) 2020-07-08 12:59:55 +08:00
caoyixiong 80a534b1bb
support Graphql Logic endpoint (#5030) 2020-07-05 23:37:09 +08:00
dengliming 39f2cd3a5f
Optimize the code to prevent mongo statements from being too long (#5017) 2020-07-03 08:07:10 +08:00
caoyixiong 31f42343f6
add brpc-java plugin (#4958) 2020-06-27 14:57:29 +08:00
dagmom 08897ce5f8
New feature provided : new plugin for influxdb-java client (#4846) 2020-06-21 22:35:45 +08:00
于玉桔 c778a0d6c2
Support Quasar fiber tracing (#4951) 2020-06-20 22:30:03 +08:00
yangy b1b144480d
fix issue 4879 (#4954) 2020-06-20 21:21:22 +08:00
xiaoyu 164124fc22
provider shardingSphere 4.0.0 4.0.1 plugin. (#4927) 2020-06-15 17:03:17 +08:00
xiaoyu a24efcf5e9
ShardingSphere plugins conflict among themselves. (#4921)
* Fix shardingSphere plugin test fail if have some same ENHANCE_CLASS define.

* support 4.1.0 and 4.1.1

* support 4.1.0 and 4.1.1
2020-06-14 18:48:07 +08:00
吴晟 Wu Sheng 5de0d2c6f6
Set version to 8.1.0 for next iteration. (#4916)
* [maven-release-plugin] prepare release v8.0.0

* [maven-release-plugin] prepare for next development iteration

* Remove all shardingsphere cases.
2020-06-12 23:44:42 +08:00
Xin,Zhang 7b99019c49
Refactory spring gateway plugin (#4878) 2020-06-12 00:25:41 +08:00
denis e2b04b58b1
fix Kafka consumer subscribe topics from pattern (#4873) 2020-06-11 17:55:04 +08:00
xiaoyu 9a9401fdb6
provide shardingSphere(4.0.0,4.0.1, 4.1.0 ,4.1.1) plugin. (#4894) 2020-06-11 14:49:04 +08:00
zifeihan f513c39d56
Enhance hystrix plugin,see https://github.com/apache/skywalking/issues/4850 (#4857) 2020-06-07 20:13:39 +08:00
Brandon Fergerson 705f97f27a
Increased Vert.x support (#4840) 2020-06-01 21:00:16 +08:00
zifeihan e8e9153d74
fix ClassCastException in KafkaProducerInterceptor (#4826) 2020-05-31 08:12:02 +08:00
Brandon Fergerson 594fb15b53
Increased support for Vertx (#4827) 2020-05-26 22:02:34 +08:00
ynfeng 49ed47889b
fix #4765 (#4766) 2020-05-09 20:38:13 +08:00
Efe Kaptan d19ba41678
Mariadb JDBC plugin (#4740)
* Add Mariadb JDBC plugin and provide tests

* Refactor component name

* Reformat plugin description and remove healthcheck span from the test

Co-authored-by: Efe Kaptan <Efe.Kaptan@webtrekk.com>
Co-authored-by: zhang-wei <pknfe@outlook.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-05-07 20:54:30 +08:00
zifeihan c33f583806
fix to get 'peer' in SingleServerConfig (#4737)
* fix to get 'peer' in SingleServerConfig, this method to throw exception in 'org.apache.skywalking.apm.agent.core.context.TracingContext#createExitSpan' because 'peer' is null. in sw 6 version, this also one of  problem to throw  'NoSuchElementException'  in 'org.apache.skywalking.apm.agent.core.context.ContextManager#capture'

* Polishing

Co-authored-by: gui.cao <gui.cao@zhangmen.com>
Co-authored-by: hanfei <zifeihan@foxmail.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-05-03 18:19:55 +08:00
Brandon Fergerson 4fc57a6663
Increase Vert.x Compatability (#4736)
* vertx web plugin re-impl attempt

* added license

* update test for new plugin structure

* got rid of registryItems

* remove unnecessary dependencies

* re-impl eventbus scenario

* more precise naming

* fix expected data

* removed unsupported versions and removed vertx caching (avoids permission error)

* rewrote to remove copied code

* Update plugins-test.3.yaml

* fixes issue of .vertx files remaining on v3.0.0

* only present in v3.0.0

* consistency

* add more supported versions

* track status code

* spelling fix

* track status code

* more correct naming

* reverts 213f5a69 (status code isn't sent at this point)

* made HttpServerResponseImplEndInstrumentation more strict based on version
added status code tracking
fixes issue not finishing async spans

* works 3.0.0,3.7.0

* increase compatibility

* 3.9.0 default

* versioned witness classes (advice from wu-sheng)

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: zhang-wei <pknfe@outlook.com>
2020-05-01 17:06:46 +08:00
yoje b6cc9a59d8
Fix npe in afterMethod/handleMethodException of kafka/finagle plugins (#4712)
* Fix npe in afterMethod/handleMethodException of kafka/finagle plugins
2020-04-25 22:27:45 +08:00
mrproliu 7d1fdd3ea8
Support v3 extension header (#4666)
* support v3 extension header

Co-authored-by: Mrproliu <mrproliu@lagou.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-04-21 17:09:02 +08:00
kezhenxu94 8e6a527f78
Add Java versions 9~14 to E2E tests (#4674) 2020-04-21 13:45:32 +08:00
吴晟 Wu Sheng 6fe2041b47
Make 8.0.0 Core available. New protocol and register removed. (#4599)
Here are the list of changes we made in this pull request. Top 3 are the principle changes, others are following these principles.
1. New agent and mesh report protocol. 
2. New agent header protocol. 
3. Service register, instance register and network address register have been removed permanently.
4. Service traffic, instance traffic and network alias metrics are added to replace the service, instance and network address inventory.
5. Register process has been removed.
6. Metrics stream process supports insert only mode, especially for traffic entities.
7. Metrics stream process supports no-downsampling mode for traffic entities and network alias.
8. Remove all register mechanism and cache in the java agent.
9. Remove MONTH step in GraphQL query.
10. Update UI to remove MONTH step query, the max query range is 60 days now.
11. Simplify the TTL to metrics and record. And the unit has been formatted in Day unit. No specific TTL for ElasticSearch storage.
12. Buffer mechanism of trace receiver and mesh receiver has been removed due to no register.
13. New service id, instance id and endpoint id rules, including service relation, instance relation and endpoint relation id rules.
14. Java agent support `keep tracing` mode, meaning, agent generating tracing context even the backend is unconnected/unavailable.
15. Plugin test tool up to date, in order to support new protocol.
16. Plugin tests expected data files updated.
17. E2E tests updated.
18. Telemetry of Grafana config has been merged into one.
19. Documentation updates.
20. [TBD] InfluxDB storage implementation is not available, need @dmsolr to fix later, in order to reduce the master change block by this PR.
2020-04-10 11:03:24 +08:00
吴晟 Wu Sheng fa9a44b750
Version number changed including a little documentation. (#4597) 2020-03-31 12:57:20 +08:00
yi.liang 1bc4082821
fix elasticsearch-5.x-plugin when use es6.x TransportClient error (#4517)
* up ui

* up ui

* fix elasticsearch-5.x-plugin on es6.x TransportClient error, Found class org.elasticsearch.common.transport.TransportAddress, but interface was expected
up elasticsearch-6.x-plugin support TransportClient

* fix elasticsearch-5.x-plugin on es6.x TransportClient error, Found class org.elasticsearch.common.transport.TransportAddress, but interface was expected
up elasticsearch-6.x-plugin support TransportClient

* fix elasticsearch-5.x-plugin on es6.x TransportClient error, Found class org.elasticsearch.common.transport.TransportAddress, but interface was expected
up elasticsearch-6.x-plugin support TransportClient

* const string witnesses
add some unit test
recommended to change ; to ,

* const string witnesses
add some unit test
recommended to change ; to ,

* up ES6.X test-plugin

* up es6.x test-plugin

* up es6.x test-plugin

* up es6.x test-plugin

* add DeleteIndexRequest

* up es6.x test-plugin

* remove TransportCaseController.java

* fix TransportActionNodeProxyExecuteMethodsInterceptorTest

Co-authored-by: yi.liang <yi.liang@zhangmen.cn>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: 梁懿 <liangyi@xforceplus.com>
Co-authored-by: aderm <394102339@qq.com>
2020-03-27 13:50:27 +08:00
mrproliu 569baf3236
Correlation protocol implement (#4555)
Co-authored-by: Mrproliu <mrproliu@lagou.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: kezhenxu94 <kezhenxu94@apache.org>
2020-03-26 09:02:14 +08:00
mrproliu ace781ff49
Provide HTTP parameter in the profiling contet (#4546)
* Provide active HTTP parameter collection automatically in the profiling context

* Fix style check

* fix style error

* Add profile status, storage it into TracingContext. simplify to get profiling method

* Change the profile status field name in TracingContext

* Replace gone images

* resolve issues

* resole description issues

Co-authored-by: Mrproliu <mrproliu@lagou.com>
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-03-22 17:19:57 +08:00
cngdkxw 2e9f001633
Add spring cloud feign 2.x plugin (#4526) 2020-03-20 20:28:30 +08:00
yoje 5251cc7239
fix finagle: process NoopSpan (#4544)
fix KafkaProducer CallbackInterceptor npe

Co-authored-by: huangyongjie <huangyongjie@tigerbrokers>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-03-20 11:31:52 +08:00
吴晟 Wu Sheng 61f98c81f0
Move the main branch to 7.1.0 iteration. (#4537)
* [maven-release-plugin] prepare release v7.0.0

* [maven-release-plugin] prepare for next development iteration
2020-03-19 10:38:41 +08:00
cngdkxw d5efc97c80
RestTemplate async plugin ClassCastException (#4507)
* ClassCastException

* resttemplate 4.x scenario

* add support versions & fix expectedData format-

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-03-13 23:13:51 +08:00
muyun12 80911d088c
fix the error of Struts2 plugin: java.lang.NoSuchMethodError: javax.servlet.http.HttpServletResponse.getStatus() (#4503)
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-03-13 17:01:06 +08:00
yoje ced5cb2828
Add finagle plugin (#4441)
* Add finagle plugin (#4433)

* fix failed checks for pr(#4441)
* Add licenses for some files
* Update Supported doc
* Add finagle to test component-libraries.yml

* Add finagle automatic tests into CI

* Add comments

* update comments

* Remove CompatibilityChecker

* Move query-protocol submodule to the right version

* Remove `enhancedInstance.setSkyWalkingDynamicField` in `ClientTracingFilterInterceptor`.

* Update expectedData.yaml of finagle tests

* Use lazy ContextCarrier injection.

* Add comments for `ContextCarrierHelper`

* Fix ContextHolderFactory to avoid context pollution

Co-authored-by: huangyongjie <huangyongjie@tigerbrokers>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-03-11 13:04:58 +08:00
aderm 67b7f22a40
1.add es agent resthighlevelclient of ClusterClientInstrumentation.2.… (#4386)
* 1.add es agent resthighlevelclient of ClusterClientInstrumentation.2.fix agent test removeOnExit parse error.

* Update configuration.yml

* revert removeOnExit param.

Co-authored-by: Daming <zteny@foxmail.com>
2020-02-21 14:00:19 +08:00
lsyf 102c90dc59 Fix ehcache: format 2020-02-19 17:23:33 +08:00
lsyf b2ad63430b Fix ehcache: performance issue 2020-02-19 12:10:00 +08:00
lsyf e57176d05e Fix ehcache:  add interceptor for Cache's private constructor and setName method 2020-02-18 22:33:33 +08:00
lsyf 54c1cd5cb0 Fix ehcache:  missing interceptor of private constructor called by clone method 2020-02-17 23:31:28 +08:00
kezhenxu94 ae33ac81c8
Adjust Armeria plugin to adapt 0.98.0 (#4362)
Motivation:

Support Armeria 0.98.0 in its plugin.

Modifications:

Add an intercept point that is refactored in Armeria 0.98.

Result:

Now Armeria plugin supports 0.98.0, and 0.98.1
2020-02-15 11:45:38 +08:00
cui-liqiang c761f30e3b
Some code style and refactor (#4355)
* extract duplicated method

* change while loop to if since once rs.next() return false, it will never return true for the following calls

* simplify if() return true; return false pattern

* fix compilation

Signed-off-by: liqiang.clq <liqiang.clq@alibaba-inc.com>
2020-02-13 10:34:32 +08:00
kezhenxu94 5b255ba3e3
Set up more strict code styles and fix existing issues (#4337)
Motivation:

Review code styles with some bots automatically.

Modifications:

Set up ReviewDog in GitHub Action to review code style.

Add more check rules to checkstyle plugin.

Result:

Obvious code styles can be reviewed and commented automatically.
2020-02-11 17:10:49 +08:00
AirTrioa 69d238e613
[BUG]Fix the bug of port identification failure when connecting Oracle with Sid mode (JDBC: Oracle: thin: @ < host >: < port > / < Sid >) (#4320)
* [BUG]Fix the bug of port identification failure when connecting Oracle with Sid mode (JDBC: Oracle: thin: @ < host >: < port > / < Sid >)

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-02-05 20:30:03 +08:00
kezhenxu94 fa1e60f411
Reduce footprint when tagging spans via prototype pattern (#4318)
### Motivation:

Reduce footprint when tagging spans with the deprecated API: `AbstractSpan#tag(String, String)`.

### Modifications:

- Adopt [prototype pattern](https://en.wikipedia.org/wiki/Prototype_pattern) to create `Tag`, prevent from creating too many `StringTag` instances and `GC`ed.
- Replace `AbstractSpan#tag(String, String)` with `AbstractSpan#tag(AbstractTag, String)`.

### Result:

- Footprint is reduced.
2020-02-05 11:32:51 +08:00
jialong 5c6914fc9e
Make MVC plugin support inherited annotations from interface (#4278) 2020-02-01 16:18:22 +08:00
Kanro 97950807fa
Enhance gRPC plugin (#4177)
* Enhance gRPC plugin

Co-authored-by: Kanro <higan@live.cn>
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
Co-authored-by: GuoDuanLZ <739537111@qq.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-01-30 20:12:48 +08:00
Daming 9005d1e82c
Provide AVRO plugin (#4276)
* Provide Avro plugin
* provide testcase for avro-plugin

Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-01-30 17:49:43 +08:00
kezhenxu94 019af3e345
Drop support of protocol v1 (sw3) (#4244)
* Drop support of protocol v1 (sw3)

* Remove versioning logic further

* Remove more version5-only classes

* Commit missing files

* Update submodule and address review comment

* Fix failed tests
2020-01-17 20:33:52 +08:00
tzy1316106836 c6b169544e Fix plugin bug when DUBBO retries (#4187) 2020-01-07 21:35:50 +08:00
dengliming 1881a040d4 Support plugin for mongodb v3.6.x (#4173)
* feat: add support plugin of mongodb v3.6.x

* update support-version.list

* update Supported-list.md

* update Supported-list.md

* Add witness class for v3.6

* update plugins-test.yaml

Co-authored-by: zhang-wei <pknfe@outlook.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: Weiyi Liu <liuweiyi@cmss.chinamobile.com>
2020-01-07 14:25:19 +08:00
kezhenxu94 99100ed635
Split the `collect_http_params` as per plugins for better performance (#4170)
* Split the `collect_http_params` as per plugins for better performance

* Add missing change
2020-01-03 21:44:25 +08:00
kezhenxu94 f52f7f466a
Support collecting http parameters (#4162)
Plugins of Tomcat, Spring MVC, Armeria are supported for now
2020-01-03 07:51:26 +08:00
Zhang Yonglun c5827f889a [Agent] Provide plugin for ShardingSphere 4.0.0-RC3 (#4140)
* shardingsphere 4.x RC3 test

* shardingsphere 4.x RC3 test

* shardingsphere 4.x RC3 test

* shardingsphere 4.x RC3 plugin

* shardingsphere 4.x RC3 plugin

* shardingsphere 4.x RC3 plugin

* shardingsphere 4.x RC3 plugin temp for a test

* shardingsphere 4.x RC3 plugin revert temp changes

* shardingsphere 4.x RC3 plugin change package name

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2019-12-31 17:52:29 +08:00
Andy Ai 4aac3293ca [test/plugin] immigrate test play framework scenario (#4128)
* Add play-scenario

* Set play plugin as default

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: Weiyi Liu <liuweiyi@cmss.chinamobile.com>
2019-12-26 22:42:56 +08:00
Zhang Yonglun ab39cecb17 shardingsphere 4.x RC1 RC2 test (#4118) 2019-12-26 08:31:10 +08:00
kezhenxu94 30cbe38df7 Move Armeria plugin to default plugin list (#4130)
* Move Armeria plugin to default plugin list

* Move Armeria plugin to default plugin list

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2019-12-26 00:45:48 +08:00
吴晟 Wu Sheng 25a677b9c7
Move Webflux plugin into default list. (#4129)
* Move Webflux plugin into default list.

* Fix a typo.
2019-12-25 22:08:14 +08:00
吴晟 Wu Sheng 3dde94ff66
Move lettuce into default plugin (#4127)
* Move lettuce into default plugin

* Fix maven pom
2019-12-25 18:53:49 +08:00
kezhenxu94 bf6491f449
[Feature] Provide Java Agent for Apache HttpClient 3.x (#4111)
* Add Java Agent for Apache HttpClient 3.x

* Update Supported-list.md

* Update pom.xml
2019-12-24 23:20:44 +08:00
吴晟 Wu Sheng d7f7799c80
Set the main branch to 7.0.0-SNAPSHOT (#4115)
* [maven-release-plugin] prepare release v6.6.0

* [maven-release-plugin] prepare for next development iteration
2019-12-24 16:37:13 +08:00
cyejing bc77fda5c1 Enhance webflux plugin, related to Spring Gateway plugin too. (#3945)
* webflux-reactive

* add support version comment, modify gateway

* add test case, modify name

* add docs

* remove healthCheck
2019-12-17 08:58:57 +08:00
吴晟 Wu Sheng 4e50132817
Remove the local/exit span register mechanism in Java agent scenario (#4059)
* Remove the local span and exit span register mechanism in Java agent scenario.

* Fix config, plugin, and document, as exit span is not required register anymore.

* Try to fix the test case expected data due to no register for exit span.

* Fix toolkit case.

* Remove exit span from plugin test framework document.

* Update protocol, FAQ, and CHANGELOG documents to highlight this change.

* Fix NPE when no entry span in the whole segment. Set endpoint to null in segment entity.

* Fix the snapshot and add inexistence operation name id.

* Fix several async cases.

* Fix undertow test case.

* Fix wrong error log name.

* Keep name consistent with 6.x concepts.

* Try to fix 3 async scenarios.

* Fix okhttp case.

* Fix Spring Async case.

* Fix another NPE

* Fix NPE when first span has no endpoint id when it is local or exit span.

* Still fill first operation name when no endpoint id.
2019-12-15 19:15:47 +08:00
aderm 0513dd8d45 fix es agent remote peers error when multi host. (#4065) 2019-12-15 10:29:00 +08:00
kezhenxu94 4c6a323e4d Fix NullPointerException in Spring interceptor (#4063) 2019-12-14 19:41:58 +08:00
kezhenxu94 eea5d027cc
Add Armeria Java agent plugin (#4024) 2019-12-11 15:57:45 +08:00
louis 6963acd613 Fix bug dubbo-2.7-conflict-patch plugin class path error (#4003) 2019-12-04 20:36:07 +08:00
pop0505 7e889d3471 fix: spring annotation inheritance problem #3847 (#3886) 2019-11-19 13:59:21 +08:00
zhang-wei 89923d6a93 [test/plugin] immigrate grpc scenario (#3840)
* grpc scenario

* update support-version.list
2019-11-17 17:29:42 +08:00
qiyang 58149a74f9 Intercept feign URL without parameters (#3854)
* Intercept feign RequestTemplate resolve args method ,get the url without parameters

* fix ci warnings

* optimize import

* fix: miss  path in feign target url like "http://localhost:8080/feign-scenario"
     fix feign-scenario test use pathVariable

* Add testcase to DefaultHttpClientInterceptorTest

* Clean ThreadLocal

* User one ThreadLocal replace two. User try/final  remove ThreadLocal .

* Code Optimize
2019-11-17 12:59:10 +08:00
viswaramamoorthy 77019ba665 Rabbitmq instrument consumer class correctly to get duration reported accurately (#3761) 2019-11-16 23:43:48 +08:00
aderm e11d20715d Add elasticsearch 6.x plugin & elasticsearch 6.x test scenario (#3803)
* Add elasticsearch 6.x plugin & elasticsearch 6.x test scenario
2019-11-13 13:55:28 +08:00
吴晟 Wu Sheng 3fbaec42dc
Move to 6.6.0 SNAPSHOT (#3839)
* [maven-release-plugin] prepare release v6.5.0

* [maven-release-plugin] prepare for next development iteration
2019-11-12 22:33:39 +08:00
zhang-wei 841a9d395b [agent/plugin] Move FILTER_LENGTH_LIMIT to config.plugin.mongodb (#3820)
* move FILTER_LENGTH_LIMIT

* fix checkstyle
2019-11-10 15:04:00 +08:00
zhang-wei 555de82500 fix config variable usage bug (#3815) 2019-11-09 22:58:46 +08:00
于玉桔 cdb02d5696 redisson plugin support high version (#3780)
* redisson support high lv version

* bugfix

* add comment
2019-11-04 22:45:07 +08:00
kezhenxu94 0c99f1b594
Use more specific ShardingSphere version to avoid compilation error (#3772) 2019-11-03 21:36:09 +08:00
吴晟 Wu Sheng f48e11c908 Revert "Refactor:extract common module postgresql-common (#3725)" (#3728)
This reverts commit d9fcda1325.
2019-10-28 19:16:33 +08:00
aderm d9fcda1325 Refactor:extract common module postgresql-common (#3725)
* refactor:extract common module postgresql-common

* remove sql param tag.

* delete the deploy plugin
2019-10-28 15:27:15 +08:00
aderm 7f69a73d13 Add postgresql agent sql query param show (#3695)
* Add postgresql agent sql query param show
2019-10-28 08:43:57 +08:00
zhangwei f471293cdc [test/plugin] immigrate undertow scenario (#3698) 2019-10-27 18:33:38 +08:00
吴晟 Wu Sheng f8f31f40b9
Remove a definition. (#3706) 2019-10-24 21:17:27 +03:00
scolia 80af166752 feat: add support of mongodb v3.7.x or higher (#3591)
* feat: add support of mongodb v3.7.x or higher

* feat: remove mapping, using EnhancedInstance to mark remotePeer

* feat: add support of v3.6.x

* fix: disable support will 3.6.x, which will throw ClassCircularityError exception

* style: clean code

* fix support of 3.8.x~3.11.1, update test case and doc

* update stage name

* rename class

* rename stage
2019-10-24 19:16:56 +03:00
mrproliu c640b512cd Provide agent plugin netty-socketio (#3640)
* add plugin netty-socketio https://github.com/mrniko/netty-socketio

* delete create exit span interceptor.

* delete create exit span interceptor testcase.

* delete create exit span interceptor testcase.

* add constructor test unit

* change bind on random port in test case

* reverse upstream master whitespace

* resolve build_id param

* delete health check segment test case

* add ContextManager.isActive check before use activeSpan invoke

* remove unnecessary code and blank line
2019-10-23 13:06:17 +03:00
echooymxq 1b1e80b75a Optimize code (#3600) 2019-10-11 19:17:03 +08:00
mrproliu 58804174e1 Provide plugin for Ehcache 2.x (#3575)
* support ehcache 2.x
2019-10-10 22:39:37 +08:00
lipenghui a87425147c Add pulsar apm plugin (#3476)
* Add pulsar apm plugin.

* Fix check style

* Fix pulsar consumer component define.

* Add pulsar to component-libraries.yml

* Fix error interceptor class.

* Add pulsar to agent support list.

* Add Pulsar to ComponentsDefine and component-libraries.yml

* Move create entry span log of consumer from after method to before method

* Fix send callback issue when exception cause.

* Fix test issues

* Move pulsar plugin to optional plugins

* Add none messages tests for interceptor of producer and consumer.

* Remove unused comments.

* Move pulsar plugin back to the apm-sdk-plugin

* Fix comments

* remove set startTime for entry span(default is set by System.currentTimeMillis)

* Fix comments
2019-09-25 13:24:54 +08:00
Stalary 8de9f7d74c MOD: Kafka-plugin Compatible with KafkaTemplate (#3505)
* MOD: Compatible with KafkaTemplate

* MOD: modify test
2019-09-24 10:21:33 +08:00
Louis Tsui 72f07b812a Add Light4j plugin (#3323)
* Add Light4J 1.6.x plug-in

* Add unit test for Light4J plug-in

* Add missing id to server-starter

* Remove mentions of version 1.6.x

Some local testing showed that the plugin successfully generated traces for a light4j project built with light-codegen v2.x. Therefore, there is no need for a separate plugin for v2.x and no distinction needs to be made with light4j v1.6.x.

* Update supported light4j versions

* Use ContextSnapshot to maintain trace

In a typical Light4j project, the ExceptionHandler#handleRequest is the asynchronous execution point. The flow is ExceptionHandler#handleRequest -> HttpServerExchange#dispatch -> ... -> ExceptionHandler#handleRequest. This means that handleRequest is being intercepted twice and each time a LocalSpan is created. Without handling thread propagation, the trace segment gets split up.

By saving a ContextSnapshot into the enhanced object (ExceptionHandler), we can determine if it is necessary to continue the segment.

* Update logic for span creation in trace

By default, the Light4J plugin now overrides the Undertow plugin's entry span with its own. This new entry span is created just before execution of the ExceptionHandler#handleRequest in the I/O thread. The entry span is generated here because it is considered the starting point of the Light4J handler chain.

There is now also the option to enable detailed span creation when tracing requests through Light4J. These local spans mark which middleware and business handlers are involved with handling the HTTP request to a Light4J service.

* Update skywalking version

* Update light4j version

* Fix LightInstrumentation javadoc

* Remove import violating checkstyle

This import was added from the link reference in the javadoc. The javadoc has now been changed to just reference the method name.

* Move light4j agent config property

* Sync UI
2019-09-18 21:43:17 +08:00
SummerOfServenteen c5b03ba7eb fix noSuchMethod (#3408) 2019-09-16 16:50:30 +08:00
stone.wlg bb0b3d369f provide cassandra java driver 3.x plugin (#3410)
* add cassandra java driver 3.x plugin
2019-09-12 16:14:48 -07:00
于玉桔 b5b088acc0 Gateway compatible with downstream loss (#3445) 2019-09-10 23:43:17 -07:00
hi-sb 96b2baaddb spring-cloud-gateway traceid does not transmit #3411 (#3446)
* spring-cloud-gateway traceid does not transmit #3411

skywalking-version:6.5.0

spring-gateway-version:2.1.2

Error Description:

 Customize the filter, traceid does not transmit.

 "ServerWebExchangeDecorator" is a transport chain,His structure should be like this:

	 serverWebExchangeDecorator
	    -----(ServerWebExchangeDecorator)delegate
		    ------(ServerWebExchangeDecorator)delegate
			  ------.....
			   -----(DefaultServerWebExchange)delegate
  In the current source code, there is no deep search, but only the next level. When there are multiple custom filters, you get an error.

Repair method:

  Look for "delegate" of "ServerWebExchangeDecorator" recursively until "DefaultServerWebExchange"

* spring-boot-webflux traceid does not transmit #3411

spring-boot-starter-webflux-version:2.1.6

Error Description:

Customize the filter, traceid does not transmit.

"ServerWebExchangeDecorator" is a transport chain,His structure should be like this:

 serverWebExchangeDecorator
    -----(ServerWebExchangeDecorator)delegate
	    ------(ServerWebExchangeDecorator)delegate
		  ------.....
		   -----(DefaultServerWebExchange)delegate

In the current source code, there is no deep search, but only the next level. When there are multiple custom filters, you get an error.

Repair method:

Look for "delegate" of "ServerWebExchangeDecorator" recursively until "DefaultServerWebExchange"

* checkStyle
2019-09-10 22:44:36 -07:00
吴晟 Wu Sheng ce20fe107d
Move to 6.5.0 (#3439)
* [maven-release-plugin] prepare release v6.4.0

* [maven-release-plugin] prepare for next development iteration
2019-09-08 16:24:21 -07:00
于玉桔 44556ae006 gateway & webflux compatible with these scene (#3419) 2019-09-05 06:36:22 -07:00
Stalary 05d9c0a93a MOD: Modify compatibility of kafka plugin and expand operationName (#3390)
* ADD: add operationName length threshold

* MOD:move operationName threshold to Config, simplified code

* MOD:update agent set-up document, clean code

* MOD:add agent.operation_name_threshold conf prefix

* MOD: Modify compatibility of kafka plugin and expand operationName

* MOD: Delete localSpan layer, modify consumer operationName, delete producer key

* MOD: Modify operationName, reduce String operation

* FIX: Fix callback break, the new version of kafka callback is intercepted twice and needs to be judged

* FIX: Fix different problems with KafkaProducer constructor in old and new versions

* MOD: separate code
2019-09-03 18:40:33 -07:00
于玉桔 7f5ac239b9 fix bug (#3393) 2019-09-02 21:04:51 +08:00
qxo 77736c5e7d okhttp OnFailureInterceptor should log exception info (#3381) 2019-08-30 22:39:28 +08:00
刘新元 Liu XinYuan ed5a1fc2d2 solve dubbo and service class without method intercept failure (#3362) 2019-08-28 20:10:48 +08:00
吴晟 Wu Sheng a3241f0a59
Support op group name in agent config core. (#3299)
* Support op group name in agent config core.

* Provide core API for operation name grouping, rest template plugin update, and doc update.

* Fix doc

* Fix test case.

* Fix missing changes.

* add shuyun to powered-by.md (#3341)

* add shuyun to powered-by.md

* update powered-by.md

* Remove static method.
2019-08-27 15:07:44 +08:00
honganan 3c8307fe1f fix 3296 (#3306) 2019-08-24 17:32:39 +08:00
于玉桔 a0e816771c Webflux plugin optimization (#3243)
* webflux
2019-08-13 22:52:01 +08:00
Andy Ai 7eb5694a5f Java agent support undertow routing handler (#3173)
* Support undertow routing handler
2019-08-13 22:30:11 +08:00
qxo a328a3bafc jdbc-commons:reduce unnecessary call ThreadLocal with ContextManager#stopSpan(span) (#3244) 2019-08-10 22:46:17 +08:00
于玉桔 8611124b33 Unified http status code usage (#3239)
* Unified http status code usage

* fmt
2019-08-10 18:17:17 +08:00
吴晟 Wu Sheng b247dc979e
Move project master branch to 6.4.0-SNAPSHOT (#3220)
* [maven-release-plugin] prepare release v6.3.0

* [maven-release-plugin] prepare for next development iteration
2019-08-05 21:19:17 +08:00
吴晟 Wu Sheng bb4ce945cf
Add change log for 6.3.0 release. (#3209)
* Add changelog for 6.3.0 release.

* Update CHANGES.md

Co-Authored-By: kezhenxu94 <kezhenxu94@apache.org>

* Update CHANGES.md
2019-08-03 18:46:14 +08:00
Andy Ai 532f430369 Fixed java agent cannot trace gRPC stream service (#3145)
* Fixed java agent cannot trace gRPC stream service
2019-08-03 17:38:39 +08:00
吴晟 Wu Sheng c76fb4053e
Set up the bootstrap instrumentation plugin framework (#3152)
* POC: Intercept successfully.

* Refactor codes

* Build the new core

* Setup the new core.

* Push the javassist version to 3.23.2-GA, as it is the last version supports JDK 1.6 compile, according to https://github.com/jboss-javassist/javassist/blob/rel_3_23_2_ga/pom.xml#L149-L160

* Finish the all codes.

* Document updated for bootstrap instrumentation.

* Add a notice to document.

* Remove unexpected file.

* Set javassist version right. Add judge in core interceptors

* Fixe no log bridge implementation
2019-07-25 22:00:07 +08:00
li.can 137b142aab Support servlet 2.5 for Jetty,Tomcat,SpringMvc (#3120)
* servlet 2.5

* method exist

* update MethodUtil

* Update MethodUtil.java

Add a comment to the new core util method. @candyleer I am concerning this method will be used widely even unnecessary.
2019-07-22 15:21:59 +08:00
于玉桔 b1dea4c540 Provide a configuration to control the length of the peer field (#3105)
* Fix 3096
2019-07-20 16:50:28 +08:00
li.can 979fa73343 add aspectJ path (#3080) 2019-07-15 17:18:44 +08:00
于玉桔 48ffd09239 Spring @Async plugin support (#2902)
* spring_async_plugin

* fix

* fix

* fix

* fix

* format fix

* rename

* fix

* fix version

* Update SWCallable.java

* Update Supported-list.md

* Update Supported-list.md
2019-07-02 07:46:25 +08:00
吴晟 Wu Sheng 4faa950c14
Move master to 6.3.0 (#2968)
* [maven-release-plugin] prepare release v6.2.0

* [maven-release-plugin] prepare for next development iteration
2019-06-29 13:49:36 +08:00
caoyixiong c74ad8d317 remove stackDepth when its 0 (#2957) 2019-06-27 18:11:43 +08:00
Xin,Zhang ef68b3f218 Fix issue that the time to remove the REQUEST_KEY_IN_RUNTIME_CONTEXT flag is incorrect (#2913) 2019-06-20 08:51:54 +08:00
kezhenxu94 09564919cb Add config to control tracing sql parameters in MySQL agent (#2846)
* Add config to control tracing sql parameters
2019-06-19 12:03:38 +08:00
daming 6ff33d8816 Restore solrj-plugin (#2888)
* restore solrj-plugin

* restore solrj-plugin
2019-06-17 18:48:18 +08:00
daming dbe7da4e77 Remove imported classes and add ci scripts for plugin import check. (#2881)
Add CI scripts for plugin import check.
2019-06-16 22:05:37 +08:00
吴晟 Wu Sheng 0f9c27d481
Revert SolrJ plugin. (#2871)
* Revert SolrJ plugin.

* Remove an unexpected test case.

* Revert "Remove an unexpected test case."

This reverts commit 359990e18b0c0ae1a6e1005ff985bf237ec05619.

* Clear context.

* Fix a leak.
2019-06-14 09:24:58 +08:00
kezhenxu94 f683850b9a Improve plugin performance (#2838)
* Improve plugin performance. fix #2837
2019-06-09 15:19:04 +08:00
daming 6ae517423c Provide plugin for Solr-7.x(client) (#2730)
* new branch for solrj-plugin

* rollback and add module solrj-plugin

* preparing to pr

* to resolve reviewers' suggestions

* remove unused code

* remove unused code

* remove unused comments

* To avoid NPE

* fix typo

* Change to JRE6

* fix pom.xml merge incorrectly. and java.net.URL instead of Regex

* Using RuntimeContext instead of ThreadLocal

* To reduce unnecessary tags

* add test cases

* fix validation fail

* add solrj-plugin into component-libraries & Supported-list

* to trace all patch to avoid recheck status of span

* remove unnecessary properites

* remove unnecessary tags

* Add the config to document of setup
2019-06-05 22:54:45 +08:00
Xin,Zhang 3217ff1444 Fix the span cannot stop when forward request (#2820) 2019-06-04 17:38:50 +08:00
li.can 8716bb0dc5 Fix Mysql 6.x plugin (#2803)
* fix NPE

* fix 6.x

* optimize

* add final

* fix ci

* Update apm-sniffer/apm-sdk-plugin/jdbc-commons/src/main/java/org/apache/skywalking/apm/plugin/jdbc/JDBCDriverInterceptor.java

add not null

Co-Authored-By: Xin,Zhang <zhangxin@apache.org>
2019-06-02 20:12:18 +08:00