From 0cd515231e9010ab952e1f690293e03be8bd713e Mon Sep 17 00:00:00 2001 From: Stanislav Smirnov Date: Sat, 15 Feb 2025 03:00:14 +0200 Subject: [PATCH] Fixing of issue https://github.com/snoyberg/keter/issues/296 "Reloading is broken in v2.1 with rotate-logs: True" --- src/Keter/App.hs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Keter/App.hs b/src/Keter/App.hs index 7f1f371..4bf7113 100644 --- a/src/Keter/App.hs +++ b/src/Keter/App.hs @@ -235,8 +235,14 @@ withLogger aid (Just var) f = do mappLogger <- liftIO $ readTVarIO var case mappLogger of Nothing -> withRunInIO $ \rio -> - bracketOnError (Log.createLoggerViaConfig ascKeterConfig (appLogName aid)) Log.loggerClose (rio . f var) + bracketOnError (Log.createLoggerViaConfig ascKeterConfig (appLogName aid)) + Log.loggerClose + $ saveLoggerAndRun (rio . f var) Just appLogger -> f var appLogger + where + saveLoggerAndRun f' appLogger = do + atomically $ writeTVar var $ Just appLogger + f' appLogger withSanityChecks :: BundleConfig -> KeterM AppStartConfig a -> KeterM AppStartConfig a withSanityChecks BundleConfig{..} f = do