From f367c46a8815d886be17471349a0bfd4573bec46 Mon Sep 17 00:00:00 2001 From: Sergey Ivanov Date: Fri, 14 Apr 2023 14:17:23 +0400 Subject: [PATCH] http downloaded blocks stat --- hbs2-peer/app/BlockHttpDownload.hs | 1 + hbs2-peer/app/PeerInfo.hs | 2 ++ hbs2-peer/app/PeerTypes.hs | 2 ++ 3 files changed, 5 insertions(+) diff --git a/hbs2-peer/app/BlockHttpDownload.hs b/hbs2-peer/app/BlockHttpDownload.hs index 984228e3..62565a86 100644 --- a/hbs2-peer/app/BlockHttpDownload.hs +++ b/hbs2-peer/app/BlockHttpDownload.hs @@ -127,6 +127,7 @@ blockHttpDownloadLoop denv = do case r of Right (Just block) -> do trace $ "SUCCESS" <+> pretty peer <+> "http-download block" <+> pretty h + liftIO $ atomically $ modifyTVar (_peerHttpDownloaded pinfo) (+1) sto <- getStorage liftIO $ putBlock sto block withDownload denv $ processBlock h diff --git a/hbs2-peer/app/PeerInfo.hs b/hbs2-peer/app/PeerInfo.hs index 12c1a0b4..ddd4eef8 100644 --- a/hbs2-peer/app/PeerInfo.hs +++ b/hbs2-peer/app/PeerInfo.hs @@ -152,6 +152,7 @@ peerPingLoop cfg = do downMiss <- liftIO $ readTVarIO (view peerDownloadMiss pinfo) down <- liftIO $ readTVarIO (view peerDownloadedBlk pinfo) rtt <- liftIO $ medianPeerRTT pinfo <&> fmap realToFrac + httpDownloaded <- liftIO $ readTVarIO (_peerHttpDownloaded pinfo) seen <- liftIO $ readTVarIO (view peerLastWatched pinfo) let l = realToFrac (toNanoSecs $ now - seen) / 1e9 @@ -164,6 +165,7 @@ peerPingLoop cfg = do <+> "down:" <+> pretty down <+> "miss:" <+> pretty downMiss <+> "rtt:" <+> pretty rttMs + <+> "http:" <+> pretty httpDownloaded <+> "seen" <+> pretty ls pure () diff --git a/hbs2-peer/app/PeerTypes.hs b/hbs2-peer/app/PeerTypes.hs index 4117f3d3..f032bfbc 100644 --- a/hbs2-peer/app/PeerTypes.hs +++ b/hbs2-peer/app/PeerTypes.hs @@ -58,6 +58,7 @@ data PeerInfo e = , _peerRTTBuffer :: TVar [Integer] -- ^ Contains a list of the last few round-trip time (RTT) values, measured in nanoseconds. -- Acts like a circular buffer. , _peerHttpApiAddress :: TVar (Either Int (Maybe String)) + , _peerHttpDownloaded :: TVar Int } deriving stock (Generic,Typeable) @@ -80,6 +81,7 @@ newPeerInfo = liftIO do <*> newTVarIO 0 <*> newTVarIO [] <*> newTVarIO (Left 0) + <*> newTVarIO 0 type instance SessionData e (PeerInfo e) = PeerInfo e