mirror of
https://github.com/prometheus-operator/prometheus-operator.git
synced 2025-04-16 01:06:27 +00:00
Adds proxy_url to v1.Endpoint. Fixes #1385
This commit is contained in:
parent
4b62f2d48e
commit
3963aaa114
10 changed files with 46 additions and 14 deletions
|
@ -157,6 +157,7 @@ Endpoint defines a scrapeable endpoint serving Prometheus metrics.
|
||||||
| honorLabels | HonorLabels chooses the metric's labels on collisions with target labels. | bool | false |
|
| honorLabels | HonorLabels chooses the metric's labels on collisions with target labels. | bool | false |
|
||||||
| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints | *[BasicAuth](#basicauth) | false |
|
| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints | *[BasicAuth](#basicauth) | false |
|
||||||
| metricRelabelings | MetricRelabelConfigs to apply to samples before ingestion. | []*[RelabelConfig](#relabelconfig) | false |
|
| metricRelabelings | MetricRelabelConfigs to apply to samples before ingestion. | []*[RelabelConfig](#relabelconfig) | false |
|
||||||
|
| proxyUrl | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | *string | false |
|
||||||
|
|
||||||
[Back to TOC](#table-of-contents)
|
[Back to TOC](#table-of-contents)
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -133,6 +133,10 @@ spec:
|
||||||
description: Name of the service port this endpoint refers to.
|
description: Name of the service port this endpoint refers to.
|
||||||
Mutually exclusive with targetPort.
|
Mutually exclusive with targetPort.
|
||||||
type: string
|
type: string
|
||||||
|
proxyUrl:
|
||||||
|
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
|
||||||
|
to proxy through this endpoint.
|
||||||
|
type: string
|
||||||
scheme:
|
scheme:
|
||||||
description: HTTP scheme to use for scraping.
|
description: HTTP scheme to use for scraping.
|
||||||
type: string
|
type: string
|
||||||
|
|
|
@ -3868,7 +3868,7 @@ data:
|
||||||
"steppedLine": false,
|
"steppedLine": false,
|
||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"expr": "sum(irate(container_cpu_usage_seconds_total{namespace=\"$namespace\",pod_name=\"$pod\"}[1m])) by (container_name)",
|
"expr": "sum(irate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod_name=\"$pod\", container_name!=\"POD\"}[1m])) by (container_name)",
|
||||||
"format": "time_series",
|
"format": "time_series",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "{{container_name}}",
|
"legendFormat": "{{container_name}}",
|
||||||
|
@ -4097,7 +4097,7 @@ data:
|
||||||
],
|
],
|
||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"expr": "sum(label_replace(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod_name=\"$pod\"}[5m]), \"container\", \"$1\", \"container_name\", \"(.*)\")) by (container)",
|
"expr": "sum(label_replace(rate(container_cpu_usage_seconds_total{namespace=\"$namespace\", pod_name=\"$pod\", container_name!=\"POD\"}[5m]), \"container\", \"$1\", \"container_name\", \"(.*)\")) by (container)",
|
||||||
"format": "table",
|
"format": "table",
|
||||||
"instant": true,
|
"instant": true,
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
|
@ -4228,7 +4228,7 @@ data:
|
||||||
"steppedLine": false,
|
"steppedLine": false,
|
||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"expr": "sum(container_memory_usage_bytes{namespace=\"$namespace\", pod_name=\"$pod\"}) by (container_name)",
|
"expr": "sum(container_memory_usage_bytes{namespace=\"$namespace\", pod_name=\"$pod\", container_name!=\"POD\"}) by (container_name)",
|
||||||
"format": "time_series",
|
"format": "time_series",
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
"legendFormat": "{{container_name}}",
|
"legendFormat": "{{container_name}}",
|
||||||
|
@ -4457,7 +4457,7 @@ data:
|
||||||
],
|
],
|
||||||
"targets": [
|
"targets": [
|
||||||
{
|
{
|
||||||
"expr": "sum(label_replace(container_memory_usage_bytes{namespace=\"$namespace\", pod_name=\"$pod\"}, \"container\", \"$1\", \"container_name\", \"(.*)\")) by (container)",
|
"expr": "sum(label_replace(container_memory_usage_bytes{namespace=\"$namespace\", pod_name=\"$pod\", container_name!=\"POD\"}, \"container\", \"$1\", \"container_name\", \"(.*)\")) by (container)",
|
||||||
"format": "table",
|
"format": "table",
|
||||||
"instant": true,
|
"instant": true,
|
||||||
"intervalFactor": 2,
|
"intervalFactor": 2,
|
||||||
|
@ -5003,7 +5003,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"rgba(245, 54, 54, 0.9)"
|
"rgba(245, 54, 54, 0.9)"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "percent",
|
"format": "percent",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -5206,7 +5206,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"rgba(245, 54, 54, 0.9)"
|
"rgba(245, 54, 54, 0.9)"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "percent",
|
"format": "percent",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -6066,7 +6066,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"#d44a3a"
|
"#d44a3a"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "none",
|
"format": "none",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -6145,7 +6145,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"#d44a3a"
|
"#d44a3a"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "none",
|
"format": "none",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -6224,7 +6224,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"#d44a3a"
|
"#d44a3a"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "none",
|
"format": "none",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -6317,7 +6317,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"#d44a3a"
|
"#d44a3a"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "none",
|
"format": "none",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -6397,7 +6397,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"#d44a3a"
|
"#d44a3a"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "none",
|
"format": "none",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -6477,7 +6477,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"#d44a3a"
|
"#d44a3a"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "none",
|
"format": "none",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
@ -6557,7 +6557,7 @@ data:
|
||||||
"rgba(237, 129, 40, 0.89)",
|
"rgba(237, 129, 40, 0.89)",
|
||||||
"#d44a3a"
|
"#d44a3a"
|
||||||
],
|
],
|
||||||
"datasource": "prometheus",
|
"datasource": "$datasource",
|
||||||
"format": "none",
|
"format": "none",
|
||||||
"gauge": {
|
"gauge": {
|
||||||
"maxValue": 100,
|
"maxValue": 100,
|
||||||
|
|
|
@ -134,6 +134,10 @@ spec:
|
||||||
description: Name of the service port this endpoint refers to.
|
description: Name of the service port this endpoint refers to.
|
||||||
Mutually exclusive with targetPort.
|
Mutually exclusive with targetPort.
|
||||||
type: string
|
type: string
|
||||||
|
proxyUrl:
|
||||||
|
description: ProxyURL eg http://proxyserver:2195 Directs scrapes
|
||||||
|
to proxy through this endpoint.
|
||||||
|
type: string
|
||||||
scheme:
|
scheme:
|
||||||
description: HTTP scheme to use for scraping.
|
description: HTTP scheme to use for scraping.
|
||||||
type: string
|
type: string
|
||||||
|
|
|
@ -541,6 +541,13 @@ func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenA
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
"proxyUrl": {
|
||||||
|
SchemaProps: spec.SchemaProps{
|
||||||
|
Description: "ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint.",
|
||||||
|
Type: []string{"string"},
|
||||||
|
Format: "",
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -367,6 +367,8 @@ type Endpoint struct {
|
||||||
BasicAuth *BasicAuth `json:"basicAuth,omitempty"`
|
BasicAuth *BasicAuth `json:"basicAuth,omitempty"`
|
||||||
// MetricRelabelConfigs to apply to samples before ingestion.
|
// MetricRelabelConfigs to apply to samples before ingestion.
|
||||||
MetricRelabelConfigs []*RelabelConfig `json:"metricRelabelings,omitempty"`
|
MetricRelabelConfigs []*RelabelConfig `json:"metricRelabelings,omitempty"`
|
||||||
|
// ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint.
|
||||||
|
ProxyURL *string `json:"proxyUrl,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// BasicAuth allow an endpoint to authenticate over basic authentication
|
// BasicAuth allow an endpoint to authenticate over basic authentication
|
||||||
|
|
|
@ -334,6 +334,15 @@ func (in *Endpoint) DeepCopyInto(out *Endpoint) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if in.ProxyURL != nil {
|
||||||
|
in, out := &in.ProxyURL, &out.ProxyURL
|
||||||
|
if *in == nil {
|
||||||
|
*out = nil
|
||||||
|
} else {
|
||||||
|
*out = new(string)
|
||||||
|
**out = **in
|
||||||
|
}
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -216,6 +216,8 @@ type Endpoint struct {
|
||||||
// BasicAuth allow an endpoint to authenticate over basic authentication
|
// BasicAuth allow an endpoint to authenticate over basic authentication
|
||||||
// More info: https://prometheus.io/docs/operating/configuration/#endpoints
|
// More info: https://prometheus.io/docs/operating/configuration/#endpoints
|
||||||
BasicAuth *BasicAuth `json:"basicAuth,omitempty"`
|
BasicAuth *BasicAuth `json:"basicAuth,omitempty"`
|
||||||
|
// ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint.
|
||||||
|
ProxyURL *string `json:"proxyUrl,omitempty"`
|
||||||
}
|
}
|
||||||
|
|
||||||
// BasicAuth allow an endpoint to authenticate over basic authentication
|
// BasicAuth allow an endpoint to authenticate over basic authentication
|
||||||
|
|
|
@ -233,6 +233,9 @@ func generateServiceMonitorConfig(version semver.Version, m *v1.ServiceMonitor,
|
||||||
if ep.Path != "" {
|
if ep.Path != "" {
|
||||||
cfg = append(cfg, yaml.MapItem{Key: "metrics_path", Value: ep.Path})
|
cfg = append(cfg, yaml.MapItem{Key: "metrics_path", Value: ep.Path})
|
||||||
}
|
}
|
||||||
|
if ep.ProxyURL != nil {
|
||||||
|
cfg = append(cfg, yaml.MapItem{Key: "proxy_url", Value: ep.ProxyURL})
|
||||||
|
}
|
||||||
if ep.Params != nil {
|
if ep.Params != nil {
|
||||||
cfg = append(cfg, yaml.MapItem{Key: "params", Value: ep.Params})
|
cfg = append(cfg, yaml.MapItem{Key: "params", Value: ep.Params})
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue