* 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>
* 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
* Add service type from register and support browser as service type
* Add service type at agent side.
* Fix format.
* Fix a test.
* Fix formats.
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
* 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>
* 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.
* Modify the thread pool of grpc server.
* add license header
* make param confingable
* Add sharing and Jaeger config.
* Remove grpc thread config from yml
* fix potential NullPointerException
* Revert "fix potential NullPointerException"
This reverts commit 8393656
* fix potential NullPointerException
the static paramater is best to use the class to reference
* Make Jaeger receiver works in 12450 as default.
* Finish compile and codebase.
* Make codes runnable.
* Finish Jaeger query tests.
* Add document for jaeger receiver.
* Add readme.
* Fix a break link.
* Finish doc.
* Move all receiver proto files together, in case the class conflict in gogoproto.
* Add jaeger proto and its dependency proto. Also license provided.
* Fix rat.
* Codebase for zipkin span persistence.
* Fix missing fields in storage.
* Miss the latency field.
* Finish some tests.
* Fix wrong latency.
* Finish doc and reset application.yml
* Make the description more clear.
2. Fixed the warning of duplicate declaration of plugin issue when running the mvn package command.
3. Fixed the warning of duplicate declaration of mysql connector jar when running the mvn package command, because of provided scope include test scope.
4. Fixed the warning of expression ${artifactId} is deprecated issue when running the mvn package command.
5. Fixed the warning of expression ${version} is deprecated issue when running the mvn package command.
* Support grpc exporter.
* Support scope(all) metric export and finish document.
* Close exporter even in local debug env. And fix CI.
* Remove the system.out
* Fix absent 4.
* Support subscription from remote.
* Add the doc
* Update application.yml
* Make k8s-Coordinator back in role mode.
* Start query API server after the core started.
* Do lock when port has been intialized.
* Rename service.
* Fix text cases.
* Declare ConfigService.class in core module.
* Implement in an easier way.
* Envoy print whole metric, now in debug.
* Forcedly fix envoy timestamp issue.
* Add envoy metrics service protos
This patch imports protos from envoyproxy/data-plane-api and
prometheus/client_model to enable metrics service service feature in
SkyWalking OAP.
Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
* Add Envoy related docs
Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
* Update the LICENSE to include new protos license
From:
- envoyproxy/data-plane-api
- prometheus/client_model
Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
* Add a complete config.yaml example
Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
* Add note on Envoy dynamic config
Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
* Add protoc-gen-validate license
Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
* Add samples
Signed-off-by: Dhi Aurrahman <dio@tetrate.io>
* Make CI and license right.
* Update README.md
@dhi typo :P
* Update README.md
Another typo :P
* Delete metrics.json
metrics.json is included in identify.json and not be linked in document.
* Try adjustment.
* Remove heartbeat.
* Make heartbeat back to work. And default threadpool size more sense.
* Make L2 to less than before.
* Make instance heartbeat works.
* Try L1 aggregation thread = core * 2 * 2.
* 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
* Add Database source
* Add DatabaseSource source and database_* script for oal
* Enable Database_Indicator
* Add file license
* Rename DatabaseService to ClientDatabase. In the future, we may have real database server monitoring.
* Add query database from H2
* refactor
* update submodule
* refactor
* Fix style
* Fix: unknown tag error
* fix checkstyle
* 1. Sleep 500 milliseconds after a batch re-call finish.
2. Re-create register lock index when the system property named debug is setting.
3. Get the register inventory before lock to avoid increment the sequence but not use.
4. Return the exchange flag after all the references and spans in one segment parsed to reduce the number of segment parse.
5. Put the not exchanged segment into a collection then try to exchange no more than 10 times because of the exchange is asynchronous.
6. Cache the segment object to avoid repeated deserialization.
#2185
* #2185
1. Sleep 500 milliseconds after a batch re-call finish.
2. Re-create register lock index when the system property named debug is setting.
3. Get the register inventory before lock to avoid increment the sequence but not use.
* Change a label name for sw instance to avoid confict.
* Fix a wrong metric name.
* Fix too many counter instances.
* Set uptime to second.
* Fix format.
* Fix format
* Remove two unnecessary counter.
* Provide grafana dashboard settings and remove unnecessary metric.
* Provide a simple UI brief doc. Fix#2137
* 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
* Change srcLayer to nodeType. Add nodeType in service inventory entity.
* NodeType value refactor.
* Format codes.
* Fix compile issue.
* Fix bugs, and make query on service inventory instead of network inventory
* Provide consul cluster plugin.
* Change log and application config file.
* Add consul's config item into the docker's application.yml.
* Fixed bug.
* Add consul description into readme.
* Add okhttp component license.
* 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.
* Update new protocol
* Support new protocol at agent side.
* Fix test case.
* Make backend supports new trace protocol
* Fix tests.
* Make all new services available in gRPC.
* Fix bugs.
* Finish new document for v2 trace protocol.
* Fix wrong version requirement of zk
* Fix trace query bug.
* Find a client side dictionary bug.
* Fix register bugs.
* Fix break doc links.