@@ -20,9 +20,8 @@ module Cardano.Node.Run
20
20
21
21
import Cardano.Prelude hiding (ByteString , STM , atomically , show , take , trace )
22
22
import Data.IP (toSockAddr )
23
- import Prelude (String , error , id , show )
23
+ import Prelude (String , id , show )
24
24
25
- import qualified Control.Concurrent.Async as Async
26
25
import Control.Monad.Class.MonadSTM.Strict
27
26
import Control.Monad.Trans.Except.Extra (left )
28
27
import "contra-tracer" Control.Tracer
@@ -100,7 +99,6 @@ import Cardano.Node.Protocol (mkConsensusProtocol)
100
99
import Cardano.Node.Protocol.Types
101
100
import Cardano.Node.Queries
102
101
import Cardano.Node.TraceConstraints (TraceConstraints )
103
- import Cardano.Tracing.Peer
104
102
import Cardano.Tracing.Tracers
105
103
106
104
{- HLINT ignore "Use fewer imports" -}
@@ -243,17 +241,16 @@ handleNodeWithTracers cmdPc nc p networkMagic runP = do
243
241
getStartupInfo nc p fp
244
242
>>= mapM_ (traceWith $ startupTracer tracers)
245
243
246
- Async. withAsync (handlePeersListSimple (error " Implement Tracer IO [Peer blk]" ) nodeKernelData)
247
- $ \ _peerLoggingThread ->
248
- -- We ignore peer logging thread if it dies, but it will be killed
249
- -- when 'handleSimpleNode' terminates.
250
- handleSimpleNode runP p2pMode tracers nc
251
- (\ nk -> do
252
- setNodeKernel nodeKernelData nk
253
- traceWith (nodeStateTracer tracers) NodeKernelOnline )
254
- `finally`
255
- forM_ eLoggingLayer
256
- shutdownLoggingLayer
244
+ -- We ignore peer logging thread if it dies, but it will be killed
245
+ -- when 'handleSimpleNode' terminates.
246
+ handleSimpleNode runP p2pMode tracers nc
247
+ (\ nk -> do
248
+ setNodeKernel nodeKernelData nk
249
+ traceWith (nodeStateTracer tracers) NodeKernelOnline )
250
+ `finally` do
251
+ putStrLn (" MAIN THREAD FAILED" :: String )
252
+ forM_ eLoggingLayer
253
+ shutdownLoggingLayer
257
254
258
255
-- | Currently, we trace only 'ShelleyBased'-info which will be asked
259
256
-- by 'cardano-tracer' service as a datapoint. It can be extended in the future.
@@ -297,13 +294,16 @@ setupTrace loggingLayer = do
297
294
hn0 <- pack <$> getHostName
298
295
return $ take 8 $ fst $ breakOn " ." hn0
299
296
297
+ {-
298
+ -- TODO: needs to be finished (issue #4362)
300
299
handlePeersListSimple
301
300
:: Trace IO Text
302
301
-> NodeKernelData blk
303
302
-> IO ()
304
303
handlePeersListSimple tr nodeKern = forever $ do
305
304
getCurrentPeers nodeKern >>= tracePeers tr
306
305
threadDelay 2000000 -- 2 seconds.
306
+ -}
307
307
308
308
-- | Sets up a simple node, which will run the chain sync protocol and block
309
309
-- fetch protocol, and, if core, will also look at the mempool when trying to
@@ -451,8 +451,7 @@ handleSimpleNode runP p2pMode tracers nc onKernel = do
451
451
)
452
452
Nothing
453
453
#endif
454
- eitherTopology <- TopologyNonP2P. readTopologyFile nc
455
- nt <- either (\ err -> panic $ " Cardano.Node.Run.handleSimpleNodeNonP2P.readTopologyFile: " <> err) pure eitherTopology
454
+ nt <- TopologyNonP2P. readTopologyFileOrError nc
456
455
let (ipProducerAddrs, dnsProducerAddrs) = producerAddressesNonP2P nt
457
456
458
457
dnsProducers :: [DnsSubscriptionTarget ]
0 commit comments