Commit Graph

158 Commits

Author SHA1 Message Date
Xin,Zhang 7c69ea889e
Fix JdkObsolete issue (#5599)
* Fix JdkObsolete issue

* Fix code style

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-10-01 11:09:51 +08:00
吴晟 Wu Sheng 103cf00672
Support JDK 11 compiling and upgrade dependencies (#5579)
* Upgrade dependencies and make the JDK11 compiling passed.

* Update license and fix license check file.

* Add CI for JDK11 compiling.

* Update doc.
2020-09-29 10:34:21 +08:00
vcjmhg 806666b4cc
add webflux webclient plugin (#5493) 2020-09-27 22:38:07 +08:00
Evan 29de696c42
exception-ignore-plugin (#5426) 2020-09-09 15:07:01 +08:00
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
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
xbkaishui 79c1c0cc76
Support http header tag (#5348) 2020-08-20 10:43:28 +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
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
Brandon Fergerson e356da4b0e
#4907 - Duplicate Spring MVC endpoint fix (#5084) 2020-07-15 13:52:46 +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
吴晟 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
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
吴晟 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
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
jialong 5c6914fc9e
Make MVC plugin support inherited annotations from interface (#4278) 2020-02-01 16:18:22 +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
吴晟 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 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
kezhenxu94 4c6a323e4d Fix NullPointerException in Spring interceptor (#4063) 2019-12-14 19:41:58 +08:00
pop0505 7e889d3471 fix: spring annotation inheritance problem #3847 (#3886) 2019-11-19 13:59:21 +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
echooymxq 1b1e80b75a Optimize code (#3600) 2019-10-11 19:17:03 +08:00
SummerOfServenteen c5b03ba7eb fix noSuchMethod (#3408) 2019-09-16 16:50:30 +08: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
于玉桔 7f5ac239b9 fix bug (#3393) 2019-09-02 21:04:51 +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
于玉桔 a0e816771c Webflux plugin optimization (#3243)
* webflux
2019-08-13 22:52:01 +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
吴晟 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
li.can 979fa73343 add aspectJ path (#3080) 2019-07-15 17:18:44 +08:00