Frage

Ich möchte Fehlerprotokolle per E-Mail erhalten. Zum Beispiel soll, wenn eine Warning-level Fehlermeldung auftritt, würde Ich mag eine E-Mail darüber erhalten.

Wie kann ich, dass die Arbeit in CodeIgniter?

War es hilfreich?

Lösung

Sie könnten die Ausnahme Kern-Klasse erweitern, es zu tun.

könnte der Verweis auf CI E-Mail-Klasse einstellen müssen, um nicht sicher, ob Sie es aus einer Bibliothek wie folgt instanziieren kann. Ich benutze keine CI E-Mail-Klasse selbst, ich habe die Swift Mailer-Bibliothek im Einsatz. Aber das soll man auf dem richtigen Weg bekommen.

Erstellen Sie eine Datei MY_Exceptions.php und legen Sie sie in / application / Bibliotheken / (Oder / application / Kern / CI 2)

class MY_Exceptions extends CI_Exceptions {

    function __construct()
    {
        parent::__construct();
    }

    function log_exception($severity, $message, $filepath, $line)

    {   
        if (ENVIRONMENT === 'production') {
            $ci =& get_instance();

            $ci->load->library('email');
            $ci->email->from('your@example.com', 'Your Name');
            $ci->email->to('someone@example.com');
            $ci->email->cc('another@another-example.com');
            $ci->email->bcc('them@their-example.com');
            $ci->email->subject('error');
            $ci->email->message('Severity: '.$severity.'  --> '.$message. ' '.$filepath.' '.$line);
            $ci->email->send();
        }


        parent::log_exception($severity, $message, $filepath, $line);
    }

}

Andere Tipps

Eine Sache, die aus der Lösung übrig bleibt, ist, dass Sie CodeIgniters Super-Objekt greifen müssen, um zu laden und die E-Mail-Bibliothek verwenden (oder eine der CodeIgniters andere Bibliotheken und nativen Funktionen).

$CI =& get_instance();

Nachdem Sie das getan haben, Sie $CI statt $this verwenden, um die E-Mail-Bibliothek zu laden und alle Parameter eingestellt. Weitere Informationen hier und suchen Sie unter Verwendung CodeIgniter Ressourcen innerhalb Ihrer Bibliothek .

Oh, eine weitere Option ist es, eine Logrotation Anwendung zu erhalten, die Digests E-Mail unterstützt. Nicht sicher, welche Plattform Sie sind, aber man konnte nur etwas die error_log Datei überwachen und Sie Updates senden, vielleicht nicht so ordentlich sein und sicherlich würden Sie nur Informationen in der error_log begrenzt werden. (Error_log ist Apache, CI a / logs / Ordner im System hat, und IIS hat die Windows-Ereignisse)

Ich bin nur hier um ein Open-Source-Projekt zu veröffentlichen, die dies tut, und vieles mehr. Es sammelt Fehler, sendet sie an einen Bugtracker, erkennt Duplikate, verwandelt sich in Fragen und E-Mails Personal.

Details sind unter https://sourceforge.net/news/?group_id=317819&id=293422 und die Version 0.1.7 es erwähnt ist aufgrund out in ein paar Tagen.

Der Open-Source-Tracker ist unter http://elastik.sourceforge.net/

Jedes Feedback willkommen, Danke

richte ich ein Open-Source-Projekt Github diese Lösung mit konfigurierbaren implementieren E-Mail-Parameter.

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