【问题标题】:How to tag gunicorn metrics with proc_name?如何使用 proc_name 标记 gunicorn 指标?
【发布时间】:2018-01-26 08:28:44
【问题描述】:

我正在将来自多个应用程序的 gunicorn 指标推送到来自同一主机的 datadog 中,但是我找不到使用标签或 proc_name 对 statsd 指标进行分组的方法。

Datadog gunicorn 集成

https://app.datadoghq.com/account/settings#integrations/gunicorn

Datadog 代理检查正在使用app:proc_name 标签自动更新。我可以使用它对特定服务的数据进行分组和选择。

https://github.com/DataDog/dd-agent/blob/5.2.x/checks.d/gunicorn.py#L53

但是,对于 statsd 指标,我看不到如何分配标签或 proc_name。这不是自动完成的,我也看不到指定标签的方法。

https://github.com/benoitc/gunicorn/blob/19.6.0/gunicorn/instrument/statsd.py#L90

Datadog 配置:

cat /etc/dd-agent/datadog.conf 

[Main]

dd_url: https://app.datadoghq.com
api_key: <KEY>

bind_host: 0.0.0.0
log_level: INFO
statsd_metric_namespace: my_namespace
tags: role:[service, test]

Gunicorn 配置:

# cat /etc/dd-agent/conf.d/gunicorn.yaml

init_config:
instances:
-   proc_name: service
-   proc_name: another_service

关于如何实现这一点的任何想法?

使用笔记本的示例:

在本例中,我可以在“来自”或“平均依据”下拉菜单中选择 app:service

Timeseries - `gunicorn.workers` - from `app:service`

对于带有 my_namespace 前缀的指标,我无法引用相同的应用程序名称。只有主机和环境相关的标签可用。

Timeseries - `my_namespace.gunicorn.workers` - from "Not available"
Timeseries - `my_namespace.gunicorn.requests` - from "Not available"

【问题讨论】:

    标签: gunicorn datadog


    【解决方案1】:

    与 Datadog 支持通话。非常有帮助,但简短的回答是目前没有选项可以添加额外的标签来指定单个 gunicorn.yaml 文件中的特定 proc_name。

    作为启用分组的解决方法,我们为每个应用程序启用了唯一前缀,但权衡是指标不再共享相同的命名空间。

    我已经提交了一个关于 Github 项目的新功能请求,希望能得到考虑。

    https://github.com/DataDog/integrations-core/issues/1062
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-03-13
      • 1970-01-01
      • 1970-01-01
      • 2019-01-09
      • 1970-01-01
      • 1970-01-01
      • 2014-10-05
      相关资源
      最近更新 更多