- [IMPROVEMENT] API: Keep HTTP connections alive when using
requests
, #328
- [FEATURE] ThreadStats: Add AWS Lambda wrapper, #324
- [BUGFIX] DogStatsD: Do not send empty UDP packets, #264 (thanks @Tenzer)
- [FEATURE] API: Add support for distributions, #312
- [FEATURE] ThreadStats: Add support for distributions, #312
- [OTHER] Remove
simplejson
3p dependency, #304, #309 (thanks @alexpjohnson)
- [BUGFIX] Dogshell: Submit
--date_happened
timestamp when posting events, #287, #301 (thanks @gplasky) - [FEATURE] API: Add search and groups search methods to the
Monitor
resource, #299 - [IMPROVEMENT] Dogshell: Set API and APP keys with environment variables, #228 (thanks @taraslayshchuk)
- [IMPROVEMENT] DogStatsD: Prevent an issue that was causing the
timed
context manager object from overwritting a method with an instance variable, #263 (thanks @florean) - [OTHER] Include tests in PyPI tarball, #259 (thanks @dotlambda)
New API endpoint: https://api.datadoghq.com/api
The Datadog API client now uses https://api.datadoghq.com/api endpoint instead of https://app.datadoghq.com/api. See #257 for more details.
- [BUGFIX] API: Close requests' sessions to limit memory usage, #272 (thanks @thehesiod)
- [BUGFIX] Dogwrap: Fix
TypeError
exceptions when truncatingstdout
,stderr
with Python 3, #260, #267 (thanks @cabouffard, @glasnt) - [FEATURE] DogStatsD: Add client level tags to status checks, #279 (thanks @marshallbrekka)
- [FEATURE] DogStatsD: Add support for
statsd_socket_path
option ininitialize
function, #282 - [IMPROVEMENT] Dogwrap: Default output encoding to UTF-8, #268 (thanks @glasnt)
Search hosts: Infrastructure.search
is deprecated
The Infrastructure.search
method is deprecated in favor of the new Hosts.search
method.
- [BUGFIX] API: Prevent exception contexts from logging URLs and credentials, #266
- [FEATURE] API: Add
search
andtotals
methods to theHosts
resource, #261
- [FEATURE] API: New
DashboardList
resource, #252
ThreadStats: metric type change
ThreadStats
count metrics (produced from the increment
/decrement
and histogram
methods) are now reported with the count
/rate
metric type, instead of gauge
.
As a result, for the corresponding metrics:
- Metric queries can use the
.as_count()
/.as_rate()
functions to switch between count and rate representations. - The default time aggregation uses a sum instead of an average. This may affect the representation of existing metric queries, thus, monitors' definitions and metric graphs.
See #242 (thanks @nilabhsagar) for more details.
- [BUGFIX] ThreadStats: Send count metrics with
Rate
metric type, #242 (thanks @nilabhsagar) - [IMPROVEMENT] ThreadStats: Flush all metrics on exit, #221
- [BUGFIX] Dogshell: Service checks can be sent with optional parameters set to null values, #241 (thanks @timvisher)
- [BUGFIX] Dogwrap: Respect the ouput channel encoding format, #236 (thanks @martin308)
- [FEATURE] DogstatsD: Add beta support for sending global distribution metrics, #249
- [BUGFIX] API: Discard non-null parameters in
api.ServiceCheck.check
method, #206, #207 (thanks @ronindesign) - [BUGFIX] API: Update HTTP method from
GET
toPOST
forapi.Screenboard.share
method, #234 (thanks @seiro-ogasawara) - [BUGFIX] Dogwrap: Encode from unicode before writing to stdout, stderr, #201, #203 (thanks @ronindesign)
- [FEATURE] API: Add
list
method toMetric
resource, #230 (thanks @jbain) - [FEATURE] DogStatsD: Add
socket_path
option to enable Unix socket traffic to DogStatsD 6, #199 - [IMPROVEMENT] DogStatsD: Improve performances, speed up payload construction, #233 (thanks @shargan)
- [FEATURE] Dogshell: Add filtering options to the
monitor show_all
command, #194
- [FEATURE] API: Add metric metadata endpoints #181
- [IMPROVEMENT] API: Disable redirection following with
urlfetch
HTTP library #168 (thanks @evanj) - [IMPROVEMENT] API: Increase default timeout from 3 to 60 seconds #174 (thanks @ojongerius)
- [IMPROVEMENT] DogStatsD: Better exceptions on system default route resolution failures #166, #156
- [IMPROVEMENT] DogStatsD: Close sockets when freed #167 (thanks @thehesiod)
Logging
dd.datadogpy
logger name is no longer. datadog
now uses logger names matching the project hierarchy, i.e.
datadog.api
datadog.statsd
datadog.threadstats
By default, datadog
loggers are set with a do-nothing handler (NullHandler
).
To setup a different handler, one can add a handler
import logging
logging.getLogger("datadog").addHandler(...)
- [FEATURE] DogStatsD: Provide elapsed time from the
timed
decorator, #154 (thanks @tuukkamustonen) - [FEATURE] DogStatsD: Allow starting and stopping
timed
manually, #155 (thanks @tuukkamustonen) - [IMPROVEMENT] DogStatsD: Support timing for coroutine functions on Python 3.5 or higher, #146 (thanks @thehesiod)
- [OTHER] Rename loggers and set null handlers, #161
- [BUGFIX] Dogshell: Fix
UnicodeError
exceptions when a timeboard name contains non ascii characters, #140 - [BUGFIX] DogStatsD: Support unicode characters in tags, #132, #152
- [BUGFIX] ThreadStats: Fix
RuntimeError
exceptions on flush caused by an unsafe thread operation, #143, #151 (thanks @leozc) - [FEATURE] API: Add
delete
method toEvent
resource, #145 - [IMPROVEMENT] DogStatsD: Have
timed
context manager to return itself, #147 (thanks @ross)
- [BUGFIX] API: Do not raise on hostname resolution failures, #106
- [FEATURE] DogStatsD: Allow to dynamically use default route as a StatsD host, #134
- [IMPROVEMENT] API: Enhance compatibility with Google App Engine, support
urlfetch
as a HTTP library #106
- [BUGFIX] Dogshell: Print usage when no argument is given on Python 3, #123
- [BUGFIX] DogStatsD: Do not modify metric-level
tags
parameters whenconstant_tags
is set, #94 (thanks @steven-liu) - [BUGFIX] DogStatsD: Fix thread-safety of the
[@timed][]
decorator, #126 (thanks @mgood) - [BUGFIX] ThreadStats: Do not modify metric-level
tags
parameters whenconstant_tags
is set, #94, #117 (thanks @steven-liu) - [FEATURE] Dogshell: Add an
alert_type
option forevent post
, #120 (thanks @drstevens) - [FEATURE] DogStatD: Set constant tags from
DATADOG_TAGS
environment variable, #114 (thanks @ewdurbin ) - [FEATURE] DogStatsD: Support namespace, #118
- [FEATURE] ThreadStats: Set constant tags from
DATADOG_TAGS
environment variable, #114 (thanks @ewdurbin ) - [FEATURE] ThreadStats: Support namespace, #118
- [IMPROVEMENT] API: Support real numerical data types in
Metrics
, #103 - [IMPROVEMENT] Dogshell: Attach hostname by default to event and metric posts, #122
- [IMPROVEMENT] DogStatsD: Discard
None
values, #119 (thanks @dcrosta) - [IMPROVEMENT] DogStatsD: Import from top level, #105
- [IMPROVEMENT] Dogwrap: Trim output and update event format, #104 (thanks @gnarf)
- [OTHER] API: Adjust the documentation, #96, #101, #110, #111 (thanks @aristiden7o, @emad, @aknuds1, @meawoppl)
- [OTHER] Dogshell: Update misleading help message for
event stream
, #124
- [BUGFIX] Fix typo in Dogshell breaking the Timeboard
pull_all
method, #92 - [FEATURE] Enhance
constant_tags
support to ThreadStats and Statsd events, #90 (thanks @jofusa) - [FEATURE] New CRUD User API, #89
- [OTHER] Fix Dogwrap documentation output typo, #87 (thanks @gnarf)
- [FEATURE] Option to time in ms with
statsd
, #78 (thanks @g--) - [FEATURE] Option to unmute
api
ApiError exceptions, #76 - [OTHER] Use
simplejson
with Python 3.x, #83
- [FEATURE] Constant tags client option to append tags to every submitted metrics, #68 (thanks @jofusa)
- [FEATURE] Embeddable graphs API, #62
- [FEATURE] Optional metric name for the timed decorator, #71 (thanks @clokep)
- [IMPROVEMENT] Option to use the verify parameter in requests to configure a ca certificates file or to disable verification, #70 (thanks @ogst)
- [BUGFIX] Fix
Metric.send
method to play nice with multiple metrics, #59 (thanks @kuzmich) - [BUGFIX] Fix socket creation thread-unsafe code, #57 #60 (thanks @GrahamDumpleton)
- [BUGFIX] Rename
metric_type
parameter totype
inMetric.send
method, #64 - [FEATURE] Add new monitor
unmute
arg (all_scopes
) to allow clearing all mute settings for a given monitor, #58 - [FEATURE] Revoke a shared screenboard, #46
- [IMPROVEMENT] Add a timed context manager to
statsd
, #65 (thanks @clokep) - [IMPROVEMENT] Adjust Dogshell descriptions to distinguish between
mute_all
/unmute_all
andmute
/unmute
methods, #58 - [IMPROVEMENT] Include additional information in 403 response exceptions, #58
- [OTHER] Update
requests
library, per CVE-2015-2296, #63
- [BUGFIX] Fix socket creation thread-unsafe code, #57 #60 (thanks @GrahamDumpleton)
- [BUGFIX] Always fall back when unable to determine hostname from
datadog.conf
, #53 - [FEATURE] Add
message
parameter support to host muting commands, #51
- [BUGFIX] Fix an unexpected exception raised in
initialize
method on Windows with Python3.4, #47 - [FEATURE] Add support for metric query API, #45
- [BUGFIX] Fix a wrong event post parameter in Dogshell/Dogwrap, #36
- [BUGFIX] Fix wrong keys in auto-generated .dogrc, #34
- [FEATURE] Add a priority option to Dogwrap, or auto-detect it based on output, #42
- [FEATURE] Initialize API parameters from environment variables, #43
- [FEATURE] Stream Dogwrap command output during its execution or buffer it, #39
- [OTHER] Add PyPI classifiers, #41
- [FEATURE]
DATADOG_HOST
environment variable to determine which API host to use, #30
- [BUGFIX] Fix a leftover debug statement
- [BUGFIX] Fix test requirements
- [BUGFIX] Import json module from
datadog.compat
- [OTHER] Contributing update
See #8, thanks @benweatherman
- [BUGFIX] Fixes
threadstats
unsafe thread operations, #6 - [FEATURE] Add tests to check
statsd
andthreadstats
thread safety, #6 - [OTHER] Changelog update, #9 @miketheman
- [BUGFIX] Fix a typo that was causing an initialization issue with
datadog.dogshell
, #7
- First release