#!/bin/sh # $FreeBSD: ports/Tools/portbuild/scripts/client-metrics,v 1.2 2010/06/25 22:49:56 linimon Exp $ # Client script to collect metrics for ganglia: # - current vnodes # - max vnodes # - number of packages built in the past hour pbd=${PORTBUILD_DATA:-/a/portbuild} arch=$(uname -m) me=$(hostname) export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin gmetric --name="maxvnodes" --value=`sysctl -n kern.maxvnodes` --tmax=120 --dmax=0 --type=uint32 --units="# vnodes" gmetric --name="vnodes" --value=`sysctl -n vfs.numvnodes` --tmax=120 --dmax=0 --type=uint32 --units="# vnodes" if [ -f ${pbd}/${arch}/portbuild.conf -a -f ${pbd}/${arch}/portbuild.${me} ]; then . ${pbd}/${arch}/client.conf . ${pbd}/${arch}/portbuild.conf . ${pbd}/${arch}/portbuild.${me} else exit 1 fi if [ ! -d ${scratchdir}/stamp ]; then exit 1 fi cd ${scratchdir}/stamp || exit 1 new=$(find . -mmin -60 | wc -l) new=$((${new} + 0)) find . \! -mmin -60 -delete gmetric --name="packages" --value="${new}" --tmax=120 --dmax=0 --type=int16 --units="Packages/hour" --conf="/usr/local/etc/gmond.conf"