Blame contrib/create_webpage_compact.sh

Packit d14fb6
#!/bin/bash
Packit d14fb6
#
Packit d14fb6
#  Copyright (c) 2003-2004 Fredrik Ohrn.  All Rights Reserved.
Packit d14fb6
#
Packit d14fb6
#  See the included COPYING file for license details.
Packit d14fb6
#
Packit d14fb6
Packit d14fb6
# Edit the variables
Packit d14fb6
Packit d14fb6
hostname=$HOSTNAME
Packit d14fb6
Packit d14fb6
ipmi_cmd="/usr/local/bin/ipmitool -I open"
Packit d14fb6
rrd_dir="/some/dir/rrd"
Packit d14fb6
Packit d14fb6
# Full path to the rrdcgi executable.
Packit d14fb6
rrdcgi=/usr/local/bin/rrdcgi
Packit d14fb6
Packit d14fb6
# Where should rrdcgi store the graphs? This path must be within the
Packit d14fb6
# document root and writable by the webserver user.
Packit d14fb6
img_dir=/usr/local/apache2/htdocs/images/graphs
Packit d14fb6
Packit d14fb6
# Where will the graphs show up on the webserver?
Packit d14fb6
web_dir=/images/graphs
Packit d14fb6
Packit d14fb6
# Size of graph area (excluding title, legends etc.)
Packit d14fb6
graph_width=500
Packit d14fb6
graph_height=150
Packit d14fb6
Packit d14fb6
# Graphs to include on page
Packit d14fb6
graph_daily=1
Packit d14fb6
graph_weekly=1
Packit d14fb6
graph_monthly=0
Packit d14fb6
Packit d14fb6
Packit d14fb6
# No need to edit below this point.
Packit d14fb6
Packit d14fb6
color[0]="2020FF"
Packit d14fb6
color[1]="20FF20"
Packit d14fb6
color[2]="FF2020"
Packit d14fb6
color[3]="FF21FF"
Packit d14fb6
color[4]="21FFFF"
Packit d14fb6
color[5]="FFFF21"
Packit d14fb6
color[6]="8F21FF"
Packit d14fb6
color[7]="21FF8F"
Packit d14fb6
color[8]="FF8F21"
Packit d14fb6
color[9]="FF2190"
Packit d14fb6
color[10]="2190FF"
Packit d14fb6
color[11]="90FF21"
Packit d14fb6
Packit d14fb6
cat << EOF
Packit d14fb6
#!$rrdcgi
Packit d14fb6
<html>
Packit d14fb6
<head>
Packit d14fb6
<title>$hostname</title>
Packit d14fb6
<RRD::GOODFOR 300>
Packit d14fb6
<body>
Packit d14fb6

$hostname

Packit d14fb6
EOF
Packit d14fb6
Packit d14fb6
Packit d14fb6
IFS="
Packit d14fb6
"
Packit d14fb6
Packit d14fb6
i=0
Packit d14fb6
groups=
Packit d14fb6
Packit d14fb6
for line in `eval $ipmi_cmd -c -v sdr list full` ; do
Packit d14fb6
Packit d14fb6
	IFS=,
Packit d14fb6
Packit d14fb6
	split=($line)
Packit d14fb6
Packit d14fb6
	file="$rrd_dir/$hostname-${split[0]}.rrd"
Packit d14fb6
	group=`echo "${split[2]}" | tr ' .-' ___`
Packit d14fb6
Packit d14fb6
	group_color=${group}_color
Packit d14fb6
Packit d14fb6
	if [ -z "${!group}" ] ; then
Packit d14fb6
		groups="$groups $group"
Packit d14fb6
Packit d14fb6
		declare $group_color=0
Packit d14fb6
Packit d14fb6
		group_unit=${group}_unit
Packit d14fb6
		declare $group_unit="${split[2]}"
Packit d14fb6
	fi
Packit d14fb6
Packit d14fb6
	declare $group="${!group}
Packit d14fb6
  DEF:var$i=\"$file\":var:AVERAGE LINE1:var$i#${color[${!group_color}]}:\"${split[0]}\""
Packit d14fb6
Packit d14fb6
	declare $group_color=$[ ${!group_color} + 1 ]
Packit d14fb6
Packit d14fb6
	c=$[ c + 1 ]
Packit d14fb6
	i=$[ i + 1 ]
Packit d14fb6
done
Packit d14fb6
Packit d14fb6
IFS=" "
Packit d14fb6
Packit d14fb6
for group in $groups ; do
Packit d14fb6
Packit d14fb6
	group_unit=${group}_unit
Packit d14fb6
Packit d14fb6
	IFS=,
Packit d14fb6
Packit d14fb6
	echo "

${!group_unit}

"
Packit d14fb6
Packit d14fb6
	if [ "$graph_daily" -ne 0 ] ; then
Packit d14fb6
		cat << EOF
Packit d14fb6
Packit d14fb6
  --imginfo ""
Packit d14fb6
  --lazy
Packit d14fb6
  --vertical-label "${!group_unit}"
Packit d14fb6
  --title "Daily graph"
Packit d14fb6
  --height $graph_height
Packit d14fb6
  --width $graph_width ${!group}
Packit d14fb6
>
Packit d14fb6
EOF
Packit d14fb6
	fi
Packit d14fb6
Packit d14fb6
	if [ "$graph_weekly" -ne 0 ] ; then
Packit d14fb6
		cat << EOF
Packit d14fb6
Packit d14fb6
  --imginfo ""
Packit d14fb6
  --lazy
Packit d14fb6
  --start -7d
Packit d14fb6
  --vertical-label "${!group_unit}"
Packit d14fb6
  --title "Weelky graph"
Packit d14fb6
  --height $graph_height
Packit d14fb6
  --width $graph_width ${!group}
Packit d14fb6
>
Packit d14fb6
EOF
Packit d14fb6
	fi
Packit d14fb6
Packit d14fb6
	if [ "$graph_monthly" -ne 0 ] ; then
Packit d14fb6
		cat << EOF
Packit d14fb6
Packit d14fb6
  --imginfo ""
Packit d14fb6
  --lazy
Packit d14fb6
  --start -30d
Packit d14fb6
  --vertical-label "${!group_unit}"
Packit d14fb6
  --title "Monthly graph"
Packit d14fb6
  --height $graph_height
Packit d14fb6
  --width $graph_width ${!group}
Packit d14fb6
>
Packit d14fb6
EOF
Packit d14fb6
	fi
Packit d14fb6
done
Packit d14fb6
Packit d14fb6
cat << EOF
Packit d14fb6
</body>
Packit d14fb6
</html>
Packit d14fb6
EOF