ilibs separées - reed-alert - Lightweight agentless alerting system for server Err bitreich.org 70 hgit clone git://bitreich.org/reed-alert/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/reed-alert/ URL:git://bitreich.org/reed-alert/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/reed-alert/ bitreich.org 70 1Log /scm/reed-alert/log.gph bitreich.org 70 1Files /scm/reed-alert/files.gph bitreich.org 70 1Refs /scm/reed-alert/refs.gph bitreich.org 70 1Tags /scm/reed-alert/tag bitreich.org 70 1README /scm/reed-alert/file/README.gph bitreich.org 70 1LICENSE /scm/reed-alert/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 71df6de766a87c6455bf293247d4dac72ff556e4 /scm/reed-alert/commit/71df6de766a87c6455bf293247d4dac72ff556e4.gph bitreich.org 70 1parent 6a0f459f93cd6c2725f8c1df5699ac4cb7e1d1e3 /scm/reed-alert/commit/6a0f459f93cd6c2725f8c1df5699ac4cb7e1d1e3.gph bitreich.org 70 hAuthor: solene rapenne URL:mailto:solene@dataswamp.org bitreich.org 70 iDate: Thu, 26 Jan 2017 14:56:04 +0100 Err bitreich.org 70 i Err bitreich.org 70 ilibs separées Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M example.lisp | 9 ++++----- Err bitreich.org 70 i M probes-extended.lisp | 12 ++++-------- Err bitreich.org 70 i Err bitreich.org 70 i2 files changed, 8 insertions(+), 13 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/example.lisp b/example.lisp /scm/reed-alert/file/example.lisp.gph bitreich.org 70 i@@ -35,14 +35,13 @@ Err bitreich.org 70 i Err bitreich.org 70 i ;; check if load average on (1/5/15) minutes is more than :limit Err bitreich.org 70 i (=> mail load-average-1 (:limit 4)) Err bitreich.org 70 i-(=> mail load-average-5 (:limit 2)) Err bitreich.org 70 i-(=> mail load-average-15 (:limit 1)) Err bitreich.org 70 i+;;(=> mail load-average-5 (:limit 2)) Err bitreich.org 70 i+;;(=> mail load-average-15 (:limit 1)) Err bitreich.org 70 i (=> mail load-average-1 (:limit 0.2)) ;; should trigger error Err bitreich.org 70 i Err bitreich.org 70 i ;; check if :host host is reachable Err bitreich.org 70 i-(=> mail ping (:host "8.8.8.8" :desc "Google DNS")) Err bitreich.org 70 i-(=> void ping (:host "2.3.4.256" :desc "Not valid ipv4 address")) ;; fail error Err bitreich.org 70 i-(=> void ping (:host "127.40.30.21" :desc "Certainly not used address")) ;; fail time out Err bitreich.org 70 i+;;(=> mail ping (:host "8.8.8.8" :desc "Google DNS")) Err bitreich.org 70 i+;;(=> void ping (:host "127.40.30.21" :desc "Certainly not used address")) ;; fail time out Err bitreich.org 70 i Err bitreich.org 70 i ;; check if :command command return 0 (success) or something else (error) Err bitreich.org 70 i (=> void command (:command "echo hello")) ;; success Err bitreich.org 70 1diff --git a/probes-extended.lisp b/probes-extended.lisp /scm/reed-alert/file/probes-extended.lisp.gph bitreich.org 70 i@@ -1,15 +1,11 @@ Err bitreich.org 70 i-(unless (member :quicklisp cl:*features*) Err bitreich.org 70 i- (format t "quicklisp isn't loaded, you can't use extended probes without quicklisp~%") Err bitreich.org 70 i- (quit)) Err bitreich.org 70 i- Err bitreich.org 70 i-(ql:quickload :drakma) Err bitreich.org 70 i-(ql:quickload :cl-ppcre) Err bitreich.org 70 i+(load "libraries/bundle.lisp") Err bitreich.org 70 i+(mapcar 'asdf:load-system '("drakma" "cl-ppcre")) Err bitreich.org 70 i Err bitreich.org 70 i (create-probe Err bitreich.org 70 i http-response-time Err bitreich.org 70 i (let ((begin (get-universal-time))) Err bitreich.org 70 i (let ((result (ignore-errors Err bitreich.org 70 i- (drakma:http-request (getf params :url) :connection-timeout (getf params :timeout 3))))) Err bitreich.org 70 i+ (drakma:http-request (getf params :url))))) Err bitreich.org 70 i (if result Err bitreich.org 70 i (let ((elapsed-time (- (get-universal-time) begin))) Err bitreich.org 70 i (if (< elapsed-time (getf params :limit)) Err bitreich.org 70 i@@ -20,7 +16,7 @@ Err bitreich.org 70 i (create-probe Err bitreich.org 70 i http-text-present Err bitreich.org 70 i (ignore-errors Err bitreich.org 70 i- (let ((result (drakma:http-request (getf params :url) :connection-timeout (getf params :timeout 3)))) Err bitreich.org 70 i+ (let ((result (drakma:http-request (getf params :url)))) Err bitreich.org 70 i (if (cl-ppcre:scan (getf params :pattern) result) Err bitreich.org 70 i t Err bitreich.org 70 i (list nil "pattern not found"))))) Err bitreich.org 70 .