ETCD分布式键值存储库,在提供服务时,通过后台日志可以看到,有大量的异常日志打印,具体如下:
通过分析源码,可以看到该异常日志在如下处打印:
当d > warnApplyDuration时,就会打印该警告日志,继续追踪变量warnApplyDuration,其定义为:
可以看到,该变量被写死,通过查阅资料发现,该变量表示,只要节点通信之间的延时超过100ms,就会打印该日志,与网络状况相关。
本文测试的版本3.3.5版本,warnApplyDuration变量被写死,无法解决该异常日志的打印。在3.4之后的版本中,可以通过配置文件修改该变量。
跟踪etcd版本,新增了配置变量ExperimentalWarningApplyDuration, 而最新版本不再使用变量WarnApplyDuration, 改为WarningApp lyDuration。