반응형
개발자들이 거래를 하고 바로 로그를 보기 위해서 로그파일을 tail 걸곤 한다. 좀 더 쉽게 해당 거래 로그만 추출하여 볼 수 있다면 편할 수 있다. 아래 스크립트를 응용하여 자기에게 맞게 편집하여 사용하면 편하게 볼 수 있지 않을까 싶다.
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 |
# 서비스명을 입력하지 않으면 입력요청
if [ $# -lt 1 ];then
echo "Which Service ?? \c"
read SVC
else
SVC=$1
fi
CHK=`echo $SVC | cut -c1`
# 입력받은 서비스명이 tmconfig 에 존재하는 지 확인하고 서버명을 구함
if [ $CHK = 's' -o $CHK = 'S' ];then
SVR_CNT=`grep -i $SVC $TMAXDIR/config/tmconfig.m |grep -v ^# | wc -l |awk '{print $1}'`
if [ $SVR_CNT -eq 1 ];then
SVR=`grep -i $SVC $TMAXDIR/config/tmconfig.m |grep -v ^# | awk '{print $4}'`
elif [ $SVR_CNT -gt 1 ];then
echo "$SVC NOT UNIQUE"
exit
elif [ $SVR_CNT -eq 0 ];then
echo "$SVC NOT FOUND"
exit
fi
else
echo "$SVC Service name is not valid"
exit
fi
# 로그파일 찾기
LOGFILE=$PFMLOGROOT/onlog/`date "+%m%d%Y"`/$SVR.log
if [ ! -f $LOGFILE ];then
echo "$LOGFILE NOT EXIST!"
exit
fi
# 글로벌ID 찾기
GID=`tail -1000 $LOGFILE | grep -i $SVC | tail -1|cut -d: -f2`
if [ "$GID" = "" ];then
echo "Not found Service log in $LOGFILE"
exit
else
echo "Found Global ID = $GID Do you want to view log? \c"
read key
fi
# 추출한 로그파일을 연다
grep $GID $LOGFILE > ~/temp.log
vi ~/temp.log
# 보기를 마치면 파일을 삭제 (굳이 삭제하지 않아도 될 듯)
rm -f ~/temp.log |
cs |
[위의 쉘은 IBM AIX 에 최적화된 소스이다]
17라인 : Tmax 의 config 파일명은 프로젝트에 따라 다를 수 있다.
38 라인 : 끝에서 1000라인 중에서 해당 서비스의 로그를 찾은 뒤 가장 나중의 라인에서 글로벌ID를 추출한다. 운영서버와 같이 거래가 다량 발생하게 된다면 끝 1000 라인에서 찾을 수 없다. 반대로 거래가 거의 없는 로그파일이라면 끝 100 라인 정도에서만 찾아봐도 해당 거래를 찾아 낼 수 있을 것이다. 프로프레임에서 로그파일은 : 문자로 구분되는데 처음에 두번째 구분값이 글로벌ID이다.
43 라인 : 로그파일을 보기 싫으면 이 단계에서 Ctrl-C 를 눌러서 스크립트를 중단할 수 있다.
48 라인 : 추출한 로그파일을 본인의 홈 디렉토리에 추출하도록 한다. 다른 곳에 임의로 생성하게 되면 서로 중복되거나 파일명을 다르게 할 경우 많은 파일들이 생성되어 혼란이 생길 수도 있기 때문이다.
반응형
'컴퓨터활용 > 프로프레임' 카테고리의 다른 글
프로프레임 4.0 스튜디오 heap 메모리 부족 오류 (0) | 2021.03.16 |
---|---|
[프로프레임] Conditions can't call the right function (1) | 2019.08.03 |
[프로프레임] dlupdate 상태확인 쉘 (0) | 2017.06.18 |
[프로프레임] 거래전문 추출 Pro*C (0) | 2017.06.08 |
[프로프레임] tdlinit.sh (0) | 2017.05.24 |