Create new Influx dashboards from a CSV

Signed-off-by: Matthew Stidham <stidmatt@protonmail.com>
This commit is contained in:
Matthew Stidham
2021-04-28 17:24:12 -07:00
parent 5c8692b74f
commit a0d7e2d523
4 changed files with 16 additions and 12 deletions

View File

@@ -252,17 +252,11 @@ def main():
scriptname = csvtoinflux.script_name()
if args.panel_name is None:
panel_name = scriptname
else:
panel_name = args.panel_name
DataToGrafana = data_to_grafana(_bucket=args.influx_bucket,
_script=scriptname,
_panel_name=panel_name)
csvtoinflux.post_to_influx()
grafana_input = DataToGrafana.json_parser
GrafanaDB.create_custom_dashboard(scripts=[scriptname],
title=args.panel_name,
bucket=args.influx_bucket)
GrafanaDB.GR.create_dashboard_from_dict(dictionary=grafana_input)
if __name__ == "__main__":
main()

View File

@@ -96,6 +96,7 @@ class CSVtoInflux(Realm):
line = line.split('\t')
test_id_index = line.index('test-id')
line = fp.readline()
line.split('\t')
return line[test_id_index]
@@ -113,7 +114,7 @@ def main():
debug = False
parser = argparse.ArgumentParser(
prog='test_l3_longevity.py',
prog='csv_to_influx.py',
# formatter_class=argparse.RawDescriptionHelpFormatter,
formatter_class=argparse.RawTextHelpFormatter,
epilog='''

View File

@@ -145,6 +145,13 @@ class UseGrafana(LFCliBase):
fieldConfig['defaults'] = dict()
fieldConfig['overrides'] = list()
transformation = dict()
transformation['id'] = "renameByRegex"
transformation_options = dict()
transformation_options['regex'] = "(.*) value.*"
transformation_options['renamePattern'] = "$1"
transformation['options'] = transformation_options
xaxis = dict()
xaxis['buckets'] = None
xaxis['mode'] = "time"
@@ -195,6 +202,8 @@ class UseGrafana(LFCliBase):
panel['timeRegions'] = list()
panel['timeShift'] = None
panel['title'] = scriptname+' '+graph_group
panel['transformations'] = list()
panel['transformations'].append(transformation)
panel['type'] = "graph"
panel['xaxis'] = xaxis
panel['yaxes'] = list()

View File