O agente New Relic Ruby permite enviar informações sobre a implantação do aplicativo utilizando a API REST ou uma receita Capistrano (versões 2.xe 3.x) distribuída com o agente Ruby. Você pode então visualizar a implantação na interface do New Relic. Por padrão, todas as informações de implantação são registradas no seu ambiente de produção. Você também pode customizar a variável rails_env
para outros ambientes, como preparação.
Atribuir um nome de aplicativo
Para atribuir um nome de aplicativo:
- Baixe a versão mais recente do agente Ruby.
- Defina
app_name
em seu arquivonewrelic.yml
com um nome significativo.
Isso atribuirá à instância no ambiente determinado o rótulo fornecido por app_name
ao navegar pelos seus dados na interface do usuário do New Relic. O script de upload de implantação usará esse rótulo para associar um aplicativo à implantação.
Adicione sua chave de usuário
Opcionalmente, você pode registrar a implantação através da API REST v2 da New Relic. Para fazer isso, forneça sua chave de usuário para a configuração do agente usando api_key
. Quando esta configuração está presente, o comando newrelic deployments
utiliza automaticamente o endpoint de implantação REST API v2 .
Grave com a linha de comando
Se você instalou o agente Ruby como uma gem, você pode registrar a implantação diretamente usando o executável newrelic
:
$newrelic deployments
Dependendo do seu ambiente, pode ser necessário executar:
$bundle exec newrelic deployment
Você pode usar vários valores opcionais com newrelic
. O description
é um texto curto.
$deployments [OPTIONS] [description]$OPTIONS:$ -a, --appname=name Set the application name.$ -i, --appid=ID Set the application ID$ If not provided, will connect to the New Relic collector to get it$ Default is app_name setting in newrelic.yml$ -e, --environment=name Override the (RAILS|RUBY)_ENV setting$ -u, --user=USER Specify the user deploying.$ -r, --revision=REV Specify the revision being deployed$ -c, --changes Read in a change log from the standard input$ -h Print this help
Ao usar a opção -c
, você pode canalizar o log de alterações para o script. Se não houver tubulação ao usar a opção -c
, selecione control-D
para indicar o fim do arquivo (EOF).
Grave com Capistrano 3.x
O agente New Relic Ruby contém uma receita Capistrano que pode registrar a implantação do aplicativo. Após atribuir o nome do seu aplicativo, edite seus arquivos Capistrano para se comunicar com o agente:
No topo do seu Capfile, adicione a seguinte linha:
require 'new_relic/recipes'No seu arquivo
deploy.rb
, inclua:after "deploy:updated", "newrelic:notice_deployment"
Grave com Capistrano 2.x
Você pode registrar a implantação do Capistrano 2.x com o agente New Relic:
Diga a Capistrano para carregar as receitas da New Relic:
Adicione os seguintes ganchos ao seu arquivo
deploy.rb
:# Notify New Relic of deployments.# This goes out even if the deploy fails, sadly.after "deploy", "newrelic:notice_deployment"after "deploy:migrations", "newrelic:notice_deployment"after "deploy:cold", "newrelic:notice_deployment"
Na próxima vez que você executar cap deploy
, o agente notificará a New Relic sobre a implantação e todos os gráficos de série temporal mostrarão o evento de implantação.
Personalize sua configuração Capistrano
Se Capistrano estiver executando a receita de notificação de implantação em uma máquina de compilação remota, a máquina de compilação must terá seu . Você pode copiar um arquivo newrelic.yml
válido para a máquina de compilação (possivelmente usando um Capistrano Before Hook) ou chamar set :newrelic_license_key, 'YOUR_LICENSE_KEY'
na configuração do Capistrano.
É possível customizar algumas informações de implantação usando variáveis Capistrano. Se definidos, estes substituirão os padrões. Isso se aplica ao Capistrano 2 e 3.
Variáveis Capistrano 2 e 3 | Descrição |
---|---|
| O aplicativo onde a implantação aparecerá. Por padrão, isso vem da definição no arquivo Se você definir esse valor na linha de comando, poderá especificar apenas um nome de aplicativo. Se você definir esse valor em |
| O log de alterações, que é determinado executando o comando svn/git |
| Texto descritivo que aparece com a implantação. O padrão está vazio. |
| A New Relic para usar. Por padrão, isso vem da definição no arquivo |
| A revisão registrada para a implantação. Recomendação: Se você estiver usando o Subversion, considere incluir a tag ou o nome do branch além da revisão. |
| O usuário a ser associado à implantação. |
Substituir configurações do Capistrano
Em qualquer versão do Capistrano, você pode substituir as configurações em seu deploy.rb
:
set :newrelic_user, "username"
Para substituir as configurações com Capistrano 2.x: Na linha de comando:
$cap production deploy -Snewrelic_desc="Deploying beta Krakatau release"
Este exemplo prompt o conteúdo que aparecerá no log de alterações da implantação:
set(:newrelic_changelog) do Capistrano::CLI.ui.ask "Enter a summary of changes: "end
Implantar a preparação
Por padrão, a gem newrelic_rpm
vem com tarefas do Capistrano para registrar toda implantação em seu ambiente de produção. Se você tiver um aplicativo de preparação separado, poderá alterar a configuração da variável rails_env
para que a preparação implantação seja registrada no aplicativo de preparação em vez de no aplicativo de produção.
Para identificar a implantação em seu ambiente de preparação, utilize o Capistrano ou a linha de comando.
Implantar a preparação | Comentários |
---|---|
Capistrano multiestágio | Se você estiver usando Capistrano multiestágio, adicione esta linha a
|
Capistrano 2.x | Se você estiver usando o Capistrano 2.x, adicione estas informações na linha de comando: bash
|