We should provide a clear contract for the metrics provided by CockroachDB.
In current code, metrics are constructed ad-hoc inside of our various components by adding them into a metrics registry. In turn, time series and status summaries are recorded by iterating over the metrics contained in the registries.
However, there is no clear contract describing which metrics are recorded; this will make it difficult for them to be consumed by any third-party product.
A strategy should be developed for maintaining a clear "contract" of metrics - this includes knowledge of what each metric represents, and how each metric can be queried. It should be possible to verify that a cockroach build is meeting the contract; it would also be nice for this contract to inform our documentation.
We should provide a clear contract for the metrics provided by CockroachDB.
In current code, metrics are constructed ad-hoc inside of our various components by adding them into a metrics registry. In turn, time series and status summaries are recorded by iterating over the metrics contained in the registries.
However, there is no clear contract describing which metrics are recorded; this will make it difficult for them to be consumed by any third-party product.
A strategy should be developed for maintaining a clear "contract" of metrics - this includes knowledge of what each metric represents, and how each metric can be queried. It should be possible to verify that a cockroach build is meeting the contract; it would also be nice for this contract to inform our documentation.