Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/aleron75/magemonolog

A Magento extension which provides a custom writer model to transparently use Monolog as logging library
https://github.com/aleron75/magemonolog

Last synced: 3 months ago
JSON representation

A Magento extension which provides a custom writer model to transparently use Monolog as logging library

Awesome Lists containing this project

README

        

magemonolog
===========

Facts
-----
Version: 0.2.2
Developed (and tested) on Magento CE v 1.8.1.0

Introduction
------------

A Magento extension which provides a custom writer model to transparently use
Monolog as logging library.

The following Monolog's Handlers are supported at the moment:

* `StreamHandler` - writes to file
* `NativeMailHandler` - sends each log entry via email
* `NewRelicHandler` - logs in NewRelic app

Installation
------------

You can install this extension in several ways:

**Download**

Download the full package, copy the content of the `app` directory
in your Magento base directory; pay attention not to overwrite
the `app` folder, only merge its contents into existing directory;

**Modman**

Install modman Module Manager: https://github.com/colinmollenhour/modman

After having installed modman on your system, you can clone this module on your
Magento base directory by typing the following command:

$ modman init
$ modman clone [email protected]:aleron75/magemonolog.git

**Composer**

Install composer: http://getcomposer.org/download/

Install Magento Composer: https://github.com/magento-hackathon/magento-composer-installer

Type the following command:

$ php composer.phar require aleron75/magemonolog:dev-master

or

$ composer require aleron75/magemonolog:dev-master

**Common tasks**

After installation:

* if you have cache enabled, disable or refresh it;
* if you have compilation enabled, disable it or recompile the code base.

Usage example
-------------
Once installed, the module automatically replaces the default Magento Log Writer
with Monolog's StreamHandler.

This is obtained through the following config node in `config.xml`:





Aleron75_Magemonolog_Model_Logwriter



which instructs Magento to use a custom log writer class when logging via the
`Mage::log()` native static function.

The configured `Aleron75_Magemonolog_Model_Logwriter` class is a wrapper for
Monolog and allows to use Monolog's Handlers.

Monolog's Handlers are configured in the `config.xml` through the following
config node:






1

magemonolog.log
DEBUG
true
null
false



0

[email protected]
Log
[email protected]
ERROR
true
70



0

ERROR
true
***your app name here***





It is assumed you know Monolog's Handlers to understand the meaning of `params`
node.

Multiple Log Handlers can be activated at the same time with different log
filter level; this way, for example, it is possible to log any message into a
file and only serious errors via e-mail.

You can also use Monolog's Formatters like shown below:






1

magemonolog.log
DEBUG
true
null
false


LogstashFormatter












The `` tag should contain proper Formatter's contructor arguments. Arguments' tag name is not important, values
are passed to Formatter's constructor in the exact order the constructor requires them. You should consult Formatter's
constructor signature to know which are its arguments, their meaning and their order.

Closing words
-------------
Any feedback is appreciated.

This extension is published under the [Open Software License (OSL 3.0)](http://opensource.org/licenses/OSL-3.0).

Any contribution or feedback is extremely appreciated.