DataDog自定义指标未使用ROR显示图表

时间:2016-01-20 06:44:51

标签: ruby-on-rails ruby datadog

我们正在尝试将DataDog与我们的Ruby On Rails应用程序集成。我们的ROR应用程序将每秒不断添加用户,更新用户和删除用户。

我已经集成了Datadog来监控号码。通过Datadog提供的图表添加,更新和删除的用户。

我使用Ubuntu Aws实例的命令安装了datadog代理。

我获得了14天的免费试用。

我按照 dogstatd-ruby gem 这个文件:https://github.com/DataDog/dogstatsd-ruby

之后我在我的ruby项目中编写代码如下:

require 'statsd'

dogstatsd = Statsd.new('MY_API_KEY')

user_data = ExportUser.find_by_userID(user["userId"].to_s)

if user_data.nil?
   dogstatsd.increment('custom.users.added')  #increment dogstat if a user is added and below query is run

   #new record, go ahead with insertion
   user_new = ExportUser.new(user)
   @status = user_new.save

else
   dogstatsd.increment('custom.users.updated') #increment dogstat if a user is updated and below query is run

   #existing record, go ahead with updation
   @status = user_data.update_attributes(user)
end

我在这里看不到" custom.users.updated"和" custom.users.added"指标资源管理器中的图表。

如果any1帮助我在Datadog帐户中为这两个指标设置图表,我将非常感激。如果我错过了这里的任何内容,请告诉我。

1 个答案:

答案 0 :(得分:3)

要完成这项工作,只需注意几个项目:

dogstatsd = Statsd.new('MY_API_KEY')

这行代码试图使用您的API密钥建立statsD连接,但实际上应该尝试通过您的代理上当前配置的statsD端口建立statsD连接,如下所示:

Create a stats instance. statsd = Statsd.new('localhost', 8125)

  

将自定义指标纳入Datadog的最简单方法是将它们发送到DogStatsD,这是一个与Datadog Agent捆绑在一起的指标聚合服务器(版本3.0及更高版本)。 DogStatsD实现了StatsD协议,以及一些特殊Datadog功能的扩展。

http://docs.datadoghq.com/guides/dogstatsd/

如果您不想在运行RoR应用程序的主机上部署代理,则可以使用DogAPI gem:

https://github.com/DataDog/dogapi-rb

其他文档可以提交此自定义指标:

require 'rubygems'
require 'dogapi'

api_key = "abcdef123456"

dog = Dogapi::Client.new(api_key)

dog.emit_point('some.metric.name', 50.0, :host => "my_host", :device => "my_device")

如果您还有其他问题,请与support@datadoghq.com联系