我的项目中的 java 文件中有以下日志行 3 次==
log.info(
"Queuing workflow message with ID {} and shardedDatabaseId {}",
workflowQueueMessageString,
shardedDatabaseId);
这给声纳带来了一个严重问题==
定义一个常量,而不是重复此文字“使用 ID {} 和 shardId {} 排队工作流消息”3 次。
我可以理解这个错误的原因。但该字符串实际上不是常量,并且具有像 {} 这样的占位符。那么如何正确解决这个声纳报告的问题。
该字符串是日志消息的格式。即使消息本身不是恒定的,格式也是恒定的。
只需将其(格式)声明为变量 - 最终的、静态的、任何适用于用例的变量。
String messageFormat = "Queuing workflow message with ID {} and shardedDatabaseId {}";
log.info(messageFormat, workflowQueueMessageString, shardedDatabaseId);
...
log.info(messageFormat, workflowQueueMessageString, shardedDatabaseId);
...
log.info(messageFormat, workflowQueueMessageString, shardedDatabaseId);