Integre o SDK de monitoramento de mini programas do WeChat para monitorar um mini programa do WeChat com o ARMS Browser Monitoring. Este tópico descreve como obter e inicializar o SDK, ativar a instrumentação automática e configurar o domínio de segurança. Também aborda os parâmetros do SDK, os métodos de API disponíveis e casos de uso avançados.
Informações básicas
Para obter informações básicas sobre mini programas do WeChat, consulte a documentação de mini programas do WeChat.
Uso básico
Para monitorar um mini programa do WeChat com o ARMS Browser Monitoring, conclua as três etapas a seguir:
-
Obtenha o SDK de monitoramento de mini programas do WeChat e inicialize-o:
No diretório /utils do projeto de mini programa do WeChat, crie um arquivo chamado wxLogger.js. Copie o conteúdo do arquivo JS do SDK de monitoramento e cole-o no arquivo wxLogger.js.
-
No diretório /utils, crie um arquivo chamado monitor.js e adicione o código abaixo ao arquivo monitor.js para inicializar o SDK.
NotaVocê pode personalizar os nomes dos arquivos e os locais de armazenamento.
-
Se o projeto utilizar módulos Node.js (require), adicione o seguinte código:
const WXLogger = require('./wxLogger.js'); const Monitor = WXLogger.init({ pid: 'xxx', region: 'cn', // Specify the deployment region: set to cn for China, or sg for regions near Singapore. }); export default Monitor; -
Caso o projeto utilize módulos ES (import), adicione este código:
import WXLogger from './wxLogger.js'; const Monitor = WXLogger.init({ pid: 'xxx', region: 'cn', // Specify the deployment region: set to cn for China, or sg for regions near Singapore. }); export default Monitor;
Defina region como a região de implantação da aplicação:
cnpara China ousgpara regiões fora da China próximas a Singapore. -
-
Ative a instrumentação automática para coletar dados de PV, erros, API, desempenho e integridade:
-
Em app.js, use o método Monitor.hookApp(options) para capturar logs de erro automaticamente. O parâmetro options corresponde à configuração Object da camada App.
import Monitor from '/utils/monitor'; App(Monitor.hookApp({ onError(err) { console.log('Enter onError:', err); }, onLaunch() { console.log('Enter onLaunch'); }, onShow(options) { }, onHide() { } })); -
No arquivo JS de cada página, use o método Monitor.hookPage(options) para relatar automaticamente solicitações de API, PV e dados de integridade.
import Monitor from '/utils/monitor'; // After you use hookPage, lifecycle APIs are automatically instrumented. Page(Monitor.hookPage({ data: {}, onLoad(query) { }, onReady() { // The page is loaded. }, onShow() { }, onHide() { }, onUnload() { } }));
-
-
Configure o domínio de segurança: adicione o domínio do ARMS correspondente ao valor da sua region na lista de domínios de solicitação válidos do mini programa do WeChat.
Se region estiver definido como
cn, adicionehttps://arms-retcode.aliyuncs.comà lista de domínios de solicitação válidos.Se region estiver definido como
sg, adicionehttps://arms-retcode-sg.aliyuncs.comà lista de domínios de solicitação válidos.
Parâmetros do SDK
O ARMS Browser Monitoring oferece parâmetros de configuração do SDK que atendem a requisitos adicionais. A tabela a seguir descreve os parâmetros de configuração comuns aplicáveis a mini programas do WeChat.
| Parâmetro | Tipo | Descrição | Obrigatório | Padrão |
|
pid |
String |
ID exclusivo do projeto. O ARMS gera esse ID automaticamente durante a criação de um site. |
Sim |
Nenhum |
|
uid |
String |
ID do usuário. Funciona como identificador e permite buscar o usuário. Aceita valores personalizados. Se você não especificar esse parâmetro, o SDK gerará e atualizará o valor automaticamente a cada seis meses. |
Não |
Gerado automaticamente pelo SDK |
|
tag |
String |
Tag de entrada. Cada log carrega uma tag associada. |
Não |
Nenhum |
|
release |
String |
Versão da aplicação. Recomendamos configurar este parâmetro para visualizar informações de relatórios de diferentes versões. |
Não |
|
|
environment |
String |
Campo de ambiente. Valores válidos: prod, gray, pre, daily e local.
|
Não |
|
|
sample |
Integer |
Configuração de amostragem de logs. Aceita um número inteiro de 1 a 100. Os logs de desempenho e os logs de API bem-sucedidos são amostrados na proporção de |
Não |
|
|
behavior |
Boolean |
Define se deve registrar o comportamento do usuário que gera erros, facilitando a solução de problemas. |
Não |
|
|
enableLinkTrace |
Boolean |
Para saber mais sobre o Tracing Analysis ponta a ponta, consulte Diagnosticar erros de API com rastreamento de ponta a ponta. |
Não |
|
O ARMS Browser Monitoring também disponibiliza parâmetros adicionais de configuração do SDK para atender a outros requisitos. Para mais informações, consulte Parâmetros de configuração do SDK.
APIs de instrumentação automática
A tabela abaixo lista os métodos fornecidos pelo SDK de monitoramento de mini programas do WeChat para instrumentação automática do ciclo de vida.
|
Método |
Parâmetro |
Descrição do parâmetro |
Comportamento |
|
|
|
Passe os parâmetros originais do App. |
Instrumenta automaticamente o ciclo de vida do App. |
|
|
|
Passe os parâmetros originais da Page. |
Instrumenta automaticamente o ciclo de vida da Page. |
Para utilizar hookApp e hookPage na instrumentação do ciclo de vida, seu mini programa deve seguir as especificações padrão de App e Page. A camada App precisa incluir
onError
, enquanto a camada Page requer
onShow
,
onHide
e
onUnload
. Para exemplos de uso, consulte
.
Outras APIs de configuração
A tabela a seguir apresenta os métodos que você pode chamar para configurar o SDK de monitoramento de mini programas do WeChat e relatar dados.
|
Método |
Parâmetro |
Descrição |
|
|
|
Define campos básicos de log. Útil em cenários como liberações canário. |
|
|
|
Configura campos específicos. Para mais detalhes, consulte Parâmetros de configuração do SDK. |
|
|
|
Relata um evento Page Show e envia dados de PV. |
|
|
|
Relata um evento Page Hide e envia dados de integridade. |
|
|
String/Object |
Relata um log de erro. |
|
|
Consulte parâmetros do método api. |
Relata um log de API. |
|
|
String |
Relata logs personalizados de soma ou média. |
No método setConfig, o parâmetro
uid
não é suportado em mini programas. Utilize
setUsername
no lugar de
uid
para identificar um usuário.
Casos de uso avançados
Quando os métodos de instrumentação automática descritos em Uso básico não atenderem às suas necessidades, adote uma das configurações avançadas abaixo:
-
Relate informações de API manualmente em vez de usar a instrumentação automática:
Defina disableHook como
truepara desativar o relato automático de logs para solicitações wx.request.Chame manualmente o método api() para relatar informações da API.
-
Desative a instrumentação automática e instrumente suas páginas manualmente:
Não utilize os métodos hookApp ou hookPage nos arquivos JS do App e da Page.
-
Para enviar dados de PV da página atual, chame o método pageShow() dentro do método onShow da página.
NotaNão use este método juntamente com
hookPage()
. Caso contrário, o sistema relatará dados duplicados de PV.
import Monitor from '/utils/monitor'; Page({ onShow: function() { Monitor.pageShow(); } }) -
Para enviar dados de integridade da página atual, incluindo saúde da página e tempo de permanência, invoque o método pageHide() nos métodos onHide e onUnload da página.
NotaNão combine este método com
hookPage()
. Isso evita o envio de dados de integridade duplicados.
import Monitor from '/utils/monitor'; Page({ onHide: function() { Monitor.pageHide(); }, onUnload: function() { Monitor.pageHide(); } // Other lifecycle methods. })