New in version 2.5.
Parameter | Choices/Defaults | Comments |
---|---|---|
access |
| The access mode for this datasource. |
basic_auth_password | The datasource basic auth password, when basic auth is yes . | |
basic_auth_user | The datasource basic auth user. Setting this option with basic_auth_password will enable basic auth. | |
database | Name of the database for the datasource. This options is required when the ds_type is influxdb , elasticsearch (index name), mysql or postgres . | |
ds_type required |
| The type of the datasource. |
es_version |
| Elasticsearch version (for ds_type = elasticsearch only)Version 56 is for elasticsearch 5.6+ where tou can specify the max_concurrent_shard_requests option. |
grafana_api_key | The Grafana API key. If set, grafana_user and grafana_password will be ignored. | |
grafana_password | Default: admin | The Grafana API password. |
grafana_url required | The Grafana URL. | |
grafana_user | Default: admin | The Grafana API user. |
interval |
| For elasticsearch ds_type , this is the index pattern used. |
is_default bool |
| Make this datasource the default one. |
max_concurrent_shard_requests | Default: 256 | Starting with elasticsearch 5.6, you can specify the max concurrent shard per requests. |
name required | The name of the datasource. | |
org_id | Default: 1 | Grafana Organisation ID in which the datasource should be created. Not used when grafana_api_key is set, because the grafana_api_key only belong to one organisation. |
password | The datasource password | |
sslmode |
| SSL mode for postgres datasoure type. |
state |
| Status of the datasource |
time_field | Default: timestamp | Name of the time field in elasticsearch ds. For example @timestamp
|
time_interval | Minimum group by interval for influxdb or elasticsearch datasources.for example >10s
| |
tls_ca_cert | The TLS CA certificate for self signed certificates. Only used when tls_client_cert and tls_client_key are set. | |
tls_client_cert | The client TLS certificate. If tls_client_cert and tls_client_key are set, this will enable TLS authentication.Starts with ----- BEGIN CERTIFICATE ----- | |
tls_client_key | The client TLS private key Starts with ----- BEGIN RSA PRIVATE KEY ----- | |
tls_skip_verify bool (added in 2.6) |
| Skip the TLS datasource certificate verification. |
trends bool (added in 2.6) |
| Use trends or not for zabbix datasource type |
tsdb_resolution |
| The opentsdb time resolution. |
tsdb_version |
| The opentsdb version. Use 1 for <=2.1, 2 for ==2.2, 3 for ==2.3. |
url required | The URL of the datasource. | |
user | The datasource login user for influxdb datasources. | |
validate_certs bool |
| Whether to validate the Grafana certificate. |
with_credentials bool |
| Whether credentials such as cookies or auth headers should be sent with cross-site requests. |
--- - name: Create elasticsearch datasource grafana_datasource: name: "datasource-elastic" grafana_url: "https://grafana.company.com" grafana_user: "admin" grafana_password: "xxxxxx" org_id: "1" ds_type: "elasticisearch" url: "https://elastic.company.com:9200" database: "[logstash_]YYYY.MM.DD" basic_auth_user: "grafana" basic_auth_password: "******" time_field: "@timestamp" time_interval: "1m" interval: "Daily" es_version: 56 max_concurrent_shard_requests: 42 tls_ca_cert: "/etc/ssl/certs/ca.pem" - name: Create influxdb datasource grafana_datasource: name: "datasource-influxdb" grafana_url: "https://grafana.company.com" grafana_user: "admin" grafana_password: "xxxxxx" org_id: "1" ds_type: "influxdb" url: "https://influx.company.com:8086" database: "telegraf" time_interval: ">10s" tls_ca_cert: "/etc/ssl/certs/ca.pem"
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
after dict | changed | datasource updated by module Sample: {'name': 'grafana_datasource_test', 'database': 'test_*', 'url': 'http://elastic.company.com:9200', 'basicAuth': False, 'jsonData': {'timeField': '@timestamp', 'esVersion': 5, 'timeInterval': '10s'}, 'access': 'proxy', 'orgId': 1, 'user': '', 'password': '', 'type': 'elasticsearch', 'id': 1035, 'isDefault': False, 'withCredentials': False} |
before dict | changed | datasource returned by grafana api Sample: {'name': 'grafana_datasource_test', 'database': 'test_*', 'url': 'http://elastic.company.com:9200', 'basicAuth': False, 'jsonData': {'timeField': '@timestamp', 'esVersion': 5, 'timeInterval': '1m'}, 'access': 'proxy', 'orgId': 1, 'user': '', 'password': '', 'type': 'elasticsearch', 'id': 1035, 'isDefault': False, 'withCredentials': False} |
id int | success | Id of the datasource Sample: 42 |
name string | success | name of the datasource created. Sample: test-ds |
This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.
For a list of other modules that are also maintained by the Ansible Community, see here.
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/grafana_datasource_module.html