引入特性标志

我们一直严格遵循 SemVer 模型,对稳定性和破坏性变更做出承诺。未来也将如此。

由于我们希望在实验性功能方面更加大胆,我们计划更多地使用特性标志。

从 v2.25.0 版本开始,我们引入了一个新的章节,称为禁用特性,其中包含隐藏在 --enable-feature 标志后面的特性。您可以期待在未来的版本中,越来越多的特性会被添加到此章节。

列表中的特性被认为是实验性的,并且只要它们仍然隐藏在 --enable-feature 标志后面,就会有以下考量:

  1. 如果特性包含任何 API(Web API、代码接口等),其 API 规范可能会发生变化。
  2. 特性的行为可能会发生变化。
  3. 它们可能会打破您对 Prometheus 的一些原有假设。
    • 例如,查询不会超前评估时间查找样本的假设,这将被 @ 修饰符和负偏移打破。
  4. 它们可能不稳定,但我们当然会努力保持其稳定性。

这些考量使我们能够更大胆地进行实验并更快地创新。一旦某个特性被广泛使用,并且在 API、行为和实现方面被认为是稳定的,它可能会从禁用特性列表中移出并默认启用。如果我们发现某个特性不值得或者已损坏,我们可能会将其完全移除。如果启用某个特性被认为是 Prometheus 的一个重大破坏性变更,那么它将保持禁用状态,直到下一个主要版本发布。

请在每个版本发布时关注此列表,并务必尝试这些特性!