-
Nikolay Stanchev authoredNikolay Stanchev authored
test_telegraf_agents.py 2.12 KiB
#!/usr/bin/python3
import pytest
@pytest.mark.parametrize("measurement, query, expected_result", [
('nginx', 'SELECT mean("requests") AS "mean" FROM "CLMCMetrics"."autogen"."nginx"', 0),
('cpu', 'SELECT mean("usage_idle") AS "mean" FROM "CLMCMetrics"."autogen"."cpu"', 0),
('mongodb', 'SELECT mean("net_in_bytes") AS "mean" FROM "CLMCMetrics"."autogen"."mongodb"', 0)
])
def test_all_inputs(influxdb, measurement, query, expected_result):
"""Tests measurements are received from an input plugin aggregated across all services
"""
query_result = influxdb.query('SHOW measurements ON "CLMCMetrics"')
points = list(query_result.get_points())
assert any(p['name'] == measurement for p in points), "{0} not in measurement list".format(measurement)
query_result = influxdb.query(query)
points = list(query_result.get_points())
actual_result = points[0]['mean']
assert actual_result > expected_result, "actual result {0} is not > expected result {1} for query {2}".format(actual_result, str(expected_result), query)
@pytest.mark.parametrize("ipendpoint, measurements", [
('id1', [{'measurement': 'cpu', 'query': 'query', 'result': 'result'} , {'measurement': 'nginx', 'query': 'query', 'result': 'result'}, {'measurement': 'mongo', 'query': 'query', 'result': 'result'}]),
('id2', [{'measurement': 'cpu', 'query': 'query', 'result': 'result'} , {'measurement': 'nginx', 'query': 'query', 'result': 'result'}])
])
def test_multiple_inputs_on_a_service(influxdb, ipendpoint, measurements):
"""This test checks that a service configured with multiple input plugins as separate telegraf config files generates measurements in the database
"""
# for each item in the measurement list run the query and test the result
assert 1
@pytest.mark.parametrize("query, expected_result", [
('filter query', 0),
('filter query', 0),
('filter query', 0)
])
def test_global_tag_filtering(influxdb, query, expected_result):
"""Tests that the global tags are inserted correctly into the global configuration using the install CLMC script
"""
# run query
# check result
assert 1