diff options
Diffstat (limited to 'framework/src/onos/tools/test/bin/onos-log')
-rwxr-xr-x | framework/src/onos/tools/test/bin/onos-log | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/framework/src/onos/tools/test/bin/onos-log b/framework/src/onos/tools/test/bin/onos-log new file mode 100755 index 00000000..fe89f6dd --- /dev/null +++ b/framework/src/onos/tools/test/bin/onos-log @@ -0,0 +1,38 @@ +#!/bin/bash +# ----------------------------------------------------------------------------- +# Monitors remote ONOS log file on the specified node. +# ----------------------------------------------------------------------------- + +[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1 +. $ONOS_ROOT/tools/build/envDefaults +. $ONOS_ROOT/tools/test/bin/find-node.sh + +less=0 +[ "$1" = "-l" ] && shift && less=1 + +remote=$(find_node $1) + +remote=$ONOS_USER@${remote:-$OCI} +instance=$2 + +pattern=$3 + +[ -n "$instance" -a "$instance" != "-" ] && \ + LOG=$ONOS_INSTALL_DIR/$KARAF_DIST/instances/$instance/data/log/karaf.log || \ + LOG=$ONOS_INSTALL_DIR/log/karaf.log + + +if [ $less -eq 1 ]; then + ssh -t $remote "less $LOG" +elif [ -n "$pattern" ]; then + ssh $remote "grep $LOG -Ee \"$pattern\"" +else + ssh -t $remote " + while true; do + echo ================================================================== + [ ! -f $LOG ] && sleep 2 && continue + [ \$(uname) = "Darwin" ] && tail -n 512 -f -F $LOG || + tail -n 512 --follow=name $LOG --pid \$$ --sleep-interval 2 + done + " +fi |