You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
729 B
31 lines
729 B
1 year ago
|
#!/bin/bash
|
||
|
|
||
|
# A script to generate Zabbix map XML from PNG images
|
||
|
# depends on base64
|
||
|
|
||
|
echo "Generating XML"
|
||
|
|
||
|
imagedir="$1"
|
||
|
outputfile="$2"
|
||
|
|
||
|
echo '<?xml version="1.0" encoding="UTF-8"?>
|
||
|
<zabbix_export version="1.0" date="'$(date "+%d.%m.%y")'" time="'$(date "+%H.%M")'">
|
||
|
<images>' > "$outputfile"
|
||
|
|
||
|
imagecount=$(ls $imagedir/*.png | wc -l)
|
||
|
for imagefile in $imagedir/*.png; do
|
||
|
((imagesdone++))
|
||
|
echo " <image>
|
||
|
<name>$(basename "${imagefile%.png}")</name>
|
||
|
<imagetype>1</imagetype>
|
||
|
<encodedImage>$(base64 --wrap=0 "$imagefile")</encodedImage>
|
||
|
</image>" >> "$outputfile"
|
||
|
echo -n "$[$imagesdone*100/$imagecount]% "
|
||
|
done
|
||
|
echo
|
||
|
|
||
|
echo ' </images>
|
||
|
<sysmaps>
|
||
|
</sysmaps>
|
||
|
</zabbix_export>' >> "$outputfile"
|