Difference between revisions of "Using JLog"
From Joomla! Documentation
(Remove 1.6 and 1.7 tags) |
(→Basic File Logging: fixes copy&paste error ('jerror' was still a parameter in the function call, while the text above stated that it wasn't)) |
||
Line 16: | Line 16: | ||
Adding the category of jerror means that this message will also be displayed to users. To only write to file you can easily drop that parameter and simply use | Adding the category of jerror means that this message will also be displayed to users. To only write to file you can easily drop that parameter and simply use | ||
− | JLog::add(JText::_('JTEXT_ERROR_MESSAGE'), JLog::WARNING | + | JLog::add(JText::_('JTEXT_ERROR_MESSAGE'), JLog::WARNING); |
== Logging a specific extension == | == Logging a specific extension == |
Revision as of 02:22, 22 June 2013
Using JLog can be very useful in components when analysing the performance of custom extensions - or analysing where extensions are giving issues. Note this should be used in tandem with php exceptions - not as a replacement. See Exceptions and Logging in Joomla 1.7 and Joomla Platform 11.1 for more information on this
Calling the class[edit]
To use JLog you need to call the JLog class. Done through the following code:
jimport('joomla.log.log');
Basic File Logging[edit]
Often you may wish to display an error log message and log to an error file. Joomla allows this natively through the JLog::add function. For example:
JLog::add(JText::_('JTEXT_ERROR_MESSAGE'), JLog::WARNING, 'jerror');
Adding the category of jerror means that this message will also be displayed to users. To only write to file you can easily drop that parameter and simply use
JLog::add(JText::_('JTEXT_ERROR_MESSAGE'), JLog::WARNING);
Logging a specific extension[edit]
Sometimes it may be useful to log the errors to a specific file. In this case you can
JLog::addLogger( array( //Sets file name 'text_file' => 'com_helloworld.errors.php' ), //Sets all JLog messages to be set to the file JLog::ALL, //Chooses a category name 'com_helloworld' );
Now remember to change the category when you add a log. Such as in the example below.
JLog::add(JText::_('JTEXT_ERROR_MESSAGE'), JLog::WARNING, 'com_helloworld');
Note you may wish to combine this with the Display error messages and notices section to display visable error notifications to users.