Pular para o conteúdo principal
A gem AppSignal para Ruby pode ser configurada de algumas formas diferentes. Através de um initializer, com um arquivo de configuração ou através de variáveis de ambiente.
Na versão 2.0 da gem Ruby, a ordem de carregamento mudou! As etapas 4 e 5 foram trocadas, garantindo que as variáveis de ambiente sejam carregadas após o arquivo de configuração appsignal.yml. Leia mais sobre isso no Pull Request no GitHub.
A configuração é carregada em um processo de cinco etapas. Começando com os padrões da gem e terminando com a leitura das variáveis de ambiente. As opções de configuração podem ser misturadas sem perder a configuração de uma opção diferente. Usar um initializer, um arquivo de configuração e variáveis de ambiente juntos funciona.

Fontes de configuração

1. Padrões da gem

A gem do AppSignal começa carregando sua configuração padrão, definindo caminhos e habilitando certos recursos. Os padrões do agente podem ser encontrados no código-fonte da gem como Appsignal::Config::DEFAULT_CONFIG. Esta fonte é listada como default na saída do diagnose.

2. Configurações detectadas pelo sistema

A gem detecta em que tipo de sistema está rodando e se configura conforme necessário. Por exemplo, quando está rodando dentro de um sistema baseado em container (como Docker e Heroku) ela define a opção de configuração :running_in_container como true. Esta fonte é listada como system na saída do diagnose.

3. Configuração inicial passada para o inicializador Config

Este método de configuração foi obsoletado desde a gem Ruby 3.12 e removido na gem Ruby 4.0.0 em favor de Appsignal.configure.
Ao criar manualmente uma classe Appsignal::Config, você pode passar a configuração inicial que deseja aplicar. Este é um hash de qualquer uma das opções descritas abaixo.
Appsignal.config = Appsignal::Config.new(Dir.pwd, "production", {
  active: true,
  name: "My app!",
  push_api_key: "e55f8e96-62df-4817-b672-d10c8d924065"
})
Esta etapa sobrescreverá todas as opções fornecidas a partir dos padrões ou da configuração detectada pelo sistema. Esta fonte é listada como initial na saída do diagnose.

4. Arquivo de configuração appsignal.yml

Este método de configuração será removido na próxima versão major da gem Ruby. Recomendamos usar o arquivo de configuração appsignal.rb em vez disso.
Uma forma de configurar sua aplicação é usando o arquivo appsignal.yml. Quando você usa o comando appsignal install, a gem criará um para você. O caminho deste arquivo de configuração é {project_root}/config/appsignal.yml. Esta etapa sobrescreverá todas as opções fornecidas a partir dos padrões, configuração detectada pelo sistema e configuração do initializer. Leia a documentação do arquivo de configuração appsignal.yml para mais informações sobre como esse método de configuração funciona. Esta fonte é listada como file na saída do diagnose.

5. Variáveis de ambiente

O AppSignal procurará sua configuração em variáveis de ambiente. Quando encontradas, estas sobrescreverão todas as opções de configuração fornecidas das etapas anteriores.
export APPSIGNAL_APP_NAME="my custom app name"
# start your app here
Leia a documentação das variáveis de ambiente do sistema para mais informações sobre como esse método de configuração funciona. Esta fonte é listada como env na saída do diagnose.

6. Arquivo de configuração appsignal.rb

Uma forma de configurar sua aplicação é usando o arquivo appsignal.rb. O caminho deste arquivo de configuração é {project_root}/config/appsignal.rb. Este caminho de carregamento não pode ser personalizado. Esta etapa sobrescreverá todas as opções fornecidas a partir dos padrões, configuração detectada pelo sistema e variáveis de ambiente. Se tanto um arquivo de configuração appsignal.yml quanto um arquivo de configuração appsignal.rb estiverem presentes, apenas o arquivo de configuração appsignal.rb será carregado. Leia a documentação do arquivo de configuração appsignal.rb para mais informações sobre como esse método de configuração funciona. Esta fonte é listada como dsl na saída do diagnose.

7. Helper Appsignal.configure

Nas versões 3 e 4 da gem Ruby, chamar o helper Appsignal.configure também carregará o arquivo appsignal.yml, se presente. Este comportamento será removido na próxima versão major da gem Ruby. Por favor, use apenas o arquivo de configuração appsignal.rb ou o helper Appsignal.configure.
Por último, a gem Ruby pode ser configurada usando o helper Appsignal.configure na aplicação. Quando chamado, qualquer opção de configuração definida usando este helper sobrescreverá todas as opções de configuração fornecidas pelas fontes anteriores. Se um arquivo de configuração config/appsignal.rb também estiver presente no projeto, ele não será carregado se o helper Appsignal.configure for chamado primeiro na sua aplicação. Leia a documentação do helper Appsignal.configure para mais informações sobre como este método de configuração funciona. Esta fonte é listada como dsl na saída do diagnose.