So protokollieren Sie das Benutzer-Login

Nutzbar ab: Version

Über Systemereignisse können Sie das Login von Benutzern protokollieren.

Über Systemereignisse können Sie Aktionen zur Benutzeranmeldung in Weblication® CMS festlegen.

Das Ereignis onAfterLogin kann z.B. beim Login in Weblication® CMS für eine Protokollierung genutzt werden (siehe Beispiel). Beachten Sie hierzu die Hinweise unten!
In aktuellen Versionen stehen übrigens diverse Snippets (vorgefertigte Code-Beispiele) zur Verfügung, so z.B. auch ein Snippet zur Protokollierung.

Beispiel: Auszug aus onAfterLogin.wEvent.php mit Protokollierung

...
    <wsl:php id="scriptMain"><![CDATA[
$logStr = $eventData['wEventTime'].';'.$eventData['wEventUser']."\n";
wReadWrite::writeFile($_SERVER['DOCUMENT_ROOT'].'/weblication/grid5/tmp/'.$eventData['wEventName'].'.eventLog.php', $logStr, 'a'); 
    ]]></wsl:php>
...

Über die Pflegemaske des Systemereignisses definieren Sie lediglich den entspechenden PHP-Code für die Aktion im Quelltext-Bereich. Dies wird nachfolgend anhand des onAfterLogin-Ereignisses angeführt:

Systemereignis onAfterLogin mit Protokollierungsaktion
Systemereignis onAfterLogin mit Protokollierungsaktion

Hinweise

Das Beispiel für die Protokollierung der Benutzeranmeldung über das Ereignis onAfterLogin verwendet für die Logdaten den Pfad des tmp-Verzeichnisses. Sofern Sie die Protokollierung dauerhaft ablegen wollen, setzen Sie einen individuellen Pfad innerhalb Ihres Projektes!

Beachten Sie, dass das Weblic® Login-Formular die Ereignisse erst ab Weblic®-Version 001.000.020.000 unterstützt!

FAQs
Wie kann ich das Benutzer-Login in Weblication® CMS protokollieren?
Über **Systemereignisse** können Sie das Login von Benutzern protokollieren. Konkret können Sie Aktionen zur Benutzeranmeldung über Ereignisse wie **onAfterLogin** definieren.
Wofür kann das Ereignis onAfterLogin beim Login genutzt werden?
Das Ereignis **onAfterLogin** kann genutzt werden, um beim Login in Weblication® CMS eine Protokollierung auszuführen. Dazu wird typischerweise ein Log-Code im Ereignis hinterlegt (siehe Beispiel).
Wie sieht ein Beispielcode zur Protokollierung über onAfterLogin aus?
Im Beispiel wird ein String mit Zeit und Benutzername gebildet und anschließend in eine Datei geschrieben: - <code class="codeInline">$logStr = $eventData['wEventTime'].';'.$eventData['wEventUser']."\n";</code> - Schreiben per <code class="codeInline">wReadWrite::writeFile(...)</code> in eine Datei, deren Name sich aus dem Ereignisnamen ergibt (<code class="codeInline">$eventData['wEventName'].'.eventLog.php'</code>).
Wo wird in dem Beispiel die Logdatei abgelegt?
Im Beispiel wird der Logpfad über das **tmp-Verzeichnis** festgelegt: <code class="codeInline">$_SERVER['DOCUMENT_ROOT'].'/weblication/grid5/tmp/'.$eventData['wEventName'].'.eventLog.php'</code>. Wenn Sie die Protokollierung **dauerhaft** ablegen wollen, sollten Sie stattdessen einen **individuellen Pfad** innerhalb Ihres Projektes verwenden.
Wie konfiguriere ich die Protokollierungsaktion für ein Systemereignis?
Über die **Pflegemaske des Systemereignisses** definieren Sie im **Quelltext-Bereich** den entsprechenden **PHP-Code** für die Aktion.
Gibt es Snippets zur Protokollierung?
Ja. In aktuellen Versionen stehen **diverse Snippets** (vorgefertigte Code-Beispiele) zur Verfügung, darunter auch ein Snippet zur **Protokollierung**.
Ab welcher Version werden Ereignisse vom Login-Formular unterstützt?
Das **Login-Formular unterstützt Ereignisse erst ab Version 001.000.020.000**.