Portability | non-portable |
---|---|
Stability | experimental |
Safe Haskell | Safe-Inferred |
A simple interface through which simple status dashboards can be built.
import Data.HealthCheck import Data.Metrics.Reporter.StdOut healthCheck1 :: HealthCheck healthCheck1 = healthCheck "benign_warm_fuzzy_thing" $ return $ StatusReport Good Nothing healthCheck2 :: HealthCheck healthCheck2 = healthCheck "nuclear_missile_launcher" $ return $ StatusReport Ugly $ Just "out of missiles" main :: IO () main = printHealthChecks [ healthCheck1, healthCheck2 ]
- data HealthCheck = HealthCheck {}
- type HealthChecks = [HealthCheck]
- healthCheck :: Text -> IO StatusReport -> HealthCheck
- data Status
- data StatusReport = StatusReport {
- status :: Status
- statusMessage :: Maybe Text
Documentation
data HealthCheck Source
A simple discrete health reporter
HealthCheck | |
|
type HealthChecks = [HealthCheck]Source
Clean up type signatures for bundling sets of health checks for reporting
healthCheck :: Text -> IO StatusReport -> HealthCheckSource
Create a health check.
Provides a simple status reporting mechanism for checking application health at a glance.
Good | Everything appears to be going well. |
Bad | Something is broken. |
Ugly | There is some sort of non-critical issue that deserves attention. |
Unknown | There is no information, either good or bad, at the moment. An example of this might be something like a loss of network connectivity to a non-crucial service. |
data StatusReport Source
A report on the current status of a subsystem.
StatusReport | |
|