博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Diamond设计思想杂碎
阅读量:6070 次
发布时间:2019-06-20

本文共 1325 字,大约阅读时间需要 4 分钟。

hot3.png

1、针对每个类里都定义一个logger显得繁琐,可以定义一个LogUtil,将作用相似的某些类划分成一个log,例如notify package中有notifyTask、notifyProcessor、notifyService,可以归为

static public final Logger notifyLog = LoggerFactory.getLogger("com.taobao.diamond.server.notifyLog");

LogUtil结构如下,每个log可以设置成一个log文件,利用logback.xml配置

public class LogUtil {    /**     * 默认的日志     */    static public final Logger defaultLog = LoggerFactory.getLogger("com.taobao.diamond.server");    /**     * 致命错误,需要告警     */    static public final Logger fatalLog = LoggerFactory            .getLogger("com.taobao.diamond.server.fatal");    ......}
${user.home}/diamond/logs/fatal.log
true
${user.home}/diamond/logs/fatal.log.%d{yyyy-MM-dd}.%i
20MB
15
128MB
true
%date %level %msg%n%n
GBK

2、Properties文件包含众多kv,定义一个PropertyUtil,由它负责解析出每个kv,再使用函数返回v。同样系统参数如System.getProperty("diamond.server.port", "8080");也可以使用这种方式。

notifySocketTimeout = Integer.valueOf(props.getProperty("notifySocketTimeout", "200"));public static int getNotifySocketTimeout() {return notifySocketTimeout;}

 

转载于:https://my.oschina.net/u/2302503/blog/1573520

你可能感兴趣的文章
以“场景化”接驳“数字化”,浪潮存储驱动三维智能产业
查看>>
消息中间件kafka与activemq、rabbitmq、zeromq、rocketmq的比较
查看>>
企业愿接受虚拟化 云计算最受关注
查看>>
Palo Alto Networks威胁简报:即刻安装补丁程序,以免受到 Android Toast 覆盖的攻
查看>>
不想玩大数据的厨子都不是冒险家
查看>>
IDC云安全评估: 阿里云为最重视安全建设的云服务提供商
查看>>
未来五年内将重塑大数据技术的五种趋势
查看>>
银行卡识别SDK亮相 扫清支付最后障碍
查看>>
DataWorks使用之批量删除数据表
查看>>
众筹超过500万美元:让MP3浴火重生的PonoPlayer
查看>>
如何构建面向应用的运维管理新思维
查看>>
你看那代码,好像一条链哎
查看>>
有哪些不为人知却好用到爆的Windows技巧?
查看>>
程序员久坐伤身:站起来,走出去,别回来
查看>>
Hulu李彬:看到不一样的视频网站,所遇挑战何尝不是一次革新的机会?
查看>>
《 自动化测试最佳实践:来自全球的经典自动化测试案例解析》一一2.1 本案例研究的背景...
查看>>
315“黑科技”背后的白帽黑客平台GeekPwn
查看>>
轻轻揭开 b*tree 索引结构的神秘面纱
查看>>
企业喜爱人工智能CRM需要理由吗?
查看>>
Android 连麦Demo App 接入指南
查看>>