influxdata / influxdata/telegraf

Add retry feature for http secret-store plugin

Open
#15,846 1 comment 0 reactions 0 assignees View on GitHub
feature request help wanted size/l
Dominant language
Go
Stars
17.8k
Forks
5.8k
Avg merge
1d 20h
Merged PRs (30d)
161

Description

### Use Case

Use the scretstore http plugin to retrieve connection information from postgresql output.
However, in the current situation, if the secretstore http plugin fails to retrieve the API value, the service does not start because @ variable substitution is not performed.

### Expected behavior

- API call setup : Use @ variable
- API connection failure : Retry

### Actual behavior

- API call setup : Use @ variable
- API connection failure : service down
( The reason is that the @ variable does not have a value and attempts to connect in an unsubstituted state.)

### Additional info

```
[[secretstores.http]]
id = "meta"
url = "http://localhost/meta"
timeout = "5s"

[[outputs.postgresql]]
connection = "host=@{meta:host} port=@{meta:port} user=@{meta:user} password=@{meta:password} dbname=@{meta:database} sslmode=disable"
```

Contributor guide

Open the contributing guide

Research direction

Start by tracing the HTTP secret-store plugin and the @ variable substitution path used by the PostgreSQL output configuration. Reproduce the failed API lookup with the example configuration and determine where startup currently stops. Done means failed secret retrieval is retried and the service no longer starts with unsubstituted variables.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, postgresql
Domain
backend, databases
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.