#!/bin/bash
declare awkmatch="$2"
declare pidname="$1"
if [ ! -d /var/run/vyatta/monitor ]; then
  sudo mkdir -p /var/run/vyatta/monitor
  sudo chmod -R 777 /var/run/vyatta/monitor
fi
for i in "${@:3}"; do
  awkmatch+="|$i"  
done
pidfile="/var/run/vyatta/monitor/$pidname-`tty| sed -e s-/--g -e s/dev//g`.pid"
if [ -f $pidfile ]; then
  pid=$(cat $pidfile)
  processname=$(cat /proc/$pid/cmdline 2>/dev/null) 
  if [[ $processname =~ "tail" ]];then
   echo -ne "\n  You are already monitoring this service\n\n"  
   exit 0
  fi
fi
{ ( tail -f -n0 /var/log/messages & echo $! >&3) 3> \
  $pidfile \
  | awk "/$awkmatch/{ \$5=\"  $1:\"; for (f=5; f<=NF; ++f) {printf(\"%s \", \$f);}; printf(\"\n\") }" 2>&3 & \
} 3>&2 2>/dev/null; disown