comparison src/luan/modules/logging/Logging.luan @ 1088:bae2d0c2576c

change module naming convention
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 26 Dec 2016 22:29:36 -0700
parents 1a68fc55a80c
children 14ffce5bb894
comparison
equal deleted inserted replaced
1087:4aab4dd3ac9c 1088:bae2d0c2576c
4 local ConsoleAppender = require "java:org.apache.log4j.ConsoleAppender" 4 local ConsoleAppender = require "java:org.apache.log4j.ConsoleAppender"
5 local Level = require "java:org.apache.log4j.Level" 5 local Level = require "java:org.apache.log4j.Level"
6 local RollingFileAppender = require "java:org.apache.log4j.RollingFileAppender" 6 local RollingFileAppender = require "java:org.apache.log4j.RollingFileAppender"
7 local LuanLogger = require "java:luan.modules.logging.LuanLogger" 7 local LuanLogger = require "java:luan.modules.logging.LuanLogger"
8 8
9 local M = {} 9 local Logging = {}
10 10
11 M.layout = "%d %-5p %c - %m%n" 11 Logging.layout = "%d %-5p %c - %m%n"
12 12
13 M.level = "INFO" 13 Logging.level = "INFO"
14 14
15 M.console = "System.err" -- or "System.out" or set to nil for no console 15 Logging.console = "System.err" -- or "System.out" or set to nil for no console
16 16
17 M.file = nil -- set to file name if you want logging to a file 17 Logging.file = nil -- set to file name if you want logging to a file
18 18
19 M.max_file_size = nil -- by default is "10MB" 19 Logging.max_file_size = nil -- by default is "10MB"
20 20
21 21
22 M.log4j_root_logger = Logger.getRootLogger() 22 Logging.log4j_root_logger = Logger.getRootLogger()
23 23
24 local function to_level(level) 24 local function to_level(level)
25 return level and Level.toLevel(level) 25 return level and Level.toLevel(level)
26 end 26 end
27 27
28 function M.log_to_file(file,logger_name) -- logger_name is optional, defaults to root logger 28 function Logging.log_to_file(file,logger_name) -- logger_name is optional, defaults to root logger
29 local appender = RollingFileAppender.new(M.ptn_layout, file) 29 local appender = RollingFileAppender.new(Logging.ptn_layout, file)
30 appender.setMaxFileSize(M.max_file_size) 30 appender.setMaxFileSize(Logging.max_file_size)
31 local logger = logger_name and Logger.getLogger(logger_name) or M.log4j_root_logger 31 local logger = logger_name and Logger.getLogger(logger_name) or Logging.log4j_root_logger
32 logger.addAppender(appender) 32 logger.addAppender(appender)
33 return appender 33 return appender
34 end 34 end
35 35
36 function M.init() 36 function Logging.init()
37 M.log4j_root_logger.removeAllAppenders() 37 Logging.log4j_root_logger.removeAllAppenders()
38 M.log4j_root_logger.setLevel( to_level(M.level) ) 38 Logging.log4j_root_logger.setLevel( to_level(Logging.level) )
39 M.ptn_layout = EnhancedPatternLayout.new(M.layout) 39 Logging.ptn_layout = EnhancedPatternLayout.new(Logging.layout)
40 40
41 if M.console ~= nil then 41 if Logging.console ~= nil then
42 M.console_appender = ConsoleAppender.new(M.ptn_layout,M.console) 42 Logging.console_appender = ConsoleAppender.new(Logging.ptn_layout,Logging.console)
43 M.log4j_root_logger.addAppender(M.console_appender) 43 Logging.log4j_root_logger.addAppender(Logging.console_appender)
44 else 44 else
45 M.console_appender = nil 45 Logging.console_appender = nil
46 end 46 end
47 47
48 if M.file ~= nil then 48 if Logging.file ~= nil then
49 M.file_appender = M.log_to_file(M.file) 49 Logging.file_appender = Logging.log_to_file(Logging.file)
50 else 50 else
51 M.file_appender = nil 51 Logging.file_appender = nil
52 end 52 end
53 end 53 end
54 54
55 55
56 local function to_luan_logger(log4j_logger) 56 local function to_luan_logger(log4j_logger)
77 end 77 end
78 78
79 return tbl 79 return tbl
80 end 80 end
81 81
82 function M.logger(name) 82 function Logging.logger(name)
83 return to_luan_logger( Logger.getLogger(name) ) 83 return to_luan_logger( Logger.getLogger(name) )
84 end 84 end
85 85
86 function M.root_logger() 86 function Logging.root_logger()
87 return to_luan_logger( Logger.getRootLogger() ) 87 return to_luan_logger( Logger.getRootLogger() )
88 end 88 end
89 89
90 return M 90 return Logging