clojure
클로저로 로그 파싱하기
수색…
레코드 & 정규식으로 로그 라인 분석
(defrecord Logline [datetime action user id])
(def pattern #"(\d{8}-\d{2}:\d{2}:\d{2}.\d{3})\|.*\|(\w*),(\w*),(\d*)")
(defn parser [line]
(if-let [[_ dt a u i] (re-find pattern line)]
(->Logline dt a u i)))
샘플 라인을 정의하십시오.
(def sample "20170426-17:20:04.005|bip.com|1.0.0|alert|Update,john,12")
그것을 시험하십시오 :
(parser sample)
결과 :
#user.Logline{:datetime "20170426-17:20:04.005", :action "Update", :user "john", :id "12"}
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow