1
0
mirror of git://bitreich.org/reed-alert synced 2024-06-14 05:16:38 +00:00
reed-alert/probes-extended.lisp
2016-10-14 14:21:24 +02:00

24 lines
702 B
Common Lisp

(ql:quickload :drakma)
(ql:quickload :cl-ppcre)
(create-probe
http-response-time
(let ((begin (get-universal-time)))
(let ((result (ignore-errors
(drakma:http-request (getf params :url) :connection-timeout (getf params :timeout 3)))))
(if result
(let ((elapsed-time (- (get-universal-time) begin)))
(if (< elapsed-time (getf params :limit))
t
(list nil elapsed-time)))
(list nil "http connection failure")))))
(create-probe
http-text-present
(ignore-errors
(let ((result (drakma:http-request (getf params :url) :connection-timeout (getf params :timeout 3))))
(if (cl-ppcre:scan (getf params :pattern) result)
t
(list nil "pattern not found")))))