1 package org.opensrf.util;
2 import java.io.BufferedWriter;
3 import java.io.FileWriter;
6 public class FileLogger extends Logger {
9 private String filename;
12 * FileLogger constructor
13 * @param filename The path to the log file
15 public FileLogger(String filename) {
16 this.filename = filename;
20 * Logs the mesage to a file.
21 * @param level The log level
22 * @param msg The mesage to log
24 protected synchronized void log(short level, String msg) {
25 if(level > logLevel) return;
27 BufferedWriter out = null;
29 out = new BufferedWriter(new FileWriter(this.filename, true));
30 out.write(formatMessage(level, msg) + "\n");
32 } catch(Exception e) {
33 /** If we are unable to write our log message, go ahead and
34 * fall back to the default (stdout) logger */
35 Logger.init(logLevel, new Logger());
36 Logger.logByLevel(ERROR, "Unable to write to log file " + this.filename);
37 Logger.logByLevel(level, msg);
42 } catch(Exception e) {}