aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/tools/test/bin/onos-log-write
blob: 840c43f5b1df56f05da0a26a4d14344049e2c441 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/bin/bash
# -----------------------------------------------------------------------------
# Writes block text into the 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

remote=$(find_node $1)
remote=$ONOS_USER@${remote:-$OCI}
message=$2

if [ -z "$message" ]; then
    echo "Usage: onos-log-write <instance> <message>"
    exit
fi
if [ -z $(which figlet) ]; then
    echo "Install figlet; example: brew install figlet"
    exit
fi

#text=$(figlet $message)
#echo "Writing to $remote:"
#echo $text
#echo

[ -n "$instance" ] && \
    LOG=$ONOS_INSTALL_DIR/$KARAF_DIST/instances/$instance/data/log/karaf.log || \
    LOG=$ONOS_INSTALL_DIR/log/karaf.log

#broken by special chars like `
#ssh -t $remote "sudo mkdir -p $(dirname $LOG) && echo $text | sudo tee -a $LOG"

figlet $message > /tmp/message.txt
scp /tmp/message.txt $remote:/tmp
ssh -t $remote "sudo mkdir -p $(dirname $LOG) && cat /tmp/message.txt | sudo tee -a $LOG; rm /tmp/message.txt"