fluent-kit
fluent-kit copied to clipboard
Make `Database.logger` mutable
Is your feature request related to a problem? Please describe.
Database.logger
is get-only, but I'd like to modify the Logger
metadata and the log handler. My use-case is to track when Database.transaction
is called, so I can warn when the original Database
is being used before the transaction closure has been run. This is a common footgun in Vapor:
_ = try await req.db.transaction { transactionDB in
// run a query using transactionDB
// run a query using req.db
// run a query using transactionDB
}
Describe the solution you'd like
Make it settable. Application.logger
is settable. Request.logger
is too. So it seems viable to do this.
Additional context
If the maintainers are interested in this change, I can submit a PR.