1 /*******************************************************************************
2 * Copyright (c) 2017 Politecnico di Torino and others.
4 * All rights reserved. This program and the accompanying materials
5 * are made available under the terms of the Apache License, Version 2.0
6 * which accompanies this distribution, and is available at
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *******************************************************************************/
9 package it.polito.verigraph.service;
11 import java.io.IOException;
12 import java.util.logging.ConsoleHandler;
13 import java.util.logging.FileHandler;
14 import java.util.logging.Formatter;
15 import java.util.logging.Handler;
16 import java.util.logging.Level;
17 import java.util.logging.LogManager;
18 import java.util.logging.Logger;
19 import java.util.logging.SimpleFormatter;
21 public class VerigraphLogger {
22 static private FileHandler fileTxt;
23 static private SimpleFormatter formatterTxt;
24 private static VerigraphLogger verigraphlogger= new VerigraphLogger();
25 public static Logger logger;
27 private VerigraphLogger() {
29 // suppress the logging output to the console
30 /*Logger rootLogger = Logger.getLogger("");
31 Handler[] handlers = rootLogger.getHandlers();
32 if (handlers[0] instanceof ConsoleHandler) {
33 rootLogger.removeHandler(handlers[0]);
36 /*Logger globalLogger = Logger.getLogger("");
37 Handler[] handlers = globalLogger.getHandlers();
38 for(Handler handler : handlers) {
39 globalLogger.removeHandler(handler);
42 LogManager.getLogManager().reset();
43 // get the global logger to configure it
44 logger = Logger.getLogger(VerigraphLogger.class.getName());
45 // logger.setUseParentHandlers(false);
46 logger.setLevel(Level.INFO);
48 if(System.getProperty("catalina.home") != null)
49 fileTxt = new FileHandler(System.getProperty("catalina.home")+"/logs/verigraph_log.txt");
50 else fileTxt= new FileHandler("verigraph_log.txt");
52 } catch (SecurityException e) {
53 // TODO Auto-generated catch block
55 } catch (IOException e) {
56 // TODO Auto-generated catch block
60 // create a TXT formatter
61 formatterTxt = new SimpleFormatter();
62 fileTxt.setFormatter(formatterTxt);
63 logger.addHandler(fileTxt);
67 public static VerigraphLogger getVerigraphlogger(){
68 return verigraphlogger;