summaryrefslogtreecommitdiff
path: root/lua/lvim/core/log.lua
diff options
context:
space:
mode:
authorkylo252 <[email protected]>2022-10-17 17:29:15 +0200
committerkylo252 <[email protected]>2022-10-17 17:29:15 +0200
commit4ef07315003f723bb8e97d5a91b2bde3773ec1b8 (patch)
treee9889a492f76e3f9573228343aaba647dfd48136 /lua/lvim/core/log.lua
parente4a5fe97abe500bbbe78fb137d57a59f558da05a (diff)
parent6f6cbc394d2a7e64964b6067a2f42d2e6a07824e (diff)
Merge remote-tracking branch 'origin/rolling'
Diffstat (limited to 'lua/lvim/core/log.lua')
-rw-r--r--lua/lvim/core/log.lua40
1 files changed, 21 insertions, 19 deletions
diff --git a/lua/lvim/core/log.lua b/lua/lvim/core/log.lua
index 48891139..d88a659b 100644
--- a/lua/lvim/core/log.lua
+++ b/lua/lvim/core/log.lua
@@ -12,26 +12,23 @@ vim.tbl_add_reverse_lookup(Log.levels)
local notify_opts = {}
function Log:set_level(level)
- local logger_ok, _ = xpcall(function()
- local log_level = Log.levels[level:upper()]
- local structlog = require "structlog"
- if structlog then
- local logger = structlog.get_logger "lvim"
- for _, s in ipairs(logger.sinks) do
- s.level = log_level
- end
+ local logger_ok, logger = pcall(function()
+ return require("structlog").get_logger "lvim"
+ end)
+ local log_level = Log.levels[level:upper()]
+ if logger_ok and logger and log_level then
+ for _, s in ipairs(logger.sinks) do
+ s.level = log_level
end
- end, debug.traceback)
- if not logger_ok then
- Log:debug("Unable to set logger's level: " .. debug.traceback())
+ else
+ vim.notify_once("Unable to set logger's level to " .. level)
end
local packer_ok, _ = xpcall(function()
- package.loaded["packer.log"] = nil
- require("packer.log").new { level = lvim.log.level }
+ require("packer.log").cfg { log = { level = level } }
end, debug.traceback)
if not packer_ok then
- Log:debug("Unable to set packer's log level: " .. debug.traceback())
+ vim.notify_once("Unable to set packer's log level to " .. level)
end
end
@@ -91,7 +88,7 @@ function Log:init()
vim_log_level = vim_log_level + 1
end
- logger:log(vim_log_level, msg)
+ self:info(vim_log_level, msg)
end
end
@@ -145,8 +142,9 @@ function Log:configure_notifications(notif_handle)
end
--- Adds a log entry using Plenary.log
+---@param level integer [same as vim.log.levels]
---@param msg any
----@param level string [same as vim.log.log_levels]
+---@param event any
function Log:add_entry(level, msg, event)
local logger = self:get_logger()
if not logger then
@@ -158,11 +156,15 @@ end
---Retrieves the handle of the logger object
---@return table|nil logger handle if found
function Log:get_logger()
- if self.__handle then
- return self.__handle
+ local logger_ok, logger = pcall(function()
+ return require("structlog").get_logger "lvim"
+ end)
+ if logger_ok and logger then
+ return logger
end
- local logger = self:init()
+ logger = self:init()
+
if not logger then
return
end