Commit Graph

62 Commits

Author SHA1 Message Date
刘威 b0a875fe3f
Bump up iotdb-session to 0.12.4 and fix IoTDB storage option bug (#8484)
* Fix IoTDB Storage Option insert null index value.

* Set the default value of SW_STORAGE_IOTDB_SESSIONPOOL_SIZE to 8

* Bump up iotdb-session to 0.12.4

* Update doc
2022-01-30 09:02:39 +08:00
wankai123 473debfee3
E2E verify OAP cluster model data aggregation and fix `SelfRemoteClient` self observing metrics. (#8481)
* E2E: verify OAP cluster model data aggregation.
* Fix `SelfRemoteClient` self observing metrics.
* Remove unnecessary storage cases in the cluster e2e.
* Add steps in cluster e2e to verify the whole cluster is up
* update the doc
2022-01-27 15:40:20 +08:00
kezhenxu94 2d13c8afd7
Pin the version of link checker (#8466) 2022-01-24 13:45:35 +08:00
吴晟 Wu Sheng 1b8dbd3fb3
Polish doc, restructure documents about receivers and fetchers (#8043)
1. Remove general receiver and fetcher docs
1. Add more specific menu with docs to help users to find documents easier.
2021-11-01 17:42:19 +08:00
wankai123 d1dcd3f96c
Replace e2e cases to e2e-v2: Kafka: Base, Meter, Log, Profile (#7986)
* Replace e2e cases to e2e-v2: Kafka: Base, Meter, Log, Profile
* Set `SW_KAFKA_FETCHER_ENABLE_NATIVE_PROTO_LOG`, `SW_KAFKA_FETCHER_ENABLE_NATIVE_JSON_LOG` default `true`.
2021-10-22 10:54:49 +08:00
nicolchen 224b6c6b3a
Improve the speed of writing TiDB by batching the SQL execution (#7691) 2021-09-17 00:05:18 +08:00
wankai123 4a344b01e9
Unified the config word `namespace` in the project (#7676) 2021-09-08 12:00:19 +08:00
wankai123 e89493b247
Support etcd grouped dynamic configurations. (#7672) 2021-09-07 22:54:05 +08:00
kezhenxu94 26b81a2e59
Rebuilt ElasticSearch client on top of their REST API (#7634) 2021-09-06 15:21:35 +08:00
HendSame 1c0fc982b2
Support configure sampling rate dynamically for service dimension on the backend side (#7554) 2021-08-30 14:52:20 +08:00
kezhenxu94 1af2e46e33
Add a new API to test log analysis language (#7475) 2021-08-18 16:40:25 +08:00
Wing cf08a2da37
refine backend doc (#7451) 2021-08-13 21:06:17 +08:00
pkxiuluo ffc69dc6f3
ES storage support set order of index template. (#7378) 2021-07-27 20:13:31 +08:00
Cool-Coding 467a95b61d
Fix the problem of -meters metrics topic isn't created with namespace prefix (#7325) (#7330) 2021-07-19 14:58:24 +08:00
吴晟 Wu Sheng a6afcac86e
Logically revert #6642 and partial #7153 to reduce unnecessary thread and concurrency process (#7318)
The key logic behinds all these is, metrics persistence is fully asynchronous.

* The core/maxSyncOperationNum setting(added in 8.5.0) is removed due to metrics persistence is fully asynchronous.
* The core/syncThreads setting(added in 8.5.0) is removed due to metrics persistence is fully asynchronous.
* Optimization: Concurrency mode of execution stage for metrics is removed(added in 8.5.0). The only concurrency of prepare stage is meaningful and kept.
* Remove the outside preparedRequest list initialization, worker instance could always build a suitable size list in the first place (Reduce Array.copy and GC load a little).
2021-07-17 16:03:50 +08:00
吴晟 Wu Sheng 8df362b929
Adjust ElasticSearch index refresh period as INT(flushInterval * 2/3) (#7310)
Adjust index refresh period as INT(flushInterval * 2/3), it used to be as same as bulk flush period. At the edge case, in low traffic(traffic < bulkActions in the whole period), there is a possible case, 2 period bulks are included in one index refresh rebuild operation, which could cause version conflicts. And this case can't be fixed through core/persistentPeriod as the bulk fresh is not controlled by the persistent timer anymore.

This PR should avoid the following exception in the low load case, especially when bulkActions is set larger than the number of a metric type.
2021-07-16 12:10:35 +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
Sergi Castro d15b67bd97
Allow configuring max request header size (#7249)
* Allow configuring max request header size

This allows configuring the HTTP max request header size from the jetty
server.
By default it uses 8192, the same jetty default.
2021-07-06 15:10:15 +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 f32d3d0720
Enhance the storage session mechanism (#7221) 2021-07-01 23:25:52 +08:00
吴晟 Wu Sheng 536b7d2328
Support connectTimeout and socketTimeout settings (#7214) 2021-07-01 08:20:59 +08:00
吴晟 Wu Sheng 50a0bcbf73
Optimize L1 aggregation, enhance gRPC client between L1 and L2 aggregation. (#7206)
1.0Performance: Add L1 aggregation flush period, which reduces the CPU load and helps young GC.

2. Replace do not direct send after the first aggregation to reduce the network #6400.

3. Enhance the DataCarrier to notify the consumer in no enqueue event in short term.

4. L1 aggregation flush period still works even no further metrics generated, powered by <3>

5. Fix gRPC remote client OOM. The concurrency control mechanism failed.
2021-06-30 19:14:20 +08:00
Alvin a966eea35c
Support prepare and save metrics concurrency (#7153) 2021-06-29 14:34:29 +08:00
wankai123 19a068d708
Feature: support endpoint name grouping by OpenAPI definitions. (#7130) 2021-06-20 07:57:10 +08:00
Zhenxu 1c51550830
Remove inexisting config item and doc (#7033) 2021-05-28 08:14:04 +08:00
Daming 9701bd0944
Make the number of core worker in meter converter thread pool configurable (#7027) 2021-05-27 23:10:22 +08:00
hailin0 47fef5df22
Support native-json format log in kafka-fetcher-plugin (#6952) 2021-05-20 16:33:44 +08:00
Zhenxu Ke 3b15f8d132
feature: Envoy access log receiver supports TCP logs (#6727) 2021-05-07 07:50:03 +08:00
liqiangz 7a53331367
Support alarm tags (#6820) 2021-04-25 17:22:43 +08:00
Darcy b4114ac043
enhancement agent kafka reporter plugin, add namespace concept (#6781) 2021-04-23 11:29:35 +08:00
Evan 2af77d4d03
make sync metrics concurrency (#6642)
* make sync metrics concurrency

* add changelog

* add changelog

* polish codes

* change default value

* remove unnecessary codes

Co-authored-by: Evan <evanljp@outlook.com>
Co-authored-by: Zhenxu Ke <kezhenxu94@apache.org>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2021-04-02 11:33:46 +08:00
Zhenxu Ke de6a731d72
Save Envoy http access logs when error occurs (#6322) 2021-03-02 22:40:30 +08:00
吴晟 Wu Sheng 0e1d5c3767
Make Zipkin trace query available (#6454) 2021-02-27 14:50:54 +08:00
haoyann c45bb361ee
Storage plugin supports PostgreSQL (#6345) 2021-02-20 20:59:51 +08:00
mrproliu 75f03acba7
Adopt Zabbix protocol (#6176)
Happy Chinese New Year !!
2021-02-10 22:40:07 +08:00
Zhenxu Ke b92eac2cd6
Add a new concept "Event" and its implementations to collect events (#6183) 2021-02-05 18:37:18 +08:00
Zhenxu Ke 5d47d4d29f
Remove state / isError and collect exception stacktrace in error logs (#6275) 2021-01-30 08:18:52 +08:00
zhang-wei 01d1eff6c7
Enhancement log-recerive e2e test (#6248) 2021-01-29 00:07:16 +08:00
zifeihan 97f54114a5
Add the implementation of ConfigurationDiscovery on the OAP side. (#6220) 2021-01-19 14:53:49 +08:00
zhang-wei 15452025c6
Log collecting and query implementation (#6120) 2021-01-14 09:49:11 +08:00
cuiweiwei e792da1782
fix influxdb bug while setting influxdb connection response format as InfluxDB.ResponseFormat.JSON (#5946) 2020-12-07 22:56:03 +08:00
jianweizhang 9a61835cb7
Fix influxdb config resubmit (#5903) 2020-11-26 19:14:48 +08:00
Gao Hongtao b39c4306a8
Observing Istio control plane (#5835)
* Add Istio control plane otel MAL expressions and UI template
* Remove OpenCensus receiver, add OpenTelemetry receiver
* Transfer oc receiver to ot receiver
* Create indices on boot
* Document istio metrics and otel receiver
* Update CHANGES.md
* Fix potential NPE
* Add group to meter and cleanup istio mixer
* Update e2e case due to the change of meter metric name
* Update prometheus fetcher config, fix sql builder issue of h2
* Disable istio and so11y metrics by default.
* Fix micrometer testcase
2020-11-25 21:07:03 +08:00
吴晟 Wu Sheng 3bc6c4cd6e
Fix SnakeYAML CVE. Make doc and sharing receiver codes consistent. (#5799)
* Fix SnakeYAML CVE. Make doc and sharing receiver codes consistent.

* Update changelog.

* Fix word.

* Fix style issue.
2020-11-05 23:13:03 +08:00
zifeihan ac36a3ff49
Add ThreadPoolExecutor for handle kafka message. (#5718)
* 1.Add ThreadPoolExecutor for handle kafka message.

Co-authored-by: Daming <zteny@foxmail.com>
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
2020-11-01 15:28:14 +08:00
zifeihan 8a2a0008ba
Add `slowTraceSegmentThreshold` to forcibly sample slow traces (#5707) 2020-10-30 14:30:19 +08:00
mrproliu af41da0e93
Support choose files to activate the meter analyzer (#5748) 2020-10-29 23:46:07 +08:00
kezhenxu94 92bb474c2d
Improve Kubernetes service registry for ALS analysis (#5722)
The current implementation of envoy ALS K8S analysis is based on the hierarchy, pod -> StatefulSet -> deployment, StatefulSet, or others. It's freaky and different from the Istio Kubernetes registry.

The new path is pod -> endpoint -> service, and we should leverage Informer API instead of raw Kubernetes API.
2020-10-29 18:22:38 +08:00
Ax1an 287b8b9be5
Add syncBulkActions config to avoid the large amount of metrics data written ES in a single sync bulk request. (#5699) 2020-10-21 12:23:32 +08:00
xbkaishui d5a28baa65
Support Nacos auth (#5669)
* Support Nacos auth
2020-10-16 14:46:53 +08:00