Skip to content
Snippets Groups Projects
Select Git revision
  • 3989dae468f5a4253827b8791e837e5602616c68
  • master default protected
  • feat/message-handling
  • feat/request-id
  • 1.13.2
  • 1.13.1
  • 1.13.0
  • 1.12.1
  • 1.12.0
  • 1.11.0
  • 1.11.0-beta2
  • 1.11.0-beta1
  • 1.10.2
  • 1.10.1
  • 1.10.0
  • 1.9.0
  • 1.8.0
  • 1.7.4
  • 1.7.3
  • 1.7.2
  • 1.7.1
  • 1.7.0
  • 1.6.2
  • 1.6.2-beta2
24 results

wp-logs

user avatar
Dyszczo authored
PB-499 Unified logger

See merge request !9
3989dae4
History

pipeline status coverage report Latest Stable Version Total Downloads Latest Unstable Version License

WordPress Library to log all that can be logged in a modern way.

wp-log is a simple library for WordPress plugins which integrates Monolog with PHP/WP error handling and WooCommerce log system.

By default library logs to WC_Logger and WP Desk log file located in /uploads/wpdesk-logs/wpdesk_debug.log.

Requirements

PHP 5.6 or later.

Composer

You can install the bindings via Composer. Run the following command:

composer require wpdesk/wp-logs

To use the bindings, use Composer's autoload:

require_once 'vendor/autoload.php';

Compatiblity between plugins

To ensure that always the latest and valid version of composer libraries are loaded in WP env you should use a solution that ensure support between plugins and at least decreases the change that something would break. At the moment we recommend using wpdesk/wp-autoloader.

Manual instalation

If you do not wish to use Composer and wpdesk/wp-autoloader, you probably should stop using any existing library as it breaks compatibility between plugins.

Getting Started

Simple usage to get Monolog style logger:

WPDesk\Logger\LoggerFacade::get_logger()->addDebug('some debug message');

// Is equivalent to:
WPDesk\Logger\LoggerFacade::get_logger()->debug('some debug message');

// Is equivalent to:
WPDesk\Logger\LoggerFacade::get_logger()->log(Logger::DEBUG, 'some debug message');

You can also use various Facade helpers:


// log WP_Errors
WPDesk\Logger\LoggerFacade::log_wp_error(new WP_Error(), debug_backtrace());

// log Exceptions
WPDesk\Logger\LoggerFacade::log_exception(new \RuntimeException());

// log message with backtrace
WPDesk\Logger\LoggerFacade::log_message_backtrace('some message', debug_backtrace(), Logger::DEBUG);

// log standard message
WPDesk\Logger\LoggerFacade::log_message('some message', ['some_user' => $user], 'my-app-source', Logger::DEBUG);

Logs can be used whether WC is active or not but if add_action is unavailable then WC logs capture would break.

Project documentation

PHPDoc: https://wpdesk.gitlab.io/wp-logs/index.html