aboutsummaryrefslogtreecommitdiff
path: root/src/cljcc/log.clj
diff options
context:
space:
mode:
Diffstat (limited to 'src/cljcc/log.clj')
-rw-r--r--src/cljcc/log.clj29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/cljcc/log.clj b/src/cljcc/log.clj
new file mode 100644
index 0000000..394e4a4
--- /dev/null
+++ b/src/cljcc/log.clj
@@ -0,0 +1,29 @@
+(ns cljcc.log
+ (:require [clojure.string :as str]
+ [cljcc.log :as log]))
+
+(def ^:private log-colors
+ {:debug "\u001b[36m" ; Cyan
+ :info "\u001b[32m" ; Green
+ :warn "\u001b[33m" ; Yellow
+ :error "\u001b[31m" ; Red
+ :reset "\u001b[0m"}) ; Reset color
+
+(def reset-color (get log-colors :reset))
+
+(defn- log-message [level message]
+ (let [color (get log-colors level)
+ formatted-message (str color "[" (str/upper-case (name level)) "] " message reset-color)]
+ (println formatted-message)))
+
+(defn debug [msg]
+ (log-message :debug msg))
+
+(defn info [msg]
+ (log-message :info msg))
+
+(defn warn [msg]
+ (log-message :warn msg))
+
+(defn error [msg]
+ (log-message :error msg))