Frage

Dies ist wahrscheinlich eine ziemlich anspruchsvolle Frage, die viel Erklärung erfordert, aber ich brauche viel Erklärung.

Im Grunde entwickle ich eine PHP-Anwendung, die viel Protokollierung und Nachverfolgung erfordert.Verfolgung von Klicks, Interaktionen, Leistung usw.usw.Alles unter der Sonne.Facebooks Scribe und Yahoos Chukwa sind beides großartige Umsetzungen davon.Ich weiß wenig über log4php.

Was ich möchte, ist ein allgemeiner Überblick darüber, wie diese Art der Protokollierung funktioniert, insbesondere in Verbindung mit einer PHP-Anwendung.Sie können an dem Punkt anhalten, an dem das Protokoll verarbeitet wird.Ich weiß bereits, dass ich Hadoop/Hive für die Verarbeitung und Speicherung verwenden möchte.

Ich hätte auch gerne ein paar relativ einfache Einblicke in das, was in der Anwendung selbst passiert.Wie nimmt man beispielsweise das Verhalten eines Klicks und sendet es an den Logger?Ich würde mich auch über jede Lektüre freuen, die mir den Einstieg erleichtern kann.

War es hilfreich?

Lösung

Sie können die Werkzeuge dafür kaufen/besorgen oder sie selbst bauen.

kaufen/bekommen:

1 – Kennzeichnen Sie Ihre Seiten mit Google/Yahoo-Analysen – Dadurch werden Seitenaufrufe, Seitenflussleistung, SEO-Ranking für Schlüsselwörter usw. verfolgt.

2 – Zur Verfolgung und Protokollierung des Benutzerverhaltens, einschließlich Klicks, Interaktionen und Leistung.Ich habe nichts Besseres als ClickTale gefunden - http://www.clicktale.com/default_e.aspx - Es zeichnet Benutzersitzungen per Video auf und legt diese „Protokolldateien“ auf einem Server ab.

Inhouse:1 – Das Erstellen versteckter Felder in Ihren Formularen, die an eine Protokollierungsdatenbank übermittelt werden, funktioniert ebenfalls.Sie geben den Formularen eindeutige IDs an und verfolgen die Aktionen beim Absenden.

Ich bin mir sicher, dass es noch viel mehr gibt, aber das sind die Grundlagen.Diese sind jedoch nicht PHP-spezifisch.

HTH

EDIT Nr. 1:

Dies sprengt möglicherweise den Rahmen Ihrer Frage, aber Tracking bedeutet nicht unbedingt, dass Daten intern gespeichert werden.Ein Beispiel wäre das Hinzufügen eines „Gefällt mir“- oder „Gefällt mir“-Buttons zu Artikeln oder Seiten.Dadurch wird die Beliebtheit für Sie „protokolliert“.Sie können auf Facebook oder digg.com gehen, um den Fortschritt Ihrer Website zu sehen.Es wird auch bei SEO helfen.Im Grunde handelt es sich um ein Trackingsystem.Und es ist einfach zu bedienen.Es gibt PHP-Snippets, die Sie kopieren und in Ihren Code einfügen können.Wenn Sie WordPress haben, gibt es ein Plugin – suchen Sie einfach im Plugin-Suchbereich nach „digg“, „like it“.

Zurück zu Google Analytics: Wenn Sie über das Tracking von Klicks hinausgehen möchten, legen Sie Ziele/Trichter fest.Es verfolgt das Nutzerverhalten und beantwortet Fragen wie "Was waren meine wertvollsten Keywords?" "Wo kommen alle meine Nutzer vorbei?" "Wie hoch ist die Absprungrate für jede Seite?" "Was sind die Top 3 Einstiegspunkte auf meine Website und von welchem Traffic-Medium?", das sind Fragen, die SEO/SEM-Manager am meisten beschäftigen.und es ist auf jeden Fall gut zu verfolgen und zu verstehen.

ClickTale beginnt dort, wo Google Analytics endet.GA beschreibt das Benutzerverhalten auf Seitenebene, nicht jedoch auf Feldebene.ClickTale, das über Heatmaps verfügt, beantwortet diese Fragen: „Ich weiß, dass diese Seite eine hohe Absprungrate hat, aber warum?“Welches Feld ist für meine Kunden ein Problemfeld?“ „In welchem ​​Bereich der Seite verbringen Benutzer die meiste Zeit?“ „Wie kann ich beweisen an die Grafiker, dass ein bestimmter Abschnitt neu gestaltet werden muss?

BEARBEITEN Nr. 2

Für stark frequentierte Websites müssen Sie Ihre Protokollierungsdatenbank skalieren.Es hilft wirklich, wenn es um die Berichterstattung geht.Was ich vorschlage, ist eine dreistufige Datenbank-Berichtsstruktur.Stufe 1 = letzte 7 Tage, Stufe 2 = letzte 6 Monate, Stufe = alles.Sie können diese je nach Unternehmen ändern.Der Punkt ist, dass Daten von einer Ebene zur anderen verschoben werden.Halten Sie aktuelle Daten jederzeit verfügbar.Sie möchten so schnell wie möglich Berichte erstellen.Eine einzelne große Datenbank lässt sich einfach nicht skalieren.

Andere Tipps

Sie können Benutzerklicks überwachen, indem Sie den Pfad protokollieren, den der Benutzer nimmt, Referrer -> neue URL, vorausgesetzt, beide sind ausführlich und beschreibend genug.Wenn ein Benutzer beispielsweise auf einen seiner Freunde klickt, sollten Sie die URIS protokollieren:

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

Sie werden ordnungsgemäß gespeichert, um Abfragen und Berichte zu erleichtern.Hier würde ein solcher Direktklick davon ausgehen, dass sich das Ziel auf der Seite des Referrers befindet, ebenso wie ein Freund.Wenn Sie kompliziertere Szenarien haben, stellen Sie sicher, dass Sie diese mit unterschiedlichen URIs beschreiben, z. B.: /users/suggestion/14152 für einen Verbindungsvorschlag.

Wenn Sie diese Zeitstempel hinzufügen, erhalten Sie eine sehr grobe Schätzung, wie lange sie auf jeder Seite verweilten, obwohl Benutzer dazu neigen, den Fokus zu verlieren, die Registerkarten/Anwendungen zu wechseln und zurückzukommen usw.Google Analytics macht dies zum Beispiel gut.

Für eine Zusammenfassung der Orte, an denen Benutzer auf Ihrer Website am häufigsten klicken, mithilfe von Heatmaps gefällt mir die kostenlose Version (GPL). Clickheat.

Check out splunk

Auf dem Frontend, in dem Sie die Protokollierung ausführen, ist hier ein Beispiel-PHP-Code, den Sie nützlich finden:

http://www.alphadevx.com/ A / 85-Logging-Meldungen-to-Scribe-from-php

In Bezug auf die Architektur haben Sie viel Flexibilität mit Schreiber. Ich würde empfehlen, eine lokale Scribe-Instanz zu haben, die auf jedem Anwendungsknoten läuft, und Ihr Antragsprotokoll lokal an localHost aufweist. Diese lokalen Scribe-Instanzen können wiederum so konfiguriert sein, dass sich der Anmeldung an einem zentralen Schreiberserver anprotokolliert, wenn er nicht zu beschäftigt ist. Andernfalls werden sie weiterhin Nachrichten lokal weiterentwickeln. Sie konsumieren Ihre Protokolle auf dem zentralen Server, in dem sie nach Kategorie aggregiert sind.

Ich bin ein großer Fan des Schreibers, und ich denke, es ist gut gestaltet, soweit es sich um einen sehr kleinen Speicher- und Prozessor-Footprint ergibt, und es ist ziemlich einfach zu konfigurieren (obwohl Murder aufgrund der Abhängigkeiten installiert wird!) . Es fehlt nur an Dokumentationen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top