freckle-app-1.8.1.0: Haskell application toolkit used at Freckle
Safe HaskellSafe-Inferred
LanguageHaskell2010

Freckle.App.Stats

Description

An intentionally-leaky StatsD interface to Datadog

Synopsis

Documentation

Client

data StatsClient Source #

Instances

Instances details
HasStatsClient StatsClient Source # 
Instance details

Defined in Freckle.App.Stats

class HasStatsClient env where Source #

Instances

Instances details
HasStatsClient StatsClient Source # 
Instance details

Defined in Freckle.App.Stats

HasStatsClient site => HasStatsClient (HandlerData child site) Source # 
Instance details

Defined in Freckle.App.Stats

Gauges

withGauge :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m) => (Gauges -> Gauge) -> m a -> m a Source #

Reporting

tagged :: (MonadReader env m, HasStatsClient env) => [(Text, Text)] -> m a -> m a Source #

Include the given tags on all metrics emitted from a block

increment :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> m () Source #

Synonym for counter 1

counter :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> Int -> m () Source #

gauge :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> Double -> m () Source #

histogram :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env, ToMetricValue n) => Text -> n -> m () Source #

Emit an elapsed duration (which Datadog calls a histogram)

The ToMetricValue constraint can be satisfied by most numeric types and is assumed to be seconds.