Problema
Você está usando o agente Ruby New Relic com o Kubernetes APM auto-attach para uma framework não Rails (como o Sinatra), mas nenhum dado APM está aparecendo na sua conta New Relic .
Solução
Chame explicitamente Bundler.require no início do processo de inicialização do seu aplicativo.
Para muitas estruturas, isso pode ser feito adicionando-o ao seu arquivo de aplicativo principal ou a um arquivo config.ru antes que suas classes de aplicativo sejam definidas.
Exemplo (config.ru ou app.rb):
# config.ru
require 'bundler'Bundler.require
# ... rest of your application's startup coderequire_relative './my_sinatra_app'run MySinatraAppDepois de adicionar esse código, reimplante seu aplicativo. Os dados devem começar a aparecer no New Relic em alguns minutos.
Causa
O anexo automático do Kubernetes APM funciona corrigindo o método Bundler::Runtime#require para injetar a gema newrelic_rpm no seu aplicativo.
Enquanto o aplicativo Rails chama Bundler.require automaticamente durante o processo de inicialização, muitos outros frameworks não o fazem. Se Bundler.require nunca for chamado, o agente New Relic nunca será carregado no ambiente do seu aplicativo. Adicionar esta linha garante que o agente seja carregado conforme o esperado.