我使用默认的java.util.Logging
API将信息打印到我的日志中。
Logger.getLogger(Datastore.class.getName());
logger.info("Registering ");
其中Datastore是类的名称。但是我无法找到日志的存储位置。我在Windows 7机器上运行,上面的程序是servlet的一部分。我为这个看似愚蠢的问题道歉,但有时这些微不足道的事情会严重阻碍进展。
答案 0 :(得分:1)
您可以向Logger添加处理程序,以指定日志的位置。
Handler handler = new FileHandler("DataStore.log");
Logger logger = Logger.getLogger(Datastore.class.getName());
logger.addHandler(handler);
logger.info("Registering ");
记录器只创建日志对象,但它是实际显示它的处理程序。处理程序可以是从Handler定义的任何子类。如果使用FileHandler,则应阅读FileHandler的Java API。
答案 1 :(得分:1)
默认情况下,java.util.logging.Logger
将输出发送到控制台,不会打印到文件。您必须向记录器添加java.util.logging.Handler
。
下面是创建HTML处理程序,TEXTFILE的片段。希望这会有所帮助。
package logging;
import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Formatter;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.logging.SimpleFormatter;
public class MyLogger {
static private FileHandler fileTxt;
static private SimpleFormatter formatterTxt;
static private FileHandler fileHTML;
static private Formatter formatterHTML;
static public void setup() throws IOException {
// Create Logger
Logger logger = Logger.getLogger("");
logger.setLevel(Level.INFO);
fileTxt = new FileHandler("Logging.txt");
fileHTML = new FileHandler("Logging.html");
// Create txt Formatter
formatterTxt = new SimpleFormatter();
fileTxt.setFormatter(formatterTxt);
logger.addHandler(fileTxt);
// Create HTML Formatter
formatterHTML = new MyHtmlFormatter();
fileHTML.setFormatter(formatterHTML);
logger.addHandler(fileHTML);
}
}
如需进一步参考,请阅读此article。
答案 2 :(得分:0)
检查log4j配置文件,该文件将包含更新日志的位置的路径。 Check this for reference
答案 3 :(得分:0)
如果您没有log4j配置文件(假设Logger来自log4j),事情会变得非常安静。
对于初学者,尝试在classes目录的根目录中添加属性文件,例如:
# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=DEBUG, A1
# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
来自here