2009-11-16 36 views
0

我应该记录一个“商业”交易对象(例如信用卡处理网关的请求/响应)。记录“商业”交易对象的最佳实践

有人提到使用log4net来存储...但它只是感觉不对,尤其是考虑到某些信息(即对象的属性)需要完全省略或按摩(例如,只记录最后4个涉及交易的信用卡的数字)。

我在想更多自定义的“ITransactionLogger”。思考?

回答

5

我会说你正在做“审计”而不是“记录”,因为你正在产生具有商业意义的数据。这意味着数据需要管理,备份等数据库给你的所有东西。为了清楚起见,我将使用单独的审计API。

+0

好点。我需要更多地审核这些数据,而不仅仅记录正在发生的事情。这是一个单独的业务问题。谢谢! – Oli 2009-11-16 10:10:35

+0

你实际上需要这两样东西。忘记保护日志中的私人数据是一个相当普遍的问题。 – weismat 2009-11-16 10:29:58

3

我对log4net的主要问题是您可以通过配置文件控制输出目标的日志记录。如果有人意外或故意更改该配置文件,敏感的财务数据将会暴露。

我通常是一个不会重新发明轮子的人,但在这种情况下,您需要一个具有最少配置点和严格控制的日志记录解决方案。

+0

我的关切......在批准之前,会等待这个选票。 – Oli 2009-11-16 09:17:20

1

您可以为log4net中的特定对象/例外创建自定义格式化程序。我会尝试记录特别省略信用卡详细信息的交易对象。