#!/bin/ksh # IBM_PROLOG_BEGIN_TAG # This is an automatically generated prolog. # # bos720 src/bos/usr/sbin/aacct_stat/aacct_stat.sh 1.8 # # Licensed Materials - Property of IBM # # Restricted Materials of IBM # # COPYRIGHT International Business Machines Corp. 2003,2008 # All Rights Reserved # # US Government Users Restricted Rights - Use, duplication or # disclosure restricted by GSA ADP Schedule Contract with IBM Corp. # # IBM_PROLOG_END_TAG # @(#)67 1.8 src/bos/usr/sbin/aacct_stat/aacct_stat.sh, cmdaacct, bos720 5/22/08 07:01:50 # This script will be used by the AACCT SMIT panels, to gather # the details related to interval accounting. export PATH=/usr/bin:/usr/sbin:$PATH /usr/bin/echo "#ProcIntStat:ProcInterval:SysIntStat:SysInterval:ProcAggr:KexAggr:ArmAggr:ID:Name:State:" proc_stat=0 sys_stat=0 proc_agg=0 ke_agg=0 arm_agg=0 if [ -x /usr/bin/acctctl ] then /usr/bin/acctctl smit | while read ent do # Collect statistics from this command's output # Advanced Accounting state /usr/bin/echo $ent | /usr/bin/grep aacctstate > /dev/null 2>&1 if [ $? -eq 0 ] then read astate fi # Available Kernel Transactions /usr/bin/echo $ent | /usr/bin/grep ktranavail > /dev/null 2>&1 if [ $? -eq 0 ] then read atran fi # Disabled Kernel Transactions /usr/bin/echo $ent | /usr/bin/grep ktrandisabled > /dev/null 2>&1 if [ $? -eq 0 ] then read dtran fi # Process Interval /usr/bin/echo $ent | /usr/bin/grep pinterval > /dev/null 2>&1 if [ $? -eq 0 ] then read proc_stat fi # System Interval /usr/bin/echo $ent | /usr/bin/grep sinterval > /dev/null 2>&1 if [ $? -eq 0 ] then read sys_stat fi # Process Aggregation Status /usr/bin/echo $ent | /usr/bin/grep aggrproc > /dev/null 2>&1 if [ $? -eq 0 ] then read proc_agg fi # Kernel Extension Aggregation Status /usr/bin/echo $ent | /usr/bin/grep aggrke > /dev/null 2>&1 if [ $? -eq 0 ] then read ke_agg fi # ARM Transactions Aggregation Status /usr/bin/echo $ent | /usr/bin/grep aggrarm > /dev/null 2>&1 if [ $? -eq 0 ] then read arm_agg fi done fi if [ $proc_stat -eq 0 ] then procint=`/usr/bin/echo Off` procinterval=0 else procint=`/usr/bin/echo On` procinterval=$proc_stat fi if [ $sys_stat -eq 0 ] then sysint=`/usr/bin/echo Off` sysinterval=0 else sysint=`/usr/bin/echo On` sysinterval=$sys_stat fi if [ $proc_agg -eq 0 ] then paggr=`/usr/bin/echo Off` else paggr=`/usr/bin/echo On` fi if [ $ke_agg -eq 0 ] then kaggr=`/usr/bin/echo Off` else kaggr=`/usr/bin/echo On` fi if [ $arm_agg -eq 0 ] then aaggr=`/usr/bin/echo Off` else aaggr=`/usr/bin/echo On` fi disabled=0 enabled=0 # If the transaction ID is passed, collect its statistics if [ $# -gt 0 ] then val=`/usr/bin/echo $1 | /usr/bin/tr -s ' ' | /usr/bin/cut -f1 -d' '` /usr/bin/echo $val | /usr/bin/grep "-" > /dev/null 2>&1 if [ $? -eq 0 ] then fent=`/usr/bin/echo $val | /usr/bin/cut -f1 -d'-'` if [ "$dtran" = "" ] then enabled=1 else dtran1=`/usr/bin/echo $dtran | /usr/bin/tr ',' ' '` for i in $dtran1 do if [ $i -eq $fent ] then disabled=1 break fi done if [ $disabled -eq 0 ] then enabled=1 fi fi else if [ "$dtran" = "" ] then enabled=1 else dtran1=`/usr/bin/echo $dtran | /usr/bin/tr ',' ' '` for i in $dtran1 do if [ $val -eq $i ] then disabled=1 break fi done if [ $disabled -eq 0 ] then enabled=1 fi fi fi ID=$val Name=`/usr/bin/acctctl trquery $val | /usr/bin/grep -w $val | /usr/bin/tr -s ' ' | /usr/bin/cut -d' ' -f3` if [ $disabled -eq 1 ] then State=disabled fi if [ $enabled -eq 1 ] then State=enabled fi fi /usr/bin/echo "$procint:$procinterval:$sysint:$sysinterval:$paggr:$kaggr:$aaggr:$ID:$Name:$State:"