CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): twenty ( 안전운행)
날 짜 (Date): 2002년 10월  2일 수요일 오후 02시 16분 31초
제 목(Title): [질문]syslog분석을 하려는데.. 프로그래밍


 syslog분석을해서 처리를 하려고 합니다.
 MTA로 sendmail을 쓰고 있고, 이의 로그파일인 /var/log/syslog에서
 daemon=MTA인줄을 찾아내어, 해당줄의 IP부분만 찾아내어 파일에 쓰려고 
 합니다. 해당로그는 아래와 같은 포맷이고..
 ...
 Oct  2 14:21:03 smtp sendmail[23877]: g925L2S23877: 
from=<heeabcdeppp@coke.com>, size=19214, class=0, nrcpts=1, 
msgid=<200210020521.g925L2S23877@smtp.baboooo.net>,bodytype=8BITMIME, 
proto=SMTP, daemon=MTA, relay=[210.182.4X.XX]
 ...

 실시간으로 쌓이는 로그를 잡아서 210.182.4X.XX만을 추출해서
 파일로 쓰려고 합니다.
 우선, 쉘에서 간단하게 실행하는 방법으로 아래처럼 해봤습니다.
 #tail -f /var/log/syslog | awk 'BEGIN{FS="relay="} 
{if($0~/daemon=MTA/) print $2}' | cut -d '[' -f 2 | cut -d ']' -f 1 >> 
logip.txt 

 문제점
 1. cut까지 쓰니깐 결과가 안나옵니다. tail...|awk...까지는 결과가 
    잘나오는데...
 2. >>으로 파일을 계속 써야하는데, tail -f 가 종료되어야만하니깐
    이또한 문제가 있습니다.

 어떻게 해야할지 한수지도 부탁드립니다.


[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.