From 96454631eaa6e9d674dde95dae9bae6612aa5b74 Mon Sep 17 00:00:00 2001 From: Mats Rauhala Date: Sun, 6 Apr 2025 11:45:09 +0300 Subject: [PATCH] Runtime metrics --- src/M.hs | 7 ++++--- wallabag-tagger.cabal | 1 + 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/M.hs b/src/M.hs index 3885133..ae59b40 100644 --- a/src/M.hs +++ b/src/M.hs @@ -1,9 +1,9 @@ {-# LANGUAGE FunctionalDependencies #-} +{-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE UndecidableInstances #-} {-# OPTIONS_GHC -Wall #-} -{-# LANGUAGE LambdaCase #-} module M where @@ -16,15 +16,15 @@ import Control.Monad.Catch (MonadCatch, MonadThrow) import Control.Monad.Reader (MonadIO, MonadReader, ReaderT, local, runReaderT) import Control.Monad.Trans.Control (MonadBaseControl) import Creds +import Data.HashMap.Strict qualified as HM import GHC.Generics (Generic) import HTTP (HTTPMetric (HTTPMetric)) import Katip qualified as K import System.IO (stdout) import System.Metrics qualified as EKG +import Tracer (Tracer (..)) import UnliftIO (MonadUnliftIO) import Wallabag.Auth (Auth, Auth' (..)) -import qualified Data.HashMap.Strict as HM -import Tracer (Tracer(..)) type KatipTracer = Tracer (Maybe (K.Severity, K.LogStr)) @@ -78,6 +78,7 @@ mkKatipTrace le ns = Tracer $ \case initialS :: Maybe FilePath -> K.Severity -> (S -> IO a) -> IO a initialS credsPath severity f = do store <- EKG.newStore + EKG.registerGcMetrics store wbMetrics <- HTTPMetric <$> EKG.createDistribution "wallabag.requests" store diff --git a/wallabag-tagger.cabal b/wallabag-tagger.cabal index ae1d7f4..86d526b 100644 --- a/wallabag-tagger.cabal +++ b/wallabag-tagger.cabal @@ -78,6 +78,7 @@ executable wallabag-tagger hs-source-dirs: app default-language: GHC2021 + ghc-options: -with-rtsopts=-T test-suite wallabag-tagger-test import: warnings