Hallo Ortenau,
ich habe eben etwas Zeit gefunden unsere Hopglass-Karte wieder zu fixen. Unsere Karte filtert nun alle Knoten heraus, welche nicht zur Ortenau gehören.
Hier das angepasste Skript, um Hopglass-Daten zu filtern:
#!/usr/bin/env python3
import argparse
import json
def main(file,site):
jsondata = {}
jsondata=read_jsonfile(file)
for node in list(jsondata['nodes']):
try:
if node['nodeinfo']['system']['site_code'] != site:
jsondata['nodes'].remove(node)
except:
pass
print (json.dumps(jsondata))
def read_jsonfile(file):
jsondata = {}
try:
with open(file, encoding='utf-8') as data_file:
jsondata = json.load(data_file)
except:
print("Couldn't read json file")
print(err)
return jsondata
def parse_args():
parser = argparse.ArgumentParser(
description='export alfred data to influxdb')
parser.add_argument('--file', type=str, required=True, default='',
help='file to pars (nodes.json)')
parser.add_argument('--site', type=str, required=True, default='',
help='site of node to delete')
return parser.parse_args()
if __name__ == '__main__':
args = parse_args()
main( file=args.file, site=args.site)
Aufruf wie folgt:
$ filterNodes.py --file /tmp/nodes.json --site ffog > /data/path/nodes.json