如何启用 Hystrix DEBUG 级别的日志记录

Posted

技术标签:

【中文标题】如何启用 Hystrix DEBUG 级别的日志记录【英文标题】:How to enable Hystrix DEBUG level logging 【发布时间】:2018-08-03 19:24:09 【问题描述】:

我在我的一个 Spring 启动应用程序中实现了 Netflix OSS Hystrix。并为 HystrixCommand 配置了一些属性。但是如何验证 HystrixCommand 确实使用了这些属性。例如,

hystrix.threadpool.default.maxQueueSize=12
hystrix.threadpool.default.keepAliveTimeMinute=2
hystrix.command.default.execution.isolation.strategy=SEMAPHORE

我怎样才能看到这些属性应用于 HystrixCommand?有什么方法可以为 Hystrix 启用调试级别日志记录?

TIA

【问题讨论】:

【参考方案1】:

我想我找到了答案。添加下面的行会生成 Hystrix DEBUG 级别的日志记录。

logging:
  level:
   com.netflix.hystrix: DEBUG

【讨论】:

这个级别是否也记录诸如断路器恢复正常时的度量数据,队列中有多少请求,队列中的时间长,断路器打开时。? 我知道如何为 logback.xml 中的自定义命令执行此操作吗? 我启用了这样的日志记录,并想知道为什么我仍然看不到日志。如果您遇到同样的情况,请检查以下内容: 1. 确保实际上启用了断路器 (spring.cloud.circuit.breaker.enabled:true) 2. 服务启动时您将看不到调试日志;仅当您执行涉及 hystrix 的实际请求时,才会显示日志。 3. 日志只显示第一次使用 hystrix 的请求;对于以下请求,将不再有任何调试日志

以上是关于如何启用 Hystrix DEBUG 级别的日志记录的主要内容,如果未能解决你的问题,请参考以下文章

如何log4j的日志级别改成debug

RabbitMQ 通过记日志来看routingkey

RabbitMQ 通过记日志来看routingkey

日志组件之debug动态开关

日志组件之debug动态开关

Django:如何将日志级别设置为 INFO 或 DEBUG