| Safe Haskell | None |
|---|---|
| Language | GHC2024 |
Arbiter.Core.RateLimit.Stats
Description
Internal to the arbiter packages. Not covered by the PVP.
View and patch types for the rate-limit management and observability API.
Synopsis
- data RateLimitPolicyView = RateLimitPolicyView {
- prefix :: Text
- defaultMaxTokens :: Double
- defaultRefillAmount :: Double
- defaultInterval :: Double
- overrideMaxTokens :: Maybe Double
- overrideRefillAmount :: Maybe Double
- overrideInterval :: Maybe Double
- bucketCount :: Int64
- throttledCount :: Int64
- throttledQueues :: [Text]
- minTokens :: Maybe Double
- avgTokens :: Maybe Double
- data RateLimitBucketView = RateLimitBucketView {}
- data RateLimitPolicyUpdate = RateLimitPolicyUpdate {}
Documentation
data RateLimitPolicyViewSource #
A policy with its default and override params plus live bucket and throttle
stats. Each effective param is its override* field when set, else its default* field.
Constructors
| RateLimitPolicyView | |
Fields
| |
Instances
data RateLimitBucketViewSource #
A single key's bucket: current tokens, effective max, and fill fraction.
Constructors
| RateLimitBucketView | |
Fields
| |
Instances
| FromJSON RateLimitBucketView Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Methods parseJSON :: Value -> Parser RateLimitBucketView# parseJSONList :: Value -> Parser [RateLimitBucketView]# | |||||
| ToJSON RateLimitBucketView Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Methods toJSON :: RateLimitBucketView -> Value# toEncoding :: RateLimitBucketView -> Encoding# toJSONList :: [RateLimitBucketView] -> Value# | |||||
| Eq RateLimitBucketView Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Methods (==) :: RateLimitBucketView -> RateLimitBucketView -> Bool# (/=) :: RateLimitBucketView -> RateLimitBucketView -> Bool# | |||||
| Generic RateLimitBucketView Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Associated Types
Methods from :: RateLimitBucketView -> Rep RateLimitBucketView x# to :: Rep RateLimitBucketView x -> RateLimitBucketView# | |||||
| Show RateLimitBucketView Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Methods showsPrec :: Int -> RateLimitBucketView -> ShowS# show :: RateLimitBucketView -> String# showList :: [RateLimitBucketView] -> ShowS# | |||||
| type Rep RateLimitBucketView Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats type Rep RateLimitBucketView = D1 ('MetaData "RateLimitBucketView" "Arbiter.Core.RateLimit.Stats" "arbiter-core-0.1.0.0-inplace" 'False) (C1 ('MetaCons "RateLimitBucketView" 'PrefixI 'True) ((S1 ('MetaSel ('Just "rateLimitKey") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: (S1 ('MetaSel ('Just "rateLimitPrefix") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Just "tokens") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double))) :*: (S1 ('MetaSel ('Just "maxTokens") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double) :*: (S1 ('MetaSel ('Just "fillFraction") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Double)) :*: S1 ('MetaSel ('Just "lastRefill") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UTCTime))))) | |||||
data RateLimitPolicyUpdateSource #
A patch over a policy's override params. Per field: Nothing leaves it
unchanged, Just Nothing clears the override (reverts to the default), and
Just (Just v) sets it.
Constructors
| RateLimitPolicyUpdate | |
Fields
| |
Instances
| FromJSON RateLimitPolicyUpdate Source # | A missing key leaves the field unchanged. An explicit | ||||
Defined in Arbiter.Core.RateLimit.Stats Methods parseJSON :: Value -> Parser RateLimitPolicyUpdate# | |||||
| ToJSON RateLimitPolicyUpdate Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Methods toJSON :: RateLimitPolicyUpdate -> Value# toEncoding :: RateLimitPolicyUpdate -> Encoding# toJSONList :: [RateLimitPolicyUpdate] -> Value# | |||||
| Eq RateLimitPolicyUpdate Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Methods (==) :: RateLimitPolicyUpdate -> RateLimitPolicyUpdate -> Bool# (/=) :: RateLimitPolicyUpdate -> RateLimitPolicyUpdate -> Bool# | |||||
| Generic RateLimitPolicyUpdate Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Associated Types
Methods from :: RateLimitPolicyUpdate -> Rep RateLimitPolicyUpdate x# | |||||
| Show RateLimitPolicyUpdate Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats Methods showsPrec :: Int -> RateLimitPolicyUpdate -> ShowS# show :: RateLimitPolicyUpdate -> String# showList :: [RateLimitPolicyUpdate] -> ShowS# | |||||
| type Rep RateLimitPolicyUpdate Source # | |||||
Defined in Arbiter.Core.RateLimit.Stats type Rep RateLimitPolicyUpdate = D1 ('MetaData "RateLimitPolicyUpdate" "Arbiter.Core.RateLimit.Stats" "arbiter-core-0.1.0.0-inplace" 'False) (C1 ('MetaCons "RateLimitPolicyUpdate" 'PrefixI 'True) (S1 ('MetaSel ('Just "overrideMaxTokens") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Maybe Double))) :*: (S1 ('MetaSel ('Just "overrideRefillAmount") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Maybe Double))) :*: S1 ('MetaSel ('Just "overrideInterval") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Maybe Double)))))) | |||||