Com o agente Ruby do APM, você pode monitor aplicativos que residem no ambiente flexível do Google App Engine (GAE). Adicionar o New Relic ao seu aplicativo flexível do GAE fornece insights sobre a integridade e o desempenho do seu aplicativo e estende o GAE com métricas que você pode visualizar usando soluções como e .
Este documento explica como adicionar New Relic ao seu aplicativo GAE flex usando um destes métodos:
- Instalação "modo nativo" do Google App Engine com um tempo de execução GAE padrão
- Instalação docker usando um tempo de execução personalizado
O método de tempo de execução personalizado inclui um exemplo de implantação de um aplicativo Sinatra. Se você precisar de bibliotecas ou cabeçalhos específicos, a New Relic recomenda usar o método de tempo de execução personalizado.
Implantar usando suporte nativo do GAE
Ao usar a instalação no "modo nativo" do Google App Engine, você fornece o código do aplicativo e um arquivo app.yaml
. O Google App Engine então implanta uma imagem docker pré-construída padrão.
Para implantar com suporte nativo para Sinatra ou Rails:
- Siga os procedimentos padrão da New Relic para instalar a gem, incluindo seu .
- Instale o arquivo de configuração do agente Ruby.
Depois que o gem e o arquivo de configuração forem instalados, o agente Ruby poderá monitor automaticamente os aplicativos que residem no ambiente flexível do GAE. Aguarde até que a implantação seja concluída e visualize os dados do aplicativo GAE flex na página Resumo do APM.
Crie um tempo de execução personalizado usando docker
Dica
Se o seu aplicativo Ruby precisar de bibliotecas ou cabeçalhos específicos, a New Relic recomenda usar o método de tempo de execução personalizado. Além disso, a New Relic recomenda que você permita que o Google App Engine administre as verificações de integridade.
Consulte a documentação do Google para criar tempos de execução personalizados. Este exemplo descreve como adicionar New Relic ao seu aplicativo GAE flex criando um tempo de execução personalizado para Docker. O exemplo usa um aplicativo Sinatra para Ruby.
Para obter mais informações sobre como implantar e configurar seu aplicativo Ruby no ambiente flexível do GAE, consulte:
- Documentação do Google App Engine para Ruby
- Tutoriais do Google App Engine para Ruby
Este documento ajudou você na instalação?
Recomendação: lidar com verificações de integridade
O Google App Engine envia solicitações periódicas de verificação de integridade para confirmar se uma instância foi implantada com êxito e para verificar se uma instância em execução mantém um status de integridade. Uma verificação de integridade é uma solicitação HTTP para o URL /_ah/health
.
Se você criar um ambiente de execução personalizado, seu aplicativo deverá ser capaz de lidar com um grande número de solicitações de verificação de integridade. Caso contrário, os dados do seu aplicativo poderão não ser exibidos corretamente no APM.
A New Relic recomenda que você permita verificações de integridade para aplicativos Ruby para que o Google possa verificar se seu serviço está funcionando e balanceado adequadamente. No entanto, se verificações de integridade excessivas causarem congestionamento no rastreamento da transação, você poderá configurar o agente Ruby para ignorar as solicitações de verificação de integridade.
- Para handle verificações de integridade, adicione uma rota para
_ah/health
em seu aplicativo. - Para ignore solicitações de verificação de integridade, defina a configuração
rules.ignore_url_regexes
na configuração do agente Ruby do aplicativo para incluir'_ah/health'
.
Obtenha o registro de resolução de problemas do agente New Relic do GAE
Use estes recursos para solucionar problemas do seu aplicativo de ambiente flexível do GAE:
Para se conectar à instância do GAE e iniciar um shell no contêiner Docker que executa seu código, consulte Depurando uma instância.
Para redirecionar o log do agente New Relic Ruby para o Stackdriver no Cloud Platform Console, altere o arquivo de configuração
newrelic.js
para:log_file_name: STDOUTPara visualizar o log, use o log Viewer do Cloud Platform Console.