Web Monitor agent
안녕 리눅스의 check-utils package에는 web server를 application level로 모니터링을 할 수 있는 도구가 포함이 되어 있습니다.
1분 마다 cron job으로 체크를 하게 되며, HTTP response code가 200이 아닐 경우, web daemon을 재시작 시킬 수 있습니다.

1. configuration

1
[[email protected] ~]$ cat /etc/sysconfig/httpd-monitor
2
# httpd-monitor configuration
3
4
# 모니터링 실행 여부
5
# cronjob 실생시에 이 값이 no이면 그냥 종료함.
6
execute=no
7
8
# 서비스 fail시에 구동할 init file 이름 (기본값 httpd)
9
# /sbin/srevice ${initfile} [stop|start] 로 사용됨
10
# 안녕 3에서는 httpd | lighttpd | nginx 중 하나
11
# 기본값: httpd
12
initfile=
13
14
# 로그 파일 경로
15
# 기본값: /var/log/httpd/httpwatch.log
16
logfile=
17
18
# connection timeout
19
# 기본값: 5
20
ctimeout=
21
22
# read timeout
23
# 기본값: 5
24
rtimeout=
25
26
# 모니터링 주소
27
# 기본값: $(hostname)
28
target=
29
30
# 접속시 사용할 HTTP/1.1 Host header 값
31
target_v11=
32
33
# 체크할 URI
34
# 기본값: /robots.txt
35
uri=
36
37
# 서비스 faile시에 apache process의 gdb dump를 뜰지 여부
38
# AnNyung 3 httpd-conf 패키지의 /usr/sbin/httpd-dump script 필요
39
# initfile=httpd 일 경우에만 동작함
40
gdbdump=no
Copied!

2. Cronjob

    매 1분 마다 수행하며, execute=yes 일때만 동작 합니다.
    response code가 200이 아닐 경우, web daemon을 재시작 시킵니다.
1
[[email protected] ~]$ cat /etc/cron.d/httpd-monitor
2
# HTTPd protocol checker
3
4
* * * * * root /usr/sbin/httpd-monitor >& /dev/null
Copied!

3. logging

1
[[email protected] ~]$ cat /var/log/httpd/httpwatch.log
2
[2016.03.05 02:11:01] http://localhost/robots.txt "Host: domain.org" return code 200
3
[2016.03.05 02:12:01] http://localhost/robots.txt "Host: domain.org" return code 200
4
[2016.03.05 02:13:01] http://localhost/robots.txt "Host: domain.org" return code 200
5
[2016.03.05 02:14:01] http://localhost/robots.txt "Host: domain.org" return code 200
6
[2016.03.05 02:15:01] http://localhost/robots.txt "Host: domain.org" return code 200
7
[2016.03.05 02:16:01] http://localhost/robots.txt "Host: domain.org" return code 200
8
[2016.03.05 02:17:01] http://localhost/robots.txt "Host: domain.org" return code 200
9
[2016.03.05 02:18:01] http://localhost/robots.txt "Host: domain.org" return code 200
10
[2016.03.05 02:19:01] http://localhost/robots.txt "Host: domain.org" return code 200
11
[2016.03.05 02:20:01] http://localhost/robots.txt "Host: domain.org" return code 200
Copied!
Last modified 2yr ago