arbor-monad-metric-1.1.0: Core metric library for publishing metrics.

Safe HaskellNone
LanguageHaskell2010

Arbor.Monad.Metric

Documentation

class (Monad m, MonadIO m) => MonadMetrics m Source #

Minimal complete definition

getMetrics

Instances
MonadMetrics m => MonadMetrics (MaybeT m) Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

MonadMetrics m => MonadMetrics (ResourceT m) Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

MonadMetrics m => MonadMetrics (IdentityT m) Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

MonadMetrics m => MonadMetrics (ExceptT e m) Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

MonadMetrics m => MonadMetrics (StateT s m) Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

MonadMetrics m => MonadMetrics (ReaderT e m) Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

extractValues :: forall k. MetricFamily k => Proxy k -> MetricMap k (MetricState k) -> STM ([(k, MetricValue k)], [TVar (MetricState k)]) Source #

metric :: Ord k => Semigroup (MetricState k) => MetricFamily k => MonadMetrics m => k -> MetricValue k -> m () Source #

data Counter Source #

Instances
Eq Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Methods

(==) :: Counter -> Counter -> Bool #

(/=) :: Counter -> Counter -> Bool #

Ord Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Show Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Generic Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Associated Types

type Rep Counter :: Type -> Type #

Methods

from :: Counter -> Rep Counter x #

to :: Rep Counter x -> Counter #

MetricFamily Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Associated Types

type MetricValue Counter :: Type Source #

type MetricState Counter :: Type Source #

type Rep Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

type Rep Counter = D1 (MetaData "Counter" "Arbor.Monad.Metric.Type" "arbor-monad-metric-1.1.0-J7GpovoJq64CnFbA56PYkJ" False) (C1 (MetaCons "Counter" PrefixI True) (S1 (MetaSel (Just "name") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "tags") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Set Tag))))
type MetricValue Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

type MetricState Counter Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

data Gauge Source #

Instances
Eq Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Methods

(==) :: Gauge -> Gauge -> Bool #

(/=) :: Gauge -> Gauge -> Bool #

Ord Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Methods

compare :: Gauge -> Gauge -> Ordering #

(<) :: Gauge -> Gauge -> Bool #

(<=) :: Gauge -> Gauge -> Bool #

(>) :: Gauge -> Gauge -> Bool #

(>=) :: Gauge -> Gauge -> Bool #

max :: Gauge -> Gauge -> Gauge #

min :: Gauge -> Gauge -> Gauge #

Show Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Methods

showsPrec :: Int -> Gauge -> ShowS #

show :: Gauge -> String #

showList :: [Gauge] -> ShowS #

Generic Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Associated Types

type Rep Gauge :: Type -> Type #

Methods

from :: Gauge -> Rep Gauge x #

to :: Rep Gauge x -> Gauge #

MetricFamily Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Associated Types

type MetricValue Gauge :: Type Source #

type MetricState Gauge :: Type Source #

type Rep Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

type Rep Gauge = D1 (MetaData "Gauge" "Arbor.Monad.Metric.Type" "arbor-monad-metric-1.1.0-J7GpovoJq64CnFbA56PYkJ" False) (C1 (MetaCons "Gauge" PrefixI True) (S1 (MetaSel (Just "name") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "tags") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Set Tag))))
type MetricValue Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

type MetricState Gauge Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

data Metrics Source #

Instances
Generic Metrics Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Associated Types

type Rep Metrics :: Type -> Type #

Methods

from :: Metrics -> Rep Metrics x #

to :: Rep Metrics x -> Metrics #

type Rep Metrics Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

type Rep Metrics = D1 (MetaData "Metrics" "Arbor.Monad.Metric.Type" "arbor-monad-metric-1.1.0-J7GpovoJq64CnFbA56PYkJ" False) (C1 (MetaCons "Metrics" PrefixI True) (S1 (MetaSel (Just "counters") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (TVar (MetricMap Counter (MetricState Counter)))) :*: S1 (MetaSel (Just "gauges") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (TVar (MetricMap Gauge (MetricState Gauge))))))

data Tag Source #

Instances
Eq Tag Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Methods

(==) :: Tag -> Tag -> Bool #

(/=) :: Tag -> Tag -> Bool #

Ord Tag Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Methods

compare :: Tag -> Tag -> Ordering #

(<) :: Tag -> Tag -> Bool #

(<=) :: Tag -> Tag -> Bool #

(>) :: Tag -> Tag -> Bool #

(>=) :: Tag -> Tag -> Bool #

max :: Tag -> Tag -> Tag #

min :: Tag -> Tag -> Tag #

Show Tag Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Methods

showsPrec :: Int -> Tag -> ShowS #

show :: Tag -> String #

showList :: [Tag] -> ShowS #

Generic Tag Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

Associated Types

type Rep Tag :: Type -> Type #

Methods

from :: Tag -> Rep Tag x #

to :: Rep Tag x -> Tag #

type Rep Tag Source # 
Instance details

Defined in Arbor.Monad.Metric.Type

type Rep Tag = D1 (MetaData "Tag" "Arbor.Monad.Metric.Type" "arbor-monad-metric-1.1.0-J7GpovoJq64CnFbA56PYkJ" False) (C1 (MetaCons "Tag" PrefixI True) (S1 (MetaSel (Just "name") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "value") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text)))

tag :: Text -> Text -> Tag Source #

tags :: [(Text, Text)] -> Set Tag Source #