Difference between revisions of "Using JLog"
From Joomla! Documentation
(Update 3.0 to 3.1) |
(Remove 1.6 and 1.7 tags) |
||
Line 1: | Line 1: | ||
− | {{version| | + | {{version|2.5,3.1|platform=11.1}}{{RightTOC}} |
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 | 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 | ||
Revision as of 18:36, 29 April 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, 'jerror');
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.