Я разрабатываю камень Ruby, который хотел бы добавить к монитору NewRelic. Драгоценный камень используется в script, который запускается как демон и контролируется bluepill
. Я пошел "" Мониторинг фоновых процессов и демонов Ruby", чтобы начать.
Я подтвердил, что gem устанавливает соединение с NewRelic по мере того, как приложение появляется на моем портале там, однако нет следов транзакций или каких-либо показателей, вызывающих вызываемый код.
Здесь "точка входа" моего драгоценного камня, когда я пытался вручную запустить агент вокруг метода вызова:
require 'fms/parser/version'
require 'fms/parser/core'
require 'fms/parser/env'
require 'mongoid'
ENV['NRCONFIG'] ||= File.dirname(__FILE__) + '/../newrelic.yml'
require 'newrelic_rpm'
module Fms
module Parser
def self.prepare_parse(filename)
::NewRelic::Agent.manual_start
Mongoid.load!("#{File.dirname(__FILE__)}/../mongoid.yml", :development)
Core.prepare_parse(filename)
::NewRelic::Agent.shutdown
end
end
end
Я также попытался добавить это в модуль:
class << self
include ::NewRelic::Agent::Instrumentation::ControllerInstrumentation
add_transaction_tracer :prepare_parse, :category => :task
end
Я не совсем уверен, что еще я могу сделать. Я подтвердил, что агент способен связываться с сервером, а трассировки транзакций включены. На вкладке фонового приложения ничего не отображается.
Это самая полезная информация, которую я получил из журнала агента:
[12/23/13 21:21:03 +0000 apivm (7819)] INFO : Environment: development
[12/23/13 21:21:03 +0000 apivm (7819)] INFO : No known dispatcher detected.
[12/23/13 21:21:03 +0000 apivm (7819)] INFO : Application: MY-APP
[12/23/13 21:21:03 +0000 apivm (7819)] INFO : Installing Net instrumentation
[12/23/13 21:21:03 +0000 apivm (7819)] INFO : Finished instrumentation
[12/23/13 21:21:04 +0000 apivm (7819)] INFO : Reporting to: https://rpm.newrelic.com/[MASKED_ACCOUNT_NUMBER]
[12/23/13 22:12:06 +0000 apivm (7819)] INFO : Starting the New Relic agent in "development" environment.
[12/23/13 22:12:06 +0000 apivm (7819)] INFO : To prevent agent startup add a NEWRELIC_ENABLE=false environment variable or modify the "development" section of your newrelic.yml.
[12/23/13 22:12:06 +0000 apivm (7819)] INFO : Reading configuration from /var/lib/gems/1.9.1/gems/fms-parser-0.0.6/lib/fms/../newrelic.yml
[12/23/13 22:12:06 +0000 apivm (7819)] INFO : Starting Agent shutdown
Единственное, что действительно касается здесь: "Неизвестный диспетчер обнаружен".
Я пытаюсь сделать это?