Commit Graph

115 Commits

Author SHA1 Message Date
Wan Kai 4b508b930d
Support custom GRPCClient health checker logic. (#13353)
[NOTICE] Roll back score meaning in GraphQL health check API.
2025-07-03 15:28:26 +08:00
Wan Kai 4430cf5e0d
OAP gRPC-Client support `Health Check` and [Break Change] `Health Check` make response 1 represents healthy, 0 represents unhealthy. (#13345) 2025-06-30 21:02:57 +08:00
kezhenxu94 327bff2ee1
chore: add a warning log when connecting to ES takes too long (#13321) 2025-06-17 17:30:50 +08:00
kezhenxu94 a5d8777ee7
Use CI-friendly revision to set the project version (#12640) 2024-09-24 17:53:14 +08:00
吴晟 Wu Sheng 054d0e4ff9
Release 10.0.0 and move forward to 10.1.0 (#12203) 2024-05-10 09:19:56 +08:00
Chen Ziyan a61b3bb1f7
Fix table exists check in the JDBC Storage Plugin. (#11897) 2024-02-20 15:01:11 +08:00
吴晟 Wu Sheng 497a7bdb02
Release 9.7 and start 10.0 iteration (#11607) 2023-11-28 23:49:44 -08:00
kezhenxu94 b514fbcf38
Fix `limit` doesn't work for `findEndpoint` API in ES storage (#11523) 2023-11-09 16:25:54 +08:00
Liu Haoyang 34e3b64f94
Fix table exists check in the jdbc storage plugin (#11392) 2023-10-10 17:26:34 +08:00
Wan Kai 8e529ee956
ElasticSearchClient: Add `deleteById` API. (#11305) 2023-09-05 17:20:43 +08:00
吴晟 Wu Sheng a336b3cff4
Release 9.6.0 and begin 9.7.0 iteration (#11289) 2023-09-01 22:57:18 +08:00
kezhenxu94 d13d44828a
Fix ElasticSearch scroller bug (#10999) 2023-06-26 19:55:21 +08:00
kezhenxu94 cb165eb2ca
Scroll all results of Endpoint in ElasticSearch storage and refactor scrolling logics to reduce boilerplate codes (#10986) 2023-06-24 23:01:56 +08:00
吴晟 Wu Sheng 1f6ea1d744
Begin 9.6.0 iteration (#10935)
* [maven-release-plugin] prepare release v9.5.0

* [maven-release-plugin] prepare for next development iteration

* Create changes-9.5.0.md

* Set changes.md for 9.6.0
2023-06-14 18:26:50 +08:00
kezhenxu94 74a8589307
[Breaking Change] Enhance JDBC storage through merging table and managing day-based table rolling (#10544)
* [Breaking Change] Enhance JDBC storage through merging tables and managing day-based table rolling.

* [Breaking Change] Sharding-MySQL implementations and tests get removed due to we have the day-based rolling mechanism by default
2023-03-17 21:01:48 +08:00
吴晟 Wu Sheng 4874374ace
Tag 9.4.0 release, prepare for 9.5.0 iteration. (#10512) 2023-03-08 23:30:37 +08:00
kezhenxu94 49594c4db1
Bump up Java version to 11 and use junit tag to group IT and slow IT (#10390)
- `./mvnw test ...` by its nature only runs unit tests, whose name is pattern of `*Test`, and it does never runs integration tests, whose name is patter of `IT*` or `*IT`, so in this PR we use `./mvnw clean test ...` to only run unit tests.
- `./mvnw integration-test ...` will run integration tests and unit tests, so we have `skipUTs` to control whether to skip the UT when running ITs, we already had this before.
  - As for ITs, we have two groups, one is normal tests without any `@Tag`s, the other one is slow integration tests, which is annotated with `@Tag("slow")`, so we divided the integration tests into two workflow jobs:
  - `./mvnw -DskipUTs=true clean integration-test -DexcludedGroups=slow ...` run the ITs but don't run the slow ITs and UTs, `-DexcludedGroups=slow` excludes tests annotated with `@Tag("slow")`
  - `./mvnw -DskipUTs=true clean integration-test -Dcheckstyle.skip -Dtest=${{ matrix.test.class }}` run the slow ITs (because `excludedGroups` is not set) one case at a time, by setting `-Dtest={{ class }}`, not run UTs,
2023-02-14 23:19:32 +08:00
kezhenxu94 383a5bbf7b
Migrate tests from junit 4 to junit 5 (#10382) 2023-02-13 18:54:32 +08:00
Hper e56308995a
[Elasticsearch] Support batchOfBytes configuration to limit size of bulk flush. (#10287) 2023-02-06 12:46:24 +08:00
Shichao b97dfb1a65
[Optional] Support trace/span on ElasticSearch to use traceIDs routing. (#10282) 2023-01-18 16:44:15 +08:00
吴晟 Wu Sheng 18008aa6b2
Release 9.3.0. Begin 9.4.0 iteration (#10077) 2022-12-02 21:19:13 +08:00
kezhenxu94 1da72b6af9
Internal API: remove undocumented ElasticSearch API usage and use documented one (#10031) 2022-11-25 21:15:25 +08:00
吴晟 Wu Sheng 2fa821d9f5
Enhance cache mechanism in the metric persistent process (#10021) 2022-11-24 23:56:16 +08:00
kezhenxu94 2e3134952e
Refactor jdbc storage implementations to reuse logics (#9904) 2022-11-07 20:02:24 +08:00
kezhenxu94 04c4fedf43
Adapt ElasticSearch 8.1+, migrate from removed APIs to recommended APIs (#9603) 2022-09-14 12:22:40 +08:00
吴晟 Wu Sheng 608a084350
Begin 9.3.0 iteration, 9.2.0 release is on vote (#9539)
* [maven-release-plugin] prepare release v9.2.0

* [maven-release-plugin] prepare for next development iteration

* Create changes-9.2.0.md

* Update changes.md

* Update LICENSE
2022-08-31 00:31:04 +08:00
Wan Kai 14800cbc57
Optimize elasticsearch query performance by using `_mGet` and physical index name (#9339)
Optimize ElasticSearch query performance by using `_mGet` and physical index name rather than alias in these scenarios:
(a) Metrics aggregation 
(b) Zipkin query
(c) Metrics query
(d) Log query
2022-07-14 10:40:21 +08:00
吴晟 Wu Sheng 8584ada7cc
Begin 9.2.0 iteration (#9191)
* [maven-release-plugin] prepare release v9.1.0

* [maven-release-plugin] prepare for next development iteration
2022-06-08 17:24:15 +08:00
kezhenxu94 2372c06fd9
Storage(ElasticSearch): add search options to tolerate inexisting indices (#9076) 2022-05-17 14:24:35 +08:00
kezhenxu94 369949b29a
Clean up scroll context after going through the results (#8967) 2022-05-06 09:35:27 +08:00
吴晟 Wu Sheng 91413a753c
Start 9.1.0-dev iteration (#8822) 2022-04-06 18:56:49 +08:00
吴晟 Wu Sheng d86880ce7e
Upgrade depdencies (#8781)
* Upgrade OAP dependencies gson(2.9.0), guava(31.1), jackson(2.13.2), protobuf-java(3.18.4).
* Remove commons-pool and commons-dbcp from OAP dependencies(Not used before).
* Upgrade webapp dependencies gson(2.9.0), spring boot(2.6.5), jackson(2.13.2.2), spring cloud(2021.0.1).
2022-04-01 10:16:10 +08:00
kezhenxu94 eb7529adb6
Support large service list query and replace deprecated API of Armeria (#8628) 2022-03-08 13:18:18 +08:00
kezhenxu94 c49a82a6f5
Expose responseTimeout of ES client (#8531) 2022-02-10 14:46:40 +08:00
吴晟 Wu Sheng 1fdf3a8acf
Set version to 9.0.0-snapshot (#8242) 2021-12-06 10:04:20 +08:00
吴晟 Wu Sheng e7d6f89021
Set the version to 8.10.0, 8.9.0 release is in process. (#8233) 2021-12-02 18:54:21 +08:00
Kirs f7bcb76784
move the codes in apm-commons into server-library (#8003) 2021-10-26 20:31:36 +08:00
吴晟 Wu Sheng 8b681053df
Begin 8.9.0 iteration (#7801)
* [maven-release-plugin] prepare release v8.8.0

* [maven-release-plugin] prepare for next development iteration

* Create changes-8.8.0.md

* Reset changelog for 8.9.0
2021-09-25 23:46:18 +08:00
kezhenxu94 ad9d616297
Add `socketTimeout` back to the new implementation (#7798) 2021-09-24 22:35:56 +08:00
kezhenxu94 ad842013f4
Replace `mget` with ids' query as `mget` doesn't apply on aliases (#7731) 2021-09-17 17:54:26 +08:00
kezhenxu94 26b81a2e59
Rebuilt ElasticSearch client on top of their REST API (#7634) 2021-09-06 15:21:35 +08:00
吴晟 Wu Sheng 1c5e22a7be
Begin 8.8.0 iteration (#7395)
* [maven-release-plugin] prepare release v8.7.0

* [maven-release-plugin] prepare for next development iteration
2021-07-30 23:01:09 +08:00
pkxiuluo ffc69dc6f3
ES storage support set order of index template. (#7378) 2021-07-27 20:13:31 +08:00
吴晟 Wu Sheng de975c7e2b
Remove synchronous persistence mechanism in API level and ElasticSearch implementation (#7293)
* Performance: remove the synchronous persistence mechanism from batch ElasticSearch DAO. Because the current enhanced persistent session mechanism, don't require the data queryable immediately after the insert and update anymore.
* Performance: share `flushInterval` setting for both metrics and record data, due to `synchronous persistence mechanism` removed. Record flush interval used to be hardcoded as 10s.
* Remove `syncBulkActions` in ElasticSearch storage option.
* Increase the default bulkActions(env, SW_STORAGE_ES_BULK_ACTIONS) to 5000(from 1000).
* Increase the flush interval of ElasticSearch indices to 15s(from 10s)

Add these 2 references. According to these, **(same _index, _type and _id) in same bulk will be in order**
1. https://github.com/elastic/elasticsearch/issues/50199
2. https://discuss.elastic.co/t/order-of--bulk-request-operations/98124

Notice, the order of different bulks is not guaranteed by the ElasticSearch cluster. We are going to have the risk of dirty write. But consider we set over 20s period between flush, and index flush period is 10, we should be safe.

Recommend 5000 bulk size and 15s flush interval only. The persistent period has been set to 25s.
2021-07-14 17:19:49 +08:00
Daming 5dd56a5ca4
Upgrade etcd cluster coordinator and dynamic configuration to v3.x (#7215) 2021-07-05 11:23:11 +08:00
吴晟 Wu Sheng 536b7d2328
Support connectTimeout and socketTimeout settings (#7214) 2021-07-01 08:20:59 +08:00
kezhenxu94 3536b3c1c4
Extract dependency management to a bom (#7136) 2021-06-20 20:57:26 +08:00
吴晟 Wu Sheng 5eb1021639
Initialize 8.7.0 iteration (#7078) 2021-06-08 07:41:09 +08:00
吴晟 Wu Sheng 17e820f156
Begin 8.6.0 iteration (#6721) 2021-04-09 23:01:00 +08:00
Gao Hongtao b8a040ea74
Append the root slash(/) to getIndex and getTemplate requests in ES client (#6663)
* Append the root slash(/) to getIndex and getTemplate requests

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

* Document this bug

Signed-off-by: Gao Hongtao <hanahmily@gmail.com>
2021-04-01 14:26:57 +08:00