Pergunta

Este é, provavelmente, um muito alto nível pergunta que requer uma série de explicações, mas eu estou precisando de um monte de explicar.

Basicamente, eu estou desenvolvendo um aplicativo PHP que requer uma grande quantidade de registro e acompanhamento.Rastreamento de cliques, de interações, de desempenho, etc.etc.Qualquer coisa sob o sol.Facebook Escriba e Yahoo Chukwa são ambos grandes implementações do presente.Eu sei pouco sobre log4php.

O que eu quero é uma visão geral de alto nível como este tipo de registo de obras, especificamente em conjunto com um aplicativo PHP.Você pode parar no ponto onde o log é processado;Eu já sei que eu quero usar o Hadoop/Ramo de processamento e de armazenamento.

Eu também gostaria de algumas bastante baixo nível olha para o que acontece dentro da própria aplicação.Por exemplo, como se faz para tirar o comportamento de um clique e enviar para o logger?Eu apreciaria qualquer leitura que pode ajudar a me começou bem.

Foi útil?

Solução

Você pode comprar / obter as ferramentas para fazer isso para você ou construir internamente.

comprar / get:

1 - marque suas páginas com o Google / Yahoo Analytics - isso irá rastrear a página visualizações, desempenho de fluxo de página, ranking de SEO para palavras-chave, etc.

2 - Para acompanhar e registrar o comportamento do usuário, que inclui cliques, interações e desempenho. Eu não encontrei nada melhor do que ClickTale - http://www.clicktale.com/default_e.aspx - Video registra as sessões de usuário e coloca esses "arquivos de log" em um servidor.

internamente: 1 - Criando campos ocultos em seus formulários que submete a um banco de dados de log também funciona. Você especifica IDs exclusivos para formulários e acompanham suas ações durante os envios.

Tenho certeza que há muito mais, mas estes são os fundamentos. Estes não são específicos do PHP.

hth

Editar # 1:

Isso pode estar além do escopo de sua pergunta, mas o rastreamento não significa necessariamente dados que vão em casa. Um exemplo seria adicionar um botão "Like" ou "Digg it" a artigos ou páginas. Isso "log" popularidade para você. Você pode ir ao Facebook ou Digg.com para ver o progresso do seu site. Também ajudará com SEO. Basicamente, é um sistema de rastreamento. E é fácil de usar. Há trechos de php por aí que você pode copiar e colar no seu código. Se você tem WordPress, há um plugin - basta procurar "digg", "como ele" na seção de pesquisa de plugin.

Voltando à Google Analytics, se você quiser ir além do rastreamento de cliques, vá em frente e faça gols / funis. Ele rastreará o comportamento do usuário e responderá a perguntas como "Quais foram as minhas palavras-chave mais valiosas?" "Onde todos os meus usuários saem?" "Qual é a taxa de rejeição para cada página?" "Quais são os 3 principais pontos de entrada para o meu site e de qual meio de tráfego?" Estas são questões que os gerentes SEO / SEM estão mais preocupados. E é definitivamente bom rastrear e entender.

ClickTale começa onde o Google Analytics termina. A GA descreverá o comportamento do usuário no nível da página, mas não no nível de campo. ClickTale, que tem mapas de calor, vai responder a estas perguntas "Eu sei que esta página tem uma alta taxa de rejeição, mas por quê? Qual campo é um campo de problema para os meus clientes?" "Em que área da página os usuários passam a maior parte do tempo?" "Como faço para comprovar para os caras gráficos que uma seção específica precisa ser redesenhada?".

editar # 2

Para sites de alto tráfego, você precisará dimensionar seu DB de log. Realmente ajuda quando se trata de relatar. O que eu sugiro é uma estrutura de relatório de banco de dados de 3 níveis. Tier 1= Últimos 7 dias, Nível 2= Últimos 6 meses, Tier= Tudo. Você pode modificar estes de acordo com o negócio. O ponto sendo, os dados se movem de um nível para outro. mantendo dados frescos prontamente disponíveis. Você quer gerar relatórios o mais cedo possível. Um único db enorme simplesmente não escala.

Outras dicas

Você pode monitorar os cliques do usuário registrando o caminho que o utilizador está a tomar, referente --> uri novo, supondo que ambos são detalhado e descritivo o suficiente.Por exemplo, se um usuário clicar em um de seus amigos, você deve efetuar o uris:

Referrer: /users/41251
Target: /users/66257

armazenando-os adequadamente, para facilitar a consulta e geração de relatórios.Aqui um clique direto como que iria assumir o alvo é a referência da página, então é um amigo.Se você tiver mais complicado cenários certifique-se de descrevê-los com distintas uris, por exemplo: /users/suggestion/14152 para uma sugestão de ligação.

Adicionar para que os carimbos de data / hora e você tem uma estimativa aproximada de quanto tempo ficou em cada página, embora os usuários tendem a perder o foco, mudar de separadores/aplicativos e voltar, etc.O Google Analytics, por exemplo, faz isso muito bem.

Para um resumo de onde os usuários clicam mais em seu site usando os mapas que eu gosto grátis (GPL) Clickheat.

Check out Splunk

No frontend, onde você está fazendo o log de, aqui está algum exemplo de código PHP que você pode achar útil:

http://www.alphadevx.com/ A / 85-Mensagens de registro-para-scribe-from-php

Em termos da arquitetura, você tem muita flexibilidade com escriba. Eu recomendaria ter uma instância local de escriba em funcionamento em cada nó do aplicativo e ter seu log de aplicativos localmente para localhost. Estas instâncias de escriba local podem, por sua vez, podem ser configuradas para registrar um servidor Scribe Central quando não estiver muito ocupado, caso contrário, continuarão a enfrentar mensagens localmente. Você realmente consome seus logs no servidor central, onde eles são agregados por categoria.

Eu sou um grande fã de escriba, e acho que é projetado bem é tão importante quanto tem uma pequena memória e processador pegada, e é muito fácil configurar (embora o assassinato para instalar devido às dependências!) . Apenas falta documentação.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top