在 VoltProcedure 中记录

Logging inside a VoltProcedure

我想从我的 VoltProcedures 中记录一些信息,但 VoltProcedure 摘要中没有记录器 class。 我发现 问题解释说最好的方法是将数据插入 table。答案是从 2015 年开始的,所以我想知道是否还有其他方法可以这样做?仍然不推荐通过 log4j 登录吗?

谢谢:)

我在 VoltDB 工作并写下了您提到的答案。在存储过程中使用 Log4J 是可以的,但应谨慎使用。当时我们不推荐它,因为我们看到从过程中记录日志会影响性能的情况。我们仍然不建议在生产中启用太多日志语句,但对于开发或提供更多细节作为(希望很少)异常处理的一部分,它可能非常有用。

我们现在有一个 HOWTO,它描述了在存储过程中使用 Log4J 的推荐方法。它本质上是老派的 Log4J 1.0 技术,例如将记录器调用放在 if() 块中,如果未启用日志记录级别,该块将被优化。