Java 多个功能是否是回写标记的良好用例?
我的用例如下(伪代码):Java 多个功能是否是回写标记的良好用例?,java,scala,log4j,slf4j,logback,Java,Scala,Log4j,Slf4j,Logback,我的用例如下(伪代码): 现在,我上面所说的是能够通过其MDC为userid切换TRACE-on,并且我还可以为不同的功能打开或关闭日志。例如,通过使用缓存标记我可以让我的应用程序在跟踪中记录所有缓存功能,因为我想在跟踪中查看所有缓存。缓存标记是否是标记的良好用例?作为在日志中查看跟踪中的所有缓存功能的切换?我认为基于每个功能操作日志与标记的用途非常一致。不过,根据现有的最佳实践,阅读并实施类似的内容总是很好的 这个问题是关于slf4j logback的最佳实践的,应该很有用: def add
现在,我上面所说的是能够通过其
MDC
为userid
切换TRACE-on
,并且我还可以为不同的功能打开或关闭日志。例如,通过使用缓存标记
我可以让我的应用程序在跟踪
中记录所有缓存
功能,因为我想在跟踪中查看所有缓存。缓存标记
是否是标记
的良好用例?作为在日志中查看跟踪
中的所有缓存
功能的切换?我认为基于每个功能操作日志与标记的用途非常一致。不过,根据现有的最佳实践,阅读并实施类似的内容总是很好的
这个问题是关于slf4j logback的最佳实践的,应该很有用:
def addUser(user) {
MDC.put(user.id)
LOG.trace(MyMarkers.ENTRY_POINT, "adding user {}", user);
calcUser(user)
MDC.remove(user.id)
}
def calcUser(user) {
calcUserName(user)
}
def calcUseName(user) {
storeUserInCache(user)
}
storeUserInCache(user) {
// is this a good use case? in case I want to enable CACHE feature in TRACE
// in logs (for the sake of example or any other feature to enable its tracing
// in logs i mark different TRACE with different markers.
LOG.trace(MyMarkers.CACHE, "storing user {} in cache", user);
}
getUserFromCache(userid) {
LOG.trace(MyMarkers.CACHE, "getting user {} from cache", userid)
}