`
freewxy
  • 浏览: 344125 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

自定义日志模块实现

阅读更多
package wxy.XXXX.Utils;

import java.util.Date;



public class LogTools {
	//私有化构造对象
	private LogTools(){}
	//是否输出调试信息标识
	private static boolean isDebug=true;
	
	//禁止输出调试信息
	public static void disDebug(){
		isDebug=true;
	}
	/*
	 * debug
	 * info
	 * warn
	 * error
	 */
	public static void Debug(Class<?> c,Object msg){
	     if(!isDebug){return;}
	     //获取格式化时间格式
	     java.text.SimpleDateFormat format=new java.text.SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E");
	     //获取格式化的当前时间
	     String InfoTime=format.format(new Date());
	     //在屏幕上打印出调试信息
	     System.out.println("Debug:"+msg+" /"+c.getSimpleName()+" TIME-"+InfoTime);
    } 
	
	public static void Info(Class<?> c,Object msg){
	     if(!isDebug){return;}
	     //获取格式化时间格式
	     java.text.SimpleDateFormat format=new java.text.SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E");
	     //获取格式化的当前时间
	     String InfoTime=format.format(new Date());
	     //在屏幕上打印出调试信息
	     System.out.println("Info:"+msg+" /"+c.getSimpleName()+" TIME-"+InfoTime);
    } 
	
	public static void Warn(Class<?> c,Object msg){
	     if(!isDebug){return;}
	     //获取格式化时间格式
	     java.text.SimpleDateFormat format=new java.text.SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E");
	     //获取格式化的当前时间
	     String InfoTime=format.format(new Date());
	     //在屏幕上打印出调试信息
	     System.out.println("Warn:"+msg+" /"+c.getSimpleName()+" TIME-"+InfoTime);
    }
	
	public static void Error(Class<?> c,Object msg){
	     if(!isDebug){return;}
	     //获取格式化时间格式
	     java.text.SimpleDateFormat format=new java.text.SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E");
	     //获取格式化的当前时间
	     String InfoTime=format.format(new Date());
	     //在屏幕上打印出调试信息
	     System.out.println("Error:"+msg+" /"+c.getSimpleName()+" TIME-"+InfoTime);
    }
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
       System.out.println("LogTools test!");
       LogTools.Info(String.class,"this is Info Test!");
       LogTools.Debug(String.class, "this is Debug Test!");
       LogTools.Error(String.class, "this is Error Test!");
       LogTools.Warn(String.class, "this is Warn Test!");
	}
	
}

 

分享到:
评论

相关推荐

    Java自定义日志模块实现

    自定义日志模块(接口及代理实现),而不直接使用第三方日志框架接口,避免在日志框架升级或者切换时,代码过多耦合。 这个举例说明一下: 比如,在某一项目开始时使用的是“log4j”框架,后面经过研究发现“sf4j...

    FreeSwitch完整的自定义模块定义和改善自定义事件的例子

    在FreeSwitch中,开发者可以通过自定义模块来扩展其功能,满足特定需求。本篇文章将深入探讨如何定义和优化自定义模块,以及处理自定义事件。 首先,理解FreeSwitch模块的生命周期是至关重要的。一个模块通常包括...

    Django实现的自定义访问日志模块示例

    ### Django 实现自定义访问日志模块详解 在 Web 开发中,日志记录是非常重要的一个环节,它能够帮助开发者追踪应用的行为、诊断问题并优化性能。Django 作为 Python 最流行的 Web 框架之一,虽然内置了一些日志功能...

    简洁易用的日志模块

    一个良好的日志模块应当允许用户自定义日志级别,以适应不同的开发阶段和使用场景。 "EasyLog"作为压缩包子文件的名称,可能是指这个日志模块的实现或示例代码库。这通常包含源代码、示例程序、文档等资源,供...

    易语言log日志模块源码

    通过分析和使用"易语言log日志模块源码",开发者可以学习到如何在易语言环境中实现高效且实用的日志系统,这对于提升软件质量和维护性具有积极意义。同时,这个模块也可以作为一个基础,进一步定制化以适应特定项目...

    开源框架log4cpp和日志模块实现.pdf

    【log4cpp开源框架详解与日志模块实现】 log4cpp是一个流行的开源日志框架,源自Java的日志处理项目log4j,它为C++程序员提供了灵活的日志记录功能。框架的核心理念是通过Category(分类)、Appender(输出器)、...

    springBoot+aop+自定义注解+本地线程实现统一接口日志及接口响应时长

    内容概要:springboot+拦截器+aop+自定义注解+本地线程实现统一接口日志记录,记录下接口所在模块、接口描述、接口请求参数、接口返回参数、接口请求时间以及接口耗时用于接口优化,接口记录参数以及操作人防止使用...

    C++日志模块很好用的

    7. **可扩展性**:好的日志模块应该允许用户添加自定义的日志处理器,比如发送邮件、推送通知等。 8. **日志过滤**:根据关键字或者特定条件过滤日志,只输出符合要求的信息,有助于定位问题。 9. **库的使用与...

    Ansible自定义模块

    这可以通过在模块文件顶部添加三引号(`"""`)包围的多行文本实现。 通过以上步骤,我们可以创建一个完全定制化的Ansible模块,如“mondo_deploy.py”,它可能包含了应用部署的复杂逻辑,如检查环境、下载文件、配置...

    cb版日志模块很好用的

    8. 扩展性:好的日志模块应该允许用户自定义日志处理器,以便适应不同的应用场景,如发送邮件通知、对接日志服务等。 在C++ Builder中,实现日志功能通常可以通过以下方式: 1. 使用第三方库:例如log4cpp、log4c...

    基于面向对象系统日志管理模块的设计与实现.pdf

    日志模块的设计还考虑了【可移植性】,使用了标准C++和Boost线程库,这样可以跨编译器和平台使用。此外,提供用户设置模块行为的接口,允许用户自定义日志文件位置、过滤特定级别日志,增强了系统的灵活性。 日志...

    [C++][Logging] 项目中写日志模块的实现

    在实现自定义日志模块时,可以考虑以下步骤: 1. **设计日志结构体**:创建一个结构体,包含日志级别、时间、线程ID、模块名、日志消息等字段。 2. **定义日志级别枚举**:定义如DEBUG、INFO、WARNING等枚举值,...

    一个小型的日志功能模块

    这个小型日志模块可能借鉴了这些框架的设计思想,也可能有其独特的实现方式,如自定义的日志接口和适配器,以满足特定的需求。 6. **使用和配置**: 使用这个日志模块时,开发者需要在代码中引入相应的依赖,并...

    【工单预约表单plus模块V2.0.4】功能模块+原版模块打包+支持自定义的万能表单模块.zip

    工单预约表单plus模块V2.0.4原版模块打包工单预约表单plus是支持自定义的万能表单模块 支持普通表单、付费报名、预约服务等三合一功能 支持一键导出全部主题数据,或导出分类下全部主题数据。 源码更新日志: 该...

    springmvc log4j2 logback 注解 jackson 日志脱敏实现源码

    `Logback`和`Log4j`都是广泛使用的日志框架,它们允许自定义日志格式和处理策略。 2. **SpringMVC返回报文脱敏**:`SpringMVC`是Spring框架的一个模块,主要用于构建Web应用。在响应报文时,如果包含了敏感信息(如...

    ILFW日志模块

    其次,ILFW日志模块具备强大的日志格式化能力,允许自定义日志输出格式,包括时间戳、线程ID、进程ID、模块名、函数名、日志级别等信息,使得日志更具可读性和分析价值。此外,模块还支持JSON等结构化格式,方便后期...

    C语言日志模块.zip

    下面我们将详细探讨C语言日志模块的设计、实现以及其在实际应用中的作用。 首先,C语言日志模块的核心功能是提供一种有序、结构化的记录方式,帮助开发者追踪程序运行状态。日志通常包含时间戳、日志级别(如DEBUG...

    boost库封装的日志模块

    Boost.Log不仅支持基本的日志记录,如输出文本消息,还支持自定义日志级别、过滤器、日志目标(如文件、控制台或网络)以及格式化。此外,它具备高性能和线程安全特性,使得在多线程环境中使用变得简单。 二、`...

    Qt 打印日志系统,实现打印日志保存,窗口显示日志,网络传输日志

    一套成熟的系统往往都有相应的日志系统,以便调试查看 Qt的打印信息默认处理程序将消息打印到X11下的标准输出或Windows下的调试器,其实...Qt 打印日志系统,实现打印日志保存,过期删除,窗口显示日志,网络传输日志

Global site tag (gtag.js) - Google Analytics