| 
1672
 | 
     1 local Luan = require "luan:Luan.luan"
 | 
| 
 | 
     2 local error = Luan.error
 | 
| 
 | 
     3 local ipairs = Luan.ipairs or error()
 | 
| 
 | 
     4 local Io = require "luan:Io.luan"
 | 
| 
 | 
     5 
 | 
| 
 | 
     6 require "java"
 | 
| 
 | 
     7 local File = require "java:java.io.File"
 | 
| 
 | 
     8 local BackupServer = require "java:goodjava.lucene.backup.BackupServer"
 | 
| 
 | 
     9 
 | 
| 
 | 
    10 local log_to_console = false
 | 
| 
 | 
    11 for _, arg in ipairs{...} do
 | 
| 
 | 
    12 	if arg == "console" then
 | 
| 
 | 
    13 		log_to_console = true
 | 
| 
 | 
    14 	end
 | 
| 
 | 
    15 end
 | 
| 
 | 
    16 if not log_to_console then
 | 
| 
 | 
    17 	local FileWriter = require "java:java.io.FileWriter"
 | 
| 
 | 
    18 	local LuanLogger = require "java:luan.modules.logging.LuanLogger"
 | 
| 
 | 
    19 	local Layouts = require "java:goodjava.logger.Layouts"
 | 
| 
 | 
    20 	local DateLayout = require "java:goodjava.logger.DateLayout"
 | 
| 
 | 
    21 	local ListLayout = require "java:goodjava.logger.ListLayout"
 | 
| 
 | 
    22 	local Level = require "java:goodjava.logger.Level"
 | 
| 
 | 
    23 	local WriterAppender = require "java:goodjava.logger.WriterAppender"
 | 
| 
 | 
    24 	local LevelAppender = require "java:goodjava.logger.LevelAppender"
 | 
| 
 | 
    25 	local ListAppender = require "java:goodjava.logger.ListAppender"
 | 
| 
 | 
    26 
 | 
| 
 | 
    27 	local layout = ListLayout.new(DateLayout.new("yyyy-MM-dd HH:mm:ss,SSS")," ",Layouts.LEVEL_PADDED," ",Layouts.LOGGER," - ",Layouts.MESSAGE,"\n",Layouts.THROWABLE)
 | 
| 
 | 
    28 
 | 
| 
 | 
    29 	local function new_appender(file,level)
 | 
| 
 | 
    30 		local writer = FileWriter.new(file,true)
 | 
| 
 | 
    31 		local appender = WriterAppender.new(layout,writer)
 | 
| 
 | 
    32 		appender = LevelAppender.new(appender,level)
 | 
| 
 | 
    33 		return appender
 | 
| 
 | 
    34 	end
 | 
| 
 | 
    35 
 | 
| 
 | 
    36 	Io.uri("file:logs").mkdir()
 | 
| 
 | 
    37 	local err = new_appender("logs/error.log",Level.ERROR)
 | 
| 
 | 
    38 	local warn = new_appender("logs/warn.log",Level.WARN)
 | 
| 
 | 
    39 	local info = new_appender("logs/info.log",Level.INFO)
 | 
| 
 | 
    40 	local appender = ListAppender.new(err,warn,info)
 | 
| 
 | 
    41 	LuanLogger.configure(appender)
 | 
| 
 | 
    42 end
 | 
| 
 | 
    43 
 | 
| 
2027
 | 
    44 local Logging = require "luan:logging/Logging.luan"
 | 
| 
 | 
    45 local logger = Logging.logger "backup_server"
 | 
| 
2030
 | 
    46 -- logger.info("log_to_console "..log_to_console)
 | 
| 
2027
 | 
    47 
 | 
| 
1672
 | 
    48 local dir = File.new("backups")
 | 
| 
 | 
    49 local server = BackupServer.new(dir)
 | 
| 
 | 
    50 server.start()
 |