instrument-0.6.0.0: Easy stats/metrics instrumentation for Haskell programs
Safe HaskellNone
LanguageHaskell2010

Instrument.Types

Synopsis

Documentation

data Instrument Source #

Constructors

I 

Instances

Instances details
Monad m => HasInstrument (ReaderT Instrument m) Source # 
Instance details

Defined in Instrument.ClientClass

data InstrumentConfig Source #

Constructors

ICfg 

Instances

Instances details
Default InstrumentConfig Source # 
Instance details

Defined in Instrument.Types

data SubmissionPacket Source #

Constructors

SP 

Fields

Instances

Instances details
Eq SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

Show SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

Generic SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep SubmissionPacket :: Type -> Type #

Serialize SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

Migrate SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

Associated Types

type MigrateFrom SubmissionPacket #

SafeCopy SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

type Rep SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

type Rep SubmissionPacket = D1 ('MetaData "SubmissionPacket" "Instrument.Types" "instrument-0.6.0.0-F93FQDczdiYH6Ea7c21UCQ" 'False) (C1 ('MetaCons "SP" 'PrefixI 'True) ((S1 ('MetaSel ('Just "spTimeStamp") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Double) :*: S1 ('MetaSel ('Just "spName") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 MetricName)) :*: (S1 ('MetaSel ('Just "spPayload") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Payload) :*: S1 ('MetaSel ('Just "spDimensions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Dimensions))))
type MigrateFrom SubmissionPacket Source # 
Instance details

Defined in Instrument.Types

newtype MetricName Source #

Constructors

MetricName 

Fields

Instances

Instances details
Eq MetricName Source # 
Instance details

Defined in Instrument.Types

Ord MetricName Source # 
Instance details

Defined in Instrument.Types

Show MetricName Source # 
Instance details

Defined in Instrument.Types

IsString MetricName Source # 
Instance details

Defined in Instrument.Types

Generic MetricName Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep MetricName :: Type -> Type #

Serialize MetricName Source # 
Instance details

Defined in Instrument.Types

SafeCopy MetricName Source # 
Instance details

Defined in Instrument.Types

type Rep MetricName Source # 
Instance details

Defined in Instrument.Types

type Rep MetricName = D1 ('MetaData "MetricName" "Instrument.Types" "instrument-0.6.0.0-F93FQDczdiYH6Ea7c21UCQ" 'True) (C1 ('MetaCons "MetricName" 'PrefixI 'True) (S1 ('MetaSel ('Just "metricName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)))

newtype DimensionName Source #

Constructors

DimensionName 

Fields

Instances

Instances details
Eq DimensionName Source # 
Instance details

Defined in Instrument.Types

Ord DimensionName Source # 
Instance details

Defined in Instrument.Types

Show DimensionName Source # 
Instance details

Defined in Instrument.Types

IsString DimensionName Source # 
Instance details

Defined in Instrument.Types

Generic DimensionName Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep DimensionName :: Type -> Type #

Serialize DimensionName Source # 
Instance details

Defined in Instrument.Types

SafeCopy DimensionName Source # 
Instance details

Defined in Instrument.Types

type Rep DimensionName Source # 
Instance details

Defined in Instrument.Types

type Rep DimensionName = D1 ('MetaData "DimensionName" "Instrument.Types" "instrument-0.6.0.0-F93FQDczdiYH6Ea7c21UCQ" 'True) (C1 ('MetaCons "DimensionName" 'PrefixI 'True) (S1 ('MetaSel ('Just "dimensionName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

newtype DimensionValue Source #

Constructors

DimensionValue 

Fields

Instances

Instances details
Eq DimensionValue Source # 
Instance details

Defined in Instrument.Types

Ord DimensionValue Source # 
Instance details

Defined in Instrument.Types

Show DimensionValue Source # 
Instance details

Defined in Instrument.Types

IsString DimensionValue Source # 
Instance details

Defined in Instrument.Types

Generic DimensionValue Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep DimensionValue :: Type -> Type #

Serialize DimensionValue Source # 
Instance details

Defined in Instrument.Types

SafeCopy DimensionValue Source # 
Instance details

Defined in Instrument.Types

type Rep DimensionValue Source # 
Instance details

Defined in Instrument.Types

type Rep DimensionValue = D1 ('MetaData "DimensionValue" "Instrument.Types" "instrument-0.6.0.0-F93FQDczdiYH6Ea7c21UCQ" 'True) (C1 ('MetaCons "DimensionValue" 'PrefixI 'True) (S1 ('MetaSel ('Just "dimensionValue") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

data Payload Source #

Constructors

Samples 

Fields

Counter 

Fields

Instances

Instances details
Eq Payload Source # 
Instance details

Defined in Instrument.Types

Methods

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

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

Show Payload Source # 
Instance details

Defined in Instrument.Types

Generic Payload Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep Payload :: Type -> Type #

Methods

from :: Payload -> Rep Payload x #

to :: Rep Payload x -> Payload #

Serialize Payload Source # 
Instance details

Defined in Instrument.Types

SafeCopy Payload Source # 
Instance details

Defined in Instrument.Types

type Rep Payload Source # 
Instance details

Defined in Instrument.Types

type Rep Payload = D1 ('MetaData "Payload" "Instrument.Types" "instrument-0.6.0.0-F93FQDczdiYH6Ea7c21UCQ" 'False) (C1 ('MetaCons "Samples" 'PrefixI 'True) (S1 ('MetaSel ('Just "unSamples") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Double])) :+: C1 ('MetaCons "Counter" 'PrefixI 'True) (S1 ('MetaSel ('Just "unCounter") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

data Aggregated Source #

Constructors

Aggregated 

Fields

Instances

Instances details
Eq Aggregated Source # 
Instance details

Defined in Instrument.Types

Show Aggregated Source # 
Instance details

Defined in Instrument.Types

Generic Aggregated Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep Aggregated :: Type -> Type #

Serialize Aggregated Source # 
Instance details

Defined in Instrument.Types

Default Aggregated Source # 
Instance details

Defined in Instrument.Types

Methods

def :: Aggregated #

Migrate Aggregated Source # 
Instance details

Defined in Instrument.Types

Associated Types

type MigrateFrom Aggregated #

SafeCopy Aggregated Source # 
Instance details

Defined in Instrument.Types

type Rep Aggregated Source # 
Instance details

Defined in Instrument.Types

type Rep Aggregated = D1 ('MetaData "Aggregated" "Instrument.Types" "instrument-0.6.0.0-F93FQDczdiYH6Ea7c21UCQ" 'False) (C1 ('MetaCons "Aggregated" 'PrefixI 'True) ((S1 ('MetaSel ('Just "aggTS") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double) :*: S1 ('MetaSel ('Just "aggName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MetricName)) :*: (S1 ('MetaSel ('Just "aggPayload") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 AggPayload) :*: S1 ('MetaSel ('Just "aggDimensions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Dimensions))))
type MigrateFrom Aggregated Source # 
Instance details

Defined in Instrument.Types

data AggPayload Source #

Resulting payload for metrics aggregation

Constructors

AggStats Stats 
AggCount Int 

Instances

Instances details
Eq AggPayload Source # 
Instance details

Defined in Instrument.Types

Show AggPayload Source # 
Instance details

Defined in Instrument.Types

Generic AggPayload Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep AggPayload :: Type -> Type #

Serialize AggPayload Source # 
Instance details

Defined in Instrument.Types

Default AggPayload Source # 
Instance details

Defined in Instrument.Types

Methods

def :: AggPayload #

SafeCopy AggPayload Source # 
Instance details

Defined in Instrument.Types

type Rep AggPayload Source # 
Instance details

Defined in Instrument.Types

type Rep AggPayload = D1 ('MetaData "AggPayload" "Instrument.Types" "instrument-0.6.0.0-F93FQDczdiYH6Ea7c21UCQ" 'False) (C1 ('MetaCons "AggStats" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Stats)) :+: C1 ('MetaCons "AggCount" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

data Stats Source #

Instances

Instances details
Eq Stats Source # 
Instance details

Defined in Instrument.Types

Methods

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

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

Show Stats Source # 
Instance details

Defined in Instrument.Types

Methods

showsPrec :: Int -> Stats -> ShowS #

show :: Stats -> String #

showList :: [Stats] -> ShowS #

Generic Stats Source # 
Instance details

Defined in Instrument.Types

Associated Types

type Rep Stats :: Type -> Type #

Methods

from :: Stats -> Rep Stats x #

to :: Rep Stats x -> Stats #

Serialize Stats Source # 
Instance details

Defined in Instrument.Types

Methods

put :: Putter Stats #

get :: Get Stats #

Default Stats Source # 
Instance details

Defined in Instrument.Types

Methods

def :: Stats #

SafeCopy Stats Source # 
Instance details

Defined in Instrument.Types

type Rep Stats Source # 
Instance details

Defined in Instrument.Types

hostDimension :: DimensionName Source #

Convention for the dimension of the hostname. Used in the client to inject hostname into the parameters map

data HostDimensionPolicy Source #

Should we automatically pull the host and add it as a dimension. Used at the call site of the various metrics (timeI, sampleI, etc). Hosts are basically grandfathered in as a dimension and the functionality of automatically injecting them is useful, but it is not relevant to some metrics and actually makes some metrics difficult to use depending on the backend, so we made them opt-in.

newtype Quantile Source #

Integer quantile, valid values range from 1-99, inclusive.

Constructors

Q 

Fields

Instances

Instances details
Bounded Quantile Source # 
Instance details

Defined in Instrument.Types

Eq Quantile Source # 
Instance details

Defined in Instrument.Types

Ord Quantile Source # 
Instance details

Defined in Instrument.Types

Show Quantile Source # 
Instance details

Defined in Instrument.Types