community.general.influxdb_query – Query data points from InfluxDB

Note

This plugin is part of the community.general collection (version 2.5.1).

To install it use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.influxdb_query.

Synopsis

  • Query data points from InfluxDB.

Requirements

The below requirements are needed on the host that executes this module.

  • python >= 2.6

  • influxdb >= 0.9

Parameters

Parameter Choices/Defaults Comments
database_name
string / required
Name of the database.
hostname
string
Default:
"localhost"
The hostname or IP address on which InfluxDB server is listening.
Since Ansible 2.5, defaulted to localhost.
password
string
Default:
"root"
Password that will be used to authenticate against InfluxDB server.
Alias login_password added in Ansible 2.5.

aliases: login_password
path
string
added in 0.2.0 of community.general
The path on which InfluxDB server is accessible
Only available when using python-influxdb >= 5.1.0
port
integer
Default:
8086
The port on which InfluxDB server is listening
proxies
dictionary
HTTP(S) proxy to use for Requests to connect to InfluxDB server.
query
string / required
Query to be executed.
retries
integer
Default:
3
Number of retries client will try before aborting.
0 indicates try until success.
Only available when using python-influxdb >= 4.1.0
ssl
boolean
    Choices:
  • no ←
  • yes
Use https instead of http to connect to InfluxDB server.
timeout
integer
Number of seconds Requests will wait for client to establish a connection.
udp_port
integer
Default:
4444
UDP port to connect to InfluxDB server.
use_udp
boolean
    Choices:
  • no ←
  • yes
Use UDP to connect to InfluxDB server.
username
string
Default:
"root"
Username that will be used to authenticate against InfluxDB server.
Alias login_username added in Ansible 2.5.

aliases: login_username
validate_certs
boolean
    Choices:
  • no
  • yes ←
If set to no, the SSL certificates will not be validated.
This should only set to no used on personally controlled sites using self-signed certificates.

Examples

- name: Query connections
  community.general.influxdb_query:
    hostname: "{{ influxdb_ip_address }}"
    database_name: "{{ influxdb_database_name }}"
    query: "select mean(value) from connections"
  register: connection

- name: Query connections with tags filters
  community.general.influxdb_query:
    hostname: "{{ influxdb_ip_address }}"
    database_name: "{{ influxdb_database_name }}"
    query: "select mean(value) from connections where region='zue01' and host='server01'"
  register: connection

- name: Print results from the query
  ansible.builtin.debug:
    var: connection.query_results

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
query_results
list / elements=string
success
Result from the query

Sample:
[{'mean': 1245.5333333333333, 'time': '1970-01-01T00:00:00Z'}]


Authors

  • René Moser (@resmo)