Plugins
All plugins are configured within the plugins section of the TARDIS configuration. Using multiple plugins is supported by using a separate MappingNode per plugin.
Plugins:
Plugin_1:
option_1: my_option_1
Plugin_2:
option_123: my_option_123
SQLite Registry
The SqliteRegistry
implements a persistent storage of all Drone states in a
SQLite database. The usage of this module is recommended in order to recover the last state of TARDIS in case the
service has to be restarted.
Available configuration options
Option |
Short Description |
Requirement |
---|---|---|
db_file |
Location of the SQLite database. |
Required |
Example configuration
Plugins:
SqliteRegistry:
db_file: drone_registry.db
Telegraf Monitoring
The TelegrafMonitoring
implements an interface to monitor state changes
of the Drones in a telegraf service running a UDP input module.
Note
By default the machine name of the host running tardis is added as default tag. It can be overwritten by adding tardis_machine_name: ‘something_else’ as default_tag in the configuration.
Available configuration options
Option |
Short Description |
Requirement |
---|---|---|
host |
Hostname or IP address the telegraf UDP input module is listening to. |
Required |
port |
Port the telegraf UDP input module is listening on. |
Required |
default_tags |
Tags that should be included by default for all entries sent to telegraf. |
Optional |
Example configuration
Plugins:
TelegrafMonitoring:
host: der_telegraf.foo.bar
port: 8092
default_tags:
something_default: 'The Default Tag'
Prometheus Monitoring
The PrometheusMonitoring
implements an interface to monitor the
number of drones in the states Booting
, Running
, Stopped
, Deleted
, and Error
.
Available configuration options
Option |
Short Description |
Requirement |
---|---|---|
addr |
Address on which the metrics are served on for Prometheus |
Required |
port |
Port on which the metrics are served on for Prometheus |
Required |
Example configuration
Plugins:
PrometheusMonitoring:
addr: 127.0.0.1
port: 8080
ElasticSearch Monitoring
The ElasticsearchMonitoring
implements an interface to push
the done state to an Elasticsearch instance at every state change.
Available configuration options
Option |
Short Description |
Requirement |
---|---|---|
host |
Hostname or IP address of the Elasticsearch instance. |
Required |
port |
Port the Elasticsearch instance is listening on. |
Required |
index |
Target index in the Elasticsearch instance |
Required |
meta |
Additional meta data (can be used to distinguish TARDIS instances). |
Optional |
Example configuration
Plugins:
ElasticsearchMonitoring:
host: elasticsearch.foo.bar
port: 9200
index: cobald_tardis
meta: instance1
Your favorite monitoring is currently not supported? Please, have a look at how to contribute.