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.
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.
* 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>
* 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
* 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.
* 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.