1. syslog와 boot.log 파일을 system_logs.log에 매 10분마다 로그 수집 하는 스크립트를 생성
스크립트 파일 생성
$ sudo vi /usr/local/bin/system_logs_collector.sh
#!/bin/bash
# 로그 파일 경로 설정
SYSLOG_FILE="/var/log/syslog"
BOOTLOG_FILE="/var/log/boot.log"
OUTPUT_FILE="/var/log/zabbix/Agent_03_system_logs.log"
LAST_POSITION_FILE="/var/log/.system_log_position"
# 마지막 읽은 위치 가져오기
if [ -f "$LAST_POSITION_FILE" ]; then
LAST_POSITION=$(cat "$LAST_POSITION_FILE")
else
LAST_POSITION=0
fi
# 새로운 로그를 읽어서 syslog와 boot.log를 결합
NEW_POSITION=$(wc -c < "$SYSLOG_FILE")
if [ "$NEW_POSITION" -lt "$LAST_POSITION" ]; then
LAST_POSITION=0
fi
# 새로운 syslog 및 boot.log 결합하여 저장
tail -c +"$((LAST_POSITION + 1))" "$SYSLOG_FILE" >> "$OUTPUT_FILE"
cat "$BOOTLOG_FILE" >> "$OUTPUT_FILE"
# 새로운 위치 기록
echo "$NEW_POSITION" > "$LAST_POSITION_FILE"
2. 스크립트를 실행할 수 있도록 실행 권한을 부여
$ sudo chmod +x /usr/local/bin/system_logs_collector.sh
3. 10분마다 스크립트가 실행되도록 cron에 등록
$ sudo crontab -e
*/10 * * * * /bin/bash /usr/local/bin/system_log_collector.sh
4. 로그를 받아오는지 확인
$ tail -f /var/log/Agent03_system_logs.log
5. Zabbix 웹사이트에서 로그 연동
1) 아이템 생성 클릭
2) 필요한 정보 입력
키는 zabbix에서 제공하는 표준 아이템을 사용하는 것을 추천합니다.
3) 입력한 후에 테스트를 클릭해서 로그 받아오는지 확인
4) 잘 받아오면 로그 파일들이 보임
'Zabbix > log 연동' 카테고리의 다른 글
Zabbix에서 IPS log연동 하는 방법 (0) | 2024.11.01 |
---|