Hi guys, I’d really like to ask your input on something we’re working on in Telegraf - InfluxDB.
We are working on a project that will use Telegraf in a slightly non-standard way. An application will determine which plugins will be used and what their configuration will be - in terms of connection details and query - and will write this to InfluxDB.
This will be dynamic - plugins can be added and plugin configuration can be changed at any time. As it stands, Telegraf’s configuration (driven by a configuration file) assumes that configuration is static so it’s not clear what the best way to drive Telegraf’s configuration dynamically is. We’ve got a few possible solutions (below) - I’d be really interested in your feedback on these approaches or on any others that we might have missed.
- generate Telegraf configuration file based on the dynamic data
- introduce a new implementation of the Telegraf Configuration struct which can read from the database storing desired configuration
- create a single plugin which is capable of reading the configuration from our database; this plugin would collect data from multiple sources as determined by the configuration in the database
Thanks so much for your input!