--- log.lisp 2010-01-08 21:00:22.000000000 +0900 +++ patch/log.lisp 2010-11-25 00:09:00.000000000 +0900 @@ -92,3 +92,23 @@ (when-let (message-logger (acceptor-message-logger *acceptor*)) (apply message-logger log-level format-string format-arguments))) +;; +(defun create-remote-addr-matcher (regex) + (let ((scanner (create-scanner regex))) + (lambda (request) + (scan scanner (remote-addr* request))))) + +(defun create-user-agent-matcher (regex) + (let ((scanner (create-scanner regex))) + (lambda (request) + (scan scanner (user-agent request))))) + +(defun create-uri-matcher (regex) + (let ((scanner (create-scanner regex))) + (lambda (request) + (scan scanner (script-name* request))))) + +(defun no-log-p (request) + (some #'identity (loop for x in *no-log-matchers* + (collect (funcall x request)))))