Importante
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a política de fim de vida útil do agente Ruby New Relic para obter informações sobre lançamentos de agentes e datas de suporte.
v9.22.0
- recurso: Instrumentação em uma etapa para Kubernetes - O Kubernetes APM auto-attach automaticamente o aplicativo instrumentado e gerencia atualizações de agente dentro da implantação Kubernetes. Este recurso saiu da versão de pré-visualização e agora está disponível para o público em geral. Saiba mais sobre a anexação automática do Kubernetes. PR#2635 PR#3287 
- Recurso: Aviso de descontinuação do Ruby 2.4 e Ruby 2.5 - O suporte ao agente Ruby para as versões 2.4 e 2.5 do Ruby está obsoleto e será removido na versão 10.0.0 do agente. A nova versão mínima necessária do Ruby será o Ruby 2.6 e pararemos de testar com o Ruby 2.4 e 2.5. PR#3288 
- Recurso: Aviso de descontinuação do comando - newrelic deployments- O suporte para gravação de implantação usando o comando - newrelic deploymentsagora está obsoleto e será removido na versão 10.0.0 do agente.- No futuro, há uma série de maneiras automatizadas e manuais de registrar alterações no New Relic. Consulte nosso guia de Monitoramento de Alterações para obter uma lista de opções disponíveis. PR#3262 
- Recurso: Lembrete de descontinuação para rastreamento multiaplicativo - O rastreamento multiaplicativo foi descontinuado desde a versão principal 8.0.0 do Ruby Agente. Removeremos totalmente o suporte a ele na versão 10.0.0 do agente. PR#3288 
- Recurso: Garanta a compatibilidade com a alteração Ruby 3.5 para Method#source_location - O agente foi atualizado para analisar corretamente o valor de retorno de Method#source_location, que está mudando no Ruby 3.5 de uma matriz de dois elementos para uma de cinco elementos. Essa alteração mantém o suporte para versões mais antigas do Ruby e, ao mesmo tempo, adiciona suporte para a versão futura. PR#3257 
Importante
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a New Relic Ruby política de fim de vida útil do agente para obter informações sobre lançamentos de agentes e datas de suporte.
v9.21.0
- Recurso: No modo Serverless APM, use o nome da origem do evento como prefixo do nome da transação - O agente agora usará o nome da fonte do evento como prefixo para o nome da transação no modo Serverless APM. Isso ajudará a identificar melhor a origem da transação na interface do usuário do New Relic. PR#3245 
- Bugfix: Reverter a lógica alterada de como rastreamos o thread em que o intervalo começa - Essa alteração restaura o comportamento anterior de rastrear o thread em que o intervalo começa, resolvendo problemas que surgiram da lógica atualizada. Obrigado @david-zw-liu por nos alertar sobre isso. PR#3248 
Importante
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a New Relic Ruby política de fim de vida útil do agente para obter informações sobre lançamentos de agentes e datas de suporte.
v9.20.0
- Recurso: Adicionar ECS Docker ID para Fargate - Anteriormente, o agente Ruby não registrava o ID do Docker ao ser executado em um ambiente AWS ECS Fargate. O ID do Docker agora será registrado corretamente. PR#3172 
- Recurso: Adicionar NewRelic::Helper.version_satisfied? - O agente tem um novo método auxiliar para simplificar a comparação de versões. - NewRelic::Helper.version_satisfied?aceita três argumentos: um número de versão do lado esquerdo, o operador de comparação como uma string e um número de versão do lado direito. Nossos agradecimentos a @kekke-n por esta contribuição. PR#3182
- Recurso: Adicionado atributo code.stacktrace em intervalos de armazenamento de dados quando a duração excede o limite configurado - O agente agora adicionará o atributo - code.stacktraceaos intervalos de armazenamento de dados quando a duração exceder o limite configurado. O limite é configurado usando a opção de configuração- transaction_tracer.stack_trace_threshold. PR#3220
- Recurso: consolidar valores constantes "Desconhecidos" - Todas as referências aos vários estilos de capitalização para "Desconhecido" foram consolidadas em duas constantes: - NewRelic::UNKNOWNe- NewRelic::UNKNOWN_LOWER. Obrigado, @tsubasa1122, pela sua contribuição! PR#3185
- Correção de bug: Corrigir links de origem do Brewfile - Anteriormente, os links do README do multiverso para o Brewfile estavam quebrados. Nossos agradecimentos vão para @emmanuel-ferdman por enviar um PR para consertá-los! PR#3191 
- Correção de bug: Corrige erro ao usar HTTPX 1.5.0 - O agente encontrou um erro anteriormente ao usar a nova versão HTTPX 1.5.0. Isso ocorreu devido a uma mudança na maneira como o HTTPX armazena a resposta. O agente foi atualizado para lidar com essa alteração corretamente e não encontra mais erros ao usar o HTTPX 1.5.0. PR#3203 
- Correção de bug: correções de bugs e melhorias nos logs do agente de nível de depuração - Melhora as informações registradas no nível de depuração pelo agente quando o agente lê uma fonte de configuração. PR#3221 
- Correção de bug: Corrige o risco de falsificação do lado do servidor para script de fluxo de trabalho do Slack - Internamente, monitoramos as gems lançadas usando um fluxo de trabalho de ações do GitHub que publica atualizações no Slack. [@odaysec] identificou uma maneira de reduzir o risco de falsificação do lado do servidor para este fluxo de trabalho. Obrigado! PR#3184 
- Correção de bug: substituir chamadas JSON.load por JSON.parse - Geralmente, JSON.parse é visto como mais seguro que JSON.load. Obrigado, @odaysec, por nos alertar sobre isso! PR#3183 PR#3230 
Importante
Recomendamos atualizar para a versão mais recente do agente assim que estiver disponível. Se você não puder atualizar para a versão mais recente, atualize seu agente para uma versão com no máximo 90 dias. Saiba mais sobre como manter o agente atualizado.
Consulte a New Relic Ruby política de fim de vida útil do agente para obter informações sobre lançamentos de agentes e datas de suporte.
v9.19.0
- recurso: Adicionar ID de thread como atributo para todos os spans - O agente agora registrará o ID do thread como um atributo em cada intervalo. PR#3122 
- recurso: Adicionar suporte para o sinalizador de rastreamento TraceContext do W3C - Anteriormente, o agente não usaria o campo de sinalizador trace do cabeçalho traceparent para decisões de amostragem. Isso pode levar a um rastreamento fragmentado na interface. Embora o comportamento padrão permaneça inalterado, duas novas opções de configuração, - distributed_tracing.sampler.remote_parent_samplede- distributed_tracing.sampler.remote_parent_not_sampled, foram introduzidas para permitir mais controle sobre a maneira como as decisões de amostragem são tomadas. PR#3135
- Correção de bug: Incluir request.uri no evento de transação por padrão - O dicionário de dados New Relic espera que Transaction evento tenha o atributo - request.uri. O agente Ruby agora atende a essa expectativa. Se você quiser excluir- request.urido evento de transação, você pode fazer isso definindo- transaction_events.attributes.excludecomo- 'request.uri'. PR#3103
- Correção de bug: Corrige erro na instrumentação do Active Job ao usar perform_all_later - Anteriormente, quando o método - perform_all_laterdo Active Job era chamado e o agente estava em execução, um- NoMethodErrorera gerado com a mensagem- undefined method 'queue_name' for nil. O erro foi corrigido e o nome do segmento refletirá o primeiro trabalho na fila. Agradecemos a @tan-linx por nos alertar sobre isso e fornecer uma solução. PR#3110
Importante
We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date.
See the New Relic Ruby agent EOL policy for information about agent releases and support dates.
v9.18.0
- Feature: Add elasticsearch.capture_cluster_name configuration option - A new configuration option, - elasticsearch.capture_cluster_name, has been added to control capturing Elasticsearch cluster names. Cluster names are captured by default, but can now be disabled as needed. PR#3038
- Feature: Add support for sidekiq-delay_extensions - Sidekiq delay extensions were removed from Sidekiq in 7.x and are now avaliable through the sidekiq-delay_extensions gem. Thanks to @sobrinho, the agent now has continued support for delay extensions.PR#3056 
- Feature: Parallelize calls for vendor metadata - Previously, the agent would make calls for vendor metadata in a serial fashion. This could lead to a delay in starting the agent. Now, the agent will make these calls in parallel, reducing the time it takes to start the agent. PR#3094 
- Bugfix: Prevent a nil segment from causing errors in Net::HTTP instrumentation - When using JRuby, a race condition can happen that causes the segment creation to fail and return - nil. This would cause an error to occur when methods were later called on the- nilsegment. These methods will no longer be called if the segment is- nil, preventing that error from occurring. PR#3046
- Bugfix: JRuby multithreading improvements - Added some additional nil checks and mutexes to prevent issues when using the agent on JRuby with multiple threads. Thanks to @NC-piercej for bringing this to our attention Issue#3021 PR#3053 
- Bugfix: Stop reporting rescued Sidekiq::OverLimit exceptions - When Sidekiq's concurrent rate limiters encounter an - OverLimitexception, Sidekiq typically handles this by re-enqueuing the job. Previously, all occurrences of- Sidekiq::OverLimitwere logged as errors in New Relic, even when Sidekiq's middleware resolved the exception. New Relic will no longer report errors that are handled by Sidekiq's own middleware. Thanks to @97jaz for reporting this issue. Issue#3037 PR#3047
- Bugfix: Protect against nil agents or health checks - In some cases the agent or health checks may be - nilwhen they are called. Safe navigation operators have been added for protection on those occasions. PR#3049
- Bugfix: Ignore Solid Queue - ThreadError: queue emptyerror message by default- When using the solid_queue gem, the agent previously generated excessive warn-level logs when the queue was empty. The agent now ignores - queue emptyerror messages of the- ThreadErrorclass by default. This behavior can be adjusted using the- error_collector.ignore_messagesconfiguration option. PR#3060
- Bugfix: Refactor URI host handling to accommodate downcasing frozen strings - When URI host string was frozen, a FrozenError would be raised when the agent attempted to downcase the host as part of its data normalization process. Now, the update is friendly for frozen strings. Thank you @pedrol3001 for your contribution! PR#3097 
Importante
We recommend updating to the latest agent version as soon as it's available. If you can't upgrade to the latest version, update your agents to a version no more than 90 days old. Read more about keeping agents up to date.
See the New Relic Ruby agent EOL policy for information about agent releases and support dates.
v9.17.0
- Feature: Support Ruby 3.4.0 - The agent now supports Ruby 3.4.0. We've made incremental changes throughout the preview stage to reach compatibility. This release includes an update to the Thread Profiler for compatibility with Ruby 3.4.0's new backtrace format. Issue#2992 PR#2997 
- Feature: Add instrumentation for aws-sdk-firehose - The agent now has instrumentation for the aws-sdk-firehose gem. PR#2973 
- Feature: Kubernetes APM auto-attach - new agent version precedent - Previously, when a customer installed the Ruby agent via Kubernetes APM auto-attach and also had the Ruby agent listed in their - Gemfile, the agent version in- Gemfilewould take precedence. Now, the agent version installed by auto-attach takes priority. PR#3018
- Feature: Add health checks when the agent runs within Agent Control - When the agent is started within an Agent Control environment, a health check file will be created at the configured file location for every agent process. By default, this location is: '/newrelic/apm/health'. The health check files will be updated at the configured frequency, which defaults to every five seconds. PR#2995 
- Feature: Add Redshift as recognized ActiveRecord adapter - When the agent does not recognize an ActiveRecord adapter, the host, port, and database name information is not added to the datastore span. Redshift will now be treated like PostgreSQL, and the agent will save the host, port, and database name on the span. PR#3032 
- Feature: Add instrumentation for aws-sdk-kinesis - The agent now has instrumentation for the aws-sdk-kinesis gem. It will record message broker segments for - get_records,- put_record, and- put_recordsoperations. All other operations will record standard segments. PR#2974
- Bugfix: Stop emitting inaccurate debug-level log about deprecated configuration options - In the previous major release, we dropped support for many - disable_library_nameconfiguration options in favor of- instrumentation.library_name. Previously, a DEBUG level log warning appeared whenever- disable_*options were set to- true, even for libraries (e.g. Action Dispatch) without equivalent- instrumentation.*options:
>DEBUG : [DEPRECATED] configuration disable_library_name for library_name will be removed in the next major release. Use instrumentation. library_name with one of ["auto", "disabled", "prepend", "chain"]This inaccurate warning has been removed. If you are disabling instrumentation using instrumentation.library_name: disabled or NEW_RELIC_INSTRUMENTATION_LIBRARY_NAME=disabled, please verify the option exists by consulting our configuration documentation. If the option does not exist, check the 'Disabling' section to see if there is a related option. We apologize for the confusion. PR#3005
- Bugfix: Do not attempt to decorate logs with - nilmessages- The agent no longer attempts to add New Relic linking metadata to logs with - nilmessages. Thank you, @arlando for bringing this to our attention! Issue#2985 PR#2986
- Bugfix: Stop renaming final Grape segment - Previously, the agent renamed the final segment in Grape transactions to - "Middleware/Grape/#{class_name}/call". This was a part of an old instrumentation pattern that is no longer relevant. Many thanks to @seriousdev-gh for bringing this issue to our attention and along with a great reproduction and suggested fix. PR#2987.