Commit Graph

470 Commits

Author SHA1 Message Date
Evan 15b0068fdf
Add superdataset replicas number config (#5424)
* distinct the number of metrics or common record index with super dataset index.
2020-09-01 23:06:21 +08:00
Gao Hongtao 30ce1959a7
Hot reload gRPC certs of OAP. (#5376) 2020-08-31 23:11:01 +08:00
zhang-wei 7ef8b3e476
Support Browser protocol at OAP (#4228) 2020-08-31 15:46:37 +08:00
Gao Hongtao 6b6e4d7624
Update als_setting.md (#5414)
Add an example to present how to integrate skywalking and istio als.
2020-08-31 09:30:26 +08:00
hailin0 ca957699dc
Add support for quartz-scheduler (#5413) 2020-08-30 23:48:26 +08:00
Lu Jiajing 9442a51c11
JsonLogger implementation (#5356) (#5357) 2020-08-29 23:17:29 +08:00
zifeihan cbb2e1793b
Update configuration-vocabulary.md and trace-sampling.md (#5409) 2020-08-29 15:29:52 +08:00
zifeihan 6227db19cd
Save error trace segment even that segment will abandoned by sampling mechanism (#5407)
* Save some error trace segment, event this segment abandoned by server side trace sampling mechanism.
* Support forceSaveErrorSegment config to control force save some error segment.

Co-authored-by: echo <zifeihan@foxmail.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-08-28 20:37:19 +08:00
吴晟 Wu Sheng b11c3519e0
Fix bug. (#5400) 2020-08-27 19:51:58 +08:00
吴晟 Wu Sheng e878c11158
Open more grpc config in the default application.yml (#5379) 2020-08-26 08:48:18 +08:00
hailin0 1b54b61a88
Add support for spring @Scheduled (#5339) 2020-08-23 17:13:49 +08:00
Jared Tan 3dfa40ebb5
support Slack alarm hooks (#5364) 2020-08-22 17:18:09 +08:00
xbkaishui 79c1c0cc76
Support http header tag (#5348) 2020-08-20 10:43:28 +08:00
Gao Hongtao 19836e64bb
Add labeled metrics to alarm system (#5276) 2020-08-18 22:55:01 +08:00
Evan a6e45d04c9
spring annotation enhance (#5320) 2020-08-17 10:14:40 +08:00
Evan 68317dd910
Add agent plugins selector (#5293) 2020-08-14 15:06:30 +08:00
吴晟 Wu Sheng 7f7e96b088
[IMPORTANT] Query traces with tags as condition (#5270) 2020-08-11 07:24:40 +08:00
于玉桔 e37fc2e439
Support spring-kafka (#5254) 2020-08-10 19:13:19 +08:00
Evan 2df3c683ba
Super Size Dataset record index es rolling step (#5282) 2020-08-10 14:49:11 +08:00
于玉桔 69297b9ec6
Support Apache ShardingSphere-Elasticjob (#5153) 2020-08-10 10:48:23 +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
Daming 052818041b
Fix typo (#5214) 2020-08-03 12:38:37 +08:00
Daming f9257f5274
Provide kafka as collector/reporter (#4847) 2020-07-30 11:55:49 +08:00
Ax1an 5d7da1aead
Add internalComHost and internalComPort config to Nacos. (#5192) 2020-07-29 15:54:10 +08:00
吴晟 Wu Sheng bebaf9bd4d
Update doc links for adopting the 2 nodejs agents. (#5182) 2020-07-27 17:28:50 +08:00
mrproliu 925c0d74c7
Provide server-side meter (#4972) 2020-07-25 21:17:32 +08:00
Jared Tan db9f8e6e00
Support Jetty server advanced configuration. (#5147) 2020-07-25 17:41:49 +08:00
songzhendong 119af6ea1c
Add Tomcat 9 install document for java agent (windows) (#5169)
Add Tomcat 9 install document for java agent (windows)

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-07-24 22:10:31 +08:00
吴晟 Wu Sheng 2c676ead24
Add OAP configuration vocabulary documentation. (#5149) 2020-07-23 08:24:40 +08:00
songzhendong b363b0ea4f
Add Nacos back into SkyWalking as an option(nacos-1.3.1) (#5137) 2020-07-21 23:30:06 +08:00
Evan e0325a4407
Configmap configuration (#4959) 2020-07-20 12:35:35 +08:00
吴晟 Wu Sheng 0339889e11
Fix backend-telemetry.md format (#5107)
* Update backend-telemetry.md

Fix doc format.

* Update backend-setup.md

Remove out-of-date inventory documentation.
2020-07-16 17:40:18 +08:00
xin a6c3aad8fa
Fix config file and document typo for ttl (#5087) (#5088) 2020-07-12 17:36:35 +08:00
Gao Hongtao b6661b5164
Add health checker module (#5046) 2020-07-10 00:30:43 +08:00
wangwei 20062c6863
add istioctl ALS command for document (#5066)
* add istioctl ALS command

* add note
2020-07-09 15:06:45 +08:00
songzhendong 6ba9c7f81b
Dynamic Configuration Zookeeper Implementation (#5040) 2020-07-07 09:43:44 +08:00
killGC 73ee3103e2
support sampleRate as Dynamic Configuration (#4968) (#4987) 2020-07-07 08:40:44 +08:00
Ax1an a3ae7b4dc6
Fix no data bug of oap self observability instance_metrics_second_aggregation metrics. (#5028) 2020-07-06 13:03:36 +08:00
caoyixiong 80a534b1bb
support Graphql Logic endpoint (#5030) 2020-07-05 23:37:09 +08:00
Gao Hongtao 1654a0fbf0
Add opencensus reciever (#5029)
Signed-off-by: Gao Hongtao <hanahmily@gmail.com>
2020-07-05 20:53:16 +08:00
gongdewei 1817386391
Support cache mode in the agent. (#4858) 2020-07-01 23:20:50 +08:00
caoyixiong 31f42343f6
add brpc-java plugin (#4958) 2020-06-27 14:57:29 +08:00
mrproliu cc9ea271a7
Provide agent-side meter api (#4816) 2020-06-22 14:07:34 +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
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
songzhendong 86fd1900de
Update backend-cluster.md (#4910) 2020-06-12 07:50:40 +08:00
Xin,Zhang 7b99019c49
Refactory spring gateway plugin (#4878) 2020-06-12 00:25:41 +08:00
Gao Hongtao 5038f07094
Update prometheus fetcher for so11y (#4902) 2020-06-11 16:58:28 +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
吴晟 Wu Sheng df83490ae6
UI is ready for 8.0.0 release. (#4896) 2020-06-10 20:35:46 +08:00
吴晟 Wu Sheng eb1cc71b6e
Clean up removed configurations. (#4884) 2020-06-09 12:03:59 +08:00
Gao Hongtao 4f0f39ffcc
Ingest prometheus metrics through meter system (#4783) 2020-06-08 09:19:34 +08:00
songzhendong f3d907bf6d
Remove nacos (#4867)
* Add annotation(AlarmCore.start)

* Upgrade nacos version to 1.2.0

* Revert "Upgrade nacos version to 1.2.0"

This reverts commit 4d7b06f6d20ee09ad377ad6ef736aeab429314e0.

* Update nacos version to 1.2.0(Solve the security problem of the old version of fastsjon)

* Recovery annotation

* Recovery annotation

* Update nacos version to 1.2.0

* Update tls_key_generate.sh path

Update tls_key_generate.sh path

* Add annotation(AlarmCore.start)

* Revert "Upgrade nacos version to 1.2.0"

This reverts commit 4d7b06f6d20ee09ad377ad6ef736aeab429314e0.

* Update nacos version to 1.2.0(Solve the security problem of the old version of fastsjon)

* Recovery annotation

* Recovery annotation

* Update tls_key_generate.sh path

* Execution Authority

* Remove nacos

* remove nacos code

* remove nacos

remove nacos

* remove nacos

remove nacos

* remove nacos

* remove nacos

Co-authored-by: songzhendong <289505773@qq.com>
Co-authored-by: songzhendong <songzhendong@xiaomi.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-06-06 14:23:12 +08:00
吴晟 Wu Sheng d094a0f7c0
Support UI template management. (#4843) 2020-06-01 23:06:14 +08:00
Jared Tan 42d79bf08d
Fix too many mang ipv4 records reported by the agent when deployed in container. (#4817) 2020-05-25 16:15:10 +08:00
吴晟 Wu Sheng a10e044932
Group Parameterized Endpoints (#4802)
* Group Parameterized Endpoints. Configure the grouping rules for parameterized endpoints, to improve the meaning of the metrics.
2020-05-20 22:50:22 +08:00
吴晟 Wu Sheng 2dd9a3fd19
Add v8 upgrade document and fix some tiny doc issues. (#4787)
* Add v8 upgrade document and fix some tiny doc issues.

* Add link to STAM paper.
2020-05-14 18:43:32 +08:00
mrproliu 8af10bed11
Support regex to include or exclude the names in alarm module (#4775)
* Support regex to include or exclude the names, requested through mail list, https://lists.apache.org/x/thread.html/rb6d91093776cf61880425449d3d25f9d560cd32363c0075de9a85d13@%3Cdev.skywalking.apache.org%3E

Co-authored-by: Mrproliu <mrproliu@lagou.com>
Co-authored-by: kezhenxu94 <kezhenxu94@apache.org>
2020-05-13 14:34:16 +08:00
吴晟 Wu Sheng 39adda09f3
Make the default application.yml more friendly in the configuration s… (#4777)
* Make the default application.yml more friendly in the configuration section.

* Fix an issue in python e2e.
2020-05-12 16:55:31 +08:00
mrproliu 749af3e04e
Alarm support multiple scope (#4769)
* Support service relation and database access alarm

* support service instance relation alarm

* support endpoint relation alarm

* document and format the name

* resolve issues

* add database access and endpoint relation rule example

* resolve code format

* remove unnecessary getter and setter package declare

* remove unnecessary fields

Co-authored-by: Mrproliu <mrproliu@lagou.com>
2020-05-11 00:28:10 +08:00
songzhendong d713076f01
Update the path of tls_key_generate.sh script (#4756) 2020-05-08 08:59:19 +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
kezhenxu94 c9ac104120
Add python project into the project page (#4752)
* Add python project into the project page

* Update README.md

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-05-07 08:25:59 +08:00
Jared Tan d51c788113
support user to customize an endpoint (#4716)
* support user to customize an endpoint with toolkit.

* fix code style.

* add md.

* Update docs/en/setup/service-agent/java-agent/Application-toolkit-trace.md

Co-Authored-By: 吴晟 Wu Sheng <wu.sheng@foxmail.com>

* add test case.

* fix expecteddata.tml.

* fix data.

* fix expecteddata.tml.

* remove operationId in expectedData.yaml.

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-04-29 19:39:52 +08:00
innerpeacez 3bc6cb270c
k8s doc https://github.com/apache/skywalking-kubernetes (#4715)
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-04-26 12:38:20 +08:00
吴晟 Wu Sheng 071708a4a3
Support default value in labeled-value and heatmap query. (#4711)
* Support default value in labeled-value and heatmap query.

* Update a little document.
2020-04-25 21:24:15 +08:00
J-Cod3r 2b41aea639
log4j2 support AsyncAppender print tid (#4670)
* log4j2 support AsyncAppender print tid
2020-04-25 17:35:22 +08:00
吴晟 Wu Sheng b635e254c4
Provide Meter(metrics) system (#4694)
Here are the basic and simple usages of the MeterSystem APIs.

## Meter Creation
New meter could be created based on metrics name, function, scope and data type. 
1. Metrics name is still the storage entity name.
2. Functions are every similar with the OAL function, just accepting different input.
```java
final MeterSystem meterSystem = MeterSystem.meterSystem(getManager());
meterSystem.create("test_long_metrics", "avg", ScopeType.SERVICE, Long.class);
```
NOTICE, this creation should only be called in the `module#prepare` stage, otherwise, `Can't create new metrics anymore` exception will be raised after the **CORE** module `start` stage finished. You may find out, there is a chance `create` could be executed successfully in your own `module#start` stage, but it it just because of the sequence of provider loaded by the class loader, **no guarantee, so please don't do that**.

## Runtime Calculation
`AcceptableValue` is the object created at the runtime to accept new metrics value.
```java
         final MeterSystem service = getManager().find(CoreModule.NAME).provider().getService(MeterSystem.class);
        Executors.newSingleThreadScheduledExecutor().scheduleAtFixedRate(new Runnable() {
            @Override
            public void run() {
                final AcceptableValue<Long> value = service.buildMetrics("test_long_metrics", Long.class);
                value.accept(MeterEntity.newService("abc"), 5L);
                value.setTimeBucket(TimeBucket.getMinuteTimeBucket(System.currentTimeMillis()));
                service.doStreamingCalculation(value);
            }
        }, 2, 2, TimeUnit.SECONDS);
```

## Meter Functions
Right now, only `avg` function has been implemented. I submit this PR as soon as possible to get your feedback. I will add more functions.

## Notice
1. Make slow trace query available in the sampled record. Logically, they are the same thing. The UI doesn't need to concern about the trace as a special case.
2. Endpoint dependency will be removed from the dashboard. Because no query available for it. We will provide a new page for that in 8.1
3. Comparison page will be removed due to dashboard is powerful enough to replace it.
2020-04-24 23:33:13 +08:00
songzhendong b3b8aaea6b
Add Tomcat 9 's Java agent deployment instructions(Linux) (#4645) 2020-04-13 18:12:54 +08:00
kezhenxu94 00e8f2d886
Fix bug that the agent heart beats too frequently (#4640)
* Fix bug that the agent heart beats too frequently

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-04-12 20:48:44 +08:00
吴晟 Wu Sheng 44cae97c25
Set up restrict length rules for service, instance and endpoint (#4633)
* Set up restrict length rules for service, instance and endpoint

* Adjust two env names.
2020-04-10 17:59:21 +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
吴晟 Wu Sheng 4474907fef
[Inventory Design Change] Remove endpoint register and endpoint inventory (#4570)
* Finish step one, source and entity changed.

* Step 2, finish the basic and core DAO changes.

* Step 3. Change all source codes of backend, and make project compiling successfully.

* Make startup successful and persistence works.

* Fix dead codes in the MySQLTableInstaller.

* Fix mischange.

* Fix MySQL storage bootstrap error.

* Rollback dependency change.

* Simply enable tailing logs from container no mater it's in CI or not

* Fix segment table issue.

* Fix MySQL Instanller.

* Support Influxdb implementation of new endpoint traffic.

* Set and modify timeout to 90mins

* Remove unnecessary entity in the EndpointTraffic.

* Fix wrong entity builder and make name more clear.

* Fix 2 equal methods bug.

* Fix InfluxDB identifier(name) conflict issue.

* Fix endpoint topology query, endpoint id should be changed as a string.

* Fix a missing change.

* Fix a wrong commit.

* Column name can't be changed, due to it affect the hybrid metadb(h2/mysql) query, change it explicitly with double quotation marks.

* Fix formats.

* Remove endpoint/operation register from the agent. and change the plugin tests(without local tests). operationId relation codes have been removed from agent too.

* Try to fix the hytrix case.

* Fix 3 cases.

* Try to fix cases.

* Fix 2.

* Fix one.

* Fix the serviceId type mis-change.

* Fix int query

* Fix hystrix case.

* Fix a case.

* Fix EndpointCallRelationDispatcher set the source/dest endpoint without id encoding.

* Update documentation and add 2 test cases.

Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-03-28 22:51:41 +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
kezhenxu94 509b20e7ce
Add JDK13, JDK14 to build matrix (#4574)
Motivation:

Guarantee that the agent supports JDK13 and JDK14

Modifications:

Add JDK13 and JDK14 to build matrix

Result:

Build with JDK13 and JDK14
2020-03-26 22:13:28 +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
吴晟 Wu Sheng 259a147682
Add miss doc about collecting parameters in the profiled traces. (#4552) 2020-03-23 09:41:02 +08:00
cngdkxw 2e9f001633
Add spring cloud feign 2.x plugin (#4526) 2020-03-20 20:28:30 +08:00
吴晟 Wu Sheng 1c7529a559
Add a miss link about apdex documentation. (#4543) 2020-03-20 08:24:35 +08:00
kezhenxu94 69e3d80e24
Add selector property in application.yml (#4514)
### Motivation

 Ease the efforts of modifying configurations in automatic workflow and scripts, like Docker and helm chart.

 ### Modification

 Add a `selector` property into `application.yml` to enable switching configuration simply by environment variables or system properties, and filter the unselected options, leaving only selected one.

 ### Result

 - We can switch a configuration by environment variables or system property

 - Closes #4511
2020-03-15 23:28:14 +08:00
Gao Hongtao 78d14ebbd6
Enable OAP gRPC SSL transportation (#4470)
* Enable OAP gRPC SSL transportation

Porting to OpenSSL to enable SSL transportation. The server private
key is in the format of PCKS#8, certificates is x509 though.

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Add netty-tcnative-boringssl-static 2.0.26 licnese

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Update docs/en/setup/backend/grpc-ssl.md

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

* Update docs/en/setup/backend/grpc-ssl.md

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

* Add SSL to grpc remote client and sharing server

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Update documents

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Fix nits

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Fix test case

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Add e2e-ssl and remove other test cases temporarily

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Add TLS relevant files

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Decrease timeout

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Test config works

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* triger CI on oap-ssl branch

* Disable agent ca

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Switch to sharing server

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Add agent log to console

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Upload log files

* Change backend

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Revert "Change backend"

This reverts commit 7a085711e3653d3bf642aa84f73650e22595e383.

* Update backend

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Revert e2e

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Ignore TSL relevant files

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Polish codes

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

* Update certificates expires year to 2120

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: kezhenxu94 <kezhenxu94@apache.org>
2020-03-15 08:15:28 +08:00
吴晟 Wu Sheng e69391a207
Support Secrets Management File in the ElasticSearch 6/7 storage (#4493)
* Temp commit

* Support secretsManagementFile file.

* Update doc.

* 1. Support JKS/pass runtime change too.
2. Follow review.

* Fix format.

* Fix username/password/trustPass haven't been updated in the es client.

* Fix doc issue.

Co-authored-by: Jared Tan <jian.tan@daocloud.io>
2020-03-13 20:50:14 +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
kezhenxu94 9c974b80b4
Fix unclear doc and add missing variable (#4484)
* Revert "[BugFix] Docker InfluxDB cannot be enabled (#4483)"

This reverts commit 73d0802cd6.

* Fix unclear doc and add missing variable
2020-03-11 07:46:59 +08:00
吴晟 Wu Sheng d32450aa7d
Support name column(s) in the storage for 3rd party integration, like Kibana. Default OFF (#4439)
* Support dynamic column in the source.

* Support activeExtraModelColumns as a default OFF option.

* Fix words

* Update backend-setup.md

Fix format issue.
2020-03-04 14:44:54 +08:00
aderm 6d530c1d62
update doc. (#4403) 2020-02-24 00:30:13 +08:00
吴晟 Wu Sheng 4245334bac
Officially add LUA agent link in the main repo and document. (#4402) 2020-02-23 22:27:24 +08:00
Daming 29da5738bc
Provide influxdb as a new storage plugin (#4239)
* provide influxdb as a new storage plugin

Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-02-19 18:00:57 +08:00
吴晟 Wu Sheng 334239388a
Support Daily Index Step feature in the OAP (#4368)
* Support Daily Index Step.

* Fix format.

* Fix mischanged ES.
2020-02-16 20:48:04 +08:00
吴晟 Wu Sheng 329f7e150b
Support Downsampling Data Packing feature in ES storage implementation (#4364)
* Support day/hour/minute metrics merging into one index. Reduce the number of index 50%.
2020-02-16 09:03:30 +08:00
Trustin Lee 5fed153ee2
Add Armeria 0.98.0 to the supported version list (#4328)
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-02-15 12:27:03 +08:00
Jared Tan 7ff9a0cfd9
supprt gRPC alarm hook. (#4344)
* support gRPC hook.

* revert submodule commit.

* revert submodule commitid.

* finish logical.

* remove author anonatation.

* fix ci.

* revert submodule.

* update logical.

* update logical.

* update logical.

* fix

* fix

* fix empty settings.

* fix.

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-02-12 16:20:20 +08:00
lxliuxuankb e5366c0921
Tag annotation supports returned expression (#4327)
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-02-12 14:03:02 +08:00
aderm 8c96fd49dd Update elasticsearch-7.x agent support version. (#4340)
* test/plugin/scenarios/elasticsearch-7.x-scenario/support-version.list

* update elasticsearch-7.x agent support version.

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-02-10 19:10:38 +08:00
吴晟 Wu Sheng 421ba88dbf
Provide the new version upgrade documentation/FAQ. (#4311)
* Provide the new version upgrade documentation/FAQ.

* Make the sentence more clear.
2020-02-04 17:40:12 +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
吴晟 Wu Sheng 4072227e5b
Update backend-setup.md (#4271) 2020-01-19 17:43:12 +08:00
mrproliu 90f3c4de55 Sniffer processing profile task and report status and snapshot (#4220)
* sniffer processing profile task and report status and snapshot

* resolve testServiceDependencies test case error, use same register with `TraceSegmentServiceClient`

* resolve names

* change profile to single one thread run.

* 1. change to the ArrayList, because known the max size
2. rename issue resolved

* add profiling status enum

* change sniffer use full name issue

* 1. remove `prepareProfiling` method, build profiling status when construct `TracingContext`
2. add `TracingThreadListenerManager`, notify when tracing main thread finish
3. change ProfileThread start when process new profile task

* remove unnecessary getter

* add test assert error message

* adding `AgentServiceRule`

* revert original assert

* remove unnecessary getter

* resolve issues

* reduce findService invoke

* resolve style error

* recheck profiling when change first span operatin name

* resolve issues
1. remove `ContextManager#profilingRecheck`, only check on `TracingContext`
2. rename comments
3. resolve volatile array setting

* remove article link

* add `ProfileTask#maxSamplingCount` check

* resolve conflict (Downstream -> Commands)

* 1. change profilingSegmentSlots init on construct
2. if is profiling, recheck dont need to stop
3. total profiling count increment on first dump

* remove unused return val

* remove some `@param` and `@return`

* add profile task check result data bean

* change profiler slot to `AtomicReferenceArray`

* resolved java doc error

* fix doc error, remove meaningless descriptions

* resolve missed profile receiver on oap starter

* resolve method invoke error

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-01-18 18:38:03 +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
kezhenxu94 094eeb870f
Add alarm metrics OP >= and <=, and refactor the operator logics (#4221)
* Add alarm metrics OP >= and <=, and refactor the operator logics

* Add unit test for OP

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-01-13 00:50:37 +08:00
Jared Tan 1310719645
add token authentication between agent and oap receiver. (#4197)
* add token authentication between agent and oap receiver.

* revert ui.

* fix code style.

* update docs.

* Update docs/en/setup/backend/backend-token-auth.md

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

* fix hits.

* filter

* revert yml.

* update logical.

* fix codestyle check.

* fix ci and add e2e test case.

* revert mistake commit.

* fix ci

* remove duplicate maven dependency.

* revert pom

* revert unchanged.

* update javadocs.

* update logical.

Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-01-12 23:08:39 +08:00
吴晟 Wu Sheng 9149de2a6e Support multiple linear values and merging p50/75/90/95/99 into percentile (#4214)
* Support new percentile func with new alarm and exporter for this new func.

* Fix e2e and OAL script

* Fix wrong column.

* Fix percentile bug and oal engine bug.

* Update query protocol and add percentile test case

* Support new query

* Adopt GraphQL requirement

* Fix wrong type cast.

* Fix query in H2 and ES.

* Fix docs and comments.

* Fix an e2e compile issue

* Fix javadoc issue and e2e test issue.

* Change CPM to Apdex in TTL test.

* Fix OAL for TTL e2e

* Add metrics query for service percentile.

* Fix OAL engine bug. Method deserialize is not working when more than two field types are IntKeyLongValueHashMap

* Support multiple IntKeyLongValueHashMap fields in remote. About serialize/deserialize methods.

* Fix graphql statement error in e2e.

* Fix serialize not working and add generated serialize/deserialize of percentile into test cases.

* Fix test case format

* Remove generated code test.

* Fix failed e2e test

* Use avg resp time to apdex in the TTL test.

* ADD multiple linear metrics check for endpoint in e2e cluster.

* Support `-` to represent no threshold and doc of alarm about this.

* Move break to right place.

* Fix wrong break(s)

* Fix break and add a test case for multiple values alarm.

* Fix format.

* Add more doc for this new feature and GraphQL query protocol.

Co-authored-by: Jared Tan <jian.tan@daocloud.io>
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2020-01-12 22:10:50 +08:00
mrproliu 4cf0600f35 Provide profile task downstream to sniffer (#4172)
* Provide profile task downstream to sniffer

* fix agent unit testcase issue

* add profile switch config on sniffer

* fix es error

* 1. add @DefaultImplementor on the sniffer profile task service
2. change ProfileTaskExecutionService#PROFILE_TASK_READY_SCHEDULE to final and remove volatile
2. fix style error

* change timeFromStartMills use `<` to compare

* 1. add `maxSamplingCount` to profile task
2. make profile task limit to the common package

* 1. change `agent.active_profile` to `profile.active` and make true on default
2. add `maxSamplingCount` in profile task
3. use `createTime` to check has new command list
4. add task re-check before process profile task

* 1. add `profile-receiver` document
2. change `ProfileTaskExecutionService` use single schedule thread pool
3. cache dont need fetch data when no data, use auto-fresh mechanism only

* remove navigate time judge, fix comment wrong meaning
2020-01-09 09:35:39 +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
Kanro 4e03d5e6d7 Add kotlin coroutine plugin (#4165)
* Kotlin coroutine plugin write in Java

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-01-04 22:51:59 +08:00
aderm 6be84cfa78 update elasticsearch-7.x agent support version. (#4171)
* update elasticsearch-7.x agent support version.

* update supported-list.md doc & plugins-test.yaml
2020-01-04 19:56:35 +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
geektcp 0f6b5c8def Fix dead link (#4167)
the quick start website cannot open
2020-01-03 16:11:02 +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
web-xiaxia 5fba91901f add Dynamic Configuration Consul AclToken (#4161)
* Update ConsulConfigurationCenterSettings.java

add aclTokne

* Update ConsulConfigurationWatcherRegister.java

add aclToken

* Update application.yml

add aclToken

* Update ConsulConfigurationCenterSettings.java

add aclToken

* Update application.yml

add aclToken

* add aclToken

* Replace with util

* Replace with util

* add consul aclToken
2020-01-02 20:05:16 +08:00
mrproliu d38a8eaaa7 Provide thread monitor create task feature (#4145)
* provide thread monitor task service to create

* provide thread monitor task GraphQL implements

* 1. change thread monitor field names
2. fix `getThreadMonitorTaskList` query time bucket error

* provide config stream processor

* update submodule `query-protocol`

* resolve e2e-mysql error

* remove useless storage interface method.

* rename `ThreadMonitorTask` to `ProfileTask`

* change e2e-profile to the top level

* fix profile test analyze error

* remove StringUtil#isBlank.

* 1. remove create profile task duration unit
2. remove GraphQL getTask list duration field
3. add `profileTaskQueryMaxSize` in `storage` -> `elasticsearch(7)` configuration, default get 200 profile task

* provide e2e different storage tests

* 1. fix rat check
2. remove DurationUtils.java#toSecond
3. remove ProfileTaskQueryEs7DAO

* fix e2e code format error

* provide es6 and es7 storage e2e tests

* change e2e profile es module artifactId

Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2019-12-31 20:49:45 +08:00
aderm f64f3c1433 [test/plugin] immigrate test activemq scenario. (#4151)
* [test/plugin] immigrate test activemq scenario.

Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2019-12-31 15:31:39 +08:00
kezhenxu94 51e74ca4c4
[Feature] Add tag annotation to allow tagging span with annotation (#4152)
* [Feature] Add tag annotation to allow tagging span with annotation

* Use repeatable annotation syntax and add docs and example codes

* Fix failed unit test
2019-12-31 12:11:06 +08:00
吴晟 Wu Sheng 1ee14fbbc8
Support customized instance name by a new UUID naming policy. (#4148) 2019-12-30 14:59: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
吴晟 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
于玉桔 1e9f929f97 [test/plugin] immigrate test zookeeper scenario. (#4106)
* zookeeper test

* update expected data file

* fix review code

* fixed

* bugfix

* update version

* fix bug

* fix

Co-authored-by: zhang-wei <pknfe@outlook.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2019-12-25 17:25:09 +08:00
吴晟 Wu Sheng b570996006
Update JDK compiling level to 8, and remove zip dist. (#4119)
* Update JDK compiling level to 8, and remove zip dist.

* Exclude annotation and shade API.

* Fix more exclusion.

* 1. Update grava and gson 2. Fix compile issue. 3. Keep protoc and maven plugin in old version. Some incompatible of 3rd party grpc proto.

* Fix dependency conflicts, license and notice issue, and dependency check script issue

Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
2019-12-25 15:55:24 +08:00
zhang-wei ba192a9f13 [test/plugin] immigrate test servicecomb scenario (#4109)
* servicecomb scenario
2019-12-25 09:43:57 +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 fa379d786c Update README.md (#4102) 2019-12-21 23:10:42 +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
kezhenxu94 3f48790c36 [Feature] Add Java agent plugin for Jdk Threading classes (#4067)
* Add Java agent plugin for Jdk Threading

* Fix expected data according to changes in master

* Update agent.config

* Fix failed plugin test
2019-12-17 00:12:14 +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
Videl Smith daabc1f5b6 Documentation proofreading (#3999)
* Fixes: README.md

* Adds: new FAQ

See issues #3924, #3935, #3975

* Fixes: setup documentation

* Update README.md
2019-12-13 11:08:36 +08:00
aderm 4ec2cb07ed [test/plugin] immigrate test cassandra scenario. (#4040)
* [test/plugin] immigrate test cassandra scenario.

* update support list doc.

* delete space error.

* disable jmx report.

* remove jmx dependence.

* Disable jmx report.

* Update support list doc.
2019-12-12 12:52:00 +08:00
kezhenxu94 eea5d027cc
Add Armeria Java agent plugin (#4024) 2019-12-11 15:57:45 +08:00
kezhenxu94 3f2f75a666
Add SkyWalking CLI download links (#4038) 2019-12-10 21:20:10 +08:00
seiferHu 3e7e1fe1ee Update backend-cluster.md (#4030)
update the consul cluster agents description .
2019-12-09 13:07:00 +08:00
gonedays bf4d738ba9 Add instructions for logback with logstash in custom json format (#4019)
Add instructions for logback configuration with logstash, use custom
json format
2019-12-08 21:59:20 +08:00
aderm 0b4afc17b8 update es7.x plugin test support version. (#4011)
* update es7.x plugin test support version.

* update Supported-list.md and action config.
2019-12-06 10:53:34 +08:00
kezhenxu94 aa022ffa00 Remove unused ES7 config (#3998) 2019-12-04 00:20:10 +08:00
Gao Hongtao 6475ab3d1d Add apdex function to OAL (#3855)
* Add apdex function to OAL

* Add empty line

* Setup config watcher

* Add identifier type to function parameter

* Add config test

* Update score algorithm

* Replace responseCode with status

* Add comments about apdex score algorithm

* Add docs

* Add e2e test case

* Update test case

* Fix disptch class generating error

* Update value name of apdex metric

* Tuning threshold

* Fix single tolerated point bug
2019-11-29 12:54:33 +08:00
Stalary b666dc7e11 MOD:alarm-settings.yml support exclude-names (#3949) 2019-11-28 22:25:08 +08:00
seifeHu 0020b03f2f Document error for agent config file 's config description (#3943)
* Update README.md

logging.dir 's Description is an Error .Default value is not System.out. It is a dir.
2019-11-27 21:37:50 +08:00
Jared Tan d581f2294f Support custom elasticsearch settings in index level. (#3913) 2019-11-21 22:30:59 +08:00
kezhenxu94 9b408e82d5 [Feature] Support ElasticSearch 7 as backend storage (#3870)
* [Feature] Officially support ElasticSearch 7 as backend storage

* Extract bootstrap module to be shared by multiple starters

* Add missing configuration file and distinguish different version in test

* Update known-oap-backend-dependencies-es7.txt

Update the dependency lib

* Fix missing adaptation to ElasticSearch 7

* Rename ElasticSearch 7 specific class with Es7 infix

* Fix miss-adapted ElasticSearch DAO API

* Add ES7 specific configuration and polish documentations

* Polish documentations

* Polish documentations
2019-11-21 09:26:23 +08:00
songzhendong 6c4cca820a Add jetty's Java agent deployment instructions (#3909)
Add java agent deployment document for skywalking with jetty
2019-11-20 23:56:18 +08:00
于玉桔 6ffd92792d Support spring-tx in optional plugin (#3857)
* plugin code

* NPE FIX
2019-11-19 10:05:01 +08:00
aderm 33d2962593 [test/plugin] add elasticsearch 7.x plugin test scenario. (#3868)
* [test/plugin] add elasticsearch 7.x plugin test scenario.

* refresh index, make can search.

* remove unused package.

* update supported framework document.

* fix service name repeat.
2019-11-17 11:23:11 +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
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
innerpeacez e307b69163 fix als docs (#3814) 2019-11-09 12:47:08 +08:00
sxzaihua 4c688701dc add SupplierWrapper to support java 1.8+ CompletableFuture.supplyAsync #3779 (#3783)
* add SupplierWrapper to support java 1.8+

Signed-off-by: shixiang <xiang.shi001@bkjk.com>

* add SupplierWrapper to support java 1.8+

Signed-off-by: shixiang <xiang.shi001@bkjk.com>

* Update SupplierWrapper.java

add new line

* add supplier

* add supplier test

* add test

* add test yaml

* Update Application-toolkit-trace-cross-thread.md

Add how to use SupplierWrapper in Java 1.8+
2019-11-06 19:32:16 +08:00
野狼Bang 464d7c1962 Typo fix in document (#3764) 2019-11-01 12:11:58 +05:30
xiaoy00 a4078194d7 [plugin]support log4j2 AsyncLogger (#3715) 2019-10-28 17:23:17 +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
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
qiyang 69a28d4591 Add register persistent worker latency metrics #3671 (#3677)
* Add register persistent worker latency metrics  #3671

* remove never thrown exception on Time#close()
add panel to mesh-mode-grafana.json

* remove never thrown exception on Time#close()
add panel to mesh-mode-grafana.json
2019-10-24 15:22:38 +08: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
scolia b56248b0af feat: add test case for mongodb-3.x-plugin (#3667)
* feat: add test case for mongodb-3.x-plugin

* fix: agent-test script error

* feat: change non-compliant code

* fix: remove not proper config

* docs: update docs

* Merge branch 'master' of https://github.com/apache/skywalking into mongodb-testcase

# Conflicts:
#	Jenkinsfile-Agent-Test-3
2019-10-22 22:19:40 +03:00
Jared Tan 2f3d009e63 Makes the scope of alarm message more semantic. (#3680)
* Makes the scope of alarm information more semantic.

* update md.

* update md.

* add ruleName in AlarmMsg.

* update md.

* update test case.

* fix coveralls.

* fix coveralls.

* fix ci.
2019-10-22 19:35:04 +03:00
zhangwei 1434f4a7a2 doc fix (#3655) 2019-10-18 19:34:35 +03:00
Gao Hongtao bde6c137b7 Update istio docs according latest istio release (#3646)
* Update istio docs according latest istio release

* Rename skywalingadapter.yml to skywalkingadapter.yml

Rename typo file name.

* Update README.md

Add a link to doc.

* Update README.md
2019-10-17 21:56:35 +03:00
吴晟 Wu Sheng 037df35e01
Update backend-ui-setup.md (#3624)
Remove duplicated doc, we have a more clear one now.
2019-10-16 07:54:44 +03:00
panjuan fb001867e5 Instead of datasource-settings.properties, use application.yml for MySQLStorageProvider (#3564)
* Is it a typo or not?

* delete datasource-settings.properties

* handle 'metadataQueryMaxSize'

* delete DynamicModuleConfig.java

* modify mysql config

* parsing yaml to support the configuration for multiple properties

* delete datasource-settings.properties

* modify doc

* add properties for docker-entrypoint.sh

* add testLoadConfig()
2019-10-12 20:47:38 +08:00
mrproliu 58804174e1 Provide plugin for Ehcache 2.x (#3575)
* support ehcache 2.x
2019-10-10 22:39:37 +08:00
kezhenxu94 72b722a5c1 Support namespace in Nacos cluster/configuration (#3578)
* Support namespace in Nacos cluster/configuration

* Give Nacos default namespace as per config/registry
2019-10-09 16:25:47 +08:00
innerpeacez 0a8c8643c4 use chart deploy sw docs (#3573) 2019-10-08 15:59:49 +08:00
吴晟 Wu Sheng af51e23b72 Reorganize the doc, and provide catalog (#3563) 2019-10-06 15:34:03 +08:00
kezhenxu94 2801de752f Support dynamically configure alarm settings (#3557)
* Support dynamically configure alarm settings

* Update documentation
2019-10-05 22:47:01 +08:00
kezhenxu94 81f4c087b0
Provide Consul dynamic configuration center implementation (#3560)
* Provide Consul dynamic configuration center implementation

* Add more unit tests

* Fix unit test

* Add more unit tests and remove unused file

* Remove redundant doc
2019-10-05 10:49:53 +08:00
kezhenxu94 179914d7b9 Upgrade guava version to support higher JDK version (#3541)
* Upgrade guava version to support higher JDK version

* Adjust license version

* Update doc
2019-09-30 13:29:03 +08:00
panjuan 9dccace951 Is it a typo or not? (#3537) 2019-09-27 21:49:59 +08:00
panjuan 13ff55fb6f Update backend-cluster.md (#3536)
Modify `hot` to `host`
2019-09-27 21:25:14 +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
吴晟 Wu Sheng 8ebf3aac04
Support timeout configuration in agent and backend. (#3491)
* Support timeout configuration in agent and backend.

* Fix CI

* no message
2019-09-20 15:02:28 +08:00
wuguangkuo 60236a27d6 Add feature to control the maximum agent log files (#3475)
* Add feature to control the maximum history agent log files.
2019-09-19 14:12:17 +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
Jared Tan 6c347a1169 agent support custom properties. (#3367)
* agent support custom properties.
2019-09-17 14:44:42 +08:00
吴晟 Wu Sheng 876b60c100 Update ALS setup doc as istio 1.3 released (#3470)
* Update als_setting.md

* Update als_setting.md
2019-09-13 09:17:15 +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
kezhenxu94 721f86485c Add TTL E2E test (#3437)
* Add TTL E2E test

* Add to Jenkins stage and minor bugfix

* Upgrade e2e container version

* Polish and minor fix

* Polish
2019-09-09 22:06:57 -07:00
Jared Tan dbbf22a177 support es https ssl config. (#3370)
* support es https ssl config.

* update

* update docs.

* refactoring var name.

* fix

* update docs.

* add config in es section.

* fix logical.
2019-09-02 11:15:43 +08:00
Dhi Aurrahman 53a1ae8e82 docs: Improve envoy metrics sending setup documentation (#3389)
* Add envoy metrics sending example

Signed-off-by: Dhi Aurrahman <dio@tetrate.io>

* Newline

Signed-off-by: Dhi Aurrahman <dio@tetrate.io>

* Fix

Signed-off-by: Dhi Aurrahman <dio@tetrate.io>

* Tear down note

Signed-off-by: Dhi Aurrahman <dio@tetrate.io>

* Typo

Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
2019-09-01 09:47:38 +08:00
吴晟 Wu Sheng 63b033dfc0
Add istio bypass adaptor setup document back (#3376)
* Update document.

* Enable ALS document
2019-09-01 09:19:58 +08:00
kezhenxu94 54614a0594 Support gateway without agent (#3308)
* Support Gateway without agent
2019-08-30 16:17:41 +08:00
wuxingye 57b345ddaa add logstash logback plugin (#3365)
* add logstash logback plugin

* add logstash logback plugin, set pom provided, refine logback doc

* refine logstash logback doc

* refine the comment

* remove the app_id that not related to SkyWalking

* remove tag @date for CI error: unknown tag: date

* add description for iLoggingEvent for ci warning: no description for @param
2019-08-29 22:58:49 +08:00
于玉桔 95ceacfc15 Fix the zookeeper plugin has many nodes in the cluster case (#3372)
* Fix the zookeeper plugin has many nodes in the cluster case

* support version
2019-08-29 19:32:37 +08:00
Andy Ai 8bf7e346ee Support play 2.x (#3207)
* Support play 2.x
2019-08-29 17:00:51 +08:00
Stalary 3d00d83fc6 ADD: add operationName length threshold (#3357)
* 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
2019-08-28 22:18:11 +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
evanxuhe 1cc4a517c2 Log4j2 support AsyncRoot print tid. All versions above 2.0 supported (#3284)
* Log4j2 support AsyncRoot print tid
Support AsyncRoot print tid of all versions of log4j2 2.1+
2019-08-26 21:00:46 +08:00
Daming 49b20dd0cb Support Zookeeper ACL (#3273)
* support ACL

* support digest only
2019-08-21 09:23:43 +08:00
liuweiyi a06d221e62 Add more. 2019-08-19 16:40:26 +08:00
liuweiyi 8024beaf88 Add cluster etcd config to cluster.md. 2019-08-19 16:35:30 +08:00
Alvin ffe1df579f Enhance agent logger. (#3250)
* Add pattern logger to replace the easy logger.
* Doc update
* Support console log
2019-08-14 14:31:24 +08:00
makingtime fc026ec3a7 correct span_limit_per_segment default value (#3261)
change `agent.span_limit_per_segment` default value to match the default value of `SPAN_LIMIT_PER_SEGMENT` in https://github.com/apache/skywalking/blob/master/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/conf/Config.java
2019-08-14 08:24:00 +08:00
Alvin 90d525b164 Improve agent grpc auto reconnect (#3240)
* improve auto connect

* add config

* use int instread of atomic

* update format

* update doc

* update var name and doc

* fix
2019-08-11 12:30:17 +08:00
Jared Tan 02affffa50 support elasticsearch address configuration with http scheme. (#3236)
* support elasticsearch address configuration with http scheme.

* update logical.
2019-08-09 19:15:04 +08:00
吴晟 Wu Sheng eff9faa8c9
Update backend-storage.md (#3222)
* Update backend-storage.md

* Update backend-storage.md

* Update ES-Server-FAQ.md
2019-08-06 21:19:00 +08:00
li.can 6e837153f2 Add jdk http plugin (#3171)
* add http

* update plugin

* Add StaticMethodsAroundInterceptor to be injected.

* move to options plugin

* move folder

* update pom

* support https

* add witness class

* Make JDK9-11 available for bootstrap instrumentation

* Remove temp folder of old bootstrap instrumentation requirement.

* remove witness ,work for jdk6,7,8,9,10,11

* Make JDK 12 works.

* move jdk-http-plugin to bootstrap-plugins folder

* add httpsclient

* update README.md
2019-08-03 10:26:20 +08:00
kezhenxu94 49f50a24a4 Support upgrade backend w/o rebooting agents (#3170)
* Support upgrade backend w/o rebooting agents
2019-08-02 09:25:17 +08:00