Como usar o Stats Rails
Instalar leva uma linha de código. Esta página cobre essa linha, os eventos personalizados, o monitoramento de disponibilidade e o que fazer quando algo não aparece no painel.
Como funciona
O Stats Rails tem duas frentes que funcionam de forma independente:
- Analytics: um script colado no seu site registra as visitas e os eventos que você quiser. Precisa da instalação descrita abaixo.
- Monitoramento de disponibilidade: o Stats Rails acessa seu site de fora, de tempos em tempos, para saber se ele está no ar. Não precisa de script nenhum, só do endereço cadastrado no painel.
Cada site monitorado é um projeto no painel, e cada projeto tem um token próprio, que é o que liga o script à sua conta.
Instalação
- Entre no painel e crie um projeto informando o domínio do seu site.
- Abra o projeto e vá em Configurações. O script já vem montado com o seu token.
- Cole o script no HTML do seu site, logo antes do
</body>, em todas as páginas.
<script src="https://statsrails.optago.app.br/js/statsrails.js" data-token="SEU_TOKEN" defer></script>
Troque SEU_TOKEN pelo token do seu projeto. O defer faz o navegador carregar o script sem atrasar a exibição da página.
O domínio precisa bater. Por segurança, o Stats Rails só aceita dados vindos do domínio cadastrado no projeto (e dos subdomínios dele). Se o site roda em www.seusite.com e você cadastrou seusite.com, funciona. Se o endereço for outro, os dados são recusados.
O que é medido sozinho
Depois que o script está no ar, cada visita a uma página é registrada automaticamente, sem você escrever mais nada. De cada acesso ficam guardados:
- A página visitada e de onde a pessoa veio (site de origem, busca ou acesso direto).
- Navegador, sistema operacional e tipo de dispositivo, deduzidos do navegador.
- Idioma do navegador e localização aproximada (cidade e país), deduzida do IP.
- Um identificador temporário de sessão, que serve só para contar visitantes únicos no dia e some quando a aba é fechada.
Sites de página única
Se o seu site é um SPA (React, Vue, Angular, Next e parecidos), onde trocar de tela não recarrega a página, o Stats Rails já acompanha isso sozinho: ele observa a navegação do próprio navegador e registra uma nova visualização a cada troca de rota. Não é preciso chamar nada manualmente.
Eventos personalizados
Além das visitas, você pode registrar ações específicas: um clique em "comprar", um formulário enviado, um vídeo assistido até o fim. Para isso, chame:
StatsRails.trackEvent('nome_do_evento', { chave: 'valor' });
O primeiro argumento é o nome do evento, obrigatório. O segundo é um objeto com dados extras, opcional, que fica guardado junto e aparece na tela de Eventos do projeto.
Exemplos
// Clique em um botão
document.getElementById('btn-comprar').addEventListener('click', function () {
StatsRails.trackEvent('clique_comprar');
});
// Compra concluída, com detalhes
StatsRails.trackEvent('compra', { plano: 'pro', valor: 149.9 });
// Formulário enviado
document.querySelector('form#contato').addEventListener('submit', function () {
StatsRails.trackEvent('contato_enviado', { origem: 'rodape' });
});
Espere o script carregar. Como ele usa defer, StatsRails só existe depois que a página termina de carregar. Para disparar um evento logo na abertura, coloque a chamada dentro de um window.addEventListener('load', ...), ou proteja com if (window.StatsRails).
Boas práticas
- Use nomes curtos, estáveis e sem acento, como
compraoucadastro_concluido. Nomes com mais de 90 caracteres são cortados. - Mantenha o mesmo nome ao longo do tempo: trocar o nome quebra a comparação histórica.
- Nunca envie dado pessoal nos dados extras (nome, e-mail, telefone, documento, endereço). Prefira identificadores internos ou categorias.
Monitoramento de disponibilidade
O monitoramento é independente do script: o Stats Rails acessa seu site de fora, no intervalo que você escolher, e guarda se respondeu e em quanto tempo. Configure em Configurações do projeto:
- URL do sistema: o endereço principal do site.
- URL de verificação: opcional, para apontar uma rota específica de checagem. Em branco, usa o próprio domínio.
- Intervalo de checagem: de 1 minuto a 1 hora. A opção de 1 minuto é exclusiva do plano Pro.
Só uma resposta de sucesso conta como "no ar". Redirecionamentos são seguidos até o destino final, então um site que redireciona para uma página de erro ou manutenção aparece como fora do ar, que é o que a pessoa visitando realmente encontraria.
Alertas de queda
Na aba Notificações do projeto você liga avisos por e-mail e por Telegram. Para o Telegram, informe o token do bot e o ID do grupo ou conversa, e use o botão Enviar teste antes de salvar: ele manda uma mensagem na hora e mostra o erro exato se algo estiver errado.
Dois detalhes do funcionamento dos avisos:
- A queda é confirmada antes de avisar. O alerta só sai depois de duas checagens seguidas com falha, para uma instabilidade de segundos não virar alarme. O histórico, esse sim, registra a falha já na primeira.
- Você também é avisado quando o site volta, desde que a queda tenha chegado a ser anunciada.
Se vários projetos compartilham o mesmo destino de aviso, configure no grupo e deixe os projetos herdando: cada projeto pode herdar, personalizar ou desativar o que veio do grupo.
Página de status pública
Em Status Pages você monta uma página pública com os projetos que escolher, para mostrar a clientes ou colegas sem dar acesso ao painel. Ela tem endereço próprio, mostra o histórico de disponibilidade de cada projeto e aceita logo, favicon e cor da sua marca.
Privacidade e cookies
O Stats Rails não usa cookies e não cria perfil de visitante entre sites ou entre visitas. O identificador de sessão fica no sessionStorage do navegador, vale só para aquela aba e desaparece quando ela é fechada.
Como não há cookie nem rastreamento entre sites, na maioria dos casos a medição não exige banner de consentimento. Ainda assim, vale citar a medição na política de privacidade do seu site. Veja também a nossa política.
Resolução de problemas
Nada aparece no painel
- Abra seu site, pressione F12 e vá na aba Console. Erros de carregamento do script aparecem ali.
- Na aba Rede, recarregue a página e procure por
new-view. Se a chamada não existe, o script não está sendo carregado: confira se a tag foi colada mesmo e se o endereço está correto. - Se a chamada existe mas falha, o código do erro diz o motivo (tabela abaixo).
- Confirme que o projeto está ativo nas configurações.
| Erro | O que significa | Como resolver |
|---|---|---|
origem_nao_autorizada |
O endereço do site não bate com o domínio cadastrado no projeto. | Ajuste o domínio nas configurações do projeto para o endereço real onde o site roda. |
token_nao_fornecido |
A tag do script está sem o atributo data-token. |
Copie o script pronto da tela de Configurações do projeto. |
token_invalido |
O token não existe ou o projeto está inativo. | Confira se copiou o token inteiro e se o projeto está ativo. |
Os eventos não aparecem
As visitas são registradas sozinhas, mas os eventos só existem se alguma parte do seu código chamar StatsRails.trackEvent. Teste digitando StatsRails.trackEvent('teste') no console do navegador, com seu site aberto, e confira a tela de Eventos do projeto. Se o console responder que StatsRails não está definido, o script não carregou.
O site aparece fora do ar, mas abre normalmente aqui
Verifique se o endereço checado é o mesmo que você abre no navegador, incluindo o www: é comum o domínio sem www funcionar e o com www estar quebrado, ou o contrário. Lembre também que redirecionamentos são seguidos até o fim, então o que vale é a página final. Bloqueio de acessos automatizados por firewall ou CDN também derruba a checagem.
Referência rápida
| Item | Detalhe |
|---|---|
| Endereço do script | https://statsrails.optago.app.br/js/statsrails.js |
| Atributo obrigatório | data-token, com o token do projeto |
| Função de evento | StatsRails.trackEvent(nome, dados) |
| Nome do evento | Obrigatório, até 90 caracteres |
| Dados do evento | Opcional, qualquer objeto, guardado como JSON |
| Endereço da página | Guardado com até 190 caracteres |
| Cookies | Nenhum. Sessão fica no sessionStorage da aba |
| Origem aceita | Só o domínio cadastrado no projeto e seus subdomínios |
| Intervalo de checagem | 1, 5, 10, 15, 30 ou 60 minutos (1 minuto é do plano Pro) |
| Confirmação de queda | 2 checagens seguidas com falha antes de avisar |
Ficou alguma dúvida que esta página não responde? Fale com a gente pelo WhatsApp +55 41 9 9928-4779.