diff --git a/Documentation/upgrades/upgrade_3_4.md b/Documentation/upgrades/upgrade_3_4.md index 947ed003f..5f9e51c73 100644 --- a/Documentation/upgrades/upgrade_3_4.md +++ b/Documentation/upgrades/upgrade_3_4.md @@ -49,7 +49,7 @@ OK +etcd --peer-trusted-ca-file ca-peer.crt ``` -#### Promote `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics +#### Deprecating `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics v3.4 promotes `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics to `etcd_mvcc_db_total_size_in_bytes`, in order to encourage etcd storage monitoring. @@ -60,7 +60,59 @@ v3.4 promotes `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics to +etcd_mvcc_db_total_size_in_bytes ``` -Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we will promote more metrics. +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecating `etcd_debugging_mvcc_put_total` Prometheus metrics + +v3.4 promotes `etcd_debugging_mvcc_put_total` Prometheus metrics to `etcd_mvcc_put_total`, in order to encourage etcd storage monitoring. + +`etcd_debugging_mvcc_put_total` is still served in v3.4 for backward compatibilities. It will be completely deprecated in v3.5. + +```diff +-etcd_debugging_mvcc_put_total ++etcd_mvcc_put_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecating `etcd_debugging_mvcc_delete_total` Prometheus metrics + +v3.4 promotes `etcd_debugging_mvcc_delete_total` Prometheus metrics to `etcd_mvcc_delete_total`, in order to encourage etcd storage monitoring. + +`etcd_debugging_mvcc_delete_total` is still served in v3.4 for backward compatibilities. It will be completely deprecated in v3.5. + +```diff +-etcd_debugging_mvcc_delete_total ++etcd_mvcc_delete_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecating `etcd_debugging_mvcc_txn_total` Prometheus metrics + +v3.4 promotes `etcd_debugging_mvcc_txn_total` Prometheus metrics to `etcd_mvcc_txn_total`, in order to encourage etcd storage monitoring. + +`etcd_debugging_mvcc_txn_total` is still served in v3.4 for backward compatibilities. It will be completely deprecated in v3.5. + +```diff +-etcd_debugging_mvcc_txn_total ++etcd_mvcc_txn_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecating `etcd_debugging_mvcc_range_total` Prometheus metrics + +v3.4 promotes `etcd_debugging_mvcc_range_total` Prometheus metrics to `etcd_mvcc_range_total`, in order to encourage etcd storage monitoring. + +`etcd_debugging_mvcc_range_total` is still served in v3.4 for backward compatibilities. It will be completely deprecated in v3.5. + +```diff +-etcd_debugging_mvcc_range_total ++etcd_mvcc_range_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. #### Deprecating `etcd --log-output` flag (now `--log-outputs`) @@ -105,6 +157,20 @@ cfg := &embed.Config{Debug: false} **v3.5 will deprecate `etcd --log-package-levels` flag for `capnslog`**; `etcd --logger=zap --log-outputs=stderr` will the default. **v3.5 will deprecate `[CLIENT-URL]/config/local/log` endpoint.** +```diff +-etcd ++etcd --logger zap +``` + +#### Deprecating `etcd --debug` flag (now `--log-level=debug`) + +v3.4 deprecates [`etcd --debug`](https://github.com/etcd-io/etcd/pull/10947) flag. Instead, use `etcd --log-level=debug` flag. + +```diff +-etcd --debug ++etcd --logger zap --log-level debug +``` + #### Deprecated `pkg/transport.TLSInfo.CAFile` field Deprecated `pkg/transport.TLSInfo.CAFile` field. @@ -171,6 +237,22 @@ import "github.com/coreos/etcd/wal" +wal.Create(lg, dirpath, metadata) ``` +#### Changed `IntervalTree` type in package `pkg/adt` + +`pkg/adt.IntervalTree` is now defined as an `interface`. + +```diff +import ( + "fmt" + + "go.etcd.io/etcd/pkg/adt" +) + +func main() { +- ivt := &adt.IntervalTree{} ++ ivt := adt.NewIntervalTree() +``` + #### Deprecated `embed.Config.SetupLogging` `embed.Config.SetupLogging` has been removed in order to prevent wrong logging configuration, and now set up automatically. diff --git a/Documentation/upgrades/upgrade_3_5.md b/Documentation/upgrades/upgrade_3_5.md index 291916404..feda939b6 100644 --- a/Documentation/upgrades/upgrade_3_5.md +++ b/Documentation/upgrades/upgrade_3_5.md @@ -16,18 +16,62 @@ Before [starting an upgrade](#upgrade-procedure), read through the rest of this Highlighted breaking changes in 3.5. -#### Deprecate `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics +#### Deprecated `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics -v3.4 promoted `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics to `etcd_mvcc_db_total_size_in_bytes`, in order to encourage etcd storage monitoring. And v3.5 completely deprcates `etcd_debugging_mvcc_db_total_size_in_bytes`. +v3.5 promoted `etcd_debugging_mvcc_db_total_size_in_bytes` Prometheus metrics to `etcd_mvcc_db_total_size_in_bytes`, in order to encourage etcd storage monitoring. And v3.5 completely deprcates `etcd_debugging_mvcc_db_total_size_in_bytes`. ```diff -etcd_debugging_mvcc_db_total_size_in_bytes +etcd_mvcc_db_total_size_in_bytes ``` -Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we will promote more metrics. +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. -#### Deprecated in `etcd --logger capnslog` +#### Deprecated `etcd_debugging_mvcc_put_total` Prometheus metrics + +v3.5 promoted `etcd_debugging_mvcc_put_total` Prometheus metrics to `etcd_mvcc_put_total`, in order to encourage etcd storage monitoring. And v3.5 completely deprcates `etcd_debugging_mvcc_put_total`. + +```diff +-etcd_debugging_mvcc_put_total ++etcd_mvcc_put_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecated `etcd_debugging_mvcc_delete_total` Prometheus metrics + +v3.5 promoted `etcd_debugging_mvcc_delete_total` Prometheus metrics to `etcd_mvcc_delete_total`, in order to encourage etcd storage monitoring. And v3.5 completely deprcates `etcd_debugging_mvcc_delete_total`. + +```diff +-etcd_debugging_mvcc_delete_total ++etcd_mvcc_delete_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecated `etcd_debugging_mvcc_txn_total` Prometheus metrics + +v3.5 promoted `etcd_debugging_mvcc_txn_total` Prometheus metrics to `etcd_mvcc_txn_total`, in order to encourage etcd storage monitoring. And v3.5 completely deprcates `etcd_debugging_mvcc_txn_total`. + +```diff +-etcd_debugging_mvcc_txn_total ++etcd_mvcc_txn_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecated `etcd_debugging_mvcc_range_total` Prometheus metrics + +v3.5 promoted `etcd_debugging_mvcc_range_total` Prometheus metrics to `etcd_mvcc_range_total`, in order to encourage etcd storage monitoring. And v3.5 completely deprcates `etcd_debugging_mvcc_range_total`. + +```diff +-etcd_debugging_mvcc_range_total ++etcd_mvcc_range_total +``` + +Note that `etcd_debugging_*` namespace metrics have been marked as experimental. As we improve monitoring guide, we may promote more metrics. + +#### Deprecated `etcd --logger capnslog` v3.4 defaults to `--logger=zap` in order to support multiple log outputs and structured logging. @@ -41,9 +85,9 @@ v3.4 defaults to `--logger=zap` in order to support multiple log outputs and str +etcd --logger=zap --log-outputs=stderr,a.log ``` -TODO(add more monitoring guides); v3.4 adds `etcd --logger=zap` support for structured logging and multiple log outputs. Main motivation is to promote automated etcd monitoring, rather than looking back server logs when it starts breaking. Future development will make etcd log as few as possible, and make etcd easier to monitor with metrics and alerts. **`etcd --logger=capnslog` will be deprecated in v3.5.** +v3.4 adds `etcd --logger=zap` support for structured logging and multiple log outputs. Main motivation is to promote automated etcd monitoring, rather than looking back server logs when it starts breaking. Future development will make etcd log as few as possible, and make etcd easier to monitor with metrics and alerts. **`etcd --logger=capnslog` will be deprecated in v3.5.** -#### Deprecated in `etcd --log-output` +#### Deprecated `etcd --log-output` v3.4 renamed [`etcd --log-output` to `--log-outputs`](https://github.com/etcd-io/etcd/pull/9624) to support multiple log outputs. @@ -54,6 +98,15 @@ v3.4 renamed [`etcd --log-output` to `--log-outputs`](https://github.com/etcd-io +etcd --log-outputs=stderr ``` +#### Deprecated `etcd --debug` flag (now `--log-level=debug`) + +**`etcd --debug` flag has been deprecated.** + +```diff +-etcd --debug ++etcd --log-level debug +``` + #### Deprecated `etcd --log-package-levels` **`etcd --log-package-levels` flag for `capnslog` has been deprecated.**