Sentinel教程:10 日志和实时监控

日志

Sentinel 日志目录可通过 csp.sentinel.log.dir 启动参数进行配置。

拦截详情日志(block 日志)

无论触发了限流、熔断降级还是系统保护,它们的秒级拦截详情日志都在 ${user_home}/logs/csp/sentinel-block.log里。如果没有发生拦截,则该日志不会出现。

日志格式如下:

2014-06-20 16:35:10|1|sayHello(java.lang.String,long),FlowException,default,origin|61,0
2014-06-20 16:35:11|1|sayHello(java.lang.String,long),FlowException,default,origin|1,0

含义:

秒级监控日志(metrics 日志)

所有的资源访问都会产生秒级监控日志,日志文件默认为 ${user_home}/logs/csp/${app_name}-${pid}-metrics.log(会随时间滚动)。

日志格式如下:

1532415661000|2018-07-24 15:01:01|sayHello(java.lang.String)|12|3|4|2|295|0|0|1

含义:

业务日志(record 日志)

其它的日志在 ${user_home}/logs/csp/sentinel-record.log.xxx 里。该日志包含规则的推送、接收、处理等记录,排查问题的时候会非常有帮助。

集群限流日志(cluster client 日志)

${log_dir}/sentinel-cluster-client.log:Token Client 日志,会记录请求失败的信息。

SPI 扩展机制

1.7.2 版本开始,Sentinel 支持 Logger 扩展机制,可以实现自定义的 Logger SPI 来将 record log 等日志自行处理。metric/block log 暂不支持定制。

实时监控

Sentinel 提供对所有资源的实时监控。如果需要实时监控,客户端需引入以下依赖(以 Maven 为例):

<dependency>
    <groupId>com.alibaba.csp</groupId>
    <artifactId>sentinel-transport-simple-http</artifactId>
    <version>x.y.z</version>
</dependency>

引入上述依赖后,客户端便会主动连接 Sentinel 控制台。通过 Sentinel 控制台 即可查看客户端的实时监控。