mirror of
https://github.com/prometheus/prometheus.git
synced 2025-12-10 03:51:02 +01:00
Add configuration option to control
Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>
This commit is contained in:
parent
d0d2699dc5
commit
478dd97bb8
@ -176,6 +176,7 @@ var (
|
|||||||
ScrapeNativeHistograms: &f,
|
ScrapeNativeHistograms: &f,
|
||||||
ConvertClassicHistogramsToNHCB: false,
|
ConvertClassicHistogramsToNHCB: false,
|
||||||
AlwaysScrapeClassicHistograms: false,
|
AlwaysScrapeClassicHistograms: false,
|
||||||
|
ExtraScrapeMetrics: false,
|
||||||
MetricNameValidationScheme: model.UTF8Validation,
|
MetricNameValidationScheme: model.UTF8Validation,
|
||||||
MetricNameEscapingScheme: model.AllowUTF8,
|
MetricNameEscapingScheme: model.AllowUTF8,
|
||||||
}
|
}
|
||||||
@ -513,6 +514,10 @@ type GlobalConfig struct {
|
|||||||
ConvertClassicHistogramsToNHCB bool `yaml:"convert_classic_histograms_to_nhcb,omitempty"`
|
ConvertClassicHistogramsToNHCB bool `yaml:"convert_classic_histograms_to_nhcb,omitempty"`
|
||||||
// Whether to scrape a classic histogram, even if it is also exposed as a native histogram.
|
// Whether to scrape a classic histogram, even if it is also exposed as a native histogram.
|
||||||
AlwaysScrapeClassicHistograms bool `yaml:"always_scrape_classic_histograms,omitempty"`
|
AlwaysScrapeClassicHistograms bool `yaml:"always_scrape_classic_histograms,omitempty"`
|
||||||
|
// Whether to enable additional scrape metrics.
|
||||||
|
// When enabled, Prometheus stores samples for scrape_timeout_seconds,
|
||||||
|
// scrape_sample_limit, and scrape_body_size_bytes.
|
||||||
|
ExtraScrapeMetrics bool `yaml:"extra_scrape_metrics,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// ScrapeProtocol represents supported protocol for scraping metrics.
|
// ScrapeProtocol represents supported protocol for scraping metrics.
|
||||||
@ -687,7 +692,8 @@ func (c *GlobalConfig) isZero() bool {
|
|||||||
c.ScrapeProtocols == nil &&
|
c.ScrapeProtocols == nil &&
|
||||||
c.ScrapeNativeHistograms == nil &&
|
c.ScrapeNativeHistograms == nil &&
|
||||||
!c.ConvertClassicHistogramsToNHCB &&
|
!c.ConvertClassicHistogramsToNHCB &&
|
||||||
!c.AlwaysScrapeClassicHistograms
|
!c.AlwaysScrapeClassicHistograms &&
|
||||||
|
!c.ExtraScrapeMetrics
|
||||||
}
|
}
|
||||||
|
|
||||||
const DefaultGoGCPercentage = 75
|
const DefaultGoGCPercentage = 75
|
||||||
@ -796,6 +802,11 @@ type ScrapeConfig struct {
|
|||||||
// blank in config files but must have a value if a ScrapeConfig is created
|
// blank in config files but must have a value if a ScrapeConfig is created
|
||||||
// programmatically.
|
// programmatically.
|
||||||
MetricNameEscapingScheme string `yaml:"metric_name_escaping_scheme,omitempty"`
|
MetricNameEscapingScheme string `yaml:"metric_name_escaping_scheme,omitempty"`
|
||||||
|
// Whether to enable additional scrape metrics.
|
||||||
|
// When enabled, Prometheus stores samples for scrape_timeout_seconds,
|
||||||
|
// scrape_sample_limit, and scrape_body_size_bytes.
|
||||||
|
// If not set (nil), inherits the value from the global configuration.
|
||||||
|
ExtraScrapeMetrics *bool `yaml:"extra_scrape_metrics,omitempty"`
|
||||||
|
|
||||||
// We cannot do proper Go type embedding below as the parser will then parse
|
// We cannot do proper Go type embedding below as the parser will then parse
|
||||||
// values arbitrarily into the overflow maps of further-down types.
|
// values arbitrarily into the overflow maps of further-down types.
|
||||||
@ -897,6 +908,9 @@ func (c *ScrapeConfig) Validate(globalConfig GlobalConfig) error {
|
|||||||
if c.ScrapeNativeHistograms == nil {
|
if c.ScrapeNativeHistograms == nil {
|
||||||
c.ScrapeNativeHistograms = globalConfig.ScrapeNativeHistograms
|
c.ScrapeNativeHistograms = globalConfig.ScrapeNativeHistograms
|
||||||
}
|
}
|
||||||
|
if c.ExtraScrapeMetrics == nil {
|
||||||
|
c.ExtraScrapeMetrics = &globalConfig.ExtraScrapeMetrics
|
||||||
|
}
|
||||||
|
|
||||||
if c.ScrapeProtocols == nil {
|
if c.ScrapeProtocols == nil {
|
||||||
switch {
|
switch {
|
||||||
@ -1045,6 +1059,11 @@ func (c *ScrapeConfig) AlwaysScrapeClassicHistogramsEnabled() bool {
|
|||||||
return c.AlwaysScrapeClassicHistograms != nil && *c.AlwaysScrapeClassicHistograms
|
return c.AlwaysScrapeClassicHistograms != nil && *c.AlwaysScrapeClassicHistograms
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ExtraScrapeMetricsEnabled returns whether to enable extra scrape metrics.
|
||||||
|
func (c *ScrapeConfig) ExtraScrapeMetricsEnabled() bool {
|
||||||
|
return c.ExtraScrapeMetrics != nil && *c.ExtraScrapeMetrics
|
||||||
|
}
|
||||||
|
|
||||||
// StorageConfig configures runtime reloadable configuration options.
|
// StorageConfig configures runtime reloadable configuration options.
|
||||||
type StorageConfig struct {
|
type StorageConfig struct {
|
||||||
TSDBConfig *TSDBConfig `yaml:"tsdb,omitempty"`
|
TSDBConfig *TSDBConfig `yaml:"tsdb,omitempty"`
|
||||||
|
|||||||
@ -109,6 +109,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: false,
|
AlwaysScrapeClassicHistograms: false,
|
||||||
ConvertClassicHistogramsToNHCB: false,
|
ConvertClassicHistogramsToNHCB: false,
|
||||||
|
ExtraScrapeMetrics: false,
|
||||||
MetricNameValidationScheme: model.UTF8Validation,
|
MetricNameValidationScheme: model.UTF8Validation,
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -236,6 +237,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -360,6 +362,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
HTTPClientConfig: config.HTTPClientConfig{
|
HTTPClientConfig: config.HTTPClientConfig{
|
||||||
BasicAuth: &config.BasicAuth{
|
BasicAuth: &config.BasicAuth{
|
||||||
@ -470,6 +473,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -532,6 +536,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: "/metrics",
|
MetricsPath: "/metrics",
|
||||||
Scheme: "http",
|
Scheme: "http",
|
||||||
@ -571,6 +576,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -616,6 +622,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -661,6 +668,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -696,6 +704,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -739,6 +748,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -779,6 +789,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -826,6 +837,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -863,6 +875,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -903,6 +916,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -936,6 +950,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -972,6 +987,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: "/federate",
|
MetricsPath: "/federate",
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1008,6 +1024,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1044,6 +1061,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1077,6 +1095,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1118,6 +1137,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1158,6 +1178,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1195,6 +1216,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1231,6 +1253,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1271,6 +1294,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1314,6 +1338,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(true),
|
ScrapeNativeHistograms: boolPtr(true),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1377,6 +1402,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1410,6 +1436,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
HTTPClientConfig: config.DefaultHTTPClientConfig,
|
HTTPClientConfig: config.DefaultHTTPClientConfig,
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
@ -1454,6 +1481,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
HTTPClientConfig: config.DefaultHTTPClientConfig,
|
HTTPClientConfig: config.DefaultHTTPClientConfig,
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
@ -1504,6 +1532,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1544,6 +1573,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1585,6 +1615,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
HTTPClientConfig: config.DefaultHTTPClientConfig,
|
HTTPClientConfig: config.DefaultHTTPClientConfig,
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
@ -1621,6 +1652,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -1659,6 +1691,7 @@ var expectedConf = &Config{
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -2680,6 +2713,7 @@ type ScrapeConfigOptions struct {
|
|||||||
ScrapeNativeHistograms bool
|
ScrapeNativeHistograms bool
|
||||||
AlwaysScrapeClassicHistograms bool
|
AlwaysScrapeClassicHistograms bool
|
||||||
ConvertClassicHistToNHCB bool
|
ConvertClassicHistToNHCB bool
|
||||||
|
ExtraScrapeMetrics bool
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestGetScrapeConfigs(t *testing.T) {
|
func TestGetScrapeConfigs(t *testing.T) {
|
||||||
@ -2713,6 +2747,7 @@ func TestGetScrapeConfigs(t *testing.T) {
|
|||||||
ScrapeNativeHistograms: boolPtr(opts.ScrapeNativeHistograms),
|
ScrapeNativeHistograms: boolPtr(opts.ScrapeNativeHistograms),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(opts.AlwaysScrapeClassicHistograms),
|
AlwaysScrapeClassicHistograms: boolPtr(opts.AlwaysScrapeClassicHistograms),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(opts.ConvertClassicHistToNHCB),
|
ConvertClassicHistogramsToNHCB: boolPtr(opts.ConvertClassicHistToNHCB),
|
||||||
|
ExtraScrapeMetrics: boolPtr(opts.ExtraScrapeMetrics),
|
||||||
}
|
}
|
||||||
if opts.ScrapeProtocols == nil {
|
if opts.ScrapeProtocols == nil {
|
||||||
sc.ScrapeProtocols = DefaultScrapeProtocols
|
sc.ScrapeProtocols = DefaultScrapeProtocols
|
||||||
@ -2796,6 +2831,7 @@ func TestGetScrapeConfigs(t *testing.T) {
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
MetricsPath: DefaultScrapeConfig.MetricsPath,
|
||||||
Scheme: DefaultScrapeConfig.Scheme,
|
Scheme: DefaultScrapeConfig.Scheme,
|
||||||
@ -2834,6 +2870,7 @@ func TestGetScrapeConfigs(t *testing.T) {
|
|||||||
ScrapeNativeHistograms: boolPtr(false),
|
ScrapeNativeHistograms: boolPtr(false),
|
||||||
AlwaysScrapeClassicHistograms: boolPtr(false),
|
AlwaysScrapeClassicHistograms: boolPtr(false),
|
||||||
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
ConvertClassicHistogramsToNHCB: boolPtr(false),
|
||||||
|
ExtraScrapeMetrics: boolPtr(false),
|
||||||
|
|
||||||
HTTPClientConfig: config.HTTPClientConfig{
|
HTTPClientConfig: config.HTTPClientConfig{
|
||||||
TLSConfig: config.TLSConfig{
|
TLSConfig: config.TLSConfig{
|
||||||
@ -2946,6 +2983,26 @@ func TestGetScrapeConfigs(t *testing.T) {
|
|||||||
configFile: "testdata/global_scrape_protocols_and_local_disable_scrape_native_hist.good.yml",
|
configFile: "testdata/global_scrape_protocols_and_local_disable_scrape_native_hist.good.yml",
|
||||||
expectedResult: []*ScrapeConfig{sc(ScrapeConfigOptions{JobName: "prometheus", ScrapeInterval: model.Duration(60 * time.Second), ScrapeTimeout: model.Duration(10 * time.Second), ScrapeNativeHistograms: false, ScrapeProtocols: []ScrapeProtocol{PrometheusText0_0_4}})},
|
expectedResult: []*ScrapeConfig{sc(ScrapeConfigOptions{JobName: "prometheus", ScrapeInterval: model.Duration(60 * time.Second), ScrapeTimeout: model.Duration(10 * time.Second), ScrapeNativeHistograms: false, ScrapeProtocols: []ScrapeProtocol{PrometheusText0_0_4}})},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "A global config that enables extra scrape metrics",
|
||||||
|
configFile: "testdata/global_enable_extra_scrape_metrics.good.yml",
|
||||||
|
expectedResult: []*ScrapeConfig{sc(ScrapeConfigOptions{JobName: "prometheus", ScrapeInterval: model.Duration(60 * time.Second), ScrapeTimeout: model.Duration(10 * time.Second), ExtraScrapeMetrics: true})},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "A global config that disables extra scrape metrics",
|
||||||
|
configFile: "testdata/global_disable_extra_scrape_metrics.good.yml",
|
||||||
|
expectedResult: []*ScrapeConfig{sc(ScrapeConfigOptions{JobName: "prometheus", ScrapeInterval: model.Duration(60 * time.Second), ScrapeTimeout: model.Duration(10 * time.Second), ExtraScrapeMetrics: false})},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "A global config that disables extra scrape metrics and scrape config that enables it",
|
||||||
|
configFile: "testdata/local_enable_extra_scrape_metrics.good.yml",
|
||||||
|
expectedResult: []*ScrapeConfig{sc(ScrapeConfigOptions{JobName: "prometheus", ScrapeInterval: model.Duration(60 * time.Second), ScrapeTimeout: model.Duration(10 * time.Second), ExtraScrapeMetrics: true})},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "A global config that enables extra scrape metrics and scrape config that disables it",
|
||||||
|
configFile: "testdata/local_disable_extra_scrape_metrics.good.yml",
|
||||||
|
expectedResult: []*ScrapeConfig{sc(ScrapeConfigOptions{JobName: "prometheus", ScrapeInterval: model.Duration(60 * time.Second), ScrapeTimeout: model.Duration(10 * time.Second), ExtraScrapeMetrics: false})},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
@ -2962,6 +3019,105 @@ func TestGetScrapeConfigs(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestExtraScrapeMetrics(t *testing.T) {
|
||||||
|
tests := []struct {
|
||||||
|
name string
|
||||||
|
config string
|
||||||
|
expectGlobal bool
|
||||||
|
expectScrape bool
|
||||||
|
expectEnabled bool
|
||||||
|
}{
|
||||||
|
{
|
||||||
|
name: "default values (not set)",
|
||||||
|
config: `
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: test
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:9090']
|
||||||
|
`,
|
||||||
|
expectGlobal: false,
|
||||||
|
expectScrape: false,
|
||||||
|
expectEnabled: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "global enabled",
|
||||||
|
config: `
|
||||||
|
global:
|
||||||
|
extra_scrape_metrics: true
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: test
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:9090']
|
||||||
|
`,
|
||||||
|
expectGlobal: true,
|
||||||
|
expectScrape: true, // inherits
|
||||||
|
expectEnabled: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "global disabled",
|
||||||
|
config: `
|
||||||
|
global:
|
||||||
|
extra_scrape_metrics: false
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: test
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:9090']
|
||||||
|
`,
|
||||||
|
expectGlobal: false,
|
||||||
|
expectScrape: false, // inherits
|
||||||
|
expectEnabled: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "scrape override enabled",
|
||||||
|
config: `
|
||||||
|
global:
|
||||||
|
extra_scrape_metrics: false
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: test
|
||||||
|
extra_scrape_metrics: true
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:9090']
|
||||||
|
`,
|
||||||
|
expectGlobal: false,
|
||||||
|
expectScrape: true, // overrides global
|
||||||
|
expectEnabled: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "scrape override disabled",
|
||||||
|
config: `
|
||||||
|
global:
|
||||||
|
extra_scrape_metrics: true
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: test
|
||||||
|
extra_scrape_metrics: false
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:9090']
|
||||||
|
`,
|
||||||
|
expectGlobal: true,
|
||||||
|
expectScrape: false, // overrides global
|
||||||
|
expectEnabled: false,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
for _, tc := range tests {
|
||||||
|
t.Run(tc.name, func(t *testing.T) {
|
||||||
|
cfg, err := Load(tc.config, promslog.NewNopLogger())
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
// Check global config
|
||||||
|
require.Equal(t, tc.expectGlobal, cfg.GlobalConfig.ExtraScrapeMetrics)
|
||||||
|
|
||||||
|
// Check scrape config
|
||||||
|
scfgs, err := cfg.GetScrapeConfigs()
|
||||||
|
require.NoError(t, err)
|
||||||
|
require.Len(t, scfgs, 1)
|
||||||
|
|
||||||
|
// Check the effective value via the helper method
|
||||||
|
require.Equal(t, tc.expectEnabled, scfgs[0].ExtraScrapeMetricsEnabled())
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func kubernetesSDHostURL() config.URL {
|
func kubernetesSDHostURL() config.URL {
|
||||||
tURL, _ := url.Parse("https://localhost:1234")
|
tURL, _ := url.Parse("https://localhost:1234")
|
||||||
return config.URL{URL: tURL}
|
return config.URL{URL: tURL}
|
||||||
|
|||||||
7
config/testdata/global_disable_extra_scrape_metrics.good.yml
vendored
Normal file
7
config/testdata/global_disable_extra_scrape_metrics.good.yml
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
global:
|
||||||
|
extra_scrape_metrics: false
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: prometheus
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:8080']
|
||||||
|
|
||||||
7
config/testdata/global_enable_extra_scrape_metrics.good.yml
vendored
Normal file
7
config/testdata/global_enable_extra_scrape_metrics.good.yml
vendored
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
global:
|
||||||
|
extra_scrape_metrics: true
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: prometheus
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:8080']
|
||||||
|
|
||||||
8
config/testdata/local_disable_extra_scrape_metrics.good.yml
vendored
Normal file
8
config/testdata/local_disable_extra_scrape_metrics.good.yml
vendored
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
global:
|
||||||
|
extra_scrape_metrics: true
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: prometheus
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:8080']
|
||||||
|
extra_scrape_metrics: false
|
||||||
|
|
||||||
8
config/testdata/local_enable_extra_scrape_metrics.good.yml
vendored
Normal file
8
config/testdata/local_enable_extra_scrape_metrics.good.yml
vendored
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
global:
|
||||||
|
extra_scrape_metrics: false
|
||||||
|
scrape_configs:
|
||||||
|
- job_name: prometheus
|
||||||
|
static_configs:
|
||||||
|
- targets: ['localhost:8080']
|
||||||
|
extra_scrape_metrics: true
|
||||||
|
|
||||||
@ -159,6 +159,12 @@ global:
|
|||||||
# native histogram with custom buckets.
|
# native histogram with custom buckets.
|
||||||
[ always_scrape_classic_histograms: <boolean> | default = false ]
|
[ always_scrape_classic_histograms: <boolean> | default = false ]
|
||||||
|
|
||||||
|
# When enabled, Prometheus stores additional time series for each scrape:
|
||||||
|
# scrape_timeout_seconds, scrape_sample_limit, and scrape_body_size_bytes.
|
||||||
|
# These metrics help monitor how close targets are to their configured limits.
|
||||||
|
# This option can be overridden per scrape config.
|
||||||
|
[ extra_scrape_metrics: <boolean> | default = false ]
|
||||||
|
|
||||||
# The following explains the various combinations of the last three options
|
# The following explains the various combinations of the last three options
|
||||||
# in various exposition cases.
|
# in various exposition cases.
|
||||||
#
|
#
|
||||||
@ -647,6 +653,12 @@ metric_relabel_configs:
|
|||||||
# native histogram with custom buckets.
|
# native histogram with custom buckets.
|
||||||
[ always_scrape_classic_histograms: <boolean> | default = <global.always_scrape_classic_histograms> ]
|
[ always_scrape_classic_histograms: <boolean> | default = <global.always_scrape_classic_histograms> ]
|
||||||
|
|
||||||
|
# When enabled, Prometheus stores additional time series for this scrape job:
|
||||||
|
# scrape_timeout_seconds, scrape_sample_limit, and scrape_body_size_bytes.
|
||||||
|
# These metrics help monitor how close targets are to their configured limits.
|
||||||
|
# If not set, inherits the value from the global configuration.
|
||||||
|
[ extra_scrape_metrics: <boolean> | default = <global.extra_scrape_metrics> ]
|
||||||
|
|
||||||
# See global configuration above for further explanations of how the last three
|
# See global configuration above for further explanations of how the last three
|
||||||
# options combine their effects.
|
# options combine their effects.
|
||||||
|
|
||||||
|
|||||||
@ -28,6 +28,8 @@ and m-mapped chunks, while a WAL replay from disk is only needed for the parts o
|
|||||||
|
|
||||||
`--enable-feature=extra-scrape-metrics`
|
`--enable-feature=extra-scrape-metrics`
|
||||||
|
|
||||||
|
> **Note:** This feature flag is deprecated. Please use the `extra_scrape_metrics` configuration option instead (available at both global and scrape-config level). The feature flag will be removed in a future major version. See the [configuration documentation](configuration/configuration.md) for more details.
|
||||||
|
|
||||||
When enabled, for each instance scrape, Prometheus stores a sample in the following additional time series:
|
When enabled, for each instance scrape, Prometheus stores a sample in the following additional time series:
|
||||||
|
|
||||||
- `scrape_timeout_seconds`. The configured `scrape_timeout` for a target. This allows you to measure each target to find out how close they are to timing out with `scrape_duration_seconds / scrape_timeout_seconds`.
|
- `scrape_timeout_seconds`. The configured `scrape_timeout` for a target. This allows you to measure each target to find out how close they are to timing out with `scrape_duration_seconds / scrape_timeout_seconds`.
|
||||||
|
|||||||
@ -217,7 +217,7 @@ func newScrapePool(cfg *config.ScrapeConfig, app storage.Appendable, offsetSeed
|
|||||||
cfg.ScrapeNativeHistogramsEnabled(),
|
cfg.ScrapeNativeHistogramsEnabled(),
|
||||||
options.EnableStartTimestampZeroIngestion,
|
options.EnableStartTimestampZeroIngestion,
|
||||||
options.EnableTypeAndUnitLabels,
|
options.EnableTypeAndUnitLabels,
|
||||||
options.ExtraMetrics,
|
options.ExtraMetrics || cfg.ExtraScrapeMetricsEnabled(),
|
||||||
options.AppendMetadata,
|
options.AppendMetadata,
|
||||||
opts.target,
|
opts.target,
|
||||||
options.PassMetadataInContext,
|
options.PassMetadataInContext,
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user