#!/usr/bin/sh

unbuffer ioztat -P -S -e -y -x -x 30 | awk '
    BEGIN {
        outputdir="/etc/node_exporter/txtfiles.d"
        outputfile="ioztat.prom"
        tmpfile="/tmp/"outputfile".tmp"
        fieldlist="dataset,read_ops,write_ops,read_rate,write_rate,read_opsize,write_opsize,queue,delete"
        split(fieldlist, field, ",")
      }

      /^-----/ {
        fflush(tmpfile)
        close(tmpfile)
        system("mv "tmpfile" "outputdir"/"outputfile)
        next
      }

      {
        print "# ioztat metrics for prometheus" > tmpfile
        for (i=2; i<=9; i++) {
            label="dataset=\""$1"\""
            print "ioztat_"field[i]"{"label"}",$i > tmpfile
        }
      }
      '

