Skip to main content
A forma como o seu aplicativo funciona pode mudar a cada novo deployment. Ao rastrear seus deploys com o AppSignal, os incidentes de erro e as medições de desempenho são agrupados por deployment, para que você possa ver facilmente quais impactos seu deployment teve no desempenho e na taxa de erros do seu aplicativo. O AppSignal pode levar você de um backtrace de erro até a linha de código de onde um erro específico se originou, e isso ajuda Este guia mostrará como rastrear deploys no AppSignal usando deploy markers.
Leia mais informações detalhadas sobre deploy markers e para que servem.

Configurando o AppSignal

Este guia usará o método de opção de configuração revision para reportar deploy markers. Você pode ler sobre abordagens alternativas a isso em nossa documentação de Deploy Markers. A opção de configuração revision é configurada de forma diferente por linguagem de integração. Veja a lista de integrações abaixo para a que seu app usa. Observe que o AppSignal reportará automaticamente um deploy ao usar plataformas como Heroku ou Render, ou orquestradores de deployment como o Kamal.

Atualizar a revisão automaticamente

Recomendamos buscar dinamicamente o valor da opção de configuração revision do gerenciamento de controle de versão usado para o seu projeto (como Git ou SVN) na inicialização ou no deploy. Dessa forma, o valor não precisa ser atualizado manualmente por deploy. Se um hash de commit do Git for usado, ele também será compatível com error backtrace links. Abaixo está um exemplo de como você faria isso usando o Git:
Continuaremos a usar o Git para todos os exemplos de integração nesta documentação. Independentemente da fonte que você usar, mantenha a revisão como um único valor sem espaços, como um SHA de commit do Git ou um número de versão. O AppSignal cria links para o seu código-fonte a partir da revisão, então um valor que o seu provedor Git não consiga resolver gera links que não abrem o código que eles indicam. Leia mais sobre como escolher um valor de revisão.

Configurações por linguagem

Ruby

Para aplicativos Ruby, carregaremos a revisão Git do arquivo de configuração. O comando shell que executamos na opção de configuração revision é o mesmo comando que usamos anteriormente para recuperar o hash do commit atual. Chamamos o comando git rev-parse e definimos a saída como a opção de configuração revision, como mostrado no exemplo abaixo:

Usando gems de deploy Ruby

Ferramentas de deployment como Capistrano e Hatchbox excluem a pasta .git do aplicativo implantado. Por isso, o comando git rev-parse do exemplo anterior não consegue encontrar a revisão. Essas ferramentas escrevem, em vez disso, um arquivo REVISION com o SHA do commit Git implantado na pasta de release. A partir da gem Ruby 4.6.0, o AppSignal lê esse arquivo e define a opção de configuração revision com o seu conteúdo. Se a sua ferramenta de deployment não escrever um arquivo REVISION, crie um no diretório raiz do aplicativo durante o deploy:
Heroku, Render, Kamal e Scalingo definem a revisão em uma variável de ambiente, que o AppSignal também lê automaticamente. A página da opção revision lista qual fonte o AppSignal usa quando mais de uma está definida. Em versões da gem Ruby anteriores à 4.6.0, leia o arquivo REVISION na sua configuração. Veja abaixo um exemplo para Rails:
Leia mais sobre os detalhes da opção de configuração revision para Ruby

Elixir

Para aplicativos Elixir, carregaremos a revisão Git no arquivo de configuração config/appsignal.exs (a localização do seu arquivo pode ser diferente). No exemplo de arquivo config/appsignal.exs abaixo, chamamos o comando git rev-parse com Elixir e definimos a saída como a opção de configuração revision.
Leia mais sobre os detalhes da opção de configuração revision para Elixir

Node.js

Para aplicativos Node.js, a revisão Git é carregada no arquivo de configuração do app. No snippet .js abaixo, chamamos o comando git rev-parse com Node.js e definimos a saída como a opção de configuração revision.
Leia mais sobre os detalhes da opção de configuração revision para Node.js

Python

Para aplicativos Python, a revisão Git é carregada no arquivo de configuração __appsignal__.py do aplicativo. No exemplo abaixo, chamamos o comando git rev-parse com Python e definimos a saída como a opção de configuração revision. O comando shell que executamos é o mesmo comando que usamos anteriormente para recuperar o hash do commit atual.
Leia mais sobre os detalhes da opção de configuração revision para Python

JavaScript de front-end

Como os aplicativos JavaScript de front-end são executados no navegador, não é possível chamar o comando executável git do seu aplicativo de front-end para obter a revision atual. Existem duas abordagens comuns para passar o valor da revisão ao seu aplicativo de front-end: Ferramentas modernas de build de front-end incorporam variáveis de ambiente ao seu bundle em tempo de build. Você pode passar a revisão Git por meio de uma dessas variáveis e referenciá-la na sua configuração do AppSignal. O prefixo da variável e o padrão de acesso dependem da ferramenta de build. O exemplo abaixo usa o Vite, que expõe variáveis de ambiente prefixadas com VITE_ através do objeto import.meta.env. Defina a variável antes do build:
Em seguida, leia-a no arquivo onde você configura o AppSignal:
Importe a instância appsignal configurada onde você inicializa seu app. Por exemplo, em um main.js de uma aplicação Vue:

Usando um atributo HTML renderizado pelo back-end

Se o seu front-end for renderizado por uma aplicação de back-end (como uma aplicação Ruby ou Elixir), você pode definir o valor da revision no corpo HTML como um atributo data:
Em seguida, recupere este valor no seu JavaScript:
Leia mais sobre os detalhes da opção de configuração revision para JavaScript

Go

Para aplicativos Go, a revisão é definida em um atributo de recurso OpenTelemetry quando o OpenTelemetry é inicializado. No exemplo abaixo, chamamos o comando git rev-parse e definimos a saída como o atributo de recurso appsignal.config.revision. O comando shell que executamos é o mesmo comando que usamos anteriormente para recuperar o hash do commit atual.
Para aplicativos Go, a opção de configuração appsignal.config.revision é uma configuração obrigatória, portanto, ela já deve estar definida. Consulte a opção de configuração appsignal.config.revision para mais informações.

Java

Para aplicativos Java, defina a revisão usando a variável de ambiente OTEL_RESOURCE_ATTRIBUTES. Usaremos o mesmo comando Git mostrado anteriormente.
Para aplicativos Java, a opção de configuração appsignal.config.revision é uma configuração obrigatória, portanto, ela já deve estar definida. Consulte a opção de configuração appsignal.config.revision para mais informações.

PHP

Para aplicativos PHP, defina a revisão na sua configuração para sobrescrever o padrão. Por padrão, o AppSignal define a revisão usando o mesmo comando Git mostrado em Atualizar a revisão automaticamente.
Consulte a opção de configuração appsignal.config.revision para mais informações.

Deploy

Quando terminar de configurar a opção revision, faça o commit das suas alterações e o deploy do seu aplicativo. Quando o app iniciar/reiniciar, o AppSignal criará um deploy na seção de deploys do seu app. É isso! Você configurou com sucesso seu aplicativo para notificar o AppSignal sobre deploys! Os dados do seu aplicativo serão rastreados juntamente com o deployment apropriado, ajudando a aprimorar sua capacidade de analisar o desempenho do seu aplicativo. Os deploys não estão sendo reportados ou estão sendo reportados incorretamente? Entre em contato conosco e nós o ajudaremos!

Veja também