nodes2prometheus.sh.in 641 B

123456789101112131415161718192021222324252627
  1. #!/bin/sh
  2. # Einzeldaten und Summen von nodes.json als labeled metrics for prometheus
  3. ME="`basename $0`"
  4. PROM_PREFIX=%%PROM_PREFIX%%
  5. PROMDIR=%%EXPORT_DIR%%
  6. [ -d $PROMDIR -a -w $PROMDIR ] || PROMDIR=/tmp
  7. PROMFILE=$PROMDIR/$PROM_PREFIX.prom
  8. NODES_URL="%%NODES_URL%%"
  9. NODESFILE=/tmp/nodes.json.$$
  10. NODES2PROM=%%BIN_DIR%%/nodes2prom
  11. [ -f $NODES2PROM -a -x $NODES2PROM ] || NODES2PROM=./nodes2prom
  12. if timeout -s HUP -k 2 50 \
  13. %%FETCH_CMD%% $NODESFILE "$NODES_URL"
  14. then
  15. $NODES2PROM $NODESFILE > $PROMFILE.new && \
  16. mv $PROMFILE.new $PROMFILE
  17. rm -f $NODESFILE
  18. else
  19. logger -t "$ME" "failed to fetch $NODES_URL"
  20. rm -f $NODESFILE
  21. exit 1
  22. fi