ログのUTC→JSTに変換
Raspberry Pi のircddbgateway + gmskrepeater(or dvapnode)のログはUTCで吐き出されているので、JST表示にして見やすくしてみた。*1
- 変換前
# tail -12 /var/log/GMSKRepeater-2013-05-18.log
M: 2013-05-18 14:10:57: Transmitting to - My: JH1BLT C/ Your: JH1BLT Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 01 00 00
M: 2013-05-18 14:10:58: Network header received - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
M: 2013-05-18 14:10:58: Transmitting to - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
M: 2013-05-18 14:11:01: Stats for JH1BLT Frames: 2.5s, Loss: 0.0%, Packets: 0/123
M: 2013-05-18 14:12:24: Header decoded - My: JH1BLT /ID80 Your: REF008CL Rpt1: DIRECT Rpt2: DIRECT Flags: 00 00 00
M: 2013-05-18 14:12:24: Slow data set to "Linking to REF008 C "
M: 2013-05-18 14:12:24: Slow data set to "Linked to REF008 C "
M: 2013-05-18 14:12:24: AMBE for JH1BLT Frames: 0.3s, Silence: 23.1%, BER: 0.0%
M: 2013-05-18 14:12:24: Transmitting to - My: JH1BLT C/ Your: JH1BLT Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 01 00 00
M: 2013-05-18 14:12:26: Network header received - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
M: 2013-05-18 14:12:26: Transmitting to - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
M: 2013-05-18 14:12:33: Stats for JH1BLT Frames: 7.1s, Loss: 0.0%, Packets: 0/356
- 変換後*2
#./gmlog2.sh
23:10:57 JST: Transmitting to - My: JH1BLT C/ Your: JH1BLT Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 01 00 00
23:10:58 JST: Network header received - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
23:10:58 JST: Transmitting to - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
23:11:01 JST: Stats for JH1BLT Frames: 2.5s, Loss: 0.0%, Packets: 0/123
23:12:24 JST: Header decoded - My: JH1BLT /ID80 Your: REF008CL Rpt1: DIRECT Rpt2: DIRECT Flags: 00 00 00
23:12:24 JST: Slow data set to "Linking to REF008 C "
23:12:24 JST: Slow data set to "Linked to REF008 C "
23:12:24 JST: AMBE for JH1BLT Frames: 0.3s, Silence: 23.1%, BER: 0.0%
23:12:24 JST: Transmitting to - My: JH1BLT C/ Your: JH1BLT Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 01 00 00
23:12:26 JST: Network header received - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
23:12:26 JST: Transmitting to - My: JH1BLT /INFO Your: CQCQCQ Rpt1: JH1BLT G Rpt2: JH1BLT C Flags: 00 00 00
23:12:33 JST: Stats for JH1BLT Frames: 7.1s, Loss: 0.0%, Packets: 0/356
- gmlog2.sh
#!/bin/sh
LOGF=`ls /var/log/GMSK* | sort | tail -1`
LOG1=`tail -1 $LOGF`
DT0=`echo "$LOG1" | cut -b4-22`
#DT0="2013-05-18 14:10:56" ; for example
while :
do
LOGF=`ls /var/log/GMSK* | sort | tail -1`
LOG1=`tail -1 $LOGF`
DT1=`echo "$LOG1" | cut -b4-22`
DTN=`grep -n "$DT0" $LOGF | cut -d":" -f1 | tail -1`
DTALL=`wc -l $LOGF | cut -d" " -f1`
FLAG=`expr $DTALL - $DTN`
if test "$FLAG" = "" ; then
FLAG="0"
fi
#echo "DT0=[$DT0] LOGF=[$LOGF] LOG1=[$LOG1]"
#echo "DT1=[$DT1] DTN=[$DTN] DTALL=[$DTALL] FLAG=[$FLAG]"
tail -$FLAG $LOGF > temp1.txt
while read line
do
DTUTC=`echo "$line" | cut -b4-22`
MSG0=`echo "$line" | cut -b24-`
DTTEMP=`date +%s --date "$DTUTC"`
DTJST=`expr $DTTEMP + "32400"` ; +9:00H(秒にして加える)
DTJST=`date --date "@$DTJST" | cut -b30-46` ; ← 時刻表示の範囲を決める
echo "$DTJST:$MSG0"
done <temp1.txt
DT0="$DT1"
sleep 5
done
|