做插件开发的都知道当应用跑不起来了就去看看workspace里的.log文件,错误信息很详细,那样解决问题就方便多了,这个功能很好,所以学习了下,和大家分享下,实现的原理也就一行代码

Java代码

Platform.getLog(Platform.getBundle(bundleID)).log(

newStatus(serverity, bundleID, code, message, t));

Platform.getLog(Platform.getBundle(bundleID)).log(

new Status(serverity, bundleID, code, message, t));

原理知道了,那么怎么样得到像eclipse生成.log里的那些效果呢?

runtime包下有个Status类它继承IStatus,大家可以去看看它的源码,我说到它的原因就是因为它包含了eclipse的warning,error以及info,这三类log都是最常用的,下面我也不啰嗦了,贴代码

Java代码

packagecom.bjgtt.msap.workbench.utilities;

importorg.eclipse.core.runtime.Platform;

importorg.eclipse.core.runtime.Status;

publicclassLogUtil {

publicstaticvoidlogError(Throwable t) {

logError(null, t.getMessage(), t);

}

publicstaticvoidlogError(String bundleID, Throwable t) {

logError(bundleID, t.getMessage(), t);

}

publicstaticvoidlogError(String bundleID, String message, Throwable t) {

log(bundleID, message, t, Status.ERROR, Status.OK);

}

publicstaticvoidlogWarning(String message) {

log(null, message,null, Status.WARNING, Status.OK);

}

publicstaticvoidlogError(String bundleID, String message) {

logError(bundleID, message,null);

}

publicstaticvoidlog(String bundleID, String message, Throwable t,intserverity,intcode) {

if(bundleID ==null) {

bundleID = Activator.getDefault().getBundle().getSymbolicName();

}

Platform.getLog(Platform.getBundle(bundleID)).log(newStatus(serverity, bundleID, code, message, t));

}

}

package com.bjgtt.msap.workbench.utilities;

import org.eclipse.core.runtime.Platform;

import org.eclipse.core.runtime.Status;

public class LogUtil {

public static void logError(Throwable t) {

logError(null, t.getMessage(), t);

}

public static void logError(String bundleID, Throwable t) {

logError(bundleID, t.getMessage(), t);

}

public static void logError(String bundleID, String message, Throwable t) {

log(bundleID, message, t, Status.ERROR, Status.OK);

}

public static void logWarning(String message) {

log(null, message, null, Status.WARNING, Status.OK);

}

public static void logError(String bundleID, String message) {

logError(bundleID, message, null);

}

public static void log(String bundleID, String message, Throwable t, int serverity, int code) {

if (bundleID == null) {

bundleID = Activator.getDefault().getBundle().getSymbolicName();

}

Platform.getLog(Platform.getBundle(bundleID)).log(new Status(serverity, bundleID, code, message, t));

}

}

大家看到了上面的类中有六个方法,归根到底都是调的最下面的方法,所以代码就变得简单多了,为大家介绍这些方法的使用吧:

首先就是logError(Throwable t)方法:

Error很显然就是捕获的异常信息了

logError(String bundleID, Throwable t) 有上面的方法了,这个方面就用不着了

接着就是logError(String bundleID, String message, Throwable t)

方法了

用了组装错误消息

logWarning(String message) :

看名字大家就知道是告警日志了,最常用的地方就是你需要得到一个对象的实例,而这个实例为null那么你就可以使用这个方法来记录日志了

logError(String bundleID, String message) :

插件错误信息,bundleID就是你的插件ID

linux查看 idt日志,实现RCP的日志管理相关推荐

  1. linux查看ihs进程和端口,IHS日志查看

    随意的tail一个access_log文件,下面是一条经典的访问记录 192.168.1.100 实用的日志分析脚本 了解日志的各种定义后,这里分享一下从网上淘来的一些对日志分析的脚本 1.查看apa ...

  2. linux查看vnc服务加密修复,VNC远程管理Linux服务器安全指导

    在开源领域,远程遥控技术的代表就是VNC了.VNC(Virtual Network Computer,虚拟网络计算机)是一套由AT&T实验室开发的可操控远程计算机的软件.根据主控端与被控端的不 ...

  3. linux查看告警日志,linux怎么查看硬件告警

    想知道怎么查看Linux中的硬件告警吗?下面是学习啦小编带来的关于linux怎么查看硬件告警的内容,欢迎阅读! Linux查看硬件告警方法一: Linux系统拥有非常灵活和强大的日志功能,可以保存几乎 ...

  4. linux查看日志的几种命令,Linux查看日志三种命令(转载)

    第一种:查看实时变化的日志(比较吃内存) 最常用的: tail -f filename (默认最后10行,相当于增加参数 -n 10) Ctrl+c 是退出tail命令 其他情况: tail -n 2 ...

  5. 如何linux查看mysql目录下日志_测试人员如何在linux服务器中查询mysql日志?

    测试工程师在测试软件的过程中,流程往往是先接口测试,接着就是功能性测试.在做功能性测试的时候,往往有这么一个工作场景,就是出现错误后,我们怎么快速排除数据库报错. 举例某个电商网站,当我们文本框中输入 ...

  6. 【实施工程师】Linux查看日志后100行

    [实施工程师]Linux查看日志后100行 tail -f 实时查看日志文件tail -f 日志文件log tail - 100f 实时查看日志文件 后一百行tail -f -n 100 catali ...

  7. linux查看上次重启日志和ip,Linux實時查看日志,訪問前10IP 和相關命令

    本文介紹Linux下tail命令的使用方法. linux tail命令用途是依照要求將指定的文件的最后部分輸出到標准設備,通常是終端,通俗講來,就是把某個檔案文件的最后幾行顯示到終端上,假設該檔案有更 ...

  8. linux view查看日志命令,linux查看日志文件内容命令tail、cat、tac、head、echo、vi

    linux查看日志文件内容命令tail.cat.tac.head.echo tail -f test.log 你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, --------- ...

  9. java查看日志命令_[Java教程]【Linux】linux查看日志文件内容命令tail、cat、tac、head、echo...

    [Java教程][Linux]linux查看日志文件内容命令tail.cat.tac.head.echo 0 2017-11-14 12:00:29 linux查看日志文件内容命令tail.cat.t ...

最新文章

  1. app.config自定义配置节点
  2. CMU最新《深度学习》2022春季课程,Ruslan Salakhutdinov教授主讲
  3. mysql游标进阶_mysql进阶(三)游标简易教程
  4. 20170908校内训练
  5. Windows半透明窗口开发技巧
  6. 动态换ip如何实现_三种方法解决动态换IP需求
  7. go语言渐入佳境[6]-operator运算符
  8. java-构建jar带哟参数提示的
  9. 优化算法笔记|萤火虫算法理解及实现
  10. c语言中文网_在C语言中使用中文字符
  11. 2T比特每秒!瞻博推出业界最快防火墙
  12. 杨辉三角形Java实现
  13. 数独c语言程序设计说明,c语言数独字谜游戏课程设计
  14. 【Springboot整合ShardingSphere(ShardingJDBC)】扫盲文(并非代码实战)
  15. java中if条件函数怎么用_if函数,多个条件怎么使用
  16. [AV1] Segment
  17. NEON intrinsics 函数模式介绍
  18. idea自动排版html,idea怎么格式化代码?
  19. 苹果手机iframe撑大父页解决办法
  20. 数据库原理及应用期末复习小结

热门文章

  1. 关于pragma pack的用法(一)
  2. 抓屏的各种方法(http://www.codeproject.com/KB/dialog/screencap.aspx)
  3. 全景图像拼接——基本流程
  4. ASCII码与string的相互转换
  5. 【数据库学习】——数据库可视化--Navicat下载安装连接教程
  6. centos 安装boost(caffe需要)
  7. C++11系列学习之二-----lambda表达式
  8. Pytorch 自定义激活函数前向与反向传播 sigmoid
  9. epub 机器人系列 阿西莫夫_艾萨克·阿西莫夫是不是穿越来的,他怎么能那么准地预言机器人,互联网技术呢?...
  10. MySql Workbench 安全模式(safe mode)