Plugin phpBO Client Log

Alles rund um Module und Plugins in CONTENIDO 4.9.
Antworten
Oldperl
Beiträge: 4010
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Franken, Bayern
Kontaktdaten:

Plugin phpBO Client Log

Beitrag von Oldperl » Mo 16. Feb 2015, 14:17

Beschreibung
Dieses CONTENIDO-Plugin erweitert den Backend-Bereich 'Administration-Logs' um ein Untermenü 'Mandant' zur Anzeige von Log-Dateien im Verzeichnis 'data/logs' des aktuell angezeigten Mandanten, analog zum Untermenü 'System' mit der Anzeige von System-Log-Dateien.
Dort gespeicherte Log-Dateien werden hauptsächlich von Modulen oder Mandaten-bezogenen Anwendungen und/oder Plugins genutzt. So nutzt beispielsweise mein Modul phpBO Simple Shopping Cart das Verzeichnis zur Ablage sowohl seiner Sende-Logs beim E-Mail-Versand, als auch zur Ablage von generierten csv-Dateien bei jeder Bestellung.

Installation
Sie können das Plugin-Archiv entweder per Plugin-Manager hochladen und installieren, oder Sie entpacken es lokal und laden es dann per FTP in Ihre CONTENIDO-Installation ins Verzeichnis contenido/plugins und installieren es dann im Backend im Bereich Administration->Plugin Manager.

Demo-Code zum erstellen einer Log-Datei im entsprechenden Mandanten-Verzeichnis
Um nun aus einem Modul heraus eine einfache Log-Datei zu schreiben nutzt man am Einfachsten die Core-Klassen cLog und cLogWriter. Hier mal ein kurzer Code-Schnipsel zum Einbau in ein Modul bei dem Ihr nur Dateinamen und Meldungs-Array an eure Gegebenheiten anpassen müßt.

Code: Alles auswählen

/* Meldungen zur Ausgabe und/oder für eine Log-Datei */
$aMessages = array();
// eine Fehler-Meldung im Log
$aMessages[] = "An Error occured while listening to my computer!";
// eine Info-Meldung im Log
$aMessages[] = "This is just a little information entry for your log file.";

if(count($aMessages) > 0) {
    $aConfigClient = cRegistry::getClientConfig(cRegistry::getClientId());
    $oLogWriter = cLogWriter::factory("File", array("destination" => $aConfigClient['log']['path'] . "myModuleClientLog.log"));
    $oLog = new cLog($oLogWriter);
    foreach($aMessages as $Message) {
        $sPriority = cLog::INFO;
        if(strstr($Message, "Error")) {
            $sPriority = cLog::ERR;
        }
        $oLog->log($Message, $sPriority);
    }
} 
Lizenz
Das Plugin steht frei unter der LGPL V3 zur Verfügung. Bei Gefallen freue ich mich auf eine kleine Spende in meine Kaffe-Kasse.

Support
Zum Plugin gibt es Support nur über das Forum in diesem Beitrag. Ich freue mich schon auf ihr/euer Feedback. :)

Gruß aus Franken

Ortwin

Downloads
V1.0.0 vom 16.02.2015
*NEU* PHP 7.x Community Draft von CONTENIDO 4.9 auf github
CONTENIDO 4.9 Entwickler-Handbuch - Publikation auf medium.com zu meinem angedachten Entwickler-Buch zu CONTENIDO 4.9
ConLite 2.0, alternatives und stabiles Update von Contenido 4.8.x
phpBO Search Advanced - das neue Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: Plugin phpBO Client Log

Beitrag von frederic.schneider_4fb » Do 26. Feb 2015, 08:50

Funktioniert prima, danke! ;-) (Abgesehen davon, dass mir beim PluginManager bei der Anzeige, wo sich das Plugin in der Navigation befindet, ein Fehler aufgefallen ist ;-).)
Frederic Schneider
Entwickler bei der four for business AG

Antworten