public class LogUI {
private static LogUI instance;
private static JFrame frame;
private Log4JMonitor logMonitor;
private static List<Object> logCache = new ArrayList<Object>();
public LogUI() {
instance = this;
}
///////////////////////UI
private void buildUI() {
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
frame.getContentPane().add(buildContentPanel(), BorderLayout.CENTER);
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
frame.setSize(100, 75);
}
private Component buildContentPanel() {
JSplitPane contentSplit = new JSplitPane();
contentSplit.setTopComponent(new JTextArea("The Main Text"));
contentSplit.setBottomComponent(buildLogPanel());
contentSplit.setDividerLocation(550);
contentSplit.setResizeWeight(1);
return contentSplit;
}
private Component buildLogPanel() {
logMonitor = new Log4JMonitor();
logMonitor.addLogArea("log one", "com.log.one", true).setLevel(
Level.DEBUG);
logMonitor.addLogArea("log two", "com.log.two", true).setLevel(
Level.DEBUG);
for (Object message : logCache) {
logMonitor.logEvent(message);
}
return logMonitor;
}
public void show() {
buildUI();
frame.setVisible(true);
}
////////////////////Log
public static synchronized void log(final Object msg) {
if (instance == null || instance.logMonitor == null) {
logCache.add(msg);
return;
}
if (SwingUtilities.isEventDispatchThread()) {
instance.logMonitor.logEvent(msg);
} else {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
instance.logMonitor.logEvent(msg);
}
});
}
}
//////////////////Test Cases
public void doTests(){
LogTestOne one=new LogTestOne();
one.doLog();
LogTestTwo two=new LogTestTwo();
two.doLog();
}
public static void main(String[] args) throws Exception {
frame = new JFrame("LogUI ");
LogUI logUi = new LogUI();
logUi.show();
logUi.doTests();
}
}
|
相关推荐
这个文档是本人自己打开log4j源码自己总结的,希望对大家有用。
log4j.appender.LF5_APPENDER=org.apache.log4j.lf5.LF5Appender log4j.appender.LF5_APPENDER.MaxNumberOfRecords=2000 # 发送日志给邮件 log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender log4j.appender....
log4j-snmp-appender.jar, log4j-taglib-2.0.2-javadoc.jar, log4j-taglib-2.0.2-sources.jar, log4j-taglib-2.0.2.jar, log4j-to-slf4j-2.0.2-javadoc.jar, log4j-to-slf4j-2.0.2-sources.jar, log4j-to-slf4j-...
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender log4j.appender.CONSOLE.Target=System.out log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout log4j.appender.CONSOLE.layout....
log4j按照不同appender生成日志例子,log4j按照不同接口生成各自日志文件小例子。
log4j2-kafka-appender 用于log4j2的Kafka附加程序。 此附加程序使用新的java kafka生产者api以获得更好的性能和吞吐量。 ## Build ./gradlew jar //生成jar ##行家< dependency> < groupId>...
已经封装好,把log4j.appender.fileout=org.apache.log4j.Log4JDateAndSizeSplit 即可,其余和原api一样: log4j.appender.fileout.MaxFileSize=10240KB log4j.appender.fileout.MaxBackupIndex=20
Log4j Appender 阿里云Log Log4j Appender Apache log4j是一个Apache软件基础项目。 您可以通过Log4j控制日志的目的地。 它可以是控制台,文件,GUI组件,套接字,NT事件日志,系统日志。 您也可以控制每个日志的...
解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs/app.log 其中“${WORKDIR}/”是个变量,会被System Property中的“WORKDIR...
关于配置文件的名称以及在项目中的存放位置 log4j 2.x版本不再支持像1.x中的....如果本地要测试,可以把log4j2-test.xml放到classpath,而正式环境使用log4j2.xml,则在打包部署的时候不要打包log4j2-test.xml即可。
解决log4j乱码 在log4j.properties配置文件中可以指定字符编码: 下面这行配置指定了两...log4j.rootCategory=INFO,appender1的名字,appender2的名字 下面这两行配置将上一行的两个appender的字符编码配置为GBK:
log4j.appender.redis=RedisAppender log4j.appender.redis.layout=… log4j.appender.redis.hosts=localhost:6379,10.10.3.3:7000 log4j.appender.redis.password=password log4j.appender.redis.mode=list log4j....
o LOG4J2-134: Use %red, %white, %blue, and so on in the console appender. o LOG4J2-133: Allow custom message creation via a message factory. o Added Flume Appender samples. 还包括诸多 bug 修复,...
log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout....
log4j.appender.A1 = org.apache.log4j.ConsoleAppender log4j.appender.A1 = org.apache.log4j.RollingFileAppender log4j.appender.A1.File = test.log 设置输入格式 log4j.appender.A1.layout = org.apache....
log4j2-elasticsearch-core实现的框架提供程序 log4j2-elasticsearch-hc与Elasticsearch 2.x,5.x,6.x和7.x集群兼容的优化Apache Async HTTP客户端 log4j2-elasticsearch-jest与Elasticsearch 2.x,5.x,6.x和7.x...
标签:activemq-log4j-appender-5.10.0-sources.jar,activemq,log4j,appender,5.10.0,sources,jar包下载,依赖包
标签:activemq-log4j-appender-5.10.0-javadoc.jar,activemq,log4j,appender,5.10.0,javadoc,jar包下载,依赖包
### set log levels ###log4j.rootLogger = debug , stdout , D , E### 输出到控制台 ###log4j.appender.stdout =org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.Target =System.outlog4j.appender.stdout....