Blame contrib/create_webpage_compact.sh

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

$hostname

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

${!group_unit}

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