如何在 Aqueduct 3 中启用 SQL 登录?

How to enable SQL logging in Aqueduct 3?

在终端中查看执行了哪些请求以及执行了多长时间对我来说非常有用。 HTTP 请求的日志记录工作正常,但我没有找到 SQL 的类似功能。 有没有办法使用 config.yaml 或在 ApplicationChannel 的 prepare() 中全局启用日志记录?

看来我找到了肮脏的黑客解决方案:

Future prepare() async {
  logger.onRecord.listen((rec) => print("$rec ${rec.error ?? ""} ${rec.stackTrace ?? ""}"));
  logger.parent.level = Level.FINE;
  ...
}

我们需要将日志级别设置为高于默认值 INFO。所有 SQL 查询都将其请求记录在 FINE 级别。

我预计此设置应该能够从 config.yaml 加载,但我没有找到任何类似的东西。

可以找到更多关于日志级别的信息here