| #!/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} |
| remote_scp=$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_scp:/tmp |
| ssh -t $remote "sudo mkdir -p $(dirname $LOG) && cat /tmp/message.txt | sudo tee -a $LOG; rm /tmp/message.txt" |