@@ -28,28 +28,6 @@ module Cardano.Node.Configuration.Logging
2828import Cardano.Api (textShow )
2929import qualified Cardano.Api as Api
3030
31- import qualified Control.Concurrent as Conc
32- import qualified Control.Concurrent.Async as Async
33- import Control.Concurrent.MVar (MVar , newMVar )
34- import Control.Concurrent.STM (STM )
35- import Control.Exception (IOException )
36- import Control.Exception.Safe (MonadCatch )
37- import Control.Monad (forM_ , forever , void , when )
38- import Control.Monad.Except (ExceptT )
39- import Control.Monad.IO.Class (MonadIO (.. ))
40- import Control.Monad.Trans.Except.Extra (catchIOExceptT )
41- import "contra-tracer" Control.Tracer
42- import Data.List (nub )
43- import qualified Data.Map.Strict as Map
44- import Data.Maybe (isJust )
45- import Data.Text (Text , pack )
46- import Data.Time.Clock (UTCTime , getCurrentTime )
47- import Data.Version (showVersion )
48- import System.Metrics.Counter (Counter )
49- import System.Metrics.Gauge (Gauge )
50- import System.Metrics.Label (Label )
51- import qualified System.Remote.Monitoring.Wai as EKG
52-
5331import Cardano.BM.Backend.Aggregation (plugin )
5432import Cardano.BM.Backend.EKGView (plugin )
5533import Cardano.BM.Backend.Monitoring (plugin )
@@ -65,17 +43,23 @@ import Cardano.BM.Data.LogItem (LOContent (..), LOMeta (..), LoggerNam
6543import qualified Cardano.BM.Observer.Monadic as Monadic
6644import qualified Cardano.BM.Observer.STM as Stm
6745import Cardano.BM.Plugin (loadPlugin )
68- #if defined( SYSTEMD)
46+ #ifdef SYSTEMD
6947import Cardano.BM.Scribe.Systemd (plugin )
7048#endif
7149import Cardano.BM.Setup (setupTrace_ , shutdown )
7250import Cardano.BM.Stats
7351import Cardano.BM.Stats.Resources
7452import qualified Cardano.BM.Trace as Trace
7553import Cardano.BM.Tracing
76-
7754import qualified Cardano.Chain.Genesis as Gen
55+ import Cardano.Git.Rev (gitRev )
7856import qualified Cardano.Ledger.Shelley.API as SL
57+ import Cardano.Node.Configuration.POM (NodeConfiguration (.. ), ncProtocol )
58+ import Cardano.Node.Protocol.Types (SomeConsensusProtocol (.. ))
59+ import Cardano.Node.Types
60+ import Cardano.Slotting.Slot (EpochSize (.. ))
61+ import Cardano.Tracing.Config (TraceOptions (.. ))
62+ import Cardano.Tracing.OrphanInstances.Common ()
7963import qualified Ouroboros.Consensus.BlockchainTime.WallClock.Types as WCT
8064import Ouroboros.Consensus.Byron.Ledger.Conversions
8165import Ouroboros.Consensus.Cardano.Block
@@ -86,13 +70,28 @@ import Ouroboros.Consensus.HardFork.Combinator.Degenerate
8670import Ouroboros.Consensus.Node.ProtocolInfo
8771import Ouroboros.Consensus.Shelley.Ledger.Ledger
8872
89- import Cardano.Git.Rev (gitRev )
90- import Cardano.Node.Configuration.POM (NodeConfiguration (.. ), ncProtocol )
91- import Cardano.Node.Protocol.Types (SomeConsensusProtocol (.. ))
92- import Cardano.Node.Types
93- import Cardano.Slotting.Slot (EpochSize (.. ))
94- import Cardano.Tracing.Config (TraceOptions (.. ))
95- import Cardano.Tracing.OrphanInstances.Common ()
73+ import qualified Control.Concurrent as Conc
74+ import qualified Control.Concurrent.Async as Async
75+ import Control.Concurrent.MVar (MVar , newMVar )
76+ import Control.Concurrent.STM (STM )
77+ import Control.Exception (IOException )
78+ import Control.Exception.Safe (MonadCatch )
79+ import Control.Monad (forM_ , forever , void , when )
80+ import Control.Monad.Except (ExceptT )
81+ import Control.Monad.IO.Class (MonadIO (.. ))
82+ import Control.Monad.Trans.Except.Extra (catchIOExceptT )
83+ import Data.List (nub )
84+ import qualified Data.Map.Strict as Map
85+ import Data.Maybe (isJust )
86+ import Data.Text (Text , pack )
87+ import Data.Time.Clock (UTCTime , getCurrentTime )
88+ import Data.Version (showVersion )
89+ import GHC.Conc (labelThread , myThreadId )
90+ import System.Metrics.Counter (Counter )
91+ import System.Metrics.Gauge (Gauge )
92+ import System.Metrics.Label (Label )
93+ import qualified System.Remote.Monitoring.Wai as EKG
94+
9695import Paths_cardano_node (version )
9796
9897--------------------------------
@@ -255,7 +254,7 @@ createLoggingLayer ver nodeConfig' p = do
255254
256255 when (ncLogMetrics nodeConfig) $
257256 -- Record node metrics, if configured
258- startCapturingMetrics (ncTraceConfig nodeConfig) trace
257+ startCapturingResources (ncTraceConfig nodeConfig) trace
259258
260259 mkLogLayer :: Configuration -> Switchboard Text -> Maybe EKGDirect -> Trace IO Text -> LoggingLayer
261260 mkLogLayer logConfig switchBoard mbEkgDirect trace =
@@ -278,14 +277,16 @@ createLoggingLayer ver nodeConfig' p = do
278277 , llEKGDirect = mbEkgDirect
279278 }
280279
281- startCapturingMetrics :: TraceOptions
280+ startCapturingResources :: TraceOptions
282281 -> Trace IO Text
283282 -> IO ()
284- startCapturingMetrics (TraceDispatcher _) _tr = do
283+ startCapturingResources (TraceDispatcher _) _tr = do
285284 pure ()
286285
287- startCapturingMetrics _ tr = do
288- void . Async. async . forever $ do
286+ startCapturingResources _ tr = do
287+ void . Async. async $ do
288+ myThreadId >>= flip labelThread " Resource capturing (old tracing)"
289+ forever $ do
289290 readResourceStats
290291 >>= maybe (pure () )
291292 (traceResourceStats
0 commit comments