From 2b218f171ff158fbc747edc023fa2447dd497081 Mon Sep 17 00:00:00 2001 From: Alexander Zhirov Date: Sun, 23 Mar 2025 22:46:02 +0300 Subject: [PATCH] Update to 1.0.0 --- CHANGELOG.md | 63 ++- README.md | 195 +++++---- man/singlog.3 | 111 +++++ man/singlog.ru.3 | 111 +++++ source/singlog.d | 1016 +++++++++++++++++++++++++++++++++----------- tests/cmd.png | Bin 34542 -> 36053 bytes tests/terminal.png | Bin 51405 -> 156819 bytes tests/test.d | 68 ++- 8 files changed, 1217 insertions(+), 347 deletions(-) create mode 100644 man/singlog.3 create mode 100644 man/singlog.ru.3 diff --git a/CHANGELOG.md b/CHANGELOG.md index 51dc283..b770f80 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,53 @@ # Changelog -## [v0.5.0](https://git.zhirov.kz/dlang/singlog/compare/v0.4.0...v0.5.0) (2023.07.21) +## [1.0.0] - 2025-03-23 + +### Added +- **Thread-safety**: Added a `Mutex` to ensure thread-safe logging operations across all methods (`_mutex` in `Log` class). +- **Destructor**: Implemented `~this()` to properly close the log file when the `Log` instance is destroyed. +- **File handle management**: Introduced `_file` (File handle) and `_fileOpen` (flag) for better file management, reducing repeated file opening/closing. +- **Enhanced documentation**: Added detailed DDoc comments for the module, `Log` class, and all public/private methods, including examples. +- **Immutable arrays**: Made `_sysPriority`, `_sysPriorityOS`, `_color` (Windows), `_colorCodes` (both platforms), and `_type` arrays immutable for better safety and performance. +- **Singleton initialization**: Improved singleton pattern with double-checked locking in `@property static Log msg()` for thread-safe initialization. +- **Fluent interface naming**: Renamed output-related enums (`SYSLOG`, `STD`, `FILE`) and methods (`std`, `syslog`, `file`) for consistency and clarity (e.g., `STDOUT` → `STD`). +- **Error handling**: Enhanced error reporting in `writefile` by logging exception messages instead of the full exception object. + +### Changed +- **Output handling**: + - Removed separate `writestdout` and `writestderr` methods; consolidated into a single `writestd` method that dynamically selects `stdout` or `stderr` based on log level (`ERROR` and above go to `stderr`, others to `stdout`). + - Adjusted output enum values: `SYSLOG = 1`, `STD = 2`, `FILE = 8` (removed `STDERR = 4` as it's now handled by `STD`). +- **Windows-specific**: + - Renamed `_color` to `_colorCodes` for consistency with POSIX. + - Updated `writesyslog` to use `toUTF16z()` for `_name` and added null checks. +- **POSIX-specific**: + - Renamed `_color` to `_colorCodes` and simplified console output logic in `writestd`. + - Changed `writesyslog` to pass priority directly instead of mapping it. +- **Log level filtering**: Moved priority check (`_priority > priority`) into `writelog` under the mutex for consistency. +- **File logging**: + - Simplified `writefile` by maintaining an open `File` handle (`_file`) instead of opening/closing on each write. + - Removed redundant file existence check (`this._path.exists`) as `File` opening handles it implicitly. +- **Configuration methods**: Made all setters (`program`, `file`, `level`, `color`, `output`) thread-safe with `synchronized (_mutex)`. +- **Naming consistency**: + - Renamed `Output.output()` to internal use; public access is via `Output` struct methods. + +### Removed +- **Deprecated method**: Removed the deprecated `Log output(int outs)` method; users must now use the fluent `Output` struct. +- **Redundant output flags**: Removed `STDERR` from output enum as it's now handled dynamically by `STD`. +- **Unnecessary struct fields**: Removed `_output` and `_newoutput` from `Output` struct; replaced with a single `value` field. +- **Redundant methods**: Removed separate `writestdout` and `writestderr` in favor of `writestd`. + +### Fixed +- **Windows console output**: Added error checking in `colorTextOutput` and `defaultTextOutput` with `GetConsoleScreenBufferInfo`. +- **File closing**: Ensured proper file closure in `file` method when changing the log file path. + +### Breaking Changes +- **Output enum changes**: + - `STDOUT` renamed to `STD`, `STDERR` removed; code relying on `STDERR = 4` will need adjustment. + - Users must update output configuration to use `STD` instead of separate `STDOUT`/`STDERR`. +- **Method removal**: Code using the deprecated `Log output(int outs)` must switch to `Log.output(Output)`. +- **Console output behavior**: Messages with priority `ERROR` and above now go to `stderr` by default when `STD` is enabled, which may change existing output redirection logic. + +## [0.5.0] - 2023-07-21 ### New @@ -13,7 +60,7 @@ - Fixed streams redirection in Windows -## [v0.4.0](https://git.zhirov.kz/dlang/singlog/compare/v0.3.2...v0.4.0) (2023.06.07) +## [0.4.0] - 2023-06-07 - Part of the code has been changed/rewritten @@ -25,18 +72,18 @@ - In Windows, unicode messages are output without distortion to the system log and console (thanks [Adam D. Ruppe](https://arsdnet.net/)) -## [v0.3.2](https://git.zhirov.kz/dlang/singlog/compare/v0.3.1...v0.3.2) (2023.06.01) +## [0.3.2] - 2023-06-01 - Printing information about the type of the logged message to the standard output stream and file - Printing the date and time to the standard output stream -## [v0.3.1](https://git.zhirov.kz/dlang/singlog/compare/v0.3.0...v0.3.1) (2023.05.30) +## [0.3.1] - 2023-05-30 ### Bug fixes - Log of debug messages -## [v0.3.0](https://git.zhirov.kz/dlang/singlog/compare/v0.2.1...v0.3.0) (2023.04.28) +## [0.3.0] - 2023-04-28 - Minor changes @@ -44,7 +91,7 @@ - Windows OS Logging support -## [v0.2.1](https://git.zhirov.kz/dlang/singlog/compare/v0.2.0...v0.2.1) (2023.03.29) +## [0.2.1] - 2023-03-29 ### New @@ -54,7 +101,7 @@ - Calling the main object -## [v0.2.0](https://git.zhirov.kz/dlang/singlog/compare/v0.1.0...v0.2.0) (2023.03.29) +## [0.2.0] - 2023-03-29 - Removed functions `fileOn()` and `fileOff()` @@ -62,7 +109,7 @@ - Simultaneous writing to the standard stream, syslog and file by binary setting the output flag -## [v0.1.0](https://git.zhirov.kz/dlang/singlog/commits/df602a8d0083249068b480e4a92cf7932f2c582b) (2023.03.23) +## [0.1.0] - 2023-03-23 ### The first stable working release diff --git a/README.md b/README.md index facbede..1bb602d 100644 --- a/README.md +++ b/README.md @@ -7,95 +7,146 @@ [![linux](https://img.shields.io/badge/Linux-FCC624?style=for-the-badge&logo=linux&logoColor=black)](https://www.linux.org/) [![windows](https://img.shields.io/badge/Windows-0078D6?style=for-the-badge&logo=windows&logoColor=white)](https://support.microsoft.com/en-US/windows) -Singleton for simple logging +# `singlog` - Singleton Logging Module -## Basic Usage - -```d -import singlog; - -void main(string[] argv) { - log.output(log.output.syslog.stderr.stdout.file) // write to syslog, standard error/output streams and file - .program(argv[0]) // program name as an identifier (for Windows OS) - .level(log.level.debugging) // logging level - .color(true) // color text output - .file("./test.log"); // the path to the log file - - log.i("This is an information message"); - log.n("This is a notice message"); - log.w("This is a warning message"); - log.e("This is an error message"); - log.c("This is a critical message"); - log.a("This is an alert message"); - log.d("This is a debug message"); - - log.now(log.output.stdout).n("This error message will only be written to the standard output stream"); - log.now(log.output.syslog.file).c("This error message will only be written to the syslog and file"); -} -``` +`singlog` is a singleton logging module written in the D programming language, designed to provide thread-safe, cross-platform logging with flexible output targets. It supports multiple log levels, configurable output destinations (syslog, console, file), and optional colored console output, making it a versatile tool for application logging. ![output](tests/terminal.png) ![output](tests/cmd.png) -## Examples +## Features -Setting the name of the logged program (it matters for Windows OS): +- **Thread-Safety**: Utilizes a `Mutex` to ensure safe logging in multi-threaded applications. +- **Cross-Platform**: Works on both Windows (Event Log, console) and POSIX (syslog, console) systems. +- **Flexible Output Targets**: Supports logging to: + - System logs (syslog on POSIX, Event Log on Windows). + - Standard output (`stdout` for NOTICE and above, `stderr` for ERROR and below). + - Files (with configurable file paths). +- **Log Levels**: Seven configurable levels: + - `DEBUGGING` (highest priority) + - `ALERT` + - `CRITICAL` + - `ERROR` + - `WARNING` + - `NOTICE` + - `INFORMATION` (lowest priority) +- **Fluent Interface**: Provides a chaining API for easy configuration of output targets, log levels, and settings. +- **Colored Output**: Optional ANSI color support for console messages (on POSIX) or Windows console colors. +- **Singleton Design**: Ensures a single logger instance throughout the application, accessible via `Log.msg` or the `log` alias. +- **Aliases**: Short aliases (e.g., `d` for `debugging`, `e` for `error`) for concise logging. + +## Installation + +To use `singlog`, include it in your D project: + +1. **Via Source**: Copy the `singlog.d` file into your project’s source directory. +2. **Via DUB** (if packaged): + + Add it to your `dub.json`: + ```json + "dependencies": { + "singlog": "~>1.0.0" + } + ``` + +## Usage + +### Basic Configuration and Logging + +The `singlog` module provides a singleton logger instance accessible via `Log.msg` or the global `log` alias. Here’s a basic example: ```d -log.program("My program"); +import singlog; + +void main() { + // Configure the logger + log.program("MyApp") // Set program name for syslog/Event Log + .color(true) // Enable colored console output + .level(log.level.debugging) // Set minimum log level to DEBUGGING + .output(log.output.std.file.syslog) // Output to console, file, and syslog + .file("./myapp.log"); // Set log file path + + // Log messages + log.debugging("Starting application in debug mode"); + log.information("Initialization complete"); + log.error("Failed to load resource"); +} ``` -Setting the status of color text output (`false` by default): +This configures the logger to: +- Identify as "MyApp" in system logs. +- Use colored output on the console. +- Log all messages (from `DEBUGGING` up). +- Write to the console, a file (`myapp.log`), and the system log. + +### Log Levels and Aliases + +The logger supports seven log levels with corresponding methods and aliases: + +| Level | Method | Alias | Description | +|---------------|-------------------|-------|------------------------------| +| `DEBUGGING` | `debugging()` | `d()` | Debugging information | +| `ALERT` | `alert()` | `a()` | High-priority alerts | +| `CRITICAL` | `critical()` | `c()` | Critical errors | +| `ERROR` | `error()` | `e()` | General errors | +| `WARNING` | `warning()` | `w()` | Warnings | +| `NOTICE` | `notice()` | `n()` | Notices | +| `INFORMATION` | `information()` | `i()` | Informational messages | + +Example using aliases: + +```d +log.d("Debug message"); +log.i("Info message"); +log.e("Error message"); +``` + +### Output Targets + +Output targets can be configured using the `output()` method and its fluent interface: + +- `syslog()`: Logs to the system log (Event Log on Windows, syslog on POSIX). +- `std()`: Logs to the console (`stdout` or `stderr` based on log level). +- `file()`: Logs to a file (requires `file()` to set the path). + +Example: + +```d +log.output(log.output.std.file); // Console and file output +log.i("This goes to console and file"); +``` + +### Temporary Output Override + +Use `now()` to temporarily override output targets for the next log call: + +```d +log.now(log.output.std).n("This goes only to console"); +log.i("This uses default outputs again"); +``` + +### Colored Output + +Enable colored output with `color(true)`: ```d log.color(true); +log.w("This warning will be yellow on POSIX or Windows"); +log.c("This critical message will be magenta"); ``` -Setting the error output level: +Colors differ by platform: +- **POSIX**: Uses ANSI escape codes (e.g., green for `DEBUGGING`, red for `ERROR`). +- **Windows**: Uses console color attributes (e.g., yellow for `WARNING`, white for `INFORMATION`). + +### File Logging + +Set a log file with `file()`: ```d -log.level(log.level.debugging); -log.level(log.level.alert); -log.level(log.level.critical); -log.level(log.level.error); -log.level(log.level.warning); -log.level(log.level.notice); -log.level(log.level.information); +log.file("app.log"); +log.e("This error goes to app.log"); ``` -Assigning a target output: - -```d -log.output(log.output.syslog.stderr.stdout); -``` - -Setup and allowing writing to a file: - -```d -log.output(log.output.file); -log.file("./file.log"); -``` - -Write messages to the log: - -```d -log.a("Alert message") => log.alert("Alert message"); -log.c("Critical message") => log.critical("Critical message"); -log.e("Error message") => log.error("Error message"); -log.w("Warning message") => log.warning("Warning message"); -log.n("Notice message") => log.notice("Notice message"); -log.i("Information message") => log.information("Information message"); -log.d("Debugging message") => log.debugging("Debugging message"); -``` - -Write message to specific outputs: - -```d -log.now(log.output.stdout).n("This error message will only be written to the standard output stream"); -log.now(log.output.syslog.file).c("This error message will only be written to the syslog and file"); -``` - -## DUB - -Add a dependency on `"singlog": "~>0.5.0"`. +The file is opened in append mode (`"a+"`) and includes timestamps. diff --git a/man/singlog.3 b/man/singlog.3 new file mode 100644 index 0000000..a2e7574 --- /dev/null +++ b/man/singlog.3 @@ -0,0 +1,111 @@ +.\" Man page for the singlog library +.TH SINGLOG 3 "March 23, 2025" "singlog" "Programmer's Manual" +.SH NAME +singlog \- Singleton logging library with thread-safety and flexible output targets + +.SH SYNOPSIS +.nf +import singlog; + +Log logger = Log.msg; // Access singleton instance +log.(); // Use global alias +.fi + +.SH DESCRIPTION +The \fBsinglog\fR library provides a thread-safe, singleton-based logging utility designed for cross-platform use on Windows and POSIX systems. It supports multiple output targets (syslog, stdout/stderr, file), configurable log levels, and optional colored console output. The library uses a fluent interface for easy configuration and provides short aliases for common log levels. + +.SH FEATURES +.TP +.B Thread-safety +Uses a \fBMutex\fR to ensure safe logging in multi-threaded applications. +.TP +.B Cross-platform +Supports Windows (Event Log, console) and POSIX (syslog, console). +.TP +.B Flexible output +Logs to syslog, stdout/stderr (based on log level), or files. +.TP +.B Log levels +Seven levels: \fBDEBUGGING\fR, \fBALERT\fR, \fBCRITICAL\fR, \fBERROR\fR, \fBWARNING\fR, \fBNOTICE\fR, \fBINFORMATION\fR. +.TP +.B Fluent interface +Chainable configuration for output targets, levels, and more. +.TP +.B Colored output +Optional color support for console messages (STD output only). + +.SH METHODS +.TP +.B Log.msg +Returns the singleton instance of the \fBLog\fR class. +.RS +Example: \fBauto logger = Log.msg; logger.i("Logger retrieved");\fR +.RE +.TP +.B program(string name) +Sets the program name for syslog identification. Returns \fBLog\fR for chaining. +.RS +Example: \fBlog.program("MyApp").i("Name set");\fR +.RE +.TP +.B file(string path) +Sets the log file path. Returns \fBLog\fR for chaining. +.RS +Example: \fBlog.file("app.log").i("File configured");\fR +.RE +.TP +.B level(int priority) +Sets the minimum log level. Returns \fBLog\fR for chaining. +.RS +Example: \fBlog.level(log.level.warning).w("This shows");\fR +.RE +.TP +.B color(bool condition) +Enables/disables colored console output. Returns \fBLog\fR for chaining. +.RS +Example: \fBlog.color(true).i("Colored output");\fR +.RE +.TP +.B output(Output outs) +Sets default output targets. Returns \fBLog\fR for chaining. +.RS +Example: \fBlog.output(log.output.std.file).i("To console and file");\fR +.RE +.TP +.B now(Output outs) +Temporarily overrides output targets for the next log call. Returns \fBNow\fR for chaining. +.RS +Example: \fBlog.now(log.output.std).n("Temp console output");\fR +.RE +.TP +.B Logging methods +Log messages at different levels: \fBalert\fR, \fBcritical\fR, \fBerror\fR, \fBwarning\fR, \fBnotice\fR, \fBinformation\fR, \fBdebugging\fR (with aliases \fBa\fR, \fBc\fR, \fBe\fR, \fBw\fR, \fBn\fR, \fBi\fR, \fBd\fR). +.RS +Example: \fBlog.e("Error occurred"); log.i(42);\fR +.RE + +.SH EXAMPLES +Configure and use the logger: +.nf +import singlog; + +void main() { + log.program("MyApp") + .color(true) + .level(log.level.debugging) + .output(log.output.std.file.syslog) + .file("myapp.log"); + + log.d("Starting in debug mode"); + log.i("App running"); + log.e("Error occurred"); + log.now(log.output.std).n("Temp console message"); +} +.fi + +.SH SEE ALSO +.BR dmd (1), +.BR syslog (3) + +.SH AUTHOR +Alexander Zhirov diff --git a/man/singlog.ru.3 b/man/singlog.ru.3 new file mode 100644 index 0000000..583c54f --- /dev/null +++ b/man/singlog.ru.3 @@ -0,0 +1,111 @@ +.\" Страница руководства для библиотеки singlog +.TH SINGLOG 3 "23 марта 2025" "singlog" "Руководство программиста" +.SH ИМЯ +singlog \- Библиотека логирования с singleton-паттерном, потокобезопасностью и гибкими целями вывода + +.SH СИНТАКСИС +.nf +import singlog; + +Log logger = Log.msg; // Получение singleton-экземпляра +log.<метод>(<аргументы>); // Использование глобального алиаса +.fi + +.SH ОПИСАНИЕ +Библиотека \fBsinglog\fR предоставляет потокобезопасную утилиту логирования на основе singleton-паттерна, предназначенную для кроссплатформенного использования в системах Windows и POSIX. Поддерживает несколько целей вывода (syslog, stdout/stderr, файл), настраиваемые уровни логирования и опциональный цветной вывод в консоль. Библиотека использует плавный интерфейс для удобной настройки и предоставляет короткие алиасы для распространенных уровней логирования. + +.SH ОСОБЕННОСТИ +.TP +.B Потокобезопасность +Использует \fBMutex\fR для обеспечения безопасного логирования в многопоточных приложениях. +.TP +.B Кроссплатформенность +Поддерживает Windows (журнал событий, консоль) и POSIX (syslog, консоль). +.TP +.B Гибкий вывод +Вывод логов в syslog, stdout/stderr (в зависимости от уровня) или файлы. +.TP +.B Уровни логирования +Семь уровней: \fBDEBUGGING\fR, \fBALERT\fR, \fBCRITICAL\fR, \fBERROR\fR, \fBWARNING\fR, \fBNOTICE\fR, \fBINFORMATION\fR. +.TP +.B Плавный интерфейс +Цепочная настройка целей вывода, уровней и других параметров. +.TP +.B Цветной вывод +Опциональная поддержка цветного вывода в консоль (только для STD). + +.SH МЕТОДЫ +.TP +.B Log.msg +Возвращает singleton-экземпляр класса \fBLog\fR. +.RS +Пример: \fBauto logger = Log.msg; logger.i("Логгер получен");\fR +.RE +.TP +.B program(string name) +Устанавливает имя программы для идентификации в syslog. Возвращает \fBLog\fR для цепочки. +.RS +Пример: \fBlog.program("МоеПриложение").i("Имя установлено");\fR +.RE +.TP +.B file(string path) +Устанавливает путь к лог-файлу. Возвращает \fBLog\fR для цепочки. +.RS +Пример: \fBlog.file("app.log").i("Файл настроен");\fR +.RE +.TP +.B level(int priority) +Устанавливает минимальный уровень логирования. Возвращает \fBLog\fR для цепочки. +.RS +Пример: \fBlog.level(log.level.warning).w("Это отобразится");\fR +.RE +.TP +.B color(bool condition) +Включает/выключает цветной вывод в консоль. Возвращает \fBLog\fR для цепочки. +.RS +Пример: \fBlog.color(true).i("Цветной вывод");\fR +.RE +.TP +.B output(Output outs) +Устанавливает цели вывода по умолчанию. Возвращает \fBLog\fR для цепочки. +.RS +Пример: \fBlog.output(log.output.std.file).i("В консоль и файл");\fR +.RE +.TP +.B now(Output outs) +Временно переопределяет цели вывода для следующего вызова. Возвращает \fBNow\fR для цепочки. +.RS +Пример: \fBlog.now(log.output.std).n("Временный вывод в консоль");\fR +.RE +.TP +.B Методы логирования +Запись сообщений на разных уровнях: \fBalert\fR, \fBcritical\fR, \fBerror\fR, \fBwarning\fR, \fBnotice\fR, \fBinformation\fR, \fBdebugging\fR (с алиасами \fBa\fR, \fBc\fR, \fBe\fR, \fBw\fR, \fBn\fR, \fBi\fR, \fBd\fR). +.RS +Пример: \fBlog.e("Произошла ошибка"); log.i(42);\fR +.RE + +.SH ПРИМЕРЫ +Настройка и использование логгера: +.nf +import singlog; + +void main() { + log.program("МоеПриложение") + .color(true) + .level(log.level.debugging) + .output(log.output.std.file.syslog) + .file("myapp.log"); + + log.d("Запуск в режиме отладки"); + log.i("Приложение работает"); + log.e("Произошла ошибка"); + log.now(log.output.std).n("Временное сообщение в консоль"); +} +.fi + +.SH СМ. ТАКЖЕ +.BR dmd (1), +.BR syslog (3) + +.SH АВТОР +Александр Жиров diff --git a/source/singlog.d b/source/singlog.d index 5c725d3..048d28e 100644 --- a/source/singlog.d +++ b/source/singlog.d @@ -1,11 +1,23 @@ +/++ + Singleton logging module with thread-safety and flexible output targets. + + This module provides a simple, thread-safe logging utility with support for multiple output targets + (syslog, standard output/error, file), configurable log levels, and optional colored console output. + It is designed to be cross-platform, working on both Windows and POSIX systems. + + The logger is implemented as a singleton, ensuring a single instance throughout the application. + It supports fluent configuration for ease of use and provides short aliases for common log levels. ++/ module singlog; version(Windows) { import core.sys.windows.windows; import std.utf : toUTF8, toUTF16z; -} else version(Posix) +} else version(Posix) { import core.sys.posix.syslog; +} +import core.sync.mutex : Mutex; import std.string; import std.stdio; import std.conv; @@ -13,353 +25,851 @@ import std.file; import std.datetime; import datefmt; -alias log = Log.msg; - /++ - Singleton for simple logging + Singleton logging class with thread-safe operations and flexible output. + The `Log` class is the core of the `singlog` module, providing a robust logging system with the following features: + - **Thread-safety**: Uses a `Mutex` to ensure safe logging in multi-threaded applications. + - **Cross-platform**: Supports Windows (Event Log, console) and POSIX (syslog, console) systems. + - **Flexible output**: Allows logging to syslog, stdout/stderr (based on log level), and files. + - **Log levels**: Supports seven levels (`DEBUGGING`, `ALERT`, `CRITICAL`, `ERROR`, `WARNING`, `NOTICE`, `INFORMATION`). + - **Fluent interface**: Enables easy configuration chaining for output targets, levels, and more. + - **Colored output**: Optional color support for console messages (STD output only). + + The class is a singleton, accessible via the static `msg` property or the global `log` alias. + + Example: --- - // Setting the name of the logged program - log.program("My program"); - // Setting the status of color text output - log.color(true); - // Setting the error output level - log.level(log.level.debugging); - log.level(log.level.alert); - log.level(log.level.critical); - log.level(log.level.error); - log.level(log.level.warning); - log.level(log.level.notice); - log.level(log.level.information); - // Assigning a target output - log.output(log.output.syslog.stderr.stdout.file); - // Setup and allowing writing to a file - log.file("./file.log"); - // Output of messages to the log - log.debugging("Debugging message"); - log.alert("Alert message"); - log.critical("Critical message"); - log.error("Error message"); - log.warning("Warning message"); - log.notice("Notice message"); - log.informations("Information message"); - // Write message to specific outputs - log.now(log.output.stdout.file).informations("Information message"); + import singlog; + + void main() { + // Configure the logger + Log logger = Log.msg; // Get singleton instance + logger.program("TestApp") + .color(true) + .level(Log.DEBUGGING) + .output(Log.Output().std.file.syslog) + .file("test.log"); + + // Log messages with full method names + logger.debugging("Starting in debug mode"); + logger.information("App is running"); + logger.error("An error occurred"); + + // Log messages with aliases + logger.d("Debug alias"); + logger.i("Info alias"); + logger.e("Error alias"); + + // Temporary output override + logger.now(Log.Output().std).notice("Temporary console message"); + } --- +/ class Log { private: - static Log _log; - string _path; - wstring _name = "singlog"; - bool _writeToFile = true; - bool _ccolor = false; - - this() {} + static Log _log; /// Singleton instance of the logger + Mutex _mutex; /// Mutex for thread-safety + string _path; /// Path to the log file + File _file; /// File handle for logging + bool _fileOpen = false; /// Indicates if the log file is open + wstring _name = "singlog"; /// Program name for syslog identification + bool _writeToFile = true; /// Flag to enable/disable file logging + bool _color = false; /// Flag to enable/disable colored console output + int _output = STD; /// Default output flags (STD by default) + int _priority = INFORMATION; /// Minimum log level for output + int _nowOutput = 0; /// Temporary output override for the next log call + + /++ Private constructor to enforce singleton pattern +/ + this() { + _mutex = new Mutex(); + } + + /++ Destructor to ensure the log file is closed +/ + ~this() { + synchronized (_mutex) { + if (_fileOpen) { + _file.close(); + _fileOpen = false; + } + } + } version(Windows) { - int[] _sysPriority = [0, 1, 1, 1, 2, 3, 3]; - - WORD[] _sysPriorityOS = [ - EVENTLOG_SUCCESS, - EVENTLOG_ERROR_TYPE, - EVENTLOG_WARNING_TYPE, - EVENTLOG_INFORMATION_TYPE + immutable int[] _sysPriority = [0, 1, 1, 1, 2, 3, 3]; /// Mapping of log levels to syslog priorities + immutable WORD[] _sysPriorityOS = [ /// Windows Event Log types + EVENTLOG_SUCCESS, // DEBUGGING + EVENTLOG_ERROR_TYPE, // ALERT, CRITICAL, ERROR + EVENTLOG_WARNING_TYPE, // WARNING + EVENTLOG_INFORMATION_TYPE // NOTICE, INFORMATION ]; + immutable WORD[] _colorCodes = [ /// Console color codes for each log level + FOREGROUND_GREEN, // DEBUGGING (green) + FOREGROUND_BLUE, // ALERT (blue) + FOREGROUND_RED | FOREGROUND_BLUE, // CRITICAL (magenta) + FOREGROUND_RED, // ERROR (red) + FOREGROUND_RED | FOREGROUND_GREEN, // WARNING (yellow) + FOREGROUND_BLUE | FOREGROUND_GREEN, // NOTICE (cyan) + FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_GREEN // INFORMATION (white) + ]; + + /++ + Writes a message to the Windows Event Log. + + Params: + message = The message to log. + priority = The Windows Event Log type (e.g., EVENTLOG_ERROR_TYPE). + +/ void writesyslog(string message, WORD priority) { auto wMessage = message.toUTF16z(); - HANDLE handleEventLog = RegisterEventSourceW(NULL, this._name.ptr); - - if (handleEventLog == NULL) - return; - - ReportEventW(handleEventLog, priority, 0, 0, NULL, 1, 0, &wMessage, NULL); + HANDLE handleEventLog = RegisterEventSourceW(null, _name.toUTF16z()); + if (handleEventLog == null) return; + ReportEventW(handleEventLog, priority, 0, 0, null, 1, 0, &wMessage, null); DeregisterEventSource(handleEventLog); } - WORD[] _color = [ - FOREGROUND_GREEN, // green - FOREGROUND_BLUE, // blue - FOREGROUND_RED | FOREGROUND_BLUE, // magenta - FOREGROUND_RED, // red - FOREGROUND_RED | FOREGROUND_GREEN, // yellow - FOREGROUND_BLUE | FOREGROUND_GREEN, // cyan - FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_GREEN // white - ]; + /++ + Outputs a colored log message to the console on Windows. + Params: + handle = The console handle (STD_OUTPUT_HANDLE or STD_ERROR_HANDLE). + time = The timestamp of the message. + message = The message to log. + priority = The log level (used to select the color). + +/ void colorTextOutput(HANDLE handle, string time, string message, int priority) { CONSOLE_SCREEN_BUFFER_INFO defaultConsole; - GetConsoleScreenBufferInfo(handle, &defaultConsole); + if (!GetConsoleScreenBufferInfo(handle, &defaultConsole)) return; wstring wTime = "%s ".format(time).to!wstring; - wstring wType = this._type[priority].to!wstring; + wstring wType = _type[priority].to!wstring; wstring wMessage = " %s\n".format(message).to!wstring; switch (GetFileType(handle)) { case FILE_TYPE_CHAR: - WriteConsoleW(handle, wTime.ptr, cast(DWORD)wTime.length, NULL, NULL); - SetConsoleTextAttribute(handle, this._color[priority] | FOREGROUND_INTENSITY); - WriteConsoleW(handle, wType.ptr, cast(DWORD)wType.length, NULL, NULL); - SetConsoleTextAttribute(handle, this._color[priority]); - WriteConsoleW(handle, wMessage.ptr, cast(DWORD)wMessage.length, NULL, NULL); + WriteConsoleW(handle, wTime.ptr, cast(DWORD)wTime.length, null, null); + SetConsoleTextAttribute(handle, _colorCodes[priority] | FOREGROUND_INTENSITY); + WriteConsoleW(handle, wType.ptr, cast(DWORD)wType.length, null, null); + SetConsoleTextAttribute(handle, _colorCodes[priority]); + WriteConsoleW(handle, wMessage.ptr, cast(DWORD)wMessage.length, null, null); SetConsoleTextAttribute(handle, defaultConsole.wAttributes); break; case FILE_TYPE_PIPE, FILE_TYPE_DISK: auto utf8Message = (wTime ~ wType ~ wMessage).toUTF8; - WriteFile(handle, utf8Message.ptr, cast(DWORD)utf8Message.length, NULL, NULL); + WriteFile(handle, utf8Message.ptr, cast(DWORD)utf8Message.length, null, null); break; default: writesyslog("Unknown output file", _sysPriorityOS[_sysPriority[ERROR]]); } } + /++ + Outputs a plain log message to the console on Windows. + + Params: + handle = The console handle (STD_OUTPUT_HANDLE or STD_ERROR_HANDLE). + time = The timestamp of the message. + message = The message to log. + priority = The log level (used to format the message). + +/ void defaultTextOutput(HANDLE handle, string time, string message, int priority) { - wstring wMessage = "%s %s %s\n".format(time, this._type[priority], message).to!wstring; + wstring wMessage = "%s %s %s\n".format(time, _type[priority], message).to!wstring; switch (GetFileType(handle)) { case FILE_TYPE_CHAR: - WriteConsoleW(handle, wMessage.ptr, cast(DWORD)wMessage.length, NULL, NULL); + WriteConsoleW(handle, wMessage.ptr, cast(DWORD)wMessage.length, null, null); break; case FILE_TYPE_PIPE, FILE_TYPE_DISK: auto utf8Message = wMessage.toUTF8; - WriteFile(handle, utf8Message.ptr, cast(DWORD)utf8Message.length, NULL, NULL); + WriteFile(handle, utf8Message.ptr, cast(DWORD)utf8Message.length, null, null); break; default: writesyslog("Unknown output file", _sysPriorityOS[_sysPriority[ERROR]]); } } - void writestdout(string time, string message, int priority) { - HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE); - this._ccolor ? - colorTextOutput(handle, time, message, priority) : - defaultTextOutput(handle, time, message, priority); - } + /++ + Writes a message to the console on Windows, choosing stdout or stderr based on log level. - void writestderr(string time, string message, int priority) { - HANDLE handle = GetStdHandle(STD_ERROR_HANDLE); - this._ccolor ? - colorTextOutput(handle, time, message, priority) : - defaultTextOutput(handle, time, message, priority); - } + Params: + time = The timestamp of the message. + message = The message to log. + priority = The log level (ERROR and above go to stderr, others to stdout). + Example: + --- + log.writestd("2025.03.23 12:00:00", "Test error", ERROR); // Outputs to stderr + log.writestd("2025.03.23 12:00:01", "Test info", INFORMATION); // Outputs to stdout + --- + +/ + void writestd(string time, string message, int priority) { + HANDLE handle = (priority <= ERROR) ? + GetStdHandle(STD_ERROR_HANDLE) : + GetStdHandle(STD_OUTPUT_HANDLE); + _color ? colorTextOutput(handle, time, message, priority) : defaultTextOutput(handle, time, message, priority); + } } else version(Posix) { - int[] _sysPriority = [0, 1, 2, 3, 4, 5, 6]; - - int[] _sysPriorityOS = [ - LOG_DEBUG, - LOG_ALERT, - LOG_CRIT, - LOG_ERR, - LOG_WARNING, - LOG_NOTICE, - LOG_INFO + immutable int[] _sysPriority = [0, 1, 2, 3, 4, 5, 6]; /// Mapping of log levels to syslog priorities + immutable int[] _sysPriorityOS = [ /// POSIX syslog priorities + LOG_DEBUG, // DEBUGGING + LOG_ALERT, // ALERT + LOG_CRIT, // CRITICAL + LOG_ERR, // ERROR + LOG_WARNING, // WARNING + LOG_NOTICE, // NOTICE + LOG_INFO // INFORMATION ]; - string[] _color = [ - "\x1b[1;32m%s\x1b[0;32m %s\x1b[0;0m", // green - "\x1b[1;34m%s\x1b[0;34m %s\x1b[0;0m", // blue - "\x1b[1;35m%s\x1b[0;35m %s\x1b[0;0m", // magenta - "\x1b[1;31m%s\x1b[0;31m %s\x1b[0;0m", // red - "\x1b[1;33m%s\x1b[0;33m %s\x1b[0;0m", // yellow - "\x1b[1;36m%s\x1b[0;36m %s\x1b[0;0m", // cyan - "\x1b[1;97m%s\x1b[0;97m %s\x1b[0;0m", // white + immutable string[] _colorCodes = [ /// ANSI color codes for console output + "\x1b[1;32m%s\x1b[0;32m %s\x1b[0;0m", // DEBUGGING (green) + "\x1b[1;34m%s\x1b[0;34m %s\x1b[0;0m", // ALERT (blue) + "\x1b[1;35m%s\x1b[0;35m %s\x1b[0;0m", // CRITICAL (magenta) + "\x1b[1;31m%s\x1b[0;31m %s\x1b[0;0m", // ERROR (red) + "\x1b[1;33m%s\x1b[0;33m %s\x1b[0;0m", // WARNING (yellow) + "\x1b[1;36m%s\x1b[0;36m %s\x1b[0;0m", // NOTICE (cyan) + "\x1b[1;97m%s\x1b[0;97m %s\x1b[0;0m" // INFORMATION (white) ]; - void writestdout(string time, string message, int priority) { - writefln("%s %s", - time, - (this._ccolor ? this._color[priority] : "%s %s").format(this._type[priority], message) - ); + /++ + Writes a message to the console on POSIX, choosing stdout or stderr based on log level. + + Params: + time = The timestamp of the message. + message = The message to log. + priority = The log level (ERROR and above go to stderr, others to stdout). + + Example: + --- + log.writestd("2025.03.23 12:00:00", "Critical failure", CRITICAL); // Outputs to stderr + log.writestd("2025.03.23 12:00:01", "System ready", NOTICE); // Outputs to stdout + --- + +/ + void writestd(string time, string message, int priority) { + if (priority <= ERROR) { + stderr.writefln("%s %s", time, (_color ? _colorCodes[priority] : "%s %s").format(_type[priority], message)); + } else { + writefln("%s %s", time, (_color ? _colorCodes[priority] : "%s %s").format(_type[priority], message)); + } } - void writestderr(string time, string message, int priority) { - stderr.writefln("%s %s", - time, - (this._ccolor ? this._color[priority] : "%s %s").format(this._type[priority], message) - ); - } + /++ + Writes a message to the POSIX syslog. + Params: + message = The message to log. + priority = The syslog priority level (e.g., LOG_ERR). + + Example: + --- + log.writesyslog("System crash", ERROR); // Logs to syslog with LOG_ERR + --- + +/ void writesyslog(string message, int priority) { - syslog(priority, message.toStringz()); + syslog(_sysPriorityOS[priority], message.toStringz()); } } - public enum { - DEBUGGING = 0, - ALERT = 1, - CRITICAL = 2, - ERROR = 3, - WARNING = 4, - NOTICE = 5, - INFORMATION = 6 + /// Log level constants + public enum : int { + DEBUGGING = 0, /// Debugging messages (lowest priority) + ALERT = 1, /// Alert messages (high priority) + CRITICAL = 2, /// Critical errors + ERROR = 3, /// General errors + WARNING = 4, /// Warnings + NOTICE = 5, /// Notices + INFORMATION = 6 /// Informational messages (highest priority) } - string[] _type = [ - "[DEBUG]:", - "[ALERT]:", - "[CRITICAL]:", - "[ERROR]:", - "[WARNING]:", - "[NOTICE]:", - "[INFO]:" + /// Output target flags + public enum : int { + SYSLOG = 1, /// System log (Event Log on Windows, syslog on POSIX) + STD = 2, /// Standard output (stdout for >= WARNING, stderr for <= ERROR) + FILE = 8 /// File output + } + + immutable string[] _type = [ /// Log level prefixes for formatting + "[DEBUG]:", "[ALERT]:", "[CRITICAL]:", "[ERROR]:", "[WARNING]:", "[NOTICE]:", "[INFO]:" ]; - public enum { - SYSLOG = 1, - STDOUT = 2, - STDERR = 4, - FILE = 8 - } + /++ + Core logging function that writes a message to configured outputs. - int _nowoutput = 0; - int _output = STDOUT; - int _priority = INFORMATION; + Params: + message = The message to log. + priority = The log level of the message. + Example: + --- + log.writelog("Application started", INFORMATION); // Logs to configured outputs + log.writelog("Fatal error", CRITICAL); // Logs to stderr and other outputs + --- + +/ void writelog(string message, int priority) { - string time; - int output = this._nowoutput ? this._nowoutput : this._output; - this._nowoutput = 0; - if (this._priority > priority) - return; - if (output & 1) - writesyslog(message, _sysPriorityOS[_sysPriority[priority]]); - if (output & 14) - time = Clock.currTime().format("%Y.%m.%d %H:%M:%S"); - if (output & 2 && priority >= WARNING) - writestdout(time, message, priority); - if (output & 4 && priority <= ERROR) - writestderr(time, message, priority); - if (output & 8) - writefile(time, message, priority); + synchronized (_mutex) { + if (_priority > priority) return; + int output = _nowOutput ? _nowOutput : _output; + _nowOutput = 0; + + string time; + if (output & (STD | FILE)) { + time = Clock.currTime().format("%Y.%m.%d %H:%M:%S"); + } + + if (output & SYSLOG) writesyslog(message, _sysPriorityOS[_sysPriority[priority]]); + if (output & STD) writestd(time, message, priority); + if (output & FILE) writefile(time, message, priority); + } } + /++ + Writes a message to the configured log file. + + Params: + time = The timestamp of the message. + message = The message to log. + priority = The log level of the message. + + Example: + --- + log.writefile("2025.03.23 12:00:00", "File operation failed", ERROR); // Writes to log file + --- + +/ void writefile(string time, string message, int priority) { - if (!this._writeToFile) - return; + if (!_writeToFile) return; - if (!this._path.exists) { - this._writeToFile = false; - this.warning("The log file does not exist: " ~ this._path); - } + synchronized (_mutex) { + if (!_fileOpen) { + try { + _file = File(_path, "a+"); + _fileOpen = true; + } catch (Exception e) { + _writeToFile = false; + now(this.output.std).error("Unable to open the log file " ~ _path); + information(e.msg); + return; + } + } - File file; - - try { - file = File(this._path, "a+"); - this._writeToFile = true; - } catch (Exception e) { - this._writeToFile = false; - this.now(output.stderr).error("Unable to open the log file " ~ this._path); - this.information(e); - return; - } - - try { - file.writefln("%s %s %s", time, this._type[priority], message); - } catch (Exception e) { - this._writeToFile = false; - this.now(output.stderr).error("Unable to write to the log file " ~ this._path); - this.information(e); - return; - } - - try { - file.close(); - } catch (Exception e) { - this._writeToFile = false; - this.now(output.stderr).error("Unable to close the log file " ~ this._path); - this.information(e); - return; + try { + _file.writefln("%s %s %s", time, _type[priority], message); + } catch (Exception e) { + _writeToFile = false; + now(this.output.std).error("Unable to write to the log file " ~ _path); + information(e.msg); + } } } - struct Output { - int _output = STDOUT; - int _newoutput = 0; - - int output() { return this._newoutput ? this._newoutput : this._output; } - public: - Output syslog() { this._newoutput |= SYSLOG; return this; } - Output stdout() { this._newoutput |= STDOUT; return this; } - Output stderr() { this._newoutput |= STDERR; return this; } - Output file() { this._newoutput |= FILE; return this; } - } - - struct Level { - public: - int debugging() { return DEBUGGING; } - int alert() { return ALERT; } - int critical() { return CRITICAL; } - int error() { return ERROR; } - int warning() { return WARNING; } - int notice() { return NOTICE; } - int information() { return INFORMATION; } - - alias d = debugging; - alias a = alert; - alias c = critical; - alias e = error; - alias w = warning; - alias n = notice; - alias i = information; - } - - struct Now { - this(Output outs) { - _log._nowoutput = outs.output(); - } - - public: - void alert(T)(T message) { _log.alert(message); } - void critical(T)(T message) { _log.critical(message); } - void error(T)(T message) { _log.error(message); } - void warning(T)(T message) { _log.warning(message); } - void notice(T)(T message) { _log.notice(message); } - void information(T)(T message) { _log.information(message); } - void debugging(T)(T message) { _log.debugging(message); } - - alias a = alert; - alias c = critical; - alias e = error; - alias w = warning; - alias n = notice; - alias i = information; - alias d = debugging; - } public: - @property static Log msg() { - if (this._log is null) - this._log = new Log; + /++ + Property to access the singleton instance of the logger. - return this._log; + Returns: + The single instance of the `Log` class. + + Example: + --- + auto logger = Log.msg; // Access the singleton logger + logger.information("Logger retrieved"); + --- + +/ + @property static Log msg() { + if (_log is null) { + synchronized { + if (_log is null) _log = new Log(); + } + } + return _log; } - Output output() { return Output(); } - Level level() { return Level(); } - Now now(Output outs) { return Now(outs); } + /++ + Sets the program name for syslog identification. - Log output(Output outs) { this._output = outs.output(); return this._log; } - deprecated("Use passing the argument as a `log.output.` object") - Log output(int outs) { this._output = outs; return this._log; } - Log program(string name) { this._name = name.to!wstring; return this._log; } - Log file(string path) { this._path = path; return this._log; } - Log level(int priority) { this._priority = priority; return this._log; } - Log color(bool condition) { this._ccolor = condition; return this._log; } + Params: + name = The name of the program. + Returns: + This `Log` instance for chaining. + + Example: + --- + log.program("MyProgram"); // Sets syslog identifier to "MyProgram" + log.i("Program name set"); + --- + +/ + Log program(string name) { + synchronized (_mutex) { _name = name.to!wstring; } + return this; + } + + /++ + Sets the file path for logging. + + Params: + path = The path to the log file. + + Returns: + This `Log` instance for chaining. + + Example: + --- + log.file("myapp.log"); // Sets log file to "myapp.log" + log.i("Log file configured"); + --- + +/ + Log file(string path) { + synchronized (_mutex) { + if (_fileOpen) { _file.close(); _fileOpen = false; } + _path = path; + _writeToFile = true; + } + return this; + } + + /++ + Sets the minimum log level. + + Params: + priority = The minimum log level (e.g., DEBUGGING, ERROR). + + Returns: + This `Log` instance for chaining. + + Example: + --- + log.level(log.level.warning); // Only WARNING and above will be logged + log.d("This won't show"); // Ignored due to level + log.w("This will show"); + --- + +/ + Log level(int priority) { + synchronized (_mutex) { _priority = priority; } + return this; + } + + /++ + Enables or disables colored console output. + + Params: + condition = `true` to enable colors, `false` to disable. + + Returns: + This `Log` instance for chaining. + + Example: + --- + log.color(true); // Enables colored output + log.i("This will be colored"); + log.color(false); // Disables colored output + log.i("This will be plain"); + --- + +/ + Log color(bool condition) { + synchronized (_mutex) { _color = condition; } + return this; + } + + /++ + Starts configuring output targets using a fluent interface. + + Returns: + An `Output` struct for chaining output target methods. + + Example: + --- + auto outs = log.output.std.file; // Configures std and file output + log.output(outs); + log.i("Logged to console and file"); + --- + +/ + Output output() { + return Output(); + } + + /++ + Sets the default output targets. + + Params: + outs = An `Output` struct with configured targets. + + Returns: + This `Log` instance for chaining. + + Example: + --- + log.output(log.output.syslog.std); // Sets output to syslog and console + log.i("Logged to syslog and console"); + --- + +/ + Log output(Output outs) { + synchronized (_mutex) { _output = outs.value; } + return this; + } + + /++ + Temporarily overrides output targets for the next log call. + + Params: + outs = An `Output` struct with temporary targets. + + Returns: + A `Now` struct to chain the log call. + + Example: + --- + log.now(log.output.std).n("Temporary console output"); // Only to console + log.i("Back to default outputs"); + --- + +/ + Now now(Output outs) { + synchronized (_mutex) { _nowOutput = outs.value; } + return Now(this); + } + + /++ + Logs an alert message (priority ALERT). + + Params: + message = The message to log (converted to string). + + Example: + --- + log.alert("System alert!"); // Logs with ALERT level + log.a(42); // Logs "42" with ALERT level + --- + +/ void alert(T)(T message) { writelog(message.to!string, ALERT); } + + /++ + Logs a critical error message (priority CRITICAL). + + Params: + message = The message to log (converted to string). + + Example: + --- + log.critical("Critical failure"); // Logs with CRITICAL level + log.c("Out of memory"); // Alias usage + --- + +/ void critical(T)(T message) { writelog(message.to!string, CRITICAL); } + + /++ + Logs an error message (priority ERROR). + + Params: + message = The message to log (converted to string). + + Example: + --- + log.error("File not found"); // Logs with ERROR level to stderr + log.e("Error code: 404"); // Alias usage + --- + +/ void error(T)(T message) { writelog(message.to!string, ERROR); } + + /++ + Logs a warning message (priority WARNING). + + Params: + message = The message to log (converted to string). + + Example: + --- + log.warning("Low disk space"); // Logs with WARNING level + log.w("Check disk"); // Alias usage + --- + +/ void warning(T)(T message) { writelog(message.to!string, WARNING); } + + /++ + Logs a notice message (priority NOTICE). + + Params: + message = The message to log (converted to string). + + Example: + --- + log.notice("User logged in"); // Logs with NOTICE level + log.n("Session started"); // Alias usage + --- + +/ void notice(T)(T message) { writelog(message.to!string, NOTICE); } + + /++ + Logs an informational message (priority INFORMATION). + + Params: + message = The message to log (converted to string). + + Example: + --- + log.information("App started"); // Logs with INFORMATION level + log.i("Version 1.0"); // Alias usage + --- + +/ void information(T)(T message) { writelog(message.to!string, INFORMATION); } + + /++ + Logs a debugging message (priority DEBUGGING). + + Params: + message = The message to log (converted to string). + + Example: + --- + log.debugging("Variable x = 5"); // Logs with DEBUGGING level + log.d("Entering loop"); // Alias usage + --- + +/ void debugging(T)(T message) { writelog(message.to!string, DEBUGGING); } + /++ Alias for `alert` +/ alias a = alert; + /++ Alias for `critical` +/ alias c = critical; + /++ Alias for `error` +/ alias e = error; + /++ Alias for `warning` +/ alias w = warning; + /++ Alias for `notice` +/ alias n = notice; + /++ Alias for `information` +/ alias i = information; + /++ Alias for `debugging` +/ alias d = debugging; + + /++ + Struct for fluent configuration of output targets. + + Provides methods to chain output targets, accumulating them into a bitmask. + +/ + struct Output { + private int value = 0; + + /++ + Adds syslog to the output targets. + + Example: + --- + log.output(log.output.syslog); // Enables syslog output + log.i("Logged to syslog"); + --- + +/ + Output syslog() { value |= SYSLOG; return this; } + + /++ + Adds standard output (stdout/stderr) to the output targets. + + Example: + --- + log.output(log.output.std); // Enables console output + log.w("Logged to console"); + --- + +/ + Output std() { value |= STD; return this; } + + /++ + Adds file output to the output targets. + + Example: + --- + log.output(log.output.file); // Enables file output + log.i("Logged to file"); + --- + +/ + Output file() { value |= FILE; return this; } + } + + /++ + Struct for fluent configuration of log levels. + + Provides methods to specify log levels. + +/ + struct Level { + /++ Returns the DEBUGGING level +/ + int debugging() { return DEBUGGING; } + /++ Returns the ALERT level +/ + int alert() { return ALERT; } + /++ Returns the CRITICAL level +/ + int critical() { return CRITICAL; } + /++ Returns the ERROR level +/ + int error() { return ERROR; } + /++ Returns the WARNING level +/ + int warning() { return WARNING; } + /++ Returns the NOTICE level +/ + int notice() { return NOTICE; } + /++ Returns the INFORMATION level +/ + int information() { return INFORMATION; } + + /++ Alias for `debugging` +/ + alias d = debugging; + /++ Alias for `alert` +/ + alias a = alert; + /++ Alias for `critical` +/ + alias c = critical; + /++ Alias for `error` +/ + alias e = error; + /++ Alias for `warning` +/ + alias w = warning; + /++ Alias for `notice` +/ + alias n = notice; + /++ Alias for `information` +/ + alias i = information; + + /++ + Example: + --- + log.level(log.level.d); // Sets level to DEBUGGING + log.d("Debug message"); // Visible + --- + +/ + } + + /++ + Helper method to start level configuration. + + Returns: + A `Level` struct for chaining level methods. + + Example: + --- + log.level(log.level().warning); // Sets level to WARNING + log.i("This won't show"); // Ignored due to level + log.w("This will show"); + --- + +/ + Level level() { return Level(); } + + /++ + Struct for temporary output override. + + Provides methods to log messages with temporary output settings. + +/ + struct Now { + private Log _log; + + this(Log log) { _log = log; } + + /++ + Logs an alert message. + + Example: + --- + log.now(log.output.std).alert("Temp alert"); // Only to console + --- + +/ + void alert(T)(T message) { _log.alert(message); } + + /++ + Logs a critical error message. + + Example: + --- + log.now(log.output.file).c("Temp critical"); // Only to file + --- + +/ + void critical(T)(T message) { _log.critical(message); } + + /++ + Logs an error message. + + Example: + --- + log.now(log.output.std).e("Temp error"); // Only to stderr + --- + +/ + void error(T)(T message) { _log.error(message); } + + /++ + Logs a warning message. + + Example: + --- + log.now(log.output.syslog).w("Temp warning"); // Only to syslog + --- + +/ + void warning(T)(T message) { _log.warning(message); } + + /++ + Logs a notice message. + + Example: + --- + log.now(log.output.std).n("Temp notice"); // Only to stdout + --- + +/ + void notice(T)(T message) { _log.notice(message); } + + /++ + Logs an informational message. + + Example: + --- + log.now(log.output.file).i("Temp info"); // Only to file + --- + +/ + void information(T)(T message) { _log.information(message); } + + /++ + Logs a debugging message. + + Example: + --- + log.now(log.output.std).d("Temp debug"); // Only to stdout + --- + +/ + void debugging(T)(T message) { _log.debugging(message); } + + /++ Alias for `alert` +/ + alias a = alert; + /++ Alias for `critical` +/ + alias c = critical; + /++ Alias for `error` +/ + alias e = error; + /++ Alias for `warning` +/ + alias w = warning; + /++ Alias for `notice` +/ + alias n = notice; + /++ Alias for `information` +/ + alias i = information; + /++ Alias for `debugging` +/ + alias d = debugging; + } } + +/++ + Global alias for easy access to the logger instance. + + The `log` alias provides a convenient shortcut to the singleton instance of the `Log` class, + allowing direct access to all logging functionality without explicitly calling `Log.msg`. + It supports the same methods, configuration options, and features as the `Log` class. + + Example: + --- + import singlog; + + void main() { + // Configure the logger using the alias + log.program("MyApp") + .color(true) + .level(log.level.debugging) // Using log.level directly + .output(log.output.std.file.syslog) + .file("myapp.log"); + + // Log messages with full method names + log.debugging("App starting in debug mode"); + log.information("Initialization complete"); + log.error("Failed to load resource"); + + // Log messages with aliases + log.d("Debug message via alias"); + log.i("Info message via alias"); + log.e("Error message via alias"); + + // Temporary output override + log.now(log.output.std).n("Temporary console-only message"); + } + --- ++/ +alias log = Log.msg; diff --git a/tests/cmd.png b/tests/cmd.png index 5399d4771411b260b70058b53818e7cf82391ba8..8dde73682e645f31a54c7bd3e719290d2d95c552 100644 GIT binary patch literal 36053 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

yek2NqvjkAR59^ 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 G(EkN-tJLQJ literal 51405 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 diff --git a/tests/test.d b/tests/test.d index 68d9e83..b178abf 100644 --- a/tests/test.d +++ b/tests/test.d @@ -1,20 +1,60 @@ import singlog; +import std.format : format; +import std.exception : enforce; +/++ + Logging Levels Table: + Level | Value | Description + --------------|----------|--------- + DEBUGGING | 0 | Debugging information (highest) + ALERT | 1 | Urgent alerts + CRITICAL | 2 | Critical errors + ERROR | 3 | Errors + WARNING | 4 | Warnings + NOTICE | 5 | Notices + INFORMATION | 6 | Informational messages (lowest) ++/ void main(string[] argv) { - log.output(log.output.syslog.stderr.stdout.file) // write to syslog, standard error/output streams and file - .program(argv[0]) // program name as an identifier (for Windows OS) - .level(log.level.debugging) // logging level - .color(true) // color text output - .file("./test.log"); // the path to the log file + // Logger configuration + log.color(true) // Enable colored output + .level(log.level.error) // Threshold ERROR (3): shows ERROR and less critical (≥3) + .output(log.output.std.file.syslog) // Set all three output targets + .file("./test.log") // Set log file + .program(argv[0]); // Set program name (Windows only) - log.i("This is an information message"); - log.n("This is a notice message"); - log.w("This is a warning message"); - log.e("This is an error message"); - log.c("This is a critical message"); - log.a("This is an alert message"); - log.d("This is a debug message"); + // Application start + log.i("ChainDemo application started"); // INFO (6) >= 3 + log.e("Logging with ERROR level activated"); // ERROR (3) >= 3 - log.now(log.output.stdout).n("This error message will only be written to the standard output stream"); - log.now(log.output.syslog.file).c("This error message will only be written to the syslog and file"); + // Level demonstration + log.e("Error during operation"); // ERROR (3) >= 3 + log.w("Warning"); // WARNING (4) >= 3 + log.n("Important notice"); // NOTICE (5) >= 3 + log.d("Debugging not shown"); // DEBUGGING (0) < 3 + log.i("General information"); // INFO (6) >= 3 + log.a("Alert not shown"); // ALERT (1) < 3 + + // Example with data types + int errorCode = 500; + log.e("Server error %d".format(errorCode)); // ERROR (3) >= 3 + + // Temporary output redirection + log.now(log.output.std).e("Error only to console"); // ERROR (3) >= 3 + + // Exception handling + try { + enforce(false, "Test exception"); + } catch (Exception e) { + log.e("Exception: %s".format(e.msg)); // ERROR (3) >= 3 + } + + // Configuration change + log.color(true) + .level(log.level.alert) // Threshold CRITICAL (2): shows CRITICAL and less critical (≥2) + .output(log.output.std.file); + log.e("This message will be shown (ERROR >= CRITICAL)"); // ERROR (3) >= 2 + log.a("Configuration changed, ALERT messages"); // ALERT (1) >= 2 + + // Finale + log.c("Demonstration completed"); // CRITICAL (2) >= 2 }