summaryrefslogtreecommitdiffstats
path: root/health/health.d/httpcheck.conf
blob: 599c47acc12dda6e3e0b34061331c3b82cfa60b8 (plain)
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# This is a fast-reacting no-notification alarm ideal for custom dashboards or badges
 template: httpcheck_web_service_up
 families: *
       on: httpcheck.status
    class: Utilization
     type: Web Server
component: HTTP endpoint
   lookup: average -1m unaligned percentage of success
     calc: ($this < 75) ? (0) : ($this)
    every: 5s
    units: up/down
     info: average ratio of successful HTTP requests over the last minute (at least 75%)
       to: silent

 template: httpcheck_web_service_bad_content
 families: *
       on: httpcheck.status
    class: Workload
     type: Web Server
component: HTTP endpoint
   lookup: average -5m unaligned percentage of bad_content
    every: 10s
    units: %
     warn: $this >= 10 AND $this < 40
     crit: $this >= 40
    delay: down 5m multiplier 1.5 max 1h
     info: average ratio of HTTP responses with unexpected content over the last 5 minutes
  options: no-clear-notification
       to: webmaster

 template: httpcheck_web_service_bad_status
 families: *
       on: httpcheck.status
    class: Workload
     type: Web Server
component: HTTP endpoint
   lookup: average -5m unaligned percentage of bad_status
    every: 10s
    units: %
     warn: $this >= 10 AND $this < 40
     crit: $this >= 40
    delay: down 5m multiplier 1.5 max 1h
     info: average ratio of HTTP responses with unexpected status over the last 5 minutes
  options: no-clear-notification
       to: webmaster

 template: httpcheck_web_service_timeouts
 families: *
       on: httpcheck.status
    class: Latency
     type: Web Server
component: HTTP endpoint
   lookup: average -5m unaligned percentage of timeout
    every: 10s
    units: %
     info: average ratio of HTTP request timeouts over the last 5 minutes

 template: httpcheck_no_web_service_connections
 families: *
       on: httpcheck.status
    class: Errors
     type: Other
component: HTTP endpoint
   lookup: average -5m unaligned percentage of no_connection
    every: 10s
    units: %
     info: average ratio of failed requests during the last 5 minutes

# combined timeout & no connection alarm
 template: httpcheck_web_service_unreachable
 families: *
       on: httpcheck.status
    class: Errors
     type: Web Server
component: HTTP endpoint
     calc: ($httpcheck_no_web_service_connections >= $httpcheck_web_service_timeouts) ? ($httpcheck_no_web_service_connections) : ($httpcheck_web_service_timeouts)
    units: %
    every: 10s
     warn: ($httpcheck_no_web_service_connections >= 10 OR $httpcheck_web_service_timeouts >= 10) AND ($httpcheck_no_web_service_connections < 40 OR $httpcheck_web_service_timeouts < 40)
     crit: $httpcheck_no_web_service_connections >= 40 OR $httpcheck_web_service_timeouts >= 40
    delay: down 5m multiplier 1.5 max 1h
     info: ratio of failed requests either due to timeouts or no connection over the last 5 minutes
  options: no-clear-notification
       to: webmaster

 template: httpcheck_1h_web_service_response_time
 families: *
       on: httpcheck.responsetime
    class: Latency
     type: Other
component: HTTP endpoint
   lookup: average -1h unaligned of time
    every: 30s
    units: ms
     info: average HTTP response time over the last hour

 template: httpcheck_web_service_slow
 families: *
       on: httpcheck.responsetime
    class: Latency
     type: Web Server
component: HTTP endpoint
   lookup: average -3m unaligned of time
    units: ms
    every: 10s
     warn: ($this > ($httpcheck_1h_web_service_response_time * 2) )
     crit: ($this > ($httpcheck_1h_web_service_response_time * 3) )
    delay: down 5m multiplier 1.5 max 1h
     info: average HTTP response time over the last 3 minutes, compared to the average over the last hour
  options: no-clear-notification
       to: webmaster