Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- echo "<<<mrpe>>>"
- VBLISTLASTROW=$(veeamconfig backup list | tail -n 1)
- jname=$(sed -nr "s/(.*)\s+\{.*\}\s+[a-zA-Z0-9_]+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}/\1/p" <<< $VBLISTLASTROW)
- jid=$(sed -nr "s/.*\s+(\{.*\})\s+\S+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}/\1/p" <<< $VBLISTLASTROW)
- jrepo=$(sed -nr "s/.*\s+\{.*\}\s+(\S+)\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}/\1/p" <<< $VBLISTLASTROW)
- jcreated=$(sed -nr "s/.*\s+\{.*\}\s+\S+\s+([0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2})/\1/p" <<< $VBLISTLASTROW)
- #echo Name: $jname
- #echo ID: $jid
- #echo Repo: $jrepo
- #echo Created: $jcreated
- laststaterow=$(veeamconfig backup info --id $jid | tail -n 1)
- name=$(sed -nr "s/(.*)\s+\{.*\}\s+\S+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+[a-z]+/\1/p" <<< $laststaterow)
- id=$(sed -nr "s/.*\s+(\{.*\})\s+\S+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+[a-z]+/\1/p"<<< $laststaterow)
- type=$(sed -nr "s/.*\s+\{.*\}\s+(\S+)\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+[a-z]+/\1/p"<<< $laststaterow)
- created=$(sed -nr "s/.*\s+\{.*\}\s+\S+\s+([0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2})\s+[a-z]+/\1/p"<<< $laststaterow)
- createdsec=$(date --date "$created" +%s)
- corrupt=$(sed -nr "s/.*\s+\{.*\}\s+\S+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+([a-z]+)/\1/p"<<< $laststaterow)
- #echo $laststaterow
- #echo Job Name: $name
- #echo ODB ID: $id
- #echo Type: $type
- #echo Created at: $created
- #echo Created at: $createdsec
- #echo Is Corrupt: $corrupt
- lastnotcorruptstaterow=$(veeamconfig backup info --id $jid | grep "false"| tail -n 1)
- #echo $lastnotcorruptstaterow
- notcorruptname=$(sed -nr "s/(.*)\s+\{.*\}\s+\S+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+[a-z]+/\1/p" <<< $lastnotcorruptstaterow)
- notcorruptid=$(sed -nr "s/.*\s+(\{.*\})\s+\S+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+[a-z]+/\1/p"<<< $lastnotcorruptstaterow)
- notcorrupttype=$(sed -nr "s/.*\s+\{.*\}\s+(\S+)\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+[a-z]+/\1/p"<<< $lastnotcorruptstaterow)
- notcorruptcreated=$(sed -nr "s/.*\s+\{.*\}\s+\S+\s+([0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2})\s+[a-z]+/\1/p"<<< $lastnotcorruptstaterow)
- notcorruptcreatedsec=$(date --date "$created" +%s)
- notcorruptcorrupt=$(sed -nr "s/.*\s+\{.*\}\s+\S+\s+[0-9]{4}-[0-9]{2}-[0-9]{2}\s[0-9]{2}:[0-9]{2}\s+([a-z]+)/\1/p"<<< $lastnotcorruptstaterow)
- #echo Job Name: $name
- #echo ODB ID: $id
- #echo Type: $type
- #echo Created at: $created
- #echo Created at: $createdsec
- #echo Is Corrupt: $corrupt
- if [[ $laststaterow = *"true"* ]];then
- if [[ $(expr $(date +%s) - $createdsec) -le 86400 ]]; then
- if [[ $(expr $(date +%s) - $notcorruptcreatedsec) -le 172800 ]]; then
- STATE=0
- OUTPUT="OK - $type Backup is running - started: $created | Last Successfull Backup started within last 48H: $notcorruptcreated"
- else
- STATE=2
- OUTPUT="CRIT - Last Successfull $notcorrupttype Backup is older than 48H - started: $notcorruptcreated"
- fi
- else
- STATE=2
- OUTPUT="CRIT - $type Backup is corrupt (last Backup is corrupt and older than one day!) - started: $created"
- fi
- elif [[ $laststaterow = *"false"* ]]; then
- STATE=0
- OUTPUT="OK - Last $type Backup successfull @$jrepo/$jname - started: $created"
- else
- if [[ $laststaterow = *"false"* ]]; then
- if [[ $(expr $(date +%s) - $notcorruptcreatedsec) -le 172800 ]]; then
- STATE=0
- OUTPUT="OK - Backup is starting | Last Successfull Backup started within last 48H: $notcorruptcreated"
- else
- STATE=2
- OUTPUT="CRIT - Last Successfull $notcorrupttype Backup is older than 48H - started: $notcorruptcreated"
- fi
- else
- STATE=2
- OUTPUT="CRIT - can not get latest successfull backup"
- fi
- fi
- echo VeeamBackup $STATE $OUTPUT
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement