init commit
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
(ns Logger
|
||||
"Elixir Logger module — structured logging.
|
||||
|
||||
In CljElixir: (Logger/info \"message\"), (Logger/debug (fn [] \"lazy\")), etc.
|
||||
Log levels: :emergency :alert :critical :error :warning :notice :info :debug")
|
||||
|
||||
(defn debug
|
||||
"Logs a debug message. Accepts string or zero-arity fn (lazy evaluation).
|
||||
(Logger/debug \"detailed info\")
|
||||
(Logger/debug (fn [] (str \"user=\" user-id)))"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn info
|
||||
"Logs an info message.
|
||||
(Logger/info \"server started on port 4000\")"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn notice
|
||||
"Logs a notice message.
|
||||
(Logger/notice \"configuration changed\")"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn warning
|
||||
"Logs a warning message.
|
||||
(Logger/warning \"disk usage above 80%\")"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn error
|
||||
"Logs an error message.
|
||||
(Logger/error \"failed to connect to database\")"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn critical
|
||||
"Logs a critical message.
|
||||
(Logger/critical \"system overload detected\")"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn alert
|
||||
"Logs an alert message.
|
||||
(Logger/alert \"database corruption detected\")"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn emergency
|
||||
"Logs an emergency message.
|
||||
(Logger/emergency \"system is going down\")"
|
||||
([message-or-fun])
|
||||
([message-or-fun metadata]))
|
||||
|
||||
(defn log
|
||||
"Logs at the specified level.
|
||||
(Logger/log :info \"dynamic level logging\")"
|
||||
([level message-or-fun])
|
||||
([level message-or-fun metadata]))
|
||||
|
||||
(defn configure
|
||||
"Configures the logger at runtime.
|
||||
(Logger/configure :level :debug)"
|
||||
[options])
|
||||
|
||||
(defn level
|
||||
"Returns the current log level.
|
||||
(Logger/level) ;=> :info"
|
||||
[])
|
||||
|
||||
(defn put-module-level
|
||||
"Sets log level for specific modules.
|
||||
(Logger/put-module-level MyModule :debug)"
|
||||
[module level])
|
||||
|
||||
(defn delete-module-level
|
||||
"Resets module-level logging to global.
|
||||
(Logger/delete-module-level MyModule)"
|
||||
[module])
|
||||
|
||||
(defn put-process-level
|
||||
"Sets log level for the current process.
|
||||
(Logger/put-process-level (Process/self) :debug)"
|
||||
[pid level])
|
||||
|
||||
(defn delete-process-level
|
||||
"Resets process-level logging.
|
||||
(Logger/delete-process-level pid)"
|
||||
[pid])
|
||||
|
||||
(defn enable
|
||||
"Enables logging for the current process."
|
||||
[pid])
|
||||
|
||||
(defn disable
|
||||
"Disables logging for the current process."
|
||||
[pid])
|
||||
|
||||
(defn metadata
|
||||
"Gets or sets logger metadata for the current process.
|
||||
(Logger/metadata) ;=> []
|
||||
(Logger/metadata :request-id \"abc123\")"
|
||||
([])
|
||||
([keyword-list]))
|
||||
|
||||
(defn reset-metadata
|
||||
"Resets all logger metadata for the current process.
|
||||
(Logger/reset-metadata) ;=> :ok"
|
||||
([])
|
||||
([keys]))
|
||||
|
||||
(defn flush
|
||||
"Flushes the logger, ensuring all messages are processed.
|
||||
(Logger/flush) ;=> :ok"
|
||||
[])
|
||||
|
||||
(defn add-backend
|
||||
"Adds a logging backend.
|
||||
(Logger/add-backend :console)"
|
||||
([backend])
|
||||
([backend opts]))
|
||||
|
||||
(defn remove-backend
|
||||
"Removes a logging backend."
|
||||
([backend])
|
||||
([backend opts]))
|
||||
Reference in New Issue
Block a user