얕게나마 여러 가지 지식이 필요하다.
shellscript , crontab 스케줄 , vi 편집기 사용법 등을 알아야함
간단한 예제로 맛보기만 하겟음
먼저 쉘(.sh) 파일을 생성 해야한다.
원하는 디렉토리를 생성하고
디렉토리 내에 vi loginlog.sh 명령어 를 입력한다.
그럼 vi 폅집기가 열리는데 i 를 입력하고 insert 모드에서
1 LOG=/shell/loginCountLog.log
2 count=`netstat -nap | grep :80 | grep ESTABLISHED | wc -l`
3 now_time=`date`
4 echo "[$now_time]count:$count" >> ${LOG}
를 작성한다.
esc 버튼을 누르면 명령어를 입력 할수 있는데
:wq 를 입력하여 저장하고 빠져나간다.
1 LOG 변수를 선언하고 로그파일위치를 담는다
2 80포트 접속자수 명령어 문자열을 담는다.
3 now_time 변수에 현재시간을 담는다.
4 echo 를 통해 출력하는 문자열을 LOG 변수에 할당된 파일에 쓴다.
(loginCountLog.log 파일은 미리 생성해둘것.)
shell 파일 작성 끝
crontab 으로 쉘파일을 실행하려면 쉘파일에 실행권한이 있어야함.
chmod -x loginlog.sh
crontab -l 로 현재 실행중인 확인해본다.
crontab -e 로 편집을 시작 한다. (vi 편집기 방법과 동일)
# 해당 스케쥴러에 대한 주석을 표기
# 매시 0 분에 loginlog.sh 파일을 실행.
0 * * * * /shell/loginlog.sh
를 입력하고 저장한다.
esc버튼 후
:wq
시간설정은 따로 검색해볼것.
vi loginCountLog.log 또는 tail -f loginCountLog.log 로 확인 해보면
[Tue Feb 21 13:00:01 KST 2017]count:88
로그가 쌓인것을 확인 할 수 있다.
댓글 없음:
댓글 쓰기