#!/usr/bin/perl #use Data::Dumper; if ($ARGV[0] eq "") { printf "no mail address given to send report to. exit\n"; exit 1; } @servers = qw/conpve29 conpve28 conpve20 conpve17/; #@servers = qw/conpve28 conpve20/; print "-- get general info from every host\n"; for $server (@servers) { print "--- server $server\n"; @serverinfo = `ssh -q -l root $server qm list | sed "s/\$/$server/" | grep -v VMID 2> /dev/null`; foreach (@serverinfo) { ($vmid, $vms{$1}{'name'}, $vms{$1}{'status'}, $vms{$1}{'memory'}, $vms{$1}{'bootdisk'}, $vms{$1}{'pid'}, $vms{$1}{'host'} ) = $_ =~ / *([0-9]{3,4}) *([^ ]*) *([a-z]*) *([0-9]*) *([0-9.]*) *([0-9]*) *($server)/gm; } print "---- get more details from vms $vmlist\n"; foreach $vmid (keys %vms) { if ($vms{$vmid}{'host'} eq $server) { print "$vmid\n"; $vms{$vmid}{'changes'} = `ssh -q -l root $server qm pending $vmid | grep new | sed "s/new/[new/g" | tr '\n' ']'`; } } print "\n"; } #print Dumper(%vms); open HTML, ">output1.html"; printf HTML "
| VMID | NAME | CHANGES |
| %s | %s | %s |