!      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                                                                  None!"#$%&'+,-016;<=>?FKNQSTUV]U%5A Datadog monitor. These monitors actively check multiple different types of data within Datadog against user-provided conditions, triggering notifications when condition(s) are met.7Datadog's internal reference to this specific monitor.=The specification from which this monitor can be re-created.3Datadog's internal reference to a specific monitor.VA representation of a monitor's configuration, from which a monitor could be rebuilt.:The query string the monitor uses to determine its state. 'The human-readable name of the monitor. FThe message sent with the notification when the monitor is triggered. IOptional configuration parameters specifying advanced monitor beahviour. 0Advanced configuration parameters for a monitor.^Each monitor is of a specific type, which determines what sort of check the monitor performs.OWatches a (combination of) metric(s), alerting when it crosses some threshold.FWatches a service and alerts when the service enters a failing state.=Checks the event stream for events meeting certain criteria.+jAn event stored within Datadog. An event represents some sort of occurrence that was recorded in Datadog.-'Datadog's unique reference to the event.*Context on what happened during this event/1Datadog's internal reference to a specific event.0Details that describe an event.3!The description/body of the event4$The time at which the event occurred6&The hostname associated with the event9*The trigger of the event (if identifiable):BA source from which an event may originate, recognized by Datadog.G The failure levels for an alert.L>A set of priorities used to denote the importance of an event.O'A scheduled donwtime stored in Datadog.Q4Datadog's unique reference to the scheduled downtimeR Context on the downtime scheduleS=Datadog's internal reference to a specific donwtime instance.T,A description of when downtime should occur.V+When to start the downtime (or immediately)W+When to stop the downtime (or indefinitely)X9A message to include with notifications for this downtimeY}The scope to apply downtime to (if applying downtime to a host, use a tag of the form "host:hostname", NOT just "hostname")Z.The result of running a check on some service.\Text describing the check]+Name of the host which the check applies to^Status result of the check_lTime at which the check occurred (Nothing will wait until the check is sent to Datadog to compute the time)`NInformation related to why this specific check run supplied the status it dida%Tags to associate with this check runbAThe status of a service, based on a check that is run against it.cEverything is as it should be.d/Something abnormal, but not critical, is amiss.e(Something dangerously critical is amiss.f(The current status cannot be determined.gEntity descriptor.Entities in Datadog (hosts, metrics, events, etc) are frequently associated with one more more "tags". These tags are labels that identify an entity as belonging to a particular group or having particular properties. A tag can come in two forms: a simple text label, describing entities associated with the tag, or a key-value pair, associating entities with a specific slice of a larger categorization.MAs strings, the key and value parts of a key-value pair are separated by a (:v). As such, any tag with no colons is a label, and any tag with one (or more) is a key-value pair - if more than one : is specified, the additional : s will become part of the value.jCAn Environment contains everything needed to interact with Datadog.l.Auth keys to permit communication with Datadogm The root URL for the Datadog APIn-HTTP manager used to make requests to Datadogo9Wraps the keys needed by Datadog to fully access the API.  ! "#$%&'()*+,.-/0198765432:FEDCBA@?>=<;GIJKHLNMOPRQSTUYXWVZ[a`_^]\bfedcgihjknmloprqstvuwxzy{|}~~{|}wxyzstuvopqrjklmnghibcdefZ[\]^_`aTUVWXYSOPQRLMNGHIJK:;<=>?@ABCDEF0123456789/+,-.()*%&'"#$ !     !"#$%&'()*+,-.0 123456789: ;<=>?@ABCDEFGHIJKLMNOPQRTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~None""#$%&'+,-016;<=>?AFKNQSTUV]\i    %$#"! '*)(,0/.-      !"#$%&'()*+,-./01&      !"#$%'()*,-./0None!"#$%&'+,-016;<=>?FKNQSTUV]o9Creates the most basic specification required by a monitor, containing the type of monitor and the query string used to detect the monitor's state.zGenerates a set of "default" Monitor options, which specify as little optional configuration as possible. This includes:'No silencing of any part of the monitor;No notification when data related to the monitor is missing0No alert timeout after the monitor is triggeredn/No renotification when the monitor is triggered,No notification when the monitor is modified In production situations, it is not safe to rely on this documented default behaviour for critical setitngs; use the helper functions to introspect the MonitorOptions instance provided by this function. This also protects against future modifications to this API.  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHKJILMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~     !"#$%'()*,-./0234567894567892323None!"#$%&'+,-016;<=>?FKNQSTUV]P^Provide a list of the silenced scopes for this monitor and the time at which the silencer will expire (may be indefinite). The monitor  "*" - refers to the monitor at large (un-scoped)._Silence a given scope until some time (or indefinitely), replacing the current silencer on the given scope if one already exists.`LRemove the silencer from a given scope, if the scope is currently silenced.aAUnsilence every scope in the monitor, including the global scope.bDetermine how long without data a monitor will go before notifying to such, providing Nothing if the monitor will never notify on lack of data.czHave the monitor notify when it does not receive data for some given amount of time (rounded down to the nearest minute).d;Prevent the monitor from notifying when it is missing data.eDetermine after how long the monitor will stop alerting after it is triggered, providing Nothing if the monitor will never stop alerting.faHave the monitor stop alerting some time after it is triggered (rounded up to the nearest hour).g:Prevent the monitor from timing out after it is triggered.hDetermine after how long after being triggered the monitor will re-notify, and what message it will include in the re-notification (if any), providing Nothing if the monitor will never re-notify.iHave the monitor re-notify some amount of time after the most recent notification (rounded down to the nearest minute) and optionally what text it will include in the re-notification.jUPrevent the monitor from re-notifying after it triggers an un-resolved notification.kEDetermine if the monitor triggers a notification when it is modified.l<Have the monitor trigger a notification when it is modified.mGPrevent the monitor from triggering a notification when it is modified.nCreates the most basic specification required by a monitor, containing the type of monitor and the query string used to detect the monitor's state. This uses 9; to set the options (see that function for disclaimer(s)).o9Create a new monitor in Datadog matching a specification.p&Load a monitor from Datadog by its ID.qSync a monitor with Datadog.This must be called on any active monitors to apply the changes with Datadog itself; merely modifying a monitor locally is not enough to store the changes.Beware: If a monitor has changed on the Datadog remote endpoint between the time it was copied locally and when this function is called, those changes already made remotely will be overwritten by this change.rDelete a monitor from Datadog.Note that once a monitor is deleted, it cannot be used locally anymore, however you can always create a new monitor using the deleted monitor's specification.sLoad monitors from Datadog.3This function takes a filter list argument, which should contain any tags the user wishes to filter on. If the filter list is left empty, no filters will be applied. The list of tags is ANDed together; if you specify more than one filter tag, only metrics which match all filter tags will be provided.t1Prevent all monitors from notifying indefinitely.uAllow all monitors to notify.s#Tags on which to filter the resultsN ,-./0^_`abcdefghijklmnopqrstuN  ^_`abcdefghijklmnoqrpstu,-./0None!"#$%&'+,-016;<=>?FKNQSTUV] !"#$'()*vw"#$ !wv'()*None!"#$%&'+,-016;<=>?FKNQSTUV]x1Do not allow alerts to trigger on a specific hosty*Allow alerts to trigger on a specific hostxyxyNone!"#$%&'+,-016;<=>?FKNQSTUV]zCreates the most basic description required for an event, containing the event title, descriptive text, time of occurrence, and priority of the event. This event will be of type Info.{Store a new event in Datadog.|%Load an event from Datadog by its ID.}6Query Datadog for events within a specific time range.}*The range within which to query for events6Optionally filter results by a specific priority levelA list of tags to filter byS+-./0123456789:;<=>?@ABCDEFGHKJILMN   !"#$%z{|}SLMNGHIJK:;<=>?@ABCDEF0123456789+-./z{|}   !"#$%None!"#$%&'+,-016;<=>?FKNQSTUV]~uCreates the most basic possible downtime specification, which just contains the scope to which the downtime applies.#Schedule a new downtime in Datadog.2Update the specification of a downtime in Datadog.%Cancel scheduled downtime in Datadog.1Load a scheduled downtime from Datadog by its ID.aLoad all scheduled downtimes, optionally filtering for only downtimes that are currently active.OSTUVWXY~TUVWXYO~S None!"#$%&'+,-016;<=>?FKNQSTUV]™(Record the result of a check in Datadog. Z[\]^_`abcdef   bcdefZ[\]^_`a  None!"#$%&'+,-016;<=>?FKNQSTUV]-Load Datadog keys from environment variables.6The keys will be read from the enviornment variables DATADOG_API_KEY and DATADOG_APP_KEY;. If the keys cannot be read, this function will throw an  IOException.jCreate a new environment using authentication keys, defaulting to the Datadog documented default API URL.  !"#$+-./0123456789:;<=>?@ABCDEFGHKJILMNOSTUVWXYZ[\]^_`abcdefjopqr     !"#$%'()*,-./0^_`abcdefghijklmnopqrstuvwxyz{|}~ opqrj None""#$%&'+,-016;<=>?AFKNQSTUV]7The fields accessible through corresponding lenses are: ::  ::  ::  ::  a => a :: []}Converts a supported numeric type to the format understood by DogStatsD. Currently limited by BufferBuilder encoding options.Gauges measure the value of a particular thing at a particular time, like the amount of fuel in a car s gas tank or the number of users connected to a system.pCounters track how many times something happened per second, like the number of database requests or page views.StatsD only supports histograms for timing, not generic values (like the size of uploaded files or the number of rows returned from a query). Timers are essentially a special case of histograms, so they are treated in the same manner by DogStatsD for backwards compatibility.Histograms track the statistical distribution of a set of values, like the duration of a number of database queries or the size of files uploaded by users. Each histogram will track the average, the minimum, the maximum, the median and the 95th percentile.Sets are used to count the number of unique elements in a group. If you want to track the number of unique visitor to your site, sets are a great way to do that.aTags are a Datadog specific extension to StatsD. They allow you to tag a metric with a dimension that s meaningful to you and slice and dice along that dimension in your graphs. For example, if you wanted to measure the performance of two video rendering algorithms, you could tag the rendering time metric with the version of the algorithm you used.TCreate a tag from a key-value pair. Useful for slicing and dicing events in Datadog.aKey and value text values are normalized by converting ":"s, "|"s, and "@"s to underscores ("_").Smart @ constructor. Use the lens functions to set the optional fields.7The fields accessible through corresponding lenses are:  ::  ::  ::   ::   ::   ::   ::   ::   :: [](Special setter to update the value of a . Cmetric ("foo"" :: Text) Counter (1 :: Int) & value .~ (5 :: Double)Smart @ constructor. Use the lens functions to set the optional fields.7The fields accessible through corresponding lenses are: ::  ::  ::   ::   ::   :: []?The hostname or IP of the DogStatsD server (default: 127.0.0.1)BThe port that the DogStatsD server is listening on (default: 8125) Convert an , , or  StatusCheck to their wire format.RNote that Dummy is not the only constructor, just the only publicly available one.Just drops all stats.Send a , , or  StatusCheck to the DogStatsD server.dSince UDP is used to send the events, there is no ack that sent values are successfully dealt with. withDogStatsD defaultSettings $ \client -> do send client $ event "Wombat attack" "A host of mighty wombats has breached the gates" send client $ metric "wombat.force_count" Gauge (9001 :: Int) send client $ serviceCheck "Wombat Radar" ServiceOknameMM       None""#$%&'+,-016;<=>?FKNQSTUV]   !"##$%&'()*++,--.//011234556789:;<=>?@ABCDEFGHIJKLMNOPQRSSTUVWWXYZ[\\]^_`abcdefghijkklmnoopqrrstuuvwxxyzz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~       #    ) *    h        1 K L M N O              !                                                            # $    ' h  1          !                  &datadog-0.2.2.0-DoOripUq5bi9OckUlPp6zbNetwork.Datadog.TypesNetwork.Datadog.LensNetwork.Datadog.InternalNetwork.Datadog.MonitorNetwork.Datadog.MetricsNetwork.Datadog.HostNetwork.Datadog.EventNetwork.Datadog.DowntimeNetwork.Datadog.CheckNetwork.DatadogNetwork.StatsD.Datadog Paths_datadogMonitor monitorId' monitorSpec MonitorId MonitorSpecmonitorSpecType'monitorSpecQuerymonitorSpecNamemonitorSpecMessagemonitorSpecOptionsMonitorOptionsmonitorOptionsSilencedmonitorOptionsNotifyNoDatamonitorOptionsNoDataTimeframemonitorOptionsTimeoutHmonitorOptionsRenotifyIntervalmonitorOptionsEscalationMessagemonitorOptionsNotifyAudit MonitorType MetricAlert ServiceCheck EventAlertMetric metricName metricPoints metricHost metricTags MetricPointsGaugeCounterSeries fromSeries WrappedEvents wrappedEvents WrappedEvent wrappedEventEventeventId' eventDetailsEventId EventSpeceventSpecTitle eventSpecTexteventSpecDateHappenedeventSpecPriority eventSpecHost eventSpecTagseventSpecAlertTypeeventSpecSourceType SourceTypeNagiosHudsonJenkinsUserMyAppsFeedChefPuppetGit BitBucketFabric Capistrano AlertTypeErrorWarningInfoSuccess EventPriorityNormalPriority LowPriorityDowntime downtimeId' downtimeSpec DowntimeId DowntimeSpecdowntimeSpecStartdowntimeSpecEnddowntimeSpecMessagedowntimeSpecScope CheckResultcheckResultCheckcheckResultHostNamecheckResultStatuscheckResultTimestampcheckResultMessagecheckResultTags CheckStatusCheckOk CheckWarning CheckCritical CheckUnknownTag KeyValueTagLabelTag EnvironmentenvironmentKeysenvironmentApiUrlenvironmentManagerKeysapiKeyappKey DatadogClientdatadogClientManagerdatadogClientKeys ReadWritereadWriteApiKeyreadWriteApplicationKeyWrite writeApiKey Timestamp fromTimestamp $fReadTag $fShowTag$fShowEventPriority$fShowAlertType$fShowSourceType$fShowMonitorType$fEqKeys$fEqTag$fEqCheckStatus$fEqCheckResult$fEqDowntimeSpec $fEqDowntime$fEqEventPriority $fEqAlertType$fEqSourceType $fEqEventSpec$fShowEventSpec $fEqEvent $fShowEvent$fSemigroupSeries$fMonoidSeries$fEqMonitorType$fEqMonitorOptions$fEqMonitorSpec $fEqMonitor HasTimestamp timestampHasTagstags HasStatusstatus HasMessagemessage HasHostNamehostNameHasCheckcheck$fHasCheckCheckResultText$fHasHostNameCheckResultText$fHasMessageCheckResultMaybe!$fHasStatusCheckResultCheckStatus$fHasTagsCheckResult[]$fHasTimestampCheckResultMaybeHasStartstartHasScopescopeHasEndend$fHasMessageDowntimeSpecMaybe$fHasEndDowntimeSpecMaybe$fHasScopeDowntimeSpecTag$fHasStartDowntimeSpecMaybeHasSpecspecHasId'id'$fHasId'DowntimeInt$fHasSpecDowntimeDowntimeSpecHasTitletitleHasTexttext HasSourceType sourceType HasPrioritypriorityHasHosthostHasDateHappened dateHappened HasAlertType alertType$fHasTagsEventSpec[] $fHasAlertTypeEventSpecAlertType!$fHasDateHappenedEventSpecUTCTime$fHasHostEventSpecMaybe#$fHasPriorityEventSpecEventPriority$fHasSourceTypeEventSpecMaybe$fHasTextEventSpecText$fHasTitleEventSpecText HasDetailsdetails$fHasId'EventInt$fHasDetailsEventEventSpec HasPointspointsHasNamename$fHasTagsMetric[]$fHasHostMetricMaybe$fHasNameMetricText$fHasPointsMetricMetricPoints HasTimeoutHtimeoutH HasSilencedsilencedHasRenotifyIntervalrenotifyIntervalHasNotifyNoData notifyNoDataHasNotifyAudit notifyAuditHasNoDataTimeframenoDataTimeframeHasEscalationMessageescalationMessage($fHasEscalationMessageMonitorOptionsText'$fHasNoDataTimeframeMonitorOptionsMaybe"$fHasNotifyAuditMonitorOptionsBool#$fHasNotifyNoDataMonitorOptionsBool($fHasRenotifyIntervalMonitorOptionsMaybe"$fHasSilencedMonitorOptionsHashMap $fHasTimeoutHMonitorOptionsMaybeHasType'type'HasQueryquery HasOptionsoptions$fHasNameMonitorSpecMaybe$fHasMessageMonitorSpecMaybe%$fHasOptionsMonitorSpecMonitorOptions$fHasQueryMonitorSpecText $fHasType'MonitorSpecMonitorType$fHasSpecMonitorMonitorSpec$fHasId'MonitorIntAsTag_Tag _KeyValueTag _LabelTag $fAsTagTag AsCheckStatus _CheckStatus_CheckOk _CheckWarning_CheckCritical _CheckUnknown$fAsCheckStatusCheckStatusAsEventPriority_EventPriority_NormalPriority _LowPriority$fAsEventPriorityEventPriority AsAlertType _AlertType_Error_Warning_Info_Success$fAsAlertTypeAlertType AsSourceType _SourceType_Nagios_Hudson_Jenkins_User_MyApps_Feed_Chef_Puppet_Git _BitBucket_Fabric _Capistrano$fAsSourceTypeSourceTypeAsMetricPoints _MetricPoints_Gauge_Counter$fAsMetricPointsMetricPoints AsMonitorType _MonitorType _MetricAlert _ServiceCheck _EventAlert$fAsMonitorTypeMonitorTypeDatadogCredentials signRequest prependMaybe prependBool datadogHttp decodeDatadog baseRequestdefaultMonitorOptions$fFromJSONMonitor$fToJSONMonitor$fFromJSONMonitorSpec$fToJSONMonitorSpec$fFromJSONMonitorOptions$fToJSONMonitorOptions$fFromJSONMonitorType$fToJSONMonitorType$fToJSONMetric$fToJSONMetricPoints$fToJSONTimestamp$fToJSONSeries$fFromJSONWrappedEvents$fFromJSONWrappedEvent$fFromJSONEvent $fToJSONEvent$fFromJSONEventSpec$fToJSONEventSpec$fFromJSONSourceType$fToJSONSourceType$fFromJSONAlertType$fToJSONAlertType$fFromJSONEventPriority$fToJSONEventPriority$fFromJSONDowntime$fToJSONDowntime$fFromJSONCheckResult$fToJSONCheckResult$fFromJSONCheckStatus$fToJSONCheckStatus $fFromJSONTag $fToJSONTag$fFromJSONDowntimeSpec$fToJSONDowntimeSpec$fDatadogCredentialsReadWrite$fDatadogCredentialsWritegetSilencedMonitorScopessilenceMonitorScopeunsilenceMonitorScopeunsilenceAllMonitorScopedoesNotifyOnNoMonitorDatanotifyOnNoMonitorDatanoNotifyOnNoMonitorDatagetMonitorTimeoutsetMonitorTimeoutclearMonitorTimeoutdoesRenotifyMonitorrenotifyMonitornoRenotifyMonitordoesNotifyOnAudit notifyOnAuditnoNotifyOnAuditminimalMonitorSpec createMonitor loadMonitor updateMonitor deleteMonitor loadMonitorsmuteAllMonitorsunmuteAllMonitorsseries sendMetricsmuteHost unmuteHostminimalEventSpec createEvent loadEvent loadEventsminimalDowntimeSpecscheduleDowntimeupdateDowntimecancelDowntime loadDowntime loadDowntimes recordCheckloadKeysFromEnvcreateEnvironment withDatadogwriteCredentialsreadWriteCredentials ToMetricValue encodeValue MetricTypeTimer HistogramSet MetricNamefromMetricNametagmetric$fToMetricValueDouble$fToMetricValueIntPriorityLowNormal HasSampleRate sampleRatevalueevent$fHasNameMetricMetricName$fHasSampleRateMetricDouble$fHasType'MetricMetricTypeServiceCheckStatus ServiceOkServiceWarningServiceCriticalServiceUnknownHasSourceTypeNamesourceTypeName HasHostnamehostnameHasAggregationKeyaggregationKey$fHasTagsEvent[]$fHasAggregationKeyEventMaybe$fHasAlertTypeEventMaybe$fHasDateHappenedEventMaybe$fHasHostnameEventMaybe$fHasPriorityEventMaybe$fHasSourceTypeNameEventMaybe$fHasTextEventText$fHasTitleEventText$fReadServiceCheckStatus$fShowServiceCheckStatus$fEqServiceCheckStatus$fOrdServiceCheckStatus$fEnumServiceCheckStatusDogStatsSettingsdogStatsSettingsHostdogStatsSettingsPortToStatsD serviceCheck$fHasTagsServiceCheck[]$fHasNameServiceCheckText$fHasHostnameServiceCheckMaybe"$fHasDateHappenedServiceCheckMaybe$fHasMessageServiceCheckMaybe)$fHasStatusServiceCheckServiceCheckStatus$fToStatsDServiceCheck$fToStatsDEvent$fToStatsDMetric StatsClientDummyHasPortportdefaultSettings mkStatsClient withDogStatsDsendfinalizeStatsClient$fHasHostDogStatsSettings[]$fHasPortDogStatsSettingsIntghc-prim GHC.TypesDouble#text-1.2.3.0-8nD60G3tOYT3Qi8GaESeB5Data.Text.InternalTextbaseGHC.BaseMaybe time-1.8.0.2 Data.Time.Clock.Internal.UTCTimeUTCTimemetricSampleRate metricType'mValuefromTag eventTitle eventTexteventDateHappened eventHostnameeventAggregationKey eventPriorityeventSourceTypeNameeventAlertType eventTagsserviceCheckNameserviceCheckStatusserviceCheckMessageserviceCheckDateHappenedserviceCheckHostnameserviceCheckTagstoStatsDstatsClientHandlestatsClientReaperversion getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName