0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036 export TESTNAME="test081_lcf"
0037
0038 PWD=`pwd`
0039 if [ `echo $PWD | grep $TESTNAME ` ]; then
0040
0041 echo > /dev/null
0042 else
0043
0044 pushd .
0045 echo "Doing cd"
0046 cd $TESTNAME
0047 fi;
0048
0049 . ../testenv.sh
0050
0051 export TESTDIR="$NDRX_APPHOME/atmitest/$TESTNAME"
0052 export PATH=$PATH:$TESTDIR
0053 export NDRX_ULOG=$TESTDIR
0054 export NDRX_TOUT=10
0055 export NDRX_SILENT=y
0056 export NDRX_LCFCMDEXP=15
0057
0058
0059
0060 set_dom1() {
0061 echo "Setting domain 1"
0062 . ../dom1.sh
0063 export NDRX_CONFIG=$TESTDIR/ndrxconfig-dom1.xml
0064 export NDRX_DMNLOG=$TESTDIR/ndrxd-dom1.log
0065 export NDRX_LOG=$TESTDIR/ndrx-dom1.log
0066 export NDRX_DEBUG_CONF=$TESTDIR/debug-dom1.conf
0067 }
0068
0069
0070
0071
0072 function go_out {
0073 echo "Test exiting with: $1"
0074
0075 set_dom1;
0076 xadmin stop -y
0077 xadmin down -y
0078
0079
0080 xadmin killall atmiclt81
0081
0082 popd 2>/dev/null
0083 exit $1
0084 }
0085
0086 rm *.log
0087 rm ULOG*
0088
0089 UNAME=`uname`
0090
0091
0092
0093 case $UNAME in
0094
0095 Darwin)
0096 export NDRX_PLUGINS=libcustom_lcf.dylib
0097 export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$TESTDIR
0098 ;;
0099
0100 AIX)
0101 export NDRX_PLUGINS=libcustom_lcf.so
0102 export LIBPATH=$LIBPATH:$TESTDIR
0103 ;;
0104
0105 *)
0106 export NDRX_PLUGINS=libcustom_lcf.so
0107 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TESTDIR
0108 ;;
0109 esac
0110
0111
0112 xadmin killall tpbridge
0113
0114
0115 set_dom1;
0116 xadmin down -y
0117 xadmin start -y || go_out 1
0118 xadmin help
0119
0120
0121
0122 for i in {0..19}
0123 do
0124 xadmin lcf disable -s $i
0125 done
0126
0127 RET=0
0128
0129 xadmin psc
0130 xadmin ppm
0131 echo "Running off client"
0132
0133 set_dom1;
0134 (./atmiclt81 1 2>&1) > ./atmiclt-dom1.log
0135
0136 RET=$?
0137
0138 if [[ "X$RET" != "X0" ]]; then
0139 go_out $RET
0140 fi
0141
0142 if [ "X`grep 'Hello 1 EnduroX' atmisv-dom1*log`" == "X" ]; then
0143 echo "[atmisv-dom1.log] not found 1!"
0144 go_out 1
0145 fi
0146
0147 echo "Check logrotate... function"
0148
0149 rm atmisv-dom1*
0150
0151
0152 xadmin lcf logrotate
0153 xadmin lcf
0154 (./atmiclt81 2 2>&1) > ./atmiclt-dom1.log
0155
0156 RET=$?
0157
0158 if [[ "X$RET" != "X0" ]]; then
0159 go_out $RET
0160 fi
0161
0162 if [ "X`grep 'Hello 2 EnduroX' atmisv-dom1*log`" == "X" ]; then
0163 echo "[atmisv-dom1.log] not found 2!"
0164 go_out 1
0165 fi
0166
0167 echo "Change log level to lower by process name"
0168
0169 xadmin lcf logchg -A "tp=4" -b "atmi.sv81"
0170 xadmin lcf
0171
0172
0173 (./atmiclt81 3 2>&1) > ./atmiclt-dom1.log
0174
0175 RET=$?
0176
0177 if [[ "X$RET" != "X0" ]]; then
0178 go_out $RET
0179 fi
0180
0181 if [ "X`grep 'Hello 3 EnduroX' atmisv-dom1*log`" != "X" ]; then
0182 echo "[atmisv-dom1.log] found 3 (bellow log level)!"
0183 go_out 1
0184 fi
0185
0186 echo "Change log level to lower by process name regexp -> back (not matching)"
0187
0188 xadmin lcf logchg -A "tp=5" -b "atmi.sv9." -r
0189 xadmin lcf
0190
0191 (./atmiclt81 4 2>&1) > ./atmiclt-dom1.log
0192
0193 RET=$?
0194
0195 if [[ "X$RET" != "X0" ]]; then
0196 go_out $RET
0197 fi
0198
0199 if [ "X`grep 'Hello 4 EnduroX' atmisv-dom1*log`" != "X" ]; then
0200 echo "[atmisv-dom1.log] found 4 -> not expected!"
0201 go_out 1
0202 fi
0203
0204 echo "Change log level to lower by process name regexp -> back (matching)"
0205
0206 xadmin lcf logchg -A "tp=5" -b "atmi.sv8." -r
0207 xadmin lcf
0208
0209 (./atmiclt81 5 2>&1) > ./atmiclt-dom1.log
0210
0211 RET=$?
0212
0213 if [[ "X$RET" != "X0" ]]; then
0214 go_out $RET
0215 fi
0216
0217 if [ "X`grep 'Hello 5 EnduroX' atmisv-dom1*log`" == "X" ]; then
0218 echo "[atmisv-dom1.log] 5 not found!"
0219 go_out 1
0220 fi
0221
0222
0223 sleep 10
0224 xadmin pc
0225
0226
0227 if [ "X`grep 'Hello 5 EnduroX' atmisv-dom1*log`" == "X" ]; then
0228 echo "[atmisv-dom1.log] 5 not found!"
0229 go_out 1
0230 fi
0231
0232
0233 if [ "X`grep 'HELLO LEV 5' CLT1.log`" != "X" ]; then
0234 echo "[CLT1.log] HELLO LEV 5 not expected!"
0235 go_out 1
0236 fi
0237
0238 if [ "X`grep 'HELLO LEV 5' main_thread.log`" == "X" ]; then
0239 echo "[main_thread.log] HELLO LEV 5 is expected but not found!"
0240 go_out 1
0241 fi
0242
0243 echo "Change by pid, check the threads higher log level switch..."
0244
0245 CPID=`xadmin ps -p -a atmiclt81b`
0246
0247
0248 xadmin lcf logchg -A "ndrx=5" -p $CPID
0249 xadmin lcf
0250
0251 sleep 2
0252
0253 if [ "X`grep 'HELLO LEV 5' CLT1.log`" == "X" ]; then
0254 echo "[CLT1.log] HELLO LEV 5 is expected but not found!"
0255 go_out 1
0256 fi
0257
0258 echo "Echo threads log-rotate target by threads... (not found)"
0259 rm CLT*.log
0260 rm main_thread.log
0261
0262 xadmin lcf logchg -A "ndrx=5" -p "X$CPID" -r
0263 xadmin lcf
0264
0265 sleep 2
0266
0267 if test -f "./CLT1.log"; then
0268 echo "[CLT1.log] exit, but shall not regexp target..!"
0269 go_out 1
0270 fi
0271
0272 echo "Echo threads log-rotate target by threads... (found OK)"
0273 rm CLT*.log
0274 rm main_thread.log
0275
0276 xadmin lcf logrotate -p "$CPID.*" -r
0277 xadmin lcf
0278
0279 sleep 2
0280
0281 if [ "X`grep 'HELLO LEV 5' CLT1.log`" == "X" ]; then
0282 echo "[CLT1.log] HELLO LEV 5 is expected but not found (2) - logrotate shall restore files!"
0283 go_out 1
0284 fi
0285
0286 if [ "X`grep 'HELLO LEV 5' CLT2.log`" == "X" ]; then
0287 echo "[CLT2.log] HELLO LEV 5 is expected but not found (3) - logrotate shall restore files!"
0288 go_out 1
0289 fi
0290
0291 if [ "X`grep 'HELLO LEV 5' main_thread.log`" == "X" ]; then
0292 echo "[main_thread.log] HELLO LEV 5 is expected but not found (4) - logrotate shall restore files!"
0293 go_out 1
0294 fi
0295
0296
0297
0298
0299
0300
0301
0302 echo "Posting the custom command ... with expiry (default)"
0303 xadmin lcf customz -A "CUSTOM HELLO" -B "OKEY" -a
0304 (./atmiclt81 5 2>&1) > ./atmiclt-dom1.log
0305
0306 RET=$?
0307
0308 if [[ "X$RET" != "X0" ]]; then
0309 go_out $RET
0310 fi
0311
0312 echo "*******************************************"
0313 grep 'CUSTOM HELLO' atmiclt-dom1.log
0314 echo "*******************************************"
0315
0316
0317 if [ "X`grep 'CUSTOM HELLO' atmiclt-dom1.log`" == "X" ]; then
0318 echo "[atmiclt-dom1.log] CUSTOM HELLO expected 1!"
0319 go_out 1
0320 fi
0321
0322 if [ "X`grep 'CUSTOM HELLO' atmisv-dom1.log`" == "X" ]; then
0323 echo "[atmisv-dom1.log] CUSTOM HELLO expected 2!"
0324 go_out 1
0325 fi
0326
0327 echo "Wait command to expire..."
0328 sleep 17
0329
0330 rm atmiclt-dom1.log
0331 (./atmiclt81 5 2>&1) > ./atmiclt-dom1.log
0332
0333 echo "*******************************************"
0334 grep 'CUSTOM HELLO' atmiclt-dom1.log
0335 echo "*******************************************"
0336
0337 RET=$?
0338
0339 if [[ "X$RET" != "X0" ]]; then
0340 go_out $RET
0341 fi
0342
0343 if [ "X`grep 'CUSTOM HELLO' atmiclt-dom1.log`" != "X" ]; then
0344 echo "[atmiclt-dom1.log] CUSTOM HELLO NOT expected 3!"
0345 go_out 1
0346 fi
0347
0348 echo "Echo post with out expiry - always at startup... (-n) e.g. new process"
0349 xadmin lcf customz -A "CUSTOM HELLO" -B "FAIL" -n -a -s5
0350
0351 sleep 16
0352 (./atmiclt81 5 2>&1) > ./atmiclt-dom1.log
0353
0354 if [ "X`grep 'CUSTOM HELLO' atmiclt-dom1.log`" == "X" ]; then
0355 echo "[atmiclt-dom1.log] CUSTOM HELLO not found 4!"
0356 go_out 1
0357 fi
0358
0359 echo "Test threaded logger re-opening the logs..."
0360
0361 rm atmi_sv81b.*log
0362 xadmin lcf logrotate -a
0363 xadmin lcf
0364
0365 rm atmiclt-dom1.log
0366 (./atmiclt81 6 TEST2 2>&1) > ./atmiclt-dom1.log
0367
0368 RET=$?
0369
0370 if [[ "X$RET" != "X0" ]]; then
0371 go_out $RET
0372 fi
0373
0374 if [ "X`grep 'Hello 6 EnduroX' atmi_sv81b.1.log`" == "X" ]; then
0375 echo "[atmi_sv81b.1.log] hello 6 not found"
0376 go_out 1
0377 fi
0378
0379 xadmin lcf -1
0380 xadmin lcf -2
0381 xadmin lcf -3
0382
0383
0384 echo "Testing stats..."
0385
0386 OKS=`xadmin lcf | grep cust | grep 987 | awk '{print $6}' `
0387 FAILS=`xadmin lcf | grep cust | grep 741 | awk '{print $7}'`
0388
0389 echo "custom stats: oks=$OKS fails=$FAILS"
0390
0391 if [ $OKS -eq 0 ]; then
0392 echo "Expected oks for custom"
0393 go_out 1
0394 fi
0395
0396 if [ $FAILS -eq 0 ]; then
0397 echo "Expected failures for custom"
0398 go_out 1
0399 fi
0400
0401
0402 if [ "X`xadmin lcf -1 | grep customz | grep 987`" == "X" ]; then
0403 echo "987 not found in page 1!"
0404 go_out 1
0405 fi
0406
0407 if [ "X`xadmin lcf -3 | grep customz | grep OKEY`" == "X" ]; then
0408 echo "OKEY not found in page 3!"
0409 go_out 1
0410 fi
0411
0412 if [ "X`xadmin lcf -3 | grep customz | grep FAIL`" == "X" ]; then
0413 echo "FAIL not found in page 3!"
0414 go_out 1
0415 fi
0416
0417
0418 if [ "X`grep TESTERROR *.log`" != "X" ]; then
0419 echo "Test error detected!"
0420 RET=-2
0421 fi
0422
0423 go_out $RET
0424
0425
0426
0427