log4j
slf4j 是标准,只提供接口
* logback (一般的实现)
为什么需要日志系统
* System.out.println 低技术含量, 污染源代码,降低易读性
* log:
输出媒介,优先级,格式化,日志过滤,日志管理,参数配置
日志系统的分类
* 通用的日志框架
* facade 接口层
jcl (由它将log4j的一些类,转化为slf4j的)无缝隙迁移到slf4j
slf4j (Simple Logging Facade For java)
* 参数化的日志信息
* Marker
日志系统的几个重要的概念
* Logger
* Appender 输出目的地
* Layout / Encode 格式和编码
* Filter 基本的过滤,以后讲解
logback.xml 配置文件
注意打印日志的级别 Log.info('order no is' + no)
ac : Log.info("order no is {}", no)
* 不要影响业务逻辑
* 不要打印太多的日志
* Logger.error("", e.getMessage)
Logback 更好
监控 :
count 队列 锁?
meter 1分钟, 5分钟, 15分钟 一个应用 几分钟,有多少个请求,
上线一个东西 :至少上两台
QTS 对系统容量有一个很好的评估
发现问题,通过监控指标
Timer : 记忆请求时间
300ms 请求不变,,但是到了 500ms
output图形展现
应该有一个报警,报警值
监控 - 1000多台机器,挂没挂,cpu load的那些数据从哪里来的?
写 Sprng mvc 下,不要把一个其中的 hascheck.html filter掉
加 nego 监控
每发布一个系统,要人守护那监控30分钟,看是否有问题
出问题 : 5分钟内,上 RTX。
监控怎么样?是一个非常非常重要的东西。
作业 : Logger 改造, 做异步