Você pode testar o Google Analytics em um endereço de host local?

279

Preciso testar minha nova conta do GA no meu computador local.

Isso funcionará apenas copiando o snippet padrão fornecido pelo Google para a página?

Não quero passar 24 horas esperando para ver se funcionará ou não.

edwardmlyte
fonte

Respostas:

345

Esta questão permanece válida hoje, no entanto, a tecnologia mudou. O antigo rastreador do Urchin está obsoleto e obsoleto. O novo código de rastreamento assíncrono do Google Analytics usa um código ligeiramente diferente para alcançar os mesmos resultados.

Google Analytics Classic - Sintaxe assíncrona - ga.js

A sintaxe atual para definir o domínio de rastreamento como nenhum no google analytics é assim:

_gaq.push(['_setDomainName', 'none']);

O Google analytics disparará a solicitação do rastreador _utm.gif no host local. Você pode verificar isso abrindo as ferramentas do desenvolvedor em seu navegador favorito e observando as solicitações de rede durante o carregamento da página. Se estiver funcionando, você verá uma solicitação para _utm.gif na lista de solicitações de rede.

Atualizado 2013 para o Universal Analytics - analytics.js

O Google lançou uma nova versão do analytics chamada "Universal Analytics" (final de 2012 ou início de 2013). Enquanto escrevo, este programa ainda está em versão beta, portanto o código acima ainda é recomendado para a maioria dos usuários com instalações existentes do Google Analytics.

No entanto, para novos desenvolvimentos usando o novo analytics.jscódigo, o Google Analytics, Configuração avançada - Documentação de rastreamento da Web mostra que podemos testar o Universal Analytics no localhost com este novo código:

ga('create', 'UA-XXXX-Y', {
  'cookieDomain': 'none'
});

Confira a documentação vinculada para obter mais detalhes sobre a configuração avançada do Universal Analytics.

Atualização 2019

A tag global do site - gtag.jse o Universal Analytics - analytics.jsserão detectadas localhostautomaticamente. Você não precisa fazer alterações na configuração.

Se o gtag.js detectar que você está executando um servidor localmente (por exemplo localhost), ele definirá automaticamente cookie_domaincomo 'none'.

- developers.google.com

BenSwayne
fonte
5
Apenas me salvou muito tempo. Obrigado
atmd 15/06/12
4
Complementando a resposta de Ben: você deve adicionar esta linha _gaq.push(['_setAccount', 'UA-XXXXXXX-XX']);antes e depois _gaq.push(['_trackPageview']);. Mais: link
dmmd
2
@JamesMcMahon O Google Analytics não possui versões por anos. (Não existe "2013 google analytics"). Talvez você estivesse se referindo ao "Universal Analytics" que está atualmente em BETA?
precisa saber é o seguinte
1
@JamesMcMahon, tentei hoje (com a versão "Clássica", não a beta "Universal Analytics"), e funciona.
Liran Brimer
21
Você não o definiu nonemais. A documentação diz: "Além disso, se o analytics.js detectar que você está executando um servidor localmente (por exemplo, localhost), ele define automaticamente o cookieDomain como 'none'."
mert
60

Atualizado para 2014

Agora isso pode ser alcançado simplesmente configurando o domínio para none.

ga('create', 'UA-XXXX-Y', 'none');

Consulte: https://developers.google.com/analytics/devguides/collection/analyticsjs/domains#localhost

brent
fonte
6
O terceiro parâmetro deve realmente ser definido como em 'none'vez de 'auto'.
Stephen M. Harris
Isso se aplica a outros domínios de nível superior? Eu testei o software localmente com domínios * .dev e eles também parecem não funcionar.
Bradley #
4
Além disso, alguém sabe como definir isso se você estiver configurando o GA por meio do Gerenciador de tags do Google?
Bradley
Definir isso como 'none' também funcionará no ambiente de produção?
vanzylv
9
Opção 'auto'define automaticamente 'none'para você em um localhostambiente: Automatic cookie domain configuration sets the _ga cookie on the highest level domain it can. For example, if your website address is blog.example.co.uk, analytics.js will set the cookie domain to .example.co.uk. In addition, if analytics.js detects that you're running a server locally (e.g. localhost) it automatically sets the cookieDomain to 'none'. Veja aqui
reinaldoluckman
15

Eu tinha o mesmo problema e todas as soluções não funcionaram até que eu fiz duas coisas:

Código óbvio:

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXXXX-X']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);   
_gaq.push(['_trackPageview']);

E

Adicionei localhost outro FQDN - nome de domínio. Eu fiz isso no sistema Windows editando:

C:\Windows\System32\drivers\etc\hosts

arquivo, e eu coloquei o seguinte:

127.0.0.1   my.domain.org

Depois fui abordar http://my.domain.org/WebApp que está exibindo a página com o JS analytics do Google incluído.

Se você estiver no unix, edite / etc / hosts para o mesmo resultado.

Ele acha que o Google deve colocar a configuração da Intranet nas Perguntas frequentes do GA. Eles apenas dizem que você precisa do FQDA. Sim, sim, mas não para que eles acessem você, você precisa apenas para ter o atributo Host na solicitação HTTP.

Eu acho que outra razão para o FQDN é COOKIES! Os cookies são usados ​​para rastrear dados e, se você não possui FQDN, o cookie não pode ser definido e o código JS para e não recebe o gif.

Uros Mesaric
fonte
15

Resposta para 2019

A melhor prática é configurar duas propriedades separadas para seu desenvolvimento / preparo e seus servidores de produção. Você não deseja poluir seus dados do Google Analytics com teste, e a configuração de filtros não é agradável se você for forçado a fazer isso.

Dito isso, o Google Analytics agora tem rastreamento em tempo real e, se você deseja acompanhar campanhas ou transações, o atraso é de cerca de 1 minuto até que os dados sejam mostrados na página, desde que você selecione o dia atual.

Por exemplo, você cria Site e Site Test, e cada um possui um código UA-XXXX-Y .

Na lógica do aplicativo, em que você fornece o JavaScript analítico, verifique seu ambiente e, para produção, use o Site UA-XXXX-Y e, para preparação / desenvolvimento, use o Teste do Site.

Você pode ter essa configuração até aprender os detalhes do GA e removê-lo ou mantê-lo, se precisar fazer alterações constantes (que você testará primeiro no desenvolvimento / teste).

Fonte: experiência pessoal, vários artigos.

Mugur 'Bud' Chirica
fonte
Você menciona o uso de duas visões diferentes. Então, eu criei uma nova entrada na guia Criar exibição. No entanto, ele não fornece um novo ID de rastreamento. Em vez disso, tive que criar uma nova entrada na propriedade Criar, que gera um novo ID de rastreamento. Acho que foi isso que você quis dizer, mas o Google nomeou as coisas de maneira semelhante à sua escolha de palavras e causou confusão.
Breakpoint25
14

Agora, a resposta para sua pergunta é sim, ela funcionará apenas copiando o snippet padrão. De acordo com a documentação , agora o snippet padrão tem configuração automática de domínio de cookie: ga('create', 'UA-XXXXX-Y', 'auto');onde o domínio de cookie é determinado automaticamente.

Além disso, se o analytics.js detectar que você está executando um servidor localmente (por exemplo, localhost), ele define automaticamente o cookieDomain como 'none'.

mert
fonte
Eu verifiquei isso e parece que meu cookieDomain está definido como "localhost" em vez de nenhum.
Shyamal Parikh
6

Depois de passar cerca de duas horas tentando encontrar uma solução, percebi que havia bloqueadores de anúncios bloqueando a chamada para o GA. Depois de desligá-los, eu estava pronto para ir.

Christoph Anderson
fonte
5

Uma ferramenta mais fácil de monitorar as tags de rastreamento é usar a extensão do Chrome (provavelmente disponível ou o equivalente para outros navegadores) - Assistente de tags do Google. Isso mostrará quais tags estão disparando, quais problemas foram encontrados e até separa itens como valores de comércio eletrônico para facilitar a leitura. Também funciona com o Gerenciador de tags do Google e pode lidar com vários conjuntos de tags na página.

JezC
fonte
3

Eu só quero acrescentar ao que foi dito até agora, pode economizar muita dor de cabeça, você não precisa esperar 24 horas para ver se funciona, sim, a visão geral total leva 24 horas, mas na guia Relatórios, existe um link no lado esquerdo para o resultado em tempo real e ele será exibido se alguém estiver visitando o site no momento, também não precisei configurá 'cookieDomain': 'none'-lo para funcionar no host local, minha configuração está ativada 'auto'e funciona muito bem (estou usando MVC 5), além disso, adicionei o script no final da tag head, conforme o google afirmou nesta página :

Cole seu snippet (inalterado, em sua totalidade) em todas as páginas da web que você deseja acompanhar. Cole-o imediatamente antes da </head>tag de fechamento .

aqui está mais informações sobre como verificar para ver se analytics funciona corretamente.

Deckard
fonte
3

Na sequência da resposta de Tuong Lu Kim:

Assumindo:

ga('create', 'UA-XXXXX-Y', 'auto');

... se o analytics.js detectar que você está executando um servidor localmente (por exemplo, localhost), ele define automaticamente o cookieDomain como 'none'. ...

Trecho de:

A configuração automática de domínio de cookie define o cookie _ga no domínio de nível mais alto possível. Por exemplo, se o endereço do site for blog.example.co.uk, o analytics.js definirá o domínio do cookie como .example.co.uk. Além disso, se o analytics.js detectar que você está executando um servidor localmente (por exemplo, localhost), ele define automaticamente o cookieDomain como 'none'.

O snippet de rastreamento JavaScript recomendado define a string 'auto' para o campo cookieDomain:


Fonte: https://developers.google.com/analytics/devguides/collection/analyticsjs/cookies-user-id#automatic_cookie_domain_configuration

ourmaninamsterdam
fonte
2

Encontrei esse problema recentemente e achei útil explorar a nova documentação do Google sobre a depuração do Analytics . Na verdade, ele não se importava com o envio de informações de rastreamento para o Google Analytics, eu só queria garantir que os eventos fossem disparados corretamente e as ferramentas de depuração me deram as informações necessárias. YMMV, eu sei que não responde exatamente a pergunta.

AndrewSouthpaw
fonte
0

Para aqueles que usam o Gerenciador de tags do Google para integrar-se aos eventos do Google Analytics, você pode fazer o que os caras mencionaram para definir o sinalizador de cookies como nenhum do GTM

insira a descrição da imagem aqui

abra GTM> variáveis> variáveis ​​do Google Analytics> e defina a tag de cookies como nenhuma

Hasan Daghash
fonte