我现在的情况是,我需要在代码中添加日志,以便以后出现问题时方便调试。例如,这是一个方法:
SomeMethod(Request request){
....
// I need add log here
...
}
Request
对象包含:
Request
{
string typeId,
string userId
}
我正在考虑从日志中的
request
输出相应的类型名称和用户名,但是SomeMethod
中没有直接来源可以获取这些信息,所以我不得不请求数据库。
我想问的问题是:
我觉得应该没有必要为了日志而从数据库中获取具体的数据;并且日志后名称可能会改变,导致无法对应,所以记录ID就足够了。 我可以问问你的意见吗?
我觉得应该没有必要为了日志而从数据库中获取具体的数据;并且日志后名字可能会改变,导致无法对应,所以记录ID就足够了。
我认为你的意思是“这不应该是必要的”。
有一个有效的论点,即日志中的信息应尽可能“自包含”(对于不可变数据,仅名称就足够了,例如固定的类型表,“ID”和“名称”都应该包含在日志中)具有可变数据):1)为了开发人员/技术人员的可读性/可用性(例如类型 ID 比类型名称更不透明),而且 2)因为数据确实可以更改(可变数据),并且日志应该更合适反映登录时的情况! 只要执行这些查询相对便宜(和/或如果在幕后有一些缓存),通常就可以了,特别是如果可以控制日志记录级别,以便仅在调试/维护时需要使用查询进行完整日志记录模式,而不是在正常操作中,并且无论如何都要注意仅记录严格需要的内容。 也就是说,对于请求/操作,通常会记录参数和结果,并且相当“怀疑”的是,在仅“知道”ID 的上下文中,您记录的不仅仅是 ID:这表明只有ID 实际上是相关的并且需要记录...