LogUtil工具
package com.develop.web.util; import java.util.concurrent.locks.ReentrantLock;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory; public class LogUtil{ private static final String utilClass = LogUtil.class.getName();
private static Logger logger = null;
private static ReentrantLock lock = new ReentrantLock(); public static Logger getLogger() { StackTraceElement[] stacks = Thread.currentThread().getStackTrace(); int depath = 0;
if(stacks!=null&&stacks.length>0){
for(int i=0;i<stacks.length;i++){
if(utilClass.equals(stacks[i].getClassName())){
depath = i+1;
break;
}
}
} String className = stacks[depath].getClassName();
lock.lock();
try {
logger = LoggerFactory.getLogger(className);
} catch (Exception e) {
e.printStackTrace();
} finally {
lock.unlock();
} return logger;
}
}
LogUtil工具的更多相关文章
- Android开发时经经常使用的LogUtil
		
在开发过程中经经常使用到Log.我们常写的一种方式就是自己定义一个LogUtil工具类 private static boolean LOGV = true; private static boole ...
 - log4js日志
		
安装log4js:npm install log4js express中配置log4js中间件: var log = require("./modules/utils/logUtil.js& ...
 - Android应用中添加Log4j的示例
		
[2016-06-30]最新的log4j已经集成在DR_support_lib库中 具体请看: https://coding.net/u/wrcold520/p/DR_support_lib/git/ ...
 - hive自定义UDTF函数叉分函数
		
hive自定义UDTF函数叉分函数 1.介绍 从聚合体日志中需要拆解出来各子日志数据,然后单独插入到各日志子表中.通过表生成函数完成这一过程. 2.定义ForkLogUDTF 2.1 HiveUtil ...
 - 简单的工具LogUtil、Toast
		
简单的工具LogUtil.Toast 能够用了 import android.content.Context; import android.util.Log; import android. ...
 - 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil
		
封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,代码比较简单,主要是把MongoTarget的配置.FileTarget的配置集成到类中,同时利用缓存依赖来判断是否需要重新创 ...
 - 封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,nloglogutil
		
封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil,代码比较简单,主要是把MongoTarget的配置.FileTarget的配置集成到类中,同时利用缓存依赖来判断是否需要重新创 ...
 - Go/Python/Erlang编程语言对比分析及示例          基于RabbitMQ.Client组件实现RabbitMQ可复用的 ConnectionPool(连接池)   封装一个基于NLog+NLog.Mongo的日志记录工具类LogUtil   分享基于MemoryCache(内存缓存)的缓存工具类,C# B/S 、C/S项目均可以使用!
		
Go/Python/Erlang编程语言对比分析及示例 本文主要是介绍Go,从语言对比分析的角度切入.之所以选择与Python.Erlang对比,是因为做为高级语言,它们语言特性上有较大的相似性, ...
 - 自定义日志工具LogUtil
		
package com.pingyijinren.test; import android.util.Log; /** * Created by Administrator on 2016/5/20 ...
 
随机推荐
- [py]字符串转换为列表
			
字符串转换为列表 "[1,2,3]" ==> [1,2,3]
 - CLR总览
			
Contents 第1章CLR的执行模型... 4 1.1将源代码编译成托管代码模块... 4 1.2 将托管模块合并成程序集... 6 1.3加载公共语言运行时... 7 1.4执行程序集的代码.. ...
 - 合理利用配置不同的机器资源做redis cluster的server
			
Redis cluster可以使用不同配置的机器学习因为我们可以手动调整不同的机器所承担的slot的个数,这样内存小CPU相对少的机器应该承担更少的slots
 - c# 判断文件是否发生了变化
			
你这个是想文件发生改变时,自动调用一个函数,做出一些操作呢. 还是有一个按钮(或者别的什么),你去点击一下,然后检测下一个文件,是否发生了变化? 下面的代码,监控d盘下的所有.txt文件的修改 1 2 ...
 - python 参数解析ArgumentParser
			
#!/usr/bin/env python #coding:utf-8 from argparse import ArgumentParser #--------------------------- ...
 - robot framework自定义python库
			
自定义python库的好处: robot framework填表式,将python的灵活性弄没了,但是不要担心,RF早就想到了解决办法,就是扩充自己的库. 1.在python应用程序包目录下创建一个新 ...
 - Flume:sink.type=hive
			
Flume以Kafka为Source,以Hive为Sink进行数据转存. 业务背景:公司要求将某四川城市的卡口数据实时接入大数据平台中,历史数据可以通过Hive进行Load,也就是增量数据的对接问题. ...
 - mysql----------阿里云RDS导入导出
			
1.这是阿里云rds如何将导出的物理备份文件,导入到自建库里面: https://help.aliyun.com/knowledge_detail/5973700.html?spm=5176.7766 ...
 - 关于c语言中的program_invocation_short_name
			
错误源自用g++的交叉编译工具链编译eudev.经过一番查找,发现在 errno.h 这个头文件中有 program_invocation_short_name 的 extern 定义. 经过查看 e ...
 - (转)Properties Editor为你解除通过native2ascii进行Unicode转码的烦恼
			
在Java或J2EE应用程序的设置文件或国际化对应的桌面应用程序的开发中,广泛使用着属性文件.然而,你必须通过J2SDK中的native2ascii工具来将文件中的多字节字符转换成Unicode的字符 ...