Todos os produtos
Search
Central de documentação

Application Real-Time Monitoring Service:Configuração personalizada para aplicações Go

Última atualização: Sep 06, 2026

Use a aba Custom Configuration para ajustar configurações comuns do probe, como toggles de recursos e políticas de amostragem.

Nota

Para ajustar essas configurações via API, consulte SaveTraceAppConfig.

Pré-requisitos

Sua aplicação deve ter um probe instalado. Para mais informações, consulte Application Monitoring Integration Overview.

Procedimento

  1. Faça login no ARMS console. No painel de navegação à esquerda, escolha Application Monitoring > Application List.

  2. Na página Application List, selecione a região na barra de navegação superior e clique em nome da aplicação.

    Nota

    Os ícones na coluna Language têm os seguintes significados:

    • Java icon: uma aplicação Java conectada ao Application Monitoring.

    • image: uma aplicação Golang conectada ao Application Monitoring.

    • image: uma aplicação Python conectada ao Application Monitoring.

    • -: uma aplicação conectada ao Managed Service for OpenTelemetry.

  3. Na barra de navegação superior, escolha Application Configuration > Custom Configurations.

  4. Configure os parâmetros e clique em Save.

Configurações de amostragem

Na seção Sampling settings, defina a política de amostragem para traces. Atualmente, as aplicações Go suportam apenas amostragem de taxa fixa. Também é possível configurar amostragem completa com base no nome da API, prefixo ou sufixo.

A Sampling rate percentage padrão é 10. Aumentar a taxa de amostragem consome recursos adicionais do sistema; portanto, recomendamos manter o valor padrão. A opção Full sampling by API name tem suporte apenas nas versões 1.5.2 ou posteriores do probe. Após concluir a configuração, clique em Save ou Save and Bulk Copy to Other Applications.

Toggles do probe

Na seção Probe toggle settings, ative ou desative o Application Monitoring e alterne plugins individuais.

Importante

Ativar ou desativar o Application Monitoring tem efeito imediato, sem necessidade de reiniciar a aplicação. Se você pausar o Application Monitoring, o ARMS interromperá o monitoramento da sua aplicação. Proceda com cautela.

Alterações nos toggles de plugins individuais só entram em vigor após a reinicialização manual da aplicação.

Ao ativar o toggle Pause application monitoring, o faturamento também é pausado. A seção Plugin toggles inclui diversos plugins, como dubbo-plugin, mysql-plugin, redis-plugin, grpc-plugin e kafka-client-plugin. Para hertz-plugin, opentelemetry-plugin e opentracing-plugin, as alterações só entram em vigor após a reinicialização da aplicação. Após fazer alterações, clique em Save ou em Bulk Copy to Other Applications para sincronizar a configuração com outras aplicações.

Toggles de Runtime

Na seção Runtime toggle settings, ative ou desative o recurso de monitoramento de Runtime. Para mais informações, consulte Runtime monitoring.

Importante

As alterações entram em vigor sem reiniciar a aplicação. Se você desativar o recurso de monitoramento de Runtime, o ARMS deixará de coletar métricas de Runtime. Proceda com cautela.

Após configurar as definições, clique em Save ou em Save and Bulk Copy to Other Applications para aplicar a configuração a outras aplicações.

Associação de logs da aplicação

Na seção Application log association, configure a origem de logs da sua aplicação para injetar SpanId e TraceId nos logs correspondentes. Para mais informações, consulte Associate TraceId with business logs of Go applications.

Nota

É possível personalizar as chaves dos campos trace_id e span_id injetados nos seus logs.

Ative o toggle Automatically associate business logs with TraceId e, na seção Log Service binding, selecione uma região, nome do Project, tipo de associação (Logstore ou StoreView), nome do Logstore e índice associado. Em seguida, clique em Save. Para aplicar a configuração a outras aplicações, clique em Bulk Copy to Other Applications.

Convergência de URL

Na seção URL convergence settings, ative ou desative o recurso de convergência de URL e configure seu limiar e regras. A convergência de URL agrupa URLs semelhantes e as exibe como um único item. Por exemplo, uma série de URLs que começam com /service/demo/ pode ser exibida como uma única entrada agregada. O limiar de convergência é o número mínimo de URLs que devem corresponder a uma regra antes de serem convergidas. Por exemplo, se o limiar for 100, as URLs correspondentes à expressão regular de uma regra serão convergidas somente depois que a quantidade de URLs correspondentes atingir 100. Para mais informações, consulte ARMS convergence mechanism.

As regras de convergência devem estar no formato de expressão regular. Exemplo: /service/(.*?)/demo. Separe múltiplas regras com vírgula (,). Após configurar as definições, clique em Save ou Save and Bulk Copy to Other Applications.

Profiling contínuo

Na seção Continuous profiling settings, ative ou desative o toggle global, hotspots de CPU, hotspots de memória e hotspots de código. Para mais informações, consulte Continuous profiling for Go applications.

Também é possível alternar goroutine hotspots (requer versão 1.6.0 ou posterior do probe), blocking analysis e mutex analysis (requer versão 1.6.1 ou posterior do probe). Após configurar as definições, clique em Save ou Bulk Copy to Other Applications.

Configuração de chamadas de API

Na seção API call configuration, configure o limiar de chamada lenta, a lista de permissões de códigos de status HTTP e a filtragem de chamadas de API inválidas.

Também é possível definir as seguintes opções: toggles para Enable printing HTTP request body e Enable printing HTTP request header (requerem versão 1.5.0 ou posterior do probe), HTTP request body length (padrão 1024, requer versão 1.4.0 ou posterior do probe), o toggle Include TraceId in HTTP response (adiciona a chave Eagleeye-TraceId ao cabeçalho de resposta), toggles para Enable printing HTTP response body e Enable printing HTTP response header (requerem versão 1.5.1 ou posterior do probe), HTTP response body length (padrão 1024) e os campos de texto para Write HTTP request header keys to Span e Write HTTP response header keys to Span.

  • Slow call threshold: O valor padrão é 500 ms. Uma chamada de interface é marcada como lenta se seu tempo de resposta exceder esse limiar.

  • HTTP status code whitelist:

    Por padrão, códigos de status HTTP maiores que 400 são classificados como erros. Para evitar que certos códigos de status sejam classificados como erros, adicione-os à lista de permissões.

    Essa configuração afeta apenas os HTTP frameworks that are supported pelo Application Monitoring.

    Dados afetados: Métricas de contagem de erros para servidores e clientes HTTP (arms_http_requests_error_count, arms_http_client_requests_error_count e arms_app_requests_error_count) e status do Span.

    Recursos afetados: Contagens de erros nas abas Application Overview, Provided Services e Dependent Services. Status do Span e alertas de contagem de erros na página Trace Analysis.

    Formato: Insira códigos de status individuais separados por vírgulas (,). Não há suporte para correspondência difusa (fuzzy matching).

    Exemplo: 403,502

    Padrão: Vazio

  • Invalid API call filtering:

    Para ocultar certas chamadas na aba Provided Services, insira os nomes das APIs a serem excluídas. O probe então deixará de reportar dados observacionais para essas APIs, ocultando-as da página de chamadas de API.

    Dados afetados: Todas as métricas e Spans das APIs especificadas são ignorados.

    Recursos afetados: Todas as métricas das APIs correspondentes nas abas Application Overview, Provided Services e Dependent Services. Alertas de contagem de Spans, volume de chamadas, contagem de erros e chamadas lentas na página Trace Analysis.

    Formato: Use uma string ou uma expressão AntPath para corresponder ao nome completo da API. Separe múltiplas regras com vírgulas (,). (As expressões AntPath padrão estão incluídas para compatibilidade retroativa com dados históricos. Não as exclua. Adicione novas regras após as existentes.)

    Exemplo: /api/test/*,/api/playground/create

    Padrão: /**/*.jpg,/**/*.png,/**/*.js,/**/*.jpeg,/**/*.pdf,/**/*.xlsx,/**/*.txt,/**/*.docs,/**/*.gif,/**/*.csv

  • Enable printing HTTP request body: Quando ativado, o probe adiciona o campo http.request.body aos Spans de cliente HTTP para registrar o corpo da requisição. O comprimento de captura padrão é 1024.

  • Enable printing HTTP request header: Quando ativado, o campo http.request.header é adicionado aos Spans de cliente HTTP para registrar o cabeçalho da requisição.

  • HTTP body length: Comprimento máximo do corpo da requisição HTTP capturado. O comprimento padrão é 1024.

  • Include TraceId in HTTP response: Quando ativado, o probe adiciona o TraceId ao cabeçalho de resposta com a chave Eagleeye-TraceId.

  • Enable printing HTTP response body: Quando ativado, o probe adiciona o campo http.response.body aos Spans de servidor HTTP para registrar o corpo da resposta.

  • Enable printing HTTP response header: Quando ativado, o campo http.response.header é adicionado aos Spans de servidor HTTP para registrar o cabeçalho da resposta.

  • HTTP response body length: Comprimento máximo do corpo da resposta HTTP capturado. O comprimento padrão é 1024.

  • Write HTTP request header keys to Span: Insira chaves de cabeçalho separadas por vírgulas. O probe adiciona um campo http.request.header.key aos Spans de cliente HTTP para cada chave especificada.

  • Write HTTP response header keys to Span: Insira chaves de cabeçalho separadas por vírgulas. O probe adiciona um campo http.response.header.key aos Spans de servidor HTTP para cada chave especificada.

Filtragem avançada de exceções

  • Collect Plugin Exceptions: Define se as exceções de plugin devem ser coletadas.

  • Exception Filter Whitelist: Caso não deseje ver exceções específicas na aba Exception Analysis, insira os nomes das exceções que deseja ocultar da página.

Desative a opção Collect plugin exceptions para evitar que a mesma exceção seja registrada várias vezes. No campo Exception filter whitelist, insira vários nomes de exceções separados por vírgulas (,), por exemplo, *mysql.MySQLError. Exceções que correspondem à lista de permissões ainda são registradas nos Spans. Este recurso está disponível nas versões 2.3.1 ou posteriores do probe.

Configuração de chamadas de banco de dados

Na seção Database call configuration, configure o limiar de SQL lento e o comprimento máximo das instruções SQL coletadas. Especifique também se os valores de variáveis vinculadas e valores constantes devem ser exibidos nas instruções SQL.

  • Display bound variable values in SQL: Captura valores de variáveis vinculadas a parâmetros PreparedStatement. As alterações entram em vigor sem reiniciar a aplicação.

  • Display constant values in SQL: Apenas trunca instruções SQL sem processamento adicional. As alterações entram em vigor sem reiniciar a aplicação.

O Slow SQL threshold padrão é 500 ms. Consultas que excedem esse limiar são marcadas como consultas SQL lentas. O Maximum SQL length padrão é 1024. Qualquer parte de uma instrução SQL que exceder esse limite será truncada. O recurso Display bound variable values in SQL tem suporte apenas para MySQL. Após configurar as definições, clique em Save ou Save and Bulk Copy to Other Applications.

Protocolos de propagação de trace

Na seção Trace propagation protocol settings, selecione um protocolo de propagação de trace conforme suas necessidades. Por padrão, o probe utiliza o protocolo W3C. Também é possível selecionar Zipkin, Jaeger ou EagleEye.

Versões 1.4.0 ou posteriores do probe suportam troca de protocolo. O propagation mode oferece os modos Priority e Forced. No modo Priority, o probe tenta primeiro ler o cabeçalho do protocolo selecionado. Se o cabeçalho não existir, o probe continua detectando cabeçalhos de outros protocolos. No modo Forced, se o cabeçalho do protocolo selecionado estiver ausente, o probe gera um novo contexto de trace de acordo com as especificações desse protocolo.

Coleta do probe

Na seção Probe collection configuration, defina o número máximo de traces coletados por segundo e o nível de log do probe.

O valor padrão para Maximum traces per second é 100. A Custom metric collection requer a versão 2.0.0 ou posterior do probe. A opção Enable Span reporting requer a versão 1.8.3 ou posterior do probe. O campo Span reporting name requer a versão 1.7.0 ou posterior do probe. Separe múltiplas chaves com vírgula (,). A Default metric collection filtering requer a versão 2.3.0 ou posterior do probe.

A lista a seguir descreve alguns dos parâmetros:

  • Custom Metric Collection: Controla se o agente coleta as métricas definidas no seu código com o OTel SDK.

  • Enable Span Reporting: Este recurso vem ativado por padrão. Se desativado, nenhum Span será reportado.

  • Span Reporting Name: Especifica uma lista de permissões de nomes de Spans a serem reportados. Se este campo estiver configurado, apenas Spans com nomes correspondentes serão reportados.

  • Custom metric collection configuration: Configure o nome do escopo da métrica. Se este parâmetro não for configurado, todas as métricas personalizadas serão coletadas por padrão.

Default Metric Collection Filtering: Filtra o reporte de tipos específicos de métricas. Selecione um ou mais dos seguintes tipos:

  • custom_entry: Métricas personalizadas para monitoramento de métodos.

  • http: Métricas de servidor HTTP.

  • http_client: Métricas de cliente HTTP.

  • rpc: Métricas de chamadas de servidor RPC.

  • rpc_client: Métricas de chamadas de cliente RPC.

  • sql: Métricas de acesso a banco de dados.

  • nosql: Métricas de acesso a service NoSQL.

  • cache: Métricas de acesso a service de cache.

  • producer: Métricas de publicação de mensagens.

  • consumer: Métricas de consumo de mensagens.

  • schedule: Métricas de service de agendamento.

Configurações avançadas

Na seção Advanced settings, configure cálculos de percentil, amostragem de chamadas lentas e erros, e o comprimento máximo dos stack traces coletados.

O valor padrão para Stack trace collection length é 4096. Após configurar as definições, clique em Save ou Save and Bulk Copy to Other Applications.

Copiar configurações para outras aplicações

Caso precise aplicar a mesma configuração a outras aplicações, copie as definições.

Copiar uma única configuração

  1. Na seção de configuração correspondente, clique em Save and Copy to Other Applications.

  2. Se a caixa de diálogo Current settings not saved aparecer, clique em OK para salvar a configuração da aplicação atual e, em seguida, clique novamente em Save and Copy to Other Applications.

  3. Na caixa de diálogo exibida, selecione as aplicações às quais deseja aplicar as configurações e clique em OK.

Copiar todas as configurações

  1. Na parte inferior da página, clique em Save and Copy to Other Applications.

  2. Se a caixa de diálogo Current settings not saved aparecer, clique em OK para salvar a configuração da aplicação atual e, em seguida, clique novamente em Save and Copy to Other Applications.

  3. Na caixa de diálogo exibida, selecione as aplicações às quais deseja aplicar as configurações e clique em OK.

Configuração padrão global

Salve a configuração atual como configuração padrão global. Essa configuração será aplicada por padrão quando você criar novas aplicações.

  1. Na parte inferior da página, clique em Save Current App Settings as Global Default Configuration.

  2. Se a caixa de diálogo Current settings not saved aparecer, clique em OK para salvar a configuração da aplicação atual e, em seguida, clique novamente em Save Current App Settings as Global Default Configuration.

  3. Na caixa de diálogo exibida, clique em Confirm.