diff options
author | kylo252 <[email protected]> | 2022-10-17 17:29:15 +0200 |
---|---|---|
committer | kylo252 <[email protected]> | 2022-10-17 17:29:15 +0200 |
commit | 4ef07315003f723bb8e97d5a91b2bde3773ec1b8 (patch) | |
tree | e9889a492f76e3f9573228343aaba647dfd48136 /lua/lvim/core/log.lua | |
parent | e4a5fe97abe500bbbe78fb137d57a59f558da05a (diff) | |
parent | 6f6cbc394d2a7e64964b6067a2f42d2e6a07824e (diff) |
Merge remote-tracking branch 'origin/rolling'
Diffstat (limited to 'lua/lvim/core/log.lua')
-rw-r--r-- | lua/lvim/core/log.lua | 40 |
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 |