Problema
Você está usando New Relic Ruby APM e Unicorn juntos, mas as contagens de métrica e evento personalizado parecem muito pequenas.
Solução
Faça com que o Unicorn chame manualmente NewRelic::Agent.shutdown
para executar os manipuladores de saída do agente. Alguns dos métodos de saída do Unicorn evitam que o agente seja encerrado conforme esperado. A alteração abaixo executa o método de desligamento do New Relic antes de encerrar o processo Unicorn.
Essa correção depende do fork do @expectedbehavior da gem unicorn-worker-killer.
Adicione isso ao seu Gemfile usando:
gem 'unicorn-worker-killer', git: 'https://github.com/expectedbehavior/unicorn-worker-killer'Se você já estiver usando
unicorn-worker-killer
em seu Gemfile, atualize a referência para usar este fork.Pacote:
bash$bundle installAtualize a configuração do seu unicórnio para incluir:
require "unicorn/worker_killer"::Unicorn::WorkerKiller.configure do |config|config.before_kill do |signal|::NewRelic::Agent.increment_metric("Custom/UnicornWorkerBeforeKillSignal/#{signal}")::NewRelic::Agent.shutdownendendReinicie seu servidor