Skip to content

Commit

Permalink
Add lualogging (#38)
Browse files Browse the repository at this point in the history
* add lualogging initial support
  • Loading branch information
Aire-One authored Sep 10, 2022
1 parent 7e39b7d commit 7267c3b
Show file tree
Hide file tree
Showing 4 changed files with 100 additions and 0 deletions.
97 changes: 97 additions & 0 deletions types/lualogging/logging.d.tl
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
local enum Level
"DEBUG"
"INFO"
"WARN"
"ERROR"
"FATAL"
"OFF"
end

local type Append = function<T>(params: T, ...: any): Log

local record Log
append: Append
setLevel: function (self: Log, level: Level)
log: function(self: Log, level: Level, ...: any)
getPrint: function(self: Log, level: Level): function(...: any)

debug: function(self: Log, ...: any)
info: function(self: Log, ...: any)
warn: function(self: Log, ...: any)
error: function(self: Log, ...: any)
fatal: function(self: Log, ...: any)

DEBUG: Level
INFO: Level
WARN: Level
ERROR: Level
FATAL: Level
OFF: Level
end

local record logging
Level: Level
Append: Append
Log: Log

_COPYRIGHT: string
_DESCRIPTION: string
_VERSION: string

DEBUG: Level
INFO: Level
WARN: Level
ERROR: Level
FATAL: Level
OFF: Level

new: function(append: function(self: Log, level: Level, msg: string | function), startLevel: Level): Log
buildLogPatterns: function(patterns: table, default: string): table
defaultLogPatterns: function(patt: string | table): table
defaultTimestampPattern: function(patt: string): string
defaultLevel: function(level: Level): Level
defaultLogger: function(logger: Log): Log

-- Deprecated
getDeprecatedParams: function(lst: table, ...: any)

-- Appenders (dynamically added to logging when required)
record ConsoleParameters
enum ConsoleDestination
"stdout"
"stderr"
end

destination: ConsoleDestination
logPattern: string
logPatterns: { Level : string }
timestampPattern: string
logLevel: Level
end
console: Append<ConsoleParameters>

record FileParameters
filename: string
datePattern: string
logPattern: string
logPatterns: { Level : string }
timestampPattern: string
logLevel: Level
end
file: Append<FileParameters>

record RollingFileParameters
filename: string
maxFileSize: number
maxBackupIndex: number
logPattern: string
logPatterns: { Level : string }
timestampPattern: string
logLevel: Level
end
rolling_file: Append<RollingFileParameters>

-- TODO : add more appenders
end

return logging
1 change: 1 addition & 0 deletions types/lualogging/logging/console.d.tl
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
return require "logging".console
1 change: 1 addition & 0 deletions types/lualogging/logging/file.d.tl
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
return require "logging".file
1 change: 1 addition & 0 deletions types/lualogging/logging/rolling_file.d.tl
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
return require("logging").rolling_file

0 comments on commit 7267c3b

Please sign in to comment.