From 9d1cc4bbece14439c262b7848763cf29cb22f537 Mon Sep 17 00:00:00 2001 From: Jonathan Bernard Date: Mon, 20 Jan 2025 06:39:02 -0600 Subject: [PATCH] Cache logger instance. --- fiber_orm.nimble | 2 +- src/fiber_orm.nim | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/fiber_orm.nimble b/fiber_orm.nimble index cd1bddd..9d04ca5 100644 --- a/fiber_orm.nimble +++ b/fiber_orm.nimble @@ -1,6 +1,6 @@ # Package -version = "3.1.0" +version = "3.1.1" author = "Jonathan Bernard" description = "Lightweight Postgres ORM for Nim." license = "GPL-3.0" diff --git a/src/fiber_orm.nim b/src/fiber_orm.nim index 357a088..02a6b71 100644 --- a/src/fiber_orm.nim +++ b/src/fiber_orm.nim @@ -309,14 +309,16 @@ type ## Error type raised when no record matches a given ID var logService {.threadvar.}: Option[LogService] +var logger {.threadvar.}: Option[Logger] proc logQuery*(methodName: string, sqlStmt: string, args: openArray[(string, string)] = []) = # namespaced_logging would do this check for us, but we don't want to even # build the log object if we're not actually logging if logService.isNone: return + if logger.isNone: logger = logService.getLogger("fiber_orm/query") var log = %*{ "method": methodName, "sql": sqlStmt } for (k, v) in args: log[k] = %v - logService.getLogger("fiber_orm/query").debug(log) + logger.debug(log) proc enableDbLogging*(svc: LogService) = logService = some(svc)