Skip to content
Snippets Groups Projects
Commit 72e3d2bc authored by Christoph Alt's avatar Christoph Alt
Browse files

added a script to upload roofline data to influxdb

parent ee1ca3a0
No related merge requests found
Pipeline #57942 passed with stages
in 2 minutes and 1 second
......@@ -20,6 +20,7 @@ MEM_BENCHMARKS+=$(likwid-bench -a | awk -F "-" '{print $1}' | grep "stream" | aw
current_date=$(date)
mkdir -p ${HOSTNAME}
SUMMARY_FILE="${HOSTNAME}/summary.txt"
rm ${SUMMARY_FILE}
module load python
machinestate -a -o "${HOSTNAME}/machinestate_${HOSTNAME}.json"
......
import argparse
import cbutil as cb
import logging
logger = logging.getLogger(__file__)
logging.basicConfig(level=logging.INFO)
def data2dp(host, measurement):
fields = dict()
for typ in ["bw", "perf"]:
fields.update({f"{typ}_{key}": value for key, value in host[typ].items()})
return cb.DataPoint(
time=host["date"],
tags={"host": host["hostname"]},
fields=fields,
measurement=measurement,
)
def parse_data(input_file, measurement):
data = cb.json2dict(input_file)
dps = [data2dp(d, measurement) for d in data.values()]
logger.info(dps)
return dps
def main():
parser = argparse.ArgumentParser()
parser.add_argument("input_file")
parser.add_argument("-m", "--measurement", required=True)
parser.add_argument(
'-log',
'--loglevel',
default='warning',
help=('Provide logging level. '
'Example --loglevel debug, default=warning')
)
parser.add_argument(
'-d',
'--dryrun',
help='proccess but do not upload data, default=false',
action='store_true',
default=False,
)
args = parser.parse_args()
logging.basicConfig(level=args.loglevel.upper())
dps = parse_data(args.input_file, args.measurement)
if not args.dryrun:
up = cb.Uploader()
up.upload(dps)
if __name__ == "__main__":
main()
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment