import org.apache.log4j.Logger;
public class LogUnits {
private static Logger logger = null;
public static void logException(Exception e){
StackTraceElement[] stacks = (new Throwable()).getStackTrace();
String newClass = stacks[1].getClassName();
if(logger == null || !newClass.equals(logger.getName())){
logger = Logger.getLogger(newClass);
}
StringBuffer logInfo = new StringBuffer(100);
logInfo.append("Exception happen in Method:" + stacks[1].getMethodName()+"();");
logInfo.append("\r\n");
logInfo.append(" line number:"+stacks[1].getLineNumber()+ ";");
logInfo.append("\r\n");
StringWriter trace = new StringWriter();
e.printStackTrace(new PrintWriter(trace));
logInfo.append(" Exception:");
logInfo.append(trace.toString()); logger.error(logInfo.toString());
}
public static void logInfo(String message){
StackTraceElement[] stacks = (new Throwable()).getStackTrace();
String newClass = stacks[1].getClassName();
if(logger == null || !newClass.equals(logger.getName())){
logger = Logger.getLogger(newClass);
}
StringBuffer logInfo = new StringBuffer(100);
logInfo.append("Method Name:" + stacks[1].getMethodName()+"();");
logInfo.append("\r\n");
logInfo.append("line number:"+stacks[1].getLineNumber()+ ";");
logInfo.append("\r\n");
logInfo.append("Message:");
logInfo.append(message);
logger.info(logInfo);
}
public static void logDebug(String message){
StackTraceElement[] stacks = (new Throwable()).getStackTrace();
String newClass = stacks[1].getClassName();
if(logger == null || !newClass.equals(logger.getName())){
logger = Logger.getLogger(newClass);
}
StringBuffer logInfo = new StringBuffer(100);
logInfo.append("Method Name:" + stacks[1].getMethodName()+"();");
logInfo.append("\r\n");
logInfo.append("line number:"+stacks[1].getLineNumber()+ ";");
logInfo.append("\r\n");
logInfo.append("Message:");
logInfo.append(message);
logger.debug(logInfo);
}
}
分享到:
相关推荐
MFC使用的日志记录工具类 在指定目录下使用当前日期进行记录,程序运行时可自动将每日的日志记录在一个文件中。适用于长期运行的程序。写日志时会进行加锁操作。 项目是使用VS2015建立的支持MFC的控制台程序进行测试...
调用方法:IndexDataLog.print(入参),可以设置文件大小,文件写满以后自动创建新的日志文件。一般用来记录用户的搜索词,或操作记录。目前以json格式保存日志,入参稍作修改,可以传入对象,linux和windows都支持。
封装的一个用来记录log日志的工具类,使用方便,可以把日志记录到文件中
LogUtil是日志记录工具类,用于输出调试信息,帮助开发者追踪代码运行状态。它通常包含`debug()`, `info()`, `warn()`, `error()`等方法,分别对应不同的日志级别。开发者可以根据需求控制日志级别,以便在开发和...
12. **日志记录工具类**:如Log4j、SLF4J、Java Util Logging等,提供灵活的日志记录方案。 这些工具类大大提升了代码的可读性和可维护性,减少了重复代码,提高了开发效率。在实际项目中,根据具体需求选择合适的...
总结来说,C#的日志小工具类是开发中不可或缺的工具,它简化了日志记录的过程,使得调试和问题排查更加便捷。通过创建或使用这样的工具,开发者可以确保程序的健康运行,并及时应对可能出现的问题。在`LogHelper.cs`...
6. **日志记录工具类** Android的日志系统是调试的重要手段,工具类可能提供自定义日志标签、级别控制、格式化输出等功能,便于追踪程序运行状态。 7. **权限管理工具类** 针对Android 6.0及以上版本的运行时权限...
在IT行业中,日志记录是软件开发不可或缺的一部分,它能够帮助开发者追踪程序运行状态,定位错误,优化性能。本文将详细解析标题为“C# 打印日志工具类”的主题,以及如何实现一个可自定义格式、路径和内容的日志...
7. **多平台兼容**:除了Android平台,`Logger`类还可以考虑兼容其他平台,如Java SE环境,以便在服务器端或桌面应用中使用相同的日志记录方式。 在`JavaApk源码说明.txt`文件中,可能会详细解释如何实现这样一个`...
在Java编程中,日志工具类的实现是一个非常重要的部分,尤其在开发复杂项目时,良好的日志系统能够帮助开发者追踪程序运行状态、定位...在实际项目中,可以根据需求进一步定制工具类,以满足特定的日志记录和管理需求。
6. **日志记录工具类**:日志是软件调试和问题追踪的重要手段。工具类可能集成了`log4j`、`slf4j`或`java.util.logging`,提供了方便的日志记录接口,便于开发者控制日志级别和输出格式。 除了以上提到的,这个...
配置文件`log.config`的引入则提供了更高级别的定制性,允许用户根据项目需求调整日志记录的级别、格式、文件路径等参数。 在实际开发中,创建自定义的日志工具类通常会基于已有的日志框架,如Log4j、SLF4J(Simple...
4. **日志记录工具类**:日志工具类是用于记录程序运行时的信息,帮助开发者追踪错误和调试代码。它们通常提供不同级别的日志输出(如DEBUG、INFO、WARNING、ERROR),并且可以设置输出格式和目标(如控制台、文件或...
总的来说,这个"JAVA版简单日志工具类"为小型Java项目提供了一种轻量级的日志解决方案,既满足了基本的日志记录需求,又保持了代码的简洁性和可扩展性。通过合理使用,可以在开发过程中极大地提高效率。
这些工具类通常包含对特定任务的封装,如日志记录、配置管理、字符串处理、日期时间操作、图像处理、文件操作以及安全相关的加密算法。下面将详细解释这些工具类的主要功能和应用场景。 1. **日志操作(log4net)**: ...
在Android开发中,日志工具类是至关重要的,它用于记录应用程序运行时的详细信息,帮助开发者调试和排查问题。Android系统内置了`Log`类,但为了更好地管理和组织日志输出,通常会自定义一个日志工具类,如本案例中...
总结来说,“VC日志记录类”是一个功能强大的工具,它通过多线程同步机制保证了日志的安全写入,提供了灵活的日志级别控制和自动清理功能,是VC++项目中不可或缺的一部分。开发者可以根据实际需求对`LogFile.cpp`和`...
9. **LogUtils**:日志记录工具类,用于输出调试信息,可能支持不同级别的日志输出。 10. **EncryptionUtils**:加密解密工具类,用于数据安全,可能使用了如AES、DES等加密算法。 每个工具类都是为了简化特定任务...
- **日志记录工具类**:提供记录日志的方法,如`LogInfo`、`LogError`,方便调试和问题追踪。 - **缓存工具类**:实现简单的内存缓存功能,提高数据读取速度。 - **加密解密工具类**:封装加密算法,如AES、RSA,...
这个项目提供了从`DataTable`导出到Excel的完整解决方案,包括数据库连接工具类、日志记录以及异常处理,非常适合C#初学者学习。 首先,数据库连接工具类是应用程序与数据库交互的基础。在C#中,可以使用ADO.NET...