#!/bin/sh
# PCP QA Test No. 827
# Check log rewriting of Linux /proc/net/snmp metric types
#
# Copyright (c) 2013, 2015 Red Hat.
#

# get standard environment, filters and checks
. ./common.product
. ./common.filter
. ./common.check

seq=`basename $0`
echo "QA output created by $seq"

[ -f ${PCP_PMDAS_DIR}/snmp/pmdasnmp.pl ] || _notrun "snmp pmda not installed"

status=1	# failure is the default!
$sudo rm -rf $tmp.* $seq.full
trap "cd $here; rm -rf $tmp.*; exit \$status" 0 1 2 3 15
migrate=$PCP_VAR_DIR/config/pmlogrewrite/linux_proc_net_snmp_migrate.conf

# real QA test starts here
cat >$tmp.config <<End-of-File
metric 60.14.* { type -> U32 }
End-of-File

pmlogrewrite -c $tmp.config -w src/new_snmp $tmp.old

pmlogrewrite -c $migrate -w $tmp.old $tmp.new

pmdumplog -z -a $tmp.old >$tmp.old.dump
pmdumplog -z -a $tmp.new >$tmp.new.dump
pmdumplog -z -a src/new_snmp >$tmp.ref.dump

echo "old -> new changes"
diff -u $tmp.old.dump $tmp.new.dump | sed -e '/^---/d' -e '/^+++/d'

echo
echo "new -> ref changes ... expect none"
diff -u $tmp.new.dump $tmp.ref.dump | sed -e '/^---/d' -e '/^+++/d'

# success, all done
status=0

exit
