freckle-stats 0.0.0.0 → 0.0.0.1
raw patch · 5 files changed
+35/−31 lines, 5 filesdep ~freckle-envdep ~freckle-preludePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: freckle-env, freckle-prelude
API changes (from Hackage documentation)
- Freckle.App.Stats: counter :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> Int -> m ()
+ Freckle.App.Stats: counter :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> Int -> m ()
- Freckle.App.Stats: decGauge :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m) => Gauge -> m ()
+ Freckle.App.Stats: decGauge :: (HasStatsClient app, MonadReader app m, MonadUnliftIO m) => Gauge -> m ()
- Freckle.App.Stats: gauge :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> Double -> m ()
+ Freckle.App.Stats: gauge :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> Double -> m ()
- Freckle.App.Stats: histogram :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env, ToMetricValue n) => Text -> n -> m ()
+ Freckle.App.Stats: histogram :: (ToMetricValue n, HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> n -> m ()
- Freckle.App.Stats: histogramSince :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> UTCTime -> m ()
+ Freckle.App.Stats: histogramSince :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> UTCTime -> m ()
- Freckle.App.Stats: histogramSinceMs :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> UTCTime -> m ()
+ Freckle.App.Stats: histogramSinceMs :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> UTCTime -> m ()
- Freckle.App.Stats: incGauge :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m) => Gauge -> m ()
+ Freckle.App.Stats: incGauge :: (HasStatsClient app, MonadReader app m, MonadUnliftIO m) => Gauge -> m ()
- Freckle.App.Stats: increment :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> m ()
+ Freckle.App.Stats: increment :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> m ()
- Freckle.App.Stats: lookupGauge :: (MonadReader app m, HasStatsClient app) => (Gauges -> Gauge) -> m Gauge
+ Freckle.App.Stats: lookupGauge :: (HasStatsClient app, MonadReader app m) => (Gauges -> Gauge) -> m Gauge
- Freckle.App.Stats: tagged :: (MonadReader env m, HasStatsClient env) => [(Text, Text)] -> m a -> m a
+ Freckle.App.Stats: tagged :: (HasStatsClient env, MonadReader env m) => [(Text, Text)] -> m a -> m a
- Freckle.App.Stats: withGauge :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m) => (Gauges -> Gauge) -> m a -> m a
+ Freckle.App.Stats: withGauge :: (HasStatsClient app, MonadReader app m, MonadUnliftIO m) => (Gauges -> Gauge) -> m a -> m a
- Freckle.App.Stats.Rts: forkRtsStatPolling :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => m ()
+ Freckle.App.Stats.Rts: forkRtsStatPolling :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => m ()
Files
- CHANGELOG.md +5/−1
- freckle-stats.cabal +6/−6
- library/Freckle/App/Stats.hs +20/−20
- library/Freckle/App/Stats/Rts.hs +2/−2
- package.yaml +2/−2
CHANGELOG.md view
@@ -1,4 +1,8 @@-## [_Unreleased_](https://github.com/freckle/freckle-app/compare/freckle-stats-v0.0.0.0...main)+## [_Unreleased_](https://github.com/freckle/freckle-stats/compare/v0.0.0.1...main)++## [v0.0.0.1](https://github.com/freckle/freckle-stats/tree/v0.0.0.1)++Changed source repository ## [v0.0.0.0](https://github.com/freckle/freckle-app/tree/freckle-stats-v0.0.0.0/freckle-stats)
freckle-stats.cabal view
@@ -1,11 +1,11 @@ cabal-version: 1.18 name: freckle-stats-version: 0.0.0.0+version: 0.0.0.1 license: MIT license-file: LICENSE maintainer: Freckle Education-homepage: https://github.com/freckle/freckle-app#readme-bug-reports: https://github.com/freckle/freckle-app/issues+homepage: https://github.com/freckle/freckle-stats#readme+bug-reports: https://github.com/freckle/freckle-stats/issues synopsis: An intentionally-leaky StatsD interface to Datadog description: Please see README.md category: Prelude@@ -17,7 +17,7 @@ source-repository head type: git- location: https://github.com/freckle/freckle-app+ location: https://github.com/freckle/freckle-stats library exposed-modules:@@ -47,8 +47,8 @@ datadog >=0.3.0.0, ekg-core >=0.1.1.7, freckle-ecs >=0.0.0.0,- freckle-env >=0.0.1.1,- freckle-prelude >=0.0.1.1,+ freckle-env >=0.0.1.2,+ freckle-prelude >=0.0.4.0, immortal >=0.3, lens >=5.1.1, mtl >=2.2.2,
library/Freckle/App/Stats.hs view
@@ -166,7 +166,7 @@ toPair = bimap (fromString . unpack) String withGauge- :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m)+ :: (HasStatsClient app, MonadReader app m, MonadUnliftIO m) => (Gauges -> Gauge) -> m a -> m a@@ -178,13 +178,13 @@ dec = decGauge lookupGauge- :: (MonadReader app m, HasStatsClient app)+ :: (HasStatsClient app, MonadReader app m) => (Gauges -> Gauge) -> m Gauge lookupGauge accessor = view $ statsClientL . gaugesL . to accessor incGauge- :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m)+ :: (HasStatsClient app, MonadReader app m, MonadUnliftIO m) => Gauge -> m () incGauge g@Gauge {..} = do@@ -192,7 +192,7 @@ publishGauge g decGauge- :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m)+ :: (HasStatsClient app, MonadReader app m, MonadUnliftIO m) => Gauge -> m () decGauge g@Gauge {..} = do@@ -200,7 +200,7 @@ publishGauge g publishGauge- :: (MonadReader app m, HasStatsClient app, MonadUnliftIO m)+ :: (HasStatsClient app, MonadReader app m, MonadUnliftIO m) => Gauge -> m () publishGauge Gauge {..} = do@@ -209,23 +209,23 @@ -- | Include the given tags on all metrics emitted from a block tagged- :: (MonadReader env m, HasStatsClient env) => [(Text, Text)] -> m a -> m a+ :: (HasStatsClient env, MonadReader env m) => [(Text, Text)] -> m a -> m a tagged tags = local $ statsClientL . tagsL <>~ tags -- | Synonym for @'counter' 1@ increment- :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => Text -> m ()+ :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> m () increment name = counter name 1 counter- :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env)+ :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> Int -> m () counter = sendMetric Datadog.Counter gauge- :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env)+ :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> Double -> m ()@@ -236,10 +236,10 @@ -- The 'ToMetricValue' constraint can be satisfied by most numeric types and is -- assumed to be seconds. histogram- :: ( MonadUnliftIO m- , MonadReader env m+ :: ( Datadog.ToMetricValue n , HasStatsClient env- , Datadog.ToMetricValue n+ , MonadReader env m+ , MonadUnliftIO m ) => Text -> n@@ -247,14 +247,14 @@ histogram = sendMetric Datadog.Histogram histogramSince- :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env)+ :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> UTCTime -> m () histogramSince = histogramSinceBy toSeconds where toSeconds = round @_ @Int histogramSinceMs- :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env)+ :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> UTCTime -> m ()@@ -263,10 +263,10 @@ toMilliseconds = (* 1000) . realToFrac @_ @Double histogramSinceBy- :: ( MonadUnliftIO m- , MonadReader env m+ :: ( Datadog.ToMetricValue n , HasStatsClient env- , Datadog.ToMetricValue n+ , MonadReader env m+ , MonadUnliftIO m ) => (NominalDiffTime -> n) -> Text@@ -278,10 +278,10 @@ sendMetric Datadog.Histogram name delta sendMetric- :: ( MonadUnliftIO m- , MonadReader env m+ :: ( Datadog.ToMetricValue v , HasStatsClient env- , Datadog.ToMetricValue v+ , MonadReader env m+ , MonadUnliftIO m ) => Datadog.MetricType -> Text
library/Freckle/App/Stats/Rts.hs view
@@ -17,7 +17,7 @@ -- -- Stats are collected via `ekg-core` and 'System.Metrics.registerGcMetrics' forkRtsStatPolling- :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env) => m ()+ :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => m () forkRtsStatPolling = do store <- liftIO Ekg.newStore liftIO $ Ekg.registerGcMetrics store@@ -30,7 +30,7 @@ threadDelay $ seconds 1 flushEkgSample- :: (MonadUnliftIO m, MonadReader env m, HasStatsClient env)+ :: (HasStatsClient env, MonadReader env m, MonadUnliftIO m) => Text -> Ekg.Value -> m ()
package.yaml view
@@ -1,8 +1,8 @@ name: freckle-stats-version: 0.0.0.0+version: 0.0.0.1 maintainer: Freckle Education category: Prelude-github: freckle/freckle-app+github: freckle/freckle-stats synopsis: An intentionally-leaky StatsD interface to Datadog description: Please see README.md