Download the PHP package 8ctopus/apix-log without Composer
On this page you can find all versions of the php package 8ctopus/apix-log. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package apix-log
APIx Log - a tiny PSR-3 logger
This project is a detached fork of APIx Log as I wanted to add features and bug fixes not available in the original version.
Minimalist and fast PSR-3 compliant logger.
-
Light, come out-of-the-box bundle with wrappers for:
- Sapi ~ built around the
error_log()
function, - Nil ~ as Null wrapper,
- Stream ~ logs are sent to sockets, local and remote files, filters and other similar resources (default to standard output bypassing output buffering).
- Sapi ~ built around the
-
Extendable, additional logging backends are available:
- PHPMailer/apix-log-phpmailer ~ logs are sent using PHPMailer,
- jspalink/apix-log-pushover ~ logs are sent using Pushover,
- apix/log-tracker ~ adds logger/tracker such as Google Analytics, Dashbot, etc...,
- Very fast and even faster when logging is deferred. See here on how it compares to monolog
- Clean API, see the
FormatInterface
. - 100% Unit tested and compliant with PSR0, PSR1 and PSR2.
Feel free to comment, send pull requests and patches...
Installation
composer require 8ctopus/apix-log
Basic usage
This simple logger is set to intercept all logs and display them in the console.
[2023-03-20 08:01:25] NOTICE Running out of beers - left 5
Advanced usage ~ multi-logs dispatcher
Let's create an additional logger with purpose of catching log entries that have a severity level of warning
or more.\
See the log levels for the order.
setCascading()
set to true (default: true) so the entries caught here continue downstream past that particular logger.\setDeferred()
was set to true (default: false) so processing happens when:setDeferredTrigger
is reachedflushDeferredLogs
is called__destruct
(end of script generally)
Now, let's create a main logger object and inject the two previous loggers.
Finally, let's push some log entries:
Log levels
The eight RFC 5424 levels of logs are supported, in cascading order:
Severity | Description |
---|---|
Emergency | System level failure (not application level) |
Alert | Failure that requires immediate attention |
Critical | Serious failure at the application level |
Error | Runtime errors, used to log unhandled exceptions |
Warning | May indicate that an error will occur if action is not taken |
Notice | Events that are unusual but not error conditions |
Info | Normal operational messages (no action required) |
Debug | Verbose info useful to developers for debugging purposes (default) |
License
APIx Log is licensed under the New BSD license -- see the LICENSE.txt
for the full license details.
todo
- compare only log entry vs master branch
- fix demo colors in branch only log entry if faster
- should Logger inherit from AbstractLogger?
- add html formatting for emails
- change context logging
- add log line?