Mercurial Hosting > luan
annotate src/luan/host/Init.luan @ 1199:3995cbe5b00a
simplify logging
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Wed, 28 Feb 2018 23:21:03 -0700 |
parents | 94cf2576a922 |
children | 22228c12b6dd |
rev | line source |
---|---|
1135 | 1 local Luan = require "luan:Luan.luan" |
2 local error = Luan.error | |
3 local String = require "luan:String.luan" | |
4 local gsub = String.gsub or error() | |
5 local Io = require "luan:Io.luan" | |
6 local Http = require "luan:http/Http.luan" | |
7 local Hosting = require "luan:host/Hosting.luan" | |
8 local Mail = require "luan:mail/Mail.luan" | |
9 | |
10 | |
11 local Init = {} | |
12 | |
13 local dir, domain = ... | |
14 | |
1181
51d1342e25ad
luanhost password handling
Franklin Schmidt <fschmidt@gmail.com>
parents:
1180
diff
changeset
|
15 Init.password = Luan.do_file(dir.."/info.luan").password or error() |
1135 | 16 |
17 Http.dir = "file:"..dir.."/site" | |
18 | |
19 function Io.schemes.site(path,loading) | |
20 return Io.uri( Http.dir..path, loading ) | |
21 end | |
22 | |
23 Hosting.domain = domain | |
24 Io.password = Init.password | |
25 | |
26 | |
27 -- logging | |
28 | |
29 java() | |
30 local Logger = require "java:org.apache.log4j.Logger" | |
1199 | 31 local Level = require "java:org.apache.log4j.Level" |
32 local EnhancedPatternLayout = require "java:org.apache.log4j.EnhancedPatternLayout" | |
33 local RollingFileAppender = require "java:org.apache.log4j.RollingFileAppender" | |
1135 | 34 |
35 local root = gsub(domain,"\.",":") | |
36 | |
1199 | 37 local logger = Logger.getLogger(root) |
38 local has_appenders = logger.getAllAppenders().hasMoreElements() | |
39 if not has_appenders then | |
40 logger.setAdditivity(false) | |
41 local layout = EnhancedPatternLayout.new("%d %-5p %c{-1} - %m%n") | |
42 local log_dir = dir.."/site/private/local/logs/" | |
1135 | 43 |
1199 | 44 local function add_appender(file,level) |
45 local appender = RollingFileAppender.new(layout, log_dir..file) | |
46 appender.setMaxFileSize("1MB") | |
47 logger.addAppender(appender) | |
48 if level ~= logger.getEffectiveLevel() then | |
49 appender.setThreshold(level) | |
50 end | |
51 end | |
1135 | 52 |
1199 | 53 add_appender("error.log",Level.ERROR) |
54 add_appender("warn.log",Level.WARN) | |
55 add_appender("info.log",Level.INFO) | |
1135 | 56 end |
57 | |
1199 | 58 local Logging = require "luan:logging/Logging.luan" |
1135 | 59 |
60 local old_logger = Logging.logger | |
61 | |
62 function Logging.root_logger() | |
63 return old_logger(root) | |
64 end | |
65 | |
66 function Logging.logger(name) | |
67 return old_logger( root .. "." .. name ) | |
68 end | |
69 | |
70 Init.logger_root = root.."." | |
71 | |
72 | |
73 -- mail - fix later | |
74 | |
75 Hosting.send_mail = Mail.Sender{ | |
76 host = "smtpcorp.com"; | |
77 username = "smtp@luanhost.com"; -- ? | |
78 password = "luanhost"; | |
79 port = 2525; | |
80 }.send | |
81 | |
82 | |
83 return Init |