You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* datastore: metrics optional and off by default
When ipfs is initialized, the datastore metrics wrapper is not configured by default as it previously was. To enable datastore metrics during initialization, specifying the appropriate `--profile` option.
To enable datastore metrics tracking wrapper, initialize with datastore profile name + "-measure" suffix. For example:
```
ipfs init --profile flatfs-measure
```
Closes#10767
* fix sharness tests for new datastore dafaults
* Add sharness test to check metrics added by flatfs-measure profile
* Document updated metrics in changelog
* update config doc with new profiles
* docs(changelog): separate section
* initialize non-measure pebbleds with FormatMajorVersion config
* docs: fix typos, add docs link
---------
Co-authored-by: gammazero <[email protected]>
Co-authored-by: Marcin Rataj <[email protected]>
The release updated configuration [profiles](https://github.com/ipfs/kubo/blob/master/docs/config.md#profiles) to incorporate these new `Import.*` settings:
80
81
- Updated Profile: `test-cid-v1` now includes current defaults as explicit `Import.UnixFSFileMaxLinks=174`, `Import.UnixFSDirectoryMaxLinks=0`, `Import.UnixFSHAMTDirectoryMaxFanout=256` and `Import.UnixFSHAMTDirectorySizeThreshold=256KiB`
@@ -84,6 +85,15 @@ The release updated configuration [profiles](https://github.com/ipfs/kubo/blob/m
84
85
> [!TIP]
85
86
> Apply one of CIDv1 test [profiles](https://github.com/ipfs/kubo/blob/master/docs/config.md#profiles) with `ipfs config profile apply test-cid-v1[-wide]`.
86
87
88
+
#### `Datastore` Metrics Now Opt-In
89
+
90
+
To reduce overhead in the default configuration, datastore metrics are no longer enabled by default when initializing a Kubo repository with `ipfs init`.
91
+
Metrics prefixed with `<dsname>_datastore` (e.g., `flatfs_datastore_...`, `leveldb_datastore_...`) are not exposed unless explicitly enabled. For a complete list of affected default metrics, refer to [`prometheus_metrics_added_by_measure_profile`](https://github.com/ipfs/kubo/blob/master/test/sharness/t0119-prometheus-data/prometheus_metrics_added_by_measure_profile).
92
+
93
+
Convenience opt-in [profiles](https://github.com/ipfs/kubo/blob/master/docs/config.md#profiles) can be enabled at initialization time with `ipfs init --profile`: `flatfs-measure`, `pebbleds-measure`, `badgerds-measure`
94
+
95
+
It is also possible to manually add the `measure` wrapper. See examples in [`Datastore.Spec`](https://github.com/ipfs/kubo/blob/master/docs/config.md#datastorespec) documentation.
96
+
87
97
#### Optimized, dedicated queue for providing fresh CIDs
88
98
89
99
From `kubo`[`v0.33.0`](https://github.com/ipfs/kubo/releases/tag/v0.33.0),
@@ -2773,9 +2800,13 @@ You should use this datastore if:
2773
2800
> [!NOTE]
2774
2801
> See caveats and configuration options at [`datastores.md#flatfs`](datastores.md#flatfs)
2775
2802
2803
+
### `flatfs-measure` profile
2804
+
2805
+
Configures the node to use the flatfs datastore with metrics. This is the same as [`flatfs` profile](#flatfs-profile) with the addition of the `measure` datastore wrapper.
2806
+
2776
2807
### `pebbleds` profile
2777
2808
2778
-
Configures the node to use the **EXPERIMENTAL**pebble high-performance datastore.
2809
+
Configures the node to use the pebble high-performance datastore.
2779
2810
2780
2811
Pebble is a LevelDB/RocksDB inspired key-value store focused on performance and internal usage by CockroachDB.
2781
2812
You should use this datastore if:
@@ -2793,6 +2824,10 @@ You should use this datastore if:
2793
2824
> [!NOTE]
2794
2825
> See other caveats and configuration options at [`datastores.md#pebbleds`](datastores.md#pebbleds)
2795
2826
2827
+
### `pebbleds-measure` profile
2828
+
2829
+
Configures the node to use the pebble datastore with metrics. This is the same as [`pebbleds` profile](#pebble-profile) with the addition of the `measure` datastore wrapper.
2830
+
2796
2831
### `badgerds` profile
2797
2832
2798
2833
Configures the node to use the **legacy** badgerv1 datastore.
@@ -2818,6 +2853,10 @@ Also, be aware that:
2818
2853
> [!NOTE]
2819
2854
> See other caveats and configuration options at [`datastores.md#pebbleds`](datastores.md#pebbleds)
2820
2855
2856
+
### `badgerds-measure` profile
2857
+
2858
+
Configures the node to use the **legacy** badgerv1 datastore with metrics. This is the same as [`badgerds` profile](#badger-profile) with the addition of the `measure` datastore wrapper.
2859
+
2821
2860
### `lowpower` profile
2822
2861
2823
2862
Reduces daemon overhead on the system by disabling optional swarm services.
0 commit comments