datadog python库
datadog的Python项目详细描述
datadog python库
DATADOGPY是适合于现有Python项目或独立脚本开发的工具集合。它在datadog的原始http接口和代理的statsd metrics聚合服务器上提供了一个抽象,以与datadog交互并高效地报告事件和度量。
要使用statsd度量,代理必须是running and available。
- 库文档:http://datadogpy.readthedocs.org/en/latest/
- http api文档:http://docs.datadoghq.com/api/
- 数据狗总部:http://datadoghq.com
有关更改,请参见CHANGELOG.md。
安装
从PIP安装:
pip install datadog
从源安装:
python setup.py install
快速入门指南
# Configure the module according to your needsfromdatadogimportinitializeoptions={'api_key':'api_key','app_key':'app_key'}initialize(**options)# Use Datadog REST API clientfromdatadogimportapititle="Something big happened!"text='And let me tell you all about it here!'tags=['version:1','application:web']api.Event.create(title=title,text=text,tags=tags)# Use Statsd, a Python client for DogStatsdfromdatadogimportstatsd# Uncomment to set namespace or add tags to everything# statsd.namespace = 'localdev'# statsd.constant_tags = ['testing', 'dogstats']statsd.increment('whatever')statsd.gauge('foo',42)# Or ThreadStats, an alternative tool to collect and flush metrics, using Datadog REST APIfromdatadogimportThreadStatsstats=ThreadStats()stats.start()stats.increment('home.page.hits')
环境变量
作为使用带options
参数的initialize
函数的替代方法,请在应用程序的上下文中设置环境变量DATADOG_API_KEY
和DATADOG_APP_KEY
。
如果未设置DATADOG_API_KEY
或DATADOG_APP_KEY
,库将尝试返回到datadog的apm环境变量前缀:DD_API_KEY
和DD_APP_KEY
。
fromdatadogimportinitialize,api# Assuming you've set `DD_API_KEY` and `DD_APP_KEY` in your env,# initialize() will pick it up automaticallyinitialize()title="Something big happened!"text='And let me tell you all about it here!'tags=['version:1','application:web']api.Event.create(title=title,text=text,tags=tags)
螺纹安全性
DogStatsD
和ThreadStats
是线程安全的。
udp上的原点检测
原点检测是一种检测来自哪个podDogStatsD
包的方法,以便将pod的标记添加到标记列表中。
DogStatsD
客户端附加一个内部标记entity_id
。此标记的值是DD_ENTITY_ID
环境变量(如果找到)的内容,它是pod的uid。
datadog代理将使用此标记向度量插入容器标记。您应该只append
到constant_tags
列表,以避免覆盖此全局标记。
要启用udp上的源代码检测,请将以下行添加到应用程序清单中
env:-name:DD_ENTITY_IDvalueFrom:fieldRef:fieldPath:metadata.uid