A standard yet lightweight NCC logging library for logging events both big and small with real-time tracing for debugging purposes.
Find a file
Netkas 951bdb325e
"Refactor logging logic to improve log level and backtrace information
The code has been updated to enhance the way log levels and backtrace information is handled. Changes have been done to ensure the backtrace ignores any calls coming from the LogLib namespace, improving clarity and reducing noise in the log output. Additionally, changes were made to 'colorize' and 'log' methods to adjust the typing of the log level from string to integer, enhancing the consistency of log level usage throughout the code. Removed the Backtrace class that was not serving any purpose after these updates. Tests are also updated to ensure proper functionality."
2023-10-12 23:40:05 -04:00
.idea Remove unused run configuration and update CI pipeline 2023-10-11 17:49:15 -04:00
src/LogLib "Refactor logging logic to improve log level and backtrace information 2023-10-12 23:40:05 -04:00
tests "Refactor logging logic to improve log level and backtrace information 2023-10-12 23:40:05 -04:00
.gitignore Added .gitignore 2022-12-13 23:20:34 -05:00
.gitlab-ci.yml Updated .gitlab-ci.yml 2023-10-12 00:35:39 -04:00
CHANGELOG.md Fix 2023-10-12 17:16:02 -04:00
LICENSE Updated LICENSE formatting 2023-10-11 18:46:27 -04:00
Makefile Remove unused ConfigException class, make code style adjustments 2023-10-10 23:29:26 -04:00
project.json Updated project.json 2023-10-11 18:50:33 -04:00
README.md Updated README.md formatting 2023-10-11 18:49:54 -04:00

LogLib

A logging library for PHP/ncc, this was quickly thrown together to provide a simple logging interface and to test out NCC's capabilities for PHP.

Table of Contents

Installation

The library can be installed using ncc:

ncc install -p "nosial/libs.log=latest@n64"

or by adding the following to your project.json file under the build.dependencies section:

{
  "name": "net.nosial.loglib",
  "version": "latest",
  "source": "nosial/libs.log=latest@n64"
}

If you don't have the n64 source configured you can add it by running the following command:

ncc source add --name n64 --type gitlab --host git.n64.cc

Compiling from source

The library can be compiled from source using ncc:

ncc build --config release

or by running the following command:

make release

Usage

The usage of this library is very simple, there are multiple error levels that can be used to log messages

<?php
  
  require 'ncc';
  import('net.nosial.loglib');

  \LogLib\Log::debug('com.example.lib', 'This is a debug message');
  \LogLib\Log::verbose('com.example.lib', 'This is a verbose message');
  \LogLib\Log::info('com.example.lib', 'This is an info message');
  \LogLib\Log::warning('com.example.lib', 'This is a warning message');
  \LogLib\Log::error('com.example.lib', 'This is an error message');
  \LogLib\Log::fatal('com.example.lib', 'This is a fatal message');

To display the log messages, you can run your program with the --log-level argument, this will display all messages with a level equal to or higher than the one specified.

myprogram --log-level info

The log level can be set to one of the following:

  • debug, 6, dbg
  • verbose, 5, vrb
  • info, 4, inf
  • warning, 3, wrn
  • error, 2, err
  • fatal, 1, ftl
  • silent, 0, sil

The default log level is info.

Note: Log messages are only displayed if the program is run from the command line, if you are running the program from a web server, the log messages will be shown

Changelog

See CHANGELOG.md

License

LogLib is licensed under the MIT license, see LICENSE