2011-11-16 22 views
7

Hiện tại tôi đang sử dụng Java util để ghi nhật ký vào tệp có thể được cấu hình từ java.util.logging.FileHandler.pattern. Tôi muốn chắp thêm dấu thời gian vào tên tệp nhật ký. Tôi cũng phải lấy đường dẫn tệp nhật ký từ thuộc tính java.util.logging.FileHandler.pattern.Gắn thêm TimeStamp vào tên tệp nhật ký của Java util logger

+0

Tôi hy vọng bạn đang sử dụng slf4j làm mặt tiền ghi nhật ký? –

+0

Sử dụng log4j :) và vài ký tự khác để thỏa mãn tối thiểu. –

Trả lời

1
public static String currentTimestamp() { 
    Calendar c = Calendar.getInstance(TimeZone.getTimeZone("UTC")); 
    DateFormat f = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM); 
    return f.format(c.getTime()); 
} 

này sẽ cho bạn trở lại một dấu thời gian

-2

Có một cái nhìn tại post này, giải thích đăng nhập chi tiết.

Bạn có thể sử dụng %t để biết thời gian trong tệp cấu hình của mình.

+1

Liên kết không còn tồn tại. java.util.logging.FileHandler không hỗ trợ% t –

+0

Đó là ngay cả thư mục tạm thời (/ tmp) – Thomas

+0

https://docs.oracle.com/javase/7/docs/api/java/util/logging/FileHandler. html cho biết: "% t" thư mục tạm thời của hệ thống –

5

có thể ví dụ này sẽ giúp bạn.

String timeStamp = new SimpleDateFormat().format(new Date()); 
FileHandler fh = new FileHandler("./jay_log_%u.%g_" +timeStamp +".log", 30000,4); 
logger.addHandler(fh); 
Các vấn đề liên quan