Actions

Difference between revisions of "Using JLog"

From Joomla! Documentation

(Create page on JLog)
 
(Add in category and class importing details)
Line 1: Line 1:
 
{{version|2.5,3.0|platform=11.1}}
 
{{version|2.5,3.0|platform=11.1}}
 
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!
 
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!
 +
 +
== Call the class ==
 +
 +
To use JLog you need to call the JLog class. Done through the following code:
 +
 +
    jimport('joomla.log.log');
  
 
== Basic File Logging ==
 
== Basic File Logging ==
Line 31: Line 37:
  
 
Note you may wish to combine this with the [[Display error messages and notices]] section to display visable error notifications to users.
 
Note you may wish to combine this with the [[Display error messages and notices]] section to display visable error notifications to users.
 +
 +
[[Category:Development]]
 +
[[category:Joomla! 1.6]]
 +
[[category:Joomla! 1.7]]
 +
[[category:Joomla! 2.5]]
 +
[[category:Joomla! 3.0]]

Revision as of 13:56, 28 January 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!

Call the class

To use JLog you need to call the JLog class. Done through the following code:

   jimport('joomla.log.log');

Basic File Logging

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');

More Complex Examples

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.