Commit Graph

43 Commits

Author SHA1 Message Date
彭勇升 pengys f658d9eb4d Simplify the PxxMetrics and ThermodynamicMetrics to improve performance (#3162)
* Feature of database session

* Make it configurable.

* Change the metrics process flow.
before: metrics entrance -> aggregate worker -> remote worker -> trans worker -> minute, hour, day, month persistence worker -> storage
after: metrics entrance -> aggregate worker -> remote worker -> minute persistence worker ->  trans worker -> hour, day, month persistence worker -> storage

* IntKeyLongValueHashMap instead of IntKeyLongValueArray.

* Make the OAP server can't startup.

* Finish

* Rename the method and fixed some test case issues.

* Rename field.

* no message
2019-07-25 19:08:36 +08:00
吴晟 Wu Sheng d256fc348e OAP internal RemoteService protocol change and code refactor (#3128)
* Remove the worker id, and add worker name for remote handler only.

* Remote metrics and inventory classes mapping too.

* Refactor codes.
2019-07-20 23:47:17 +08:00
吴晟 Wu Sheng 5b039e9747 All NEW OAL Runtime Engine (#3109)
* Change OAL generator tool to runtime.

Step 1. change project structure. API links and maven pom.

* Part of metrics class generation

* Metrcis class generated.

* Set up the basic structure of new OAL engine.

* Finish metrics generation.

* Support dispatcher generation.

* Format codes.

* Generate dispatcher all methods.

* Implement disable in hardcode.

* Clear up

* Fix compile startup.

* Update license and document of new OAL engine.

* Fix rat.

* Disable class output in default

* Copy from @kezhenxu94 's test PR, https://github.com/apache/skywalking/pull/3110

* Wait for the mount command to finish
2019-07-18 19:47:23 +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 0225711e26
Check duplicate providers in bootstrap (#2976)
* Enhance module manager
2019-07-01 15:54:12 +08:00
daming 6ff33d8816 Restore solrj-plugin (#2888)
* restore solrj-plugin

* restore solrj-plugin
2019-06-17 18:48:18 +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
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
彭勇升 pengys 5036e83343 Good news of an important feature: time series implementation in Elasticsearch storage. (#2808)
* The new feature of Elasticsearch storage with the time series implementation.

* Time bucket util improve.

* Fixed some Gramma error.

* Update ttl.md

Polish English a little.

* Update ttl.md

Add more explicit description of TTL

* Update ttl.md

* Update StorageModuleElasticsearchConfig.java

Set otherMetricsDataTTL = 0 as default, make user more clear.

* Rename the timeSeriesAble to capableOfTimeSeries

* Fixed a test case failure.
2019-06-03 18:46:42 +08:00
FuCheng,Yan bc6f06f964 Support RESTEasy 3.x (#2665)
* feat(agent sdk): resteasy plugin

* fix(agent sdk): fix component define

* fix(agent sdk): fix file license

* fix(agent sdk): fix file license

* docs(agent sdk): add supported list

* fix(agent sdk): fix file license

* fix(agent sdk): fix response error tag

* fix(agent sdk): fix

* fix(agent sdk): adapter 3.5+

* fix(agent sdk): remove unreasonable async handling
2019-05-24 22:14:43 +08:00
于玉桔 98b495ebcc Spring cloud gateways 2.1.x plugin (#2517)
* spring cloud gateways plugin
2019-05-20 17:06:40 +08:00
彭勇升 pengys 63fb961c0d New OAP annotations, they are friendly for streaming loader. (#2670)
* New stream annotation.
- Inventory annotation example:
@Stream(name = ServiceInventory.INDEX_NAME, scopeId = DefaultScopeDefine.SERVICE_INVENTORY, storage = @Storage(builder = ServiceInventory.Builder.class, deleteHistory = false), kind = StreamKind.Inventory)

- Metrics annotation example:
@Stream(name = ServiceRelationClientSideMetrics.INDEX_NAME, scopeId = DefaultScopeDefine.SERVICE_RELATION, storage = @Storage(builder = ServiceRelationClientSideMetrics.Builder.class), kind = StreamKind.Metrics)

- Record annotation example:
@Stream(name = SegmentRecord.INDEX_NAME, scopeId = DefaultScopeDefine.SEGMENT, storage = @Storage(builder = SegmentRecord.Builder.class), kind = StreamKind.Record)

- TopN annotation example:
@Stream(name = TopNDatabaseStatement.INDEX_NAME, scopeId = DefaultScopeDefine.DATABASE_SLOW_STATEMENT, storage = @Storage(builder = TopNDatabaseStatement.Builder.class), kind = StreamKind.TopN)

* no message

* Stream annotation finish.

* Make stream processors to be the singleton class.

* Fixed the compile errors.

* Modify the OAL module for this annotation refactor.

* Add apache license header.

* Duplicate import.

* Fixed check style error.
2019-05-15 22:42:38 +08:00
于玉桔 1b6bd5f81d study sharding sphere (#2679) 2019-05-15 19:12:09 +08:00
彭勇升 pengys ed78dabe8b Rename metric and indicator to metrics. (#2643)
* Rename metric to metrics.

* Fixed test case execute failure issues.
2019-05-10 08:05:37 +08:00
Brandon Fergerson ce1c7aadfc Vert.x Core 3.x Plugin (#2386)
* vertx plugin impl
2019-04-16 23:46:49 +08:00
彭勇升 pengys 1fd5c5790a
Divide two static classes (#2411)
* 1. Remove static worker instances holder.
2. Remove static worker instance id generator.

* Fixed test case failure.
2019-03-30 15:37:19 +08:00
Ahoo Wang 3438151693 Sync SmartSql provider setting to all of component-libraries.yml (#2394)
* Add SmartSql provider components in component-libraries config

* sync SmartSql provider setting -> fix https://github.com/apache/incubator-skywalking/issues/2390
2019-03-20 23:06:13 -07:00
吴晟 Wu Sheng b4cb7e0bca
Envoy metric support and a bug fix (#2321)
* Extend envoy metric service, scope and OAL lexer/parser.

* Finish metric extension and oal.

* Make test env works.

* Finish test of envoy connection and memory metric.

* Change document.

* Finish docker compose test.
2019-03-07 17:05:46 +08:00
Lemon 4a54c7687d Add clr metrics scope and oal script (#2297)
* Add CLR metric scope and oal_script

* Add max indicator

* Fix checkstyle
2019-03-02 09:36:48 +08:00
于玉桔 0929ff3453 Support Zookeeper plugin (#2211)
* Zookeeper plugin
2019-02-15 22:13:44 +08:00
吴晟 Wu Sheng 4babd6ff73 Support Top sql (#2239)
* The prototype of topN sql worker.

* Add scope and new manual dispatcher.

* no message

* Finish topN persistence codes. Not test yet. And query have not added.

* Finish the top n database statement persistent.

* Support different slow thresholds for different db types.

* Fix wrong db default threshold

* Finish new query protocol binding.

* Provide query empty implementation and sync ui.

* Finish all codes, hope it works :P
I will run the tests tonight.

* Fix

* Fix

* Fix a startup issue.

* Add time bucket to persistent.

* Fix wrong query result column name.

* Fix Database query.

* Fix checkstyle.

* Fix wrong order logic, and add a test case to verify, to fix https://github.com/apache/incubator-skywalking/pull/2239#discussion_r255948249
2019-02-12 23:13:02 +08:00
于玉桔 a36394d9bc Support lettuce plugin (#2152)
* Support lettuce plugin

* lettuce plugin bugfix

* lettuce plugin fix license issue

* lettuce plugin fix cluster and config issue

* plugin lettuce compatible with low 5.0.x version

* lettuce plugin support version accurately describes on Supported-list.md

* plugin lettuce compatible with low 5.0.2 version

* lettuce plugin fix wrong batch method intercept point

* move lettuce to optional plugins

* fix ci issue

* fix ci issue

* Modify the description file

* Pom code optimization

* Optimization operation name

* Optimization operation name2
2019-01-26 13:09:03 +08:00
于玉桔 43b216aa92 Support redisson plugin (#2083)
* plugin support redisson
2019-01-11 22:32:09 +08:00
吴晟 Wu Sheng 6499d4f583
Implement Prometheus to oap backend telemetry (#2133)
* Finish the basic codes of telemetry.

* Add many telemetry in oap.

* Fix a test case.

* Finish all telemetry metric.

* Fix format.

* Make telemetry works.

* Support JVM metrics.

* Add doc for telemetry.

* Fix typo.

* Fix #2135
2019-01-08 23:20:13 +08:00
langyan1022 6a4e7ffc6c fix missing ojdbc component id in component-libraries.yml (#2122)
* add ojdbc component id
2019-01-04 20:56:38 +08:00
彭勇升 pengys 7c8a683c2f
gRPC client usage improve (#1946)
* Close the clients which are unreachable.
Remote client manager test case and comments.

* Test the GRPCRemote client.

* 1. Catch the throwable for onComplete method cause of it will throw exception when connection lost.
2. Check the gRPC channel state, send message when state is ready, wait 5 second when state is not ready.

Notice: gRPC channel getState with true parameter will trigger reconnect operation.

* gRPC client will reconnect to the server when network recorvered.

* Recovery application.yml

* Recovery proto module commit id.

* no message

* Fixed compile error.
2018-11-22 20:50:27 +08:00
吴晟 Wu Sheng b6241b2ad2
Optimize collector settings and indicator (#1841)
* Support maxConcurrentCallsPerConnection and maxMessageSize in grpcServer

* Make percent percent is 1/10000

* Fix test cases.

* Make service instance indicator dispatch based on server side only.

* Set init data right in AlarmMeta.

* Make endpoint query based on server side only.
2018-10-29 20:45:44 +08:00
吴晟 Wu Sheng d9556c38fc
Make Mesh and Istio receivers ready (#1821)
* Make receiver more effective

* Add Istio test case and all source dispatch in

* Refactor mock data

* FIx rat.

* Support call component.

* Fix ThermodynamicIndicator bug.

* Fix test cases.

* Fix missing calculate in db merging.

* Add codes for debug.

* 1. Fixed elasticsearch bulk process not fresh bug. (#1819)

2. Fixed the bug of source register no queue but wait the end for batch tag.

* Remove debug log, and restore TTL timer for real scenarios.
2018-10-26 15:17:33 +08:00
彭勇升 pengys 6c92fc5484 1. Delete service component indicator. (#1809)
2. Make service relation and endpoint relation to record component id.
3. Delete service mapping indicator.
4. Make service inventory to record mapping service id.
5. Refactor global topology query and service topology query.
2018-10-25 11:19:31 +08:00
chenpengfei d941892664 Add Undertow 2.x plugin (#1700)
* Add Undertow 2.x plugin

* Undertow: Interceptor method executeRootHandler in class Connectors

* Change version number to 6.0.0-alpha-SNAPSHOT
2018-09-26 09:30:42 +08:00
吴晟 Wu Sheng 7e23f49539
Generate all metric for official release, also new func (#1679)
* New generated indicators for real backend system.

* Support cpm and new indicators.

* Fix CI and change document.

* Remove an useless line.
2018-09-17 12:02:01 +08:00
吴晟 Wu Sheng fd83aa55af Support new indicator core. (#1669)
* Support new indicator core.

* Block 2 unaccessible methods.

* Add service call as manual indicator and refactor the core DIspatcherManager
2018-09-13 16:38:50 +08:00
吴晟 Wu Sheng 973ad9e35d
Support time bucket transfer for all indicators. (#1664)
* Add transfer time bucket methods.

* prepare to merge

* Support time bucket transfer.
2018-09-12 18:44:13 +08:00
吴晟 Wu Sheng 1936d38d16 Support ThermodynamicIndicator (#1659)
* Add 3 cases for existed indicators.

* Add Pxx indicator.

* Support All in trace analysis listener.

* Fix CI and add P99/95/90/75/50 to source ALL.

* Add ThermodynamicIndicator and its test. Also ALL source Thermodynamic metric.

* Try to fix CI about javadoc.
2018-09-12 14:18:02 +08:00
吴晟 Wu Sheng 5a55b9ba1b Provide Pxx(p99,p95,p90,p75,p50) indicators and All dispatcher (#1654)
* Add 3 cases for existed indicators.

* Add Pxx indicator.

* Support All in trace analysis listener.

* Fix CI and add P99/95/90/75/50 to source ALL.
2018-09-11 16:20:22 +08:00
吴晟 Wu Sheng b4ebb5bcbb
Add miss setting file. (#1633) 2018-09-06 12:28:03 +08:00
Wu Sheng 085097531c Finish the codebase of Alarm. 2018-08-29 22:24:31 +08:00
Wu Sheng 42eb8f7376 The prototype codes of alarm bridge only. 2018-08-28 17:25:04 +08:00
peng-yongsheng ffece1617a Indicator analysis test successfully. 2018-08-20 11:01:33 +08:00
彭勇升 pengys a5ad06ce46
Refactor register and analysis modules. (#1539)
* Refactor register and analysis modules.

* Fixed the startup error.
2018-08-14 14:39:03 +08:00
彭勇升 pengys 428b2cd78a Feature/oap/annotation (#1531)
* Use annotation to instead of definition file.
2018-08-08 20:09:02 +08:00
彭勇升 pengys 06165a0359 Feature/oap/storage (#1516)
* Storage and Persistence.

* Storage config.

* Fixed the CI failure.
2018-08-03 12:01:53 +08:00
彭勇升 pengys efe5299d03 Feature/oap/remote (#1505)
* Sample operator code.

* Indicator aggregator framework.

* Provide some annotation for OAL.

* Remote module.

* Register service.

* Add apache license header.

* Ignore comments when load definition files.
2018-07-30 09:54:36 +08:00