packages feed

tracing 0.0.2.0 → 0.0.2.1

raw patch · 2 files changed

+11/−11 lines, 2 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Monitor.Tracing.Zipkin: Settings :: !HostName -> !PortNumber -> !Maybe Endpoint -> !Maybe Manager -> !NominalDiffTime -> Settings
+ Monitor.Tracing.Zipkin: Settings :: !Maybe HostName -> !Maybe PortNumber -> !Maybe Endpoint -> !Maybe Manager -> !Maybe NominalDiffTime -> Settings
- Monitor.Tracing.Zipkin: [settingsHostname] :: Settings -> !HostName
+ Monitor.Tracing.Zipkin: [settingsHostname] :: Settings -> !Maybe HostName
- Monitor.Tracing.Zipkin: [settingsPort] :: Settings -> !PortNumber
+ Monitor.Tracing.Zipkin: [settingsPort] :: Settings -> !Maybe PortNumber
- Monitor.Tracing.Zipkin: [settingsPublishPeriod] :: Settings -> !NominalDiffTime
+ Monitor.Tracing.Zipkin: [settingsPublishPeriod] :: Settings -> !Maybe NominalDiffTime

Files

src/Monitor/Tracing/Zipkin.hs view
@@ -32,8 +32,8 @@ import Data.IORef (modifyIORef, newIORef, readIORef) import Data.Map.Strict (Map) import qualified Data.Map.Strict as Map-import Data.Maybe (catMaybes, listToMaybe, maybe, maybeToList)-import Data.Monoid (Endo(..))+import Data.Maybe (catMaybes, fromMaybe, listToMaybe, maybe, maybeToList)+import Data.Monoid ((<>), Endo(..)) import Data.Set (Set) import Data.Text (Text) import qualified Data.Text as T@@ -48,22 +48,22 @@  -- | Zipkin creating settings. data Settings = Settings-  { settingsHostname :: !HostName+  { settingsHostname :: !(Maybe HostName)   -- ^ The Zipkin server's hostname.-  , settingsPort :: !PortNumber+  , settingsPort :: !(Maybe PortNumber)   -- ^ The port the Zipkin server is listening on.   , settingsEndpoint :: !(Maybe Endpoint)   -- ^ Local endpoint used for all published spans.   , settingsManager :: !(Maybe Manager)   -- ^ An optional HTTP manager to use for publishing spans on the Zipkin server.-  , settingsPublishPeriod :: !NominalDiffTime+  , settingsPublishPeriod :: !(Maybe NominalDiffTime)   -- ^ If set to a positive value, traces will be flushed in the background every such period.   }  -- | Creates 'Settings' pointing to a Zikpin server at host @"localhost"@ and port @9411@, without -- background flushing. defaultSettings :: Settings-defaultSettings = Settings "localhost" 9411 Nothing Nothing 0+defaultSettings = Settings Nothing Nothing Nothing Nothing Nothing  -- | A Zipkin trace publisher. data Zipkin = Zipkin@@ -87,16 +87,16 @@  -- | Creates a 'Zipkin' publisher for the input 'Settings'. new :: MonadIO m => Settings -> m Zipkin-new (Settings hostname port mbEpt mbMgr prd) = liftIO $ do+new (Settings mbHostname mbPort mbEpt mbMgr mbPrd) = liftIO $ do   mgr <- maybe (HTTP.newManager HTTP.defaultManagerSettings) pure mbMgr   tracer <- newTracer   let     req = HTTP.defaultRequest       { HTTP.method = "POST"-      , HTTP.host = BS.pack hostname+      , HTTP.host = BS.pack (fromMaybe "localhost" mbHostname)       , HTTP.path = "/api/v2/spans"-      , HTTP.port = fromIntegral port }-  void $ if prd <= 0+      , HTTP.port = maybe 9411 fromIntegral mbPort }+  void $ let prd = fromMaybe 0 mbPrd in if prd <= 0     then pure Nothing     else fmap Just $ forkIO $ forever $ do       threadDelay (microSeconds prd)
tracing.cabal view
@@ -1,5 +1,5 @@ name:                tracing-version:             0.0.2.0+version:             0.0.2.1 synopsis:            Distributed tracing description:         https://github.com/mtth/tracing homepage:            https://github.com/mtth/tracing