mirror of
https://github.com/zalando-incubator/kube-metrics-adapter.git
synced 2025-01-03 07:40:09 +00:00
Merge pull request #107 from affo/fix/influxdb-token-org-swap
fix(influxdb): fix swap of org/token
This commit is contained in:
@ -369,10 +369,11 @@ metadata:
|
||||
# instead of using the ones specified via CLI. Respectively:
|
||||
# - --influxdb-address
|
||||
# - --influxdb-token
|
||||
# - --influxdb-org-id
|
||||
# - --influxdb-org
|
||||
metric-config.external.flux-query.influxdb/address: "http://influxdbv2.my-namespace.svc"
|
||||
metric-config.external.flux-query.influxdb/token: "secret-token"
|
||||
metric-config.external.flux-query.influxdb/org-id: "deadbeef"
|
||||
# This could be either the organization name or the ID.
|
||||
metric-config.external.flux-query.influxdb/org: "deadbeef"
|
||||
# metric-config.<metricType>.<metricName>.<collectorName>/<configKey>
|
||||
# <configKey> == query-name
|
||||
metric-config.external.flux-query.influxdb/queue_depth: |
|
||||
|
@ -18,7 +18,7 @@ const (
|
||||
InfluxDBMetricName = "flux-query"
|
||||
influxDBAddressKey = "address"
|
||||
influxDBTokenKey = "token"
|
||||
influxDBOrgIDKey = "org-id"
|
||||
influxDBOrgKey = "org"
|
||||
influxDBQueryNameLabelKey = "query-name"
|
||||
)
|
||||
|
||||
@ -26,26 +26,26 @@ type InfluxDBCollectorPlugin struct {
|
||||
kubeClient kubernetes.Interface
|
||||
address string
|
||||
token string
|
||||
orgID string
|
||||
org string
|
||||
}
|
||||
|
||||
func NewInfluxDBCollectorPlugin(client kubernetes.Interface, address, token, orgID string) (*InfluxDBCollectorPlugin, error) {
|
||||
func NewInfluxDBCollectorPlugin(client kubernetes.Interface, address, token, org string) (*InfluxDBCollectorPlugin, error) {
|
||||
return &InfluxDBCollectorPlugin{
|
||||
kubeClient: client,
|
||||
address: address,
|
||||
token: token,
|
||||
orgID: orgID,
|
||||
org: org,
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (p *InfluxDBCollectorPlugin) NewCollector(hpa *v2beta2.HorizontalPodAutoscaler, config *MetricConfig, interval time.Duration) (Collector, error) {
|
||||
return NewInfluxDBCollector(p.address, p.orgID, p.token, config, interval)
|
||||
return NewInfluxDBCollector(p.address, p.token, p.org, config, interval)
|
||||
}
|
||||
|
||||
type InfluxDBCollector struct {
|
||||
address string
|
||||
token string
|
||||
orgID string
|
||||
org string
|
||||
|
||||
influxDBClient *influxdb.Client
|
||||
interval time.Duration
|
||||
@ -54,7 +54,7 @@ type InfluxDBCollector struct {
|
||||
query string
|
||||
}
|
||||
|
||||
func NewInfluxDBCollector(address string, token string, orgID string, config *MetricConfig, interval time.Duration) (*InfluxDBCollector, error) {
|
||||
func NewInfluxDBCollector(address string, token string, org string, config *MetricConfig, interval time.Duration) (*InfluxDBCollector, error) {
|
||||
collector := &InfluxDBCollector{
|
||||
interval: interval,
|
||||
metric: config.Metric,
|
||||
@ -87,8 +87,8 @@ func NewInfluxDBCollector(address string, token string, orgID string, config *Me
|
||||
if v, ok := config.Config[influxDBTokenKey]; ok {
|
||||
token = v
|
||||
}
|
||||
if v, ok := config.Config[influxDBOrgIDKey]; ok {
|
||||
orgID = v
|
||||
if v, ok := config.Config[influxDBOrgKey]; ok {
|
||||
org = v
|
||||
}
|
||||
influxDbClient, err := influxdb.New(address, token)
|
||||
if err != nil {
|
||||
@ -96,7 +96,7 @@ func NewInfluxDBCollector(address string, token string, orgID string, config *Me
|
||||
}
|
||||
collector.address = address
|
||||
collector.token = token
|
||||
collector.orgID = orgID
|
||||
collector.org = org
|
||||
collector.influxDBClient = influxDbClient
|
||||
return collector, nil
|
||||
}
|
||||
@ -109,7 +109,7 @@ type queryResult struct {
|
||||
|
||||
// getValue returns the first result gathered from an InfluxDB instance.
|
||||
func (c *InfluxDBCollector) getValue() (resource.Quantity, error) {
|
||||
res, err := c.influxDBClient.QueryCSV(context.Background(), c.query, c.orgID)
|
||||
res, err := c.influxDBClient.QueryCSV(context.Background(), c.query, c.org)
|
||||
if err != nil {
|
||||
return resource.Quantity{}, err
|
||||
}
|
||||
|
@ -36,7 +36,7 @@ func TestInfluxDBCollector_New(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
if got, want := c.orgID, "deadbeef"; want != got {
|
||||
if got, want := c.org, "deadbeef"; want != got {
|
||||
t.Errorf("unexpected value -want/+got:\n\t-%s\n\t+%s", want, got)
|
||||
}
|
||||
if got, want := c.address, "http://localhost:9999"; want != got {
|
||||
@ -69,7 +69,7 @@ func TestInfluxDBCollector_New(t *testing.T) {
|
||||
"range3m": `from(bucket: "?") |> range(start: -3m)`,
|
||||
"address": "http://localhost:9999",
|
||||
"token": "sEcr3TT0ken",
|
||||
"org-id": "deadbeef1234",
|
||||
"org": "deadbeef1234",
|
||||
"query-name": "range3m",
|
||||
},
|
||||
}
|
||||
@ -77,7 +77,7 @@ func TestInfluxDBCollector_New(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatalf("unexpected error: %v", err)
|
||||
}
|
||||
if got, want := c.orgID, "deadbeef1234"; want != got {
|
||||
if got, want := c.org, "deadbeef1234"; want != got {
|
||||
t.Errorf("unexpected value -want/+got:\n\t-%s\n\t+%s", want, got)
|
||||
}
|
||||
if got, want := c.address, "http://localhost:9999"; want != got {
|
||||
|
@ -92,7 +92,7 @@ func NewCommandStartAdapterServer(stopCh <-chan struct{}) *cobra.Command {
|
||||
"address of InfluxDB 2.x server to query (e.g. http://localhost:9999)")
|
||||
flags.StringVar(&o.InfluxDBToken, "influxdb-token", o.InfluxDBToken, ""+
|
||||
"token for InfluxDB 2.x server to query")
|
||||
flags.StringVar(&o.InfluxDBOrgID, "influxdb-org-id", o.InfluxDBOrgID, ""+
|
||||
flags.StringVar(&o.InfluxDBOrg, "influxdb-org", o.InfluxDBOrg, ""+
|
||||
"organization ID for InfluxDB 2.x server to query")
|
||||
flags.StringVar(&o.ZMONKariosDBEndpoint, "zmon-kariosdb-endpoint", o.ZMONKariosDBEndpoint, ""+
|
||||
"url of ZMON KariosDB endpoint to query for ZMON checks")
|
||||
@ -183,7 +183,7 @@ func (o AdapterServerOptions) RunCustomMetricsAdapterServer(stopCh <-chan struct
|
||||
}
|
||||
|
||||
if o.InfluxDBAddress != "" {
|
||||
influxdbPlugin, err := collector.NewInfluxDBCollectorPlugin(client, o.InfluxDBAddress, o.InfluxDBToken, o.InfluxDBOrgID)
|
||||
influxdbPlugin, err := collector.NewInfluxDBCollectorPlugin(client, o.InfluxDBAddress, o.InfluxDBToken, o.InfluxDBOrg)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to initialize InfluxDB collector plugin: %v", err)
|
||||
}
|
||||
@ -309,8 +309,8 @@ type AdapterServerOptions struct {
|
||||
InfluxDBAddress string
|
||||
// InfluxDBToken is the token used for querying InfluxDB
|
||||
InfluxDBToken string
|
||||
// InfluxDBOrgID is the organization ID used for querying InfluxDB
|
||||
InfluxDBOrgID string
|
||||
// InfluxDBOrg is the organization ID used for querying InfluxDB
|
||||
InfluxDBOrg string
|
||||
// ZMONKariosDBEndpoint enables ZMON check queries to the specified
|
||||
// kariosDB endpoint
|
||||
ZMONKariosDBEndpoint string
|
||||
|
Reference in New Issue
Block a user