吴晟 Wu Sheng
4adb343091
Archive the expired plugins `impala-jdbc-2.6.x-plugin`. ( #673 )
2024-03-07 11:31:08 +08:00
Chen Ziyan
5cd52658c6
Support for ActiveMQ-Artemis messaging tracing. ( #670 )
2024-01-29 16:01:20 +08:00
吴晟 Wu Sheng
b1c96da0d4
Rename system env name from `sw_plugin_kafka_producer_config` to `SW_PLUGIN_KAFKA_PRODUCER_CONFIG` ( #668 )
2024-01-22 13:50:20 +08:00
Chen Ziyan
bbb177a893
Support tracing for async producing, batch sync consuming, and batch async consuming in rocketMQ-client-java-5.x-plugin ( #665 )
2024-01-21 10:29:39 +08:00
Chen Ziyan
d5b99f9434
add support for HttpExchange along with webflux-webclient-6.x ( #664 )
2024-01-11 19:58:42 +08:00
Chen Ziyan
7aec68263b
Support for tracing webflux-6.x and gateway-4.x ( #661 )
2023-12-21 16:04:21 +08:00
吴晟 Wu Sheng
045c1e753f
Remove dead links ( #655 )
2023-12-06 12:09:23 +08:00
吴晟 Wu Sheng
8ca62a48c2
Fix missing command in the docker release ( #653 )
2023-12-05 07:30:50 -08:00
吴晟 Wu Sheng
c82287e1dd
Add JDK21 Support ( #647 )
2023-11-10 14:56:48 +08:00
peachisai
0b80f3d424
Add a netty-4.1.x plugin to trace http ( #625 )
2023-10-29 16:18:25 +08:00
Ricky Lau
45993545e9
[DOCS] Corrected an issue using misspelled words in Native Tracer ( #626 )
2023-10-23 10:49:21 +08:00
吴晟 Wu Sheng
88b4b5c930
Add OAP version requirement ( #624 )
2023-10-20 17:58:24 +08:00
qiaoxingxing
f25e6600b4
fix doc Application-toolkit-tracer extract data from map ( #617 )
2023-09-28 04:14:12 -05:00
xyyz150
738201c33a
add rocketmq-client-java-5.x plugin ( #598 )
2023-08-28 21:25:23 +08:00
peachisai
e31b9bb6a2
Add nacos-client 2.x plugin ( #593 )
2023-08-18 08:45:46 +08:00
Leibniz.Hu
6baa4a7baa
Add support for RESTEasy 6.x ( #587 )
2023-07-27 07:18:05 -07:00
DarknessTM
c9a61701f1
Support access the tracer context in spring gateway filter ( #539 )
...
Co-authored-by: darknesstm <askkoy@163.com>
2023-07-07 20:26:18 +02:00
dd1k
d42e24583d
Add plugin to support Aerospike Java client ( #565 )
2023-06-29 23:32:05 +08:00
weixiang1862
e464f18ad9
Add WebSphere Liberty 23.x plugin.( #10887 ) ( #560 )
2023-06-25 16:50:18 +08:00
Gong Dewei
267aba8fad
Improve bytebuddy class enhance for retransform classes ( #561 )
...
* SWAuxiliaryTypeNamingStrategy
Auxiliary type name pattern: <origin_class_name>$<name_trait>$auxiliary$<auxiliary_type_instance_hash>
* DelegateNamingResolver
Interceptor delegate field name pattern: <name_trait>$delegate$<class_name_hash>$<plugin_define_hash>$<intercept_point_hash>
* SWMethodNameTransformer
Renamed origin method pattern: <name_trait>$original$<method_name>$<method_description_hash>
* SWImplementationContextFactory
Method cache value field pattern: cachedValue$<name_trait>$<origin_class_name_hash>$<field_value_hash>
Accessor method name pattern: <renamed_origin_method>$accessor$<name_trait>$<origin_class_name_hash>
Here is an example of manipulated enhanced class with new naming policies of auxiliary classes, fields, and methods
```java
import sample.mybatis.controller.HotelController$sw$auxiliary$19cja42;
import sample.mybatis.controller.HotelController$sw$auxiliary$p257su0;
import sample.mybatis.domain.Hotel;
import sample.mybatis.service.HotelService;
@RequestMapping(value={"/hotel"})
@RestController
public class HotelController
implements EnhancedInstance {
@Autowired
@Lazy
private HotelService hotelService;
private volatile Object _$EnhancedClassField_ws;
// Interceptor delegate fields
public static volatile /* synthetic */ InstMethodsInter sw$delegate$td03673$ain2do0$8im5jm1;
public static volatile /* synthetic */ InstMethodsInter sw$delegate$td03673$ain2do0$edkmf61;
public static volatile /* synthetic */ ConstructorInter sw$delegate$td03673$ain2do0$qs9unv1;
public static volatile /* synthetic */ InstMethodsInter sw$delegate$td03673$fl4lnk1$m3ia3a2;
public static volatile /* synthetic */ InstMethodsInter sw$delegate$td03673$fl4lnk1$sufrvp1;
public static volatile /* synthetic */ ConstructorInter sw$delegate$td03673$fl4lnk1$cteu7s1;
// Origin method cache value field
private static final /* synthetic */ Method cachedValue$sw$td03673$g5sobj1;
public HotelController() {
this(null);
sw$delegate$td03673$ain2do0$qs9unv1.intercept(this, new Object[0]);
}
private /* synthetic */ HotelController(sw.auxiliary.p257su0 p257su02) {
}
@GetMapping(value={"city/{cityId}"})
public Hotel selectByCityId(@PathVariable(value="cityId") int n) {
// call interceptor with auxiliary type and parameters and origin method object
return (Hotel)sw$delegate$td03673$ain2do0$8im5jm1.intercept(this, new Object[]{n}, new HotelController$sw$auxiliary$19cja42(this, n), cachedValue$sw$td03673$g5sobj1);
}
// Renamed origin method
private /* synthetic */ Hotel sw$origin$selectByCityId$a8458p3(int cityId) {
/*22*/ return this.hotelService.selectByCityId(cityId);
}
// Accessor of renamed origin method, calling from auxiliary type
final /* synthetic */ Hotel sw$origin$selectByCityId$a8458p3$accessor$sw$td03673(int n) {
// Calling renamed origin method
return this.sw$origin$selectByCityId$a8458p3(n);
}
@Override
public Object getSkyWalkingDynamicField() {
return this._$EnhancedClassField_ws;
}
@Override
public void setSkyWalkingDynamicField(Object object) {
this._$EnhancedClassField_ws = object;
}
static {
ClassLoader.getSystemClassLoader().loadClass("org.apache.skywalking.apm.dependencies.net.bytebuddy.dynamic.Nexus").getMethod("initialize", Class.class, Integer.TYPE).invoke(null, HotelController.class, -1072476370);
// Method object
cachedValue$sw$td03673$g5sobj1 = HotelController.class.getMethod("selectByCityId", Integer.TYPE);
}
}
```
Auxiliary type of Constructor :
```java
class HotelController$sw$auxiliary$p257su0 {
}
```
Auxiliary type of `selectByCityId` method:
```java
class HotelController$sw$auxiliary$19cja42
implements Runnable,
Callable {
private HotelController argument0;
private int argument1;
public Object call() throws Exception {
return this.argument0.sw$origin$selectByCityId$a8458p3$accessor$sw$td03673(this.argument1);
}
@Override
public void run() {
this.argument0.sw$origin$selectByCityId$a8458p3$accessor$sw$td03673(this.argument1);
}
HotelController$sw$auxiliary$19cja42(HotelController hotelController, int n) {
this.argument0 = hotelController;
this.argument1 = n;
}
}
```
2023-06-24 20:50:10 +08:00
weihubeats
6621f82739
add RocketMQ 5.x plugin ( #536 )
2023-06-07 22:05:08 +08:00
xu1009
af4ddc61c9
Support jetty 11 ( #545 )
2023-06-06 09:39:34 +08:00
GuiSong
c04a714725
[Feature] Support to configure custom decode method for kafka configurations ( #540 )
2023-05-31 18:03:35 +08:00
xu1009
9e26f26f0b
Support monitor grizzly thread pool ( #533 )
2023-05-25 19:30:35 -04:00
xu1009
28fcf17642
Support grizzly web server trace ( #528 )
2023-05-15 08:18:52 +08:00
xu1009
dc9f7d130d
support jersey rest framework ( #520 )
2023-05-02 17:19:15 +08:00
xu1009
3ad9f249d9
support jetty server work thread pool metric monitor ( #517 )
...
* support jetty server work thread pool metric monitor
Co-authored-by: litexu <litexu@tencent.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2023-05-02 16:34:06 +08:00
xu1009
02dad132b2
Support forkjoinpool plugin ( #505 )
2023-04-17 17:45:09 +08:00
吴晟 Wu Sheng
89e5262f99
Polish docs for preparing release. ( #490 )
2023-03-29 11:21:50 +08:00
mrproliu
d357bdef7a
Support keep trace profiling when cross-thread ( #479 )
2023-03-14 17:55:28 +08:00
weiyang.zhang
e648ca2145
Adapt Armeria's plugins to the latest version 1.22.x ( #459 )
2023-02-26 21:25:43 +08:00
kezhenxu94
0b1af4fd18
Fix Spring 6 test case ( #463 )
2023-02-24 16:17:37 +08:00
空青
9cb5a13d44
Add plugin to support clickhouse jdbc ( #455 )
...
* Add plugin to support clickhouse-jdbc-0.3.2.*
* Rename clickhouse-0.3.x-plugin to clickhouse-0.3.1-plugin
2023-02-12 22:50:19 +08:00
Alceatraz Warprays
6466b2751d
Update trace-ignore-plugin.md ( #452 )
...
/agent/optional-plugins/apm-trace-ignore-plugin/apm-trace-ignore-plugin.config does not exist anymore, `optional-plugins` contains no folder in the latest release.
2023-02-07 12:00:31 +08:00
2han9wen71an
b4bf6fd75d
How to make SkyWalking agent works in `OSGI` environment? ( #450 )
2023-02-04 19:29:41 +08:00
吴晟 Wu Sheng
8dde931b72
Correct missing package name in native manual API docs. ( #449 )
2023-02-03 22:09:56 +08:00
kezhenxu94
62266673ff
Add plugin for Spring 6, set development baseline to JDK 17, remove Powermock entirely ( #444 )
2023-01-31 19:29:32 +08:00
叶梦飞
ac84d57023
Expose complete Tracing APIs in the tracing toolkit ( #442 )
2023-01-24 08:01:18 +08:00
xzyJavaX
f366503d58
Enhance lettuce plugin to adopt uniform tags ( #441 )
2023-01-16 11:46:39 +08:00
xzyJavaX
92b076c281
Enhance redisson plugin to adopt uniform tags ( #438 )
2023-01-11 23:09:19 +08:00
吴晟 Wu Sheng
5cffa078e1
Add a config `agent.enable`(default: true) to support disabling agent ( #439 )
2023-01-11 17:14:23 +08:00
dylanforest
a68b447878
Support to customize the collect period of JVM relative metrics. ( #428 )
2022-12-26 22:34:30 +08:00
Jiajing LU
ea1c204c95
add Kafka Clients 3.x support ( #429 )
2022-12-23 13:48:50 +08:00
Marcin Grzejszczak
4f9c2d8527
Adds Micrometer Observation instrumentation ( #401 )
2022-12-06 18:51:12 +08:00
pg.yang
364a4af4b1
Add micronauthttpclient,micronauthttpserver,memcached,ehcache,guavacache,jedis,redisson plugin config properties to agent.config ( #402 )
2022-12-01 22:16:08 +08:00
Stephen Ni
d541b7bc63
Compatible with 3.x and 4.x RabbitMQ Client ( #389 )
2022-11-20 14:19:45 +08:00
Stephen Ni
c90d24e66d
Upgrade agent-test-tools and polish dubbo plugin ( #387 )
2022-11-19 16:27:25 +08:00
Stephen Ni
7eb796bd28
Support collecting dubbo thread pool metrics ( #382 )
2022-11-17 09:56:19 +08:00
mrproliu
615aa8eab4
Update document format in plugin test ( #383 )
2022-11-14 21:46:44 +08:00
Brandon Fergerson
9559fad4c0
correct toolkit naming ( #380 )
2022-11-11 08:41:07 +08:00