2023-04-28 08:32:15 +00:00
|
|
|
![singlog](singlog.png)
|
2023-03-23 09:20:46 +00:00
|
|
|
|
2023-03-29 12:53:00 +00:00
|
|
|
[![license](https://img.shields.io/github/license/AlexanderZhirov/singlog.svg?sort=semver&style=for-the-badge&color=green)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
|
2023-04-30 16:18:10 +00:00
|
|
|
[![main](https://img.shields.io/badge/dynamic/json.svg?label=git.zhirov.kz&style=for-the-badge&url=https://git.zhirov.kz/api/v1/repos/dlang/singlog/tags&query=$[0].name&color=violet&logo=D)](https://git.zhirov.kz/dlang/singlog)
|
|
|
|
[![githab](https://img.shields.io/github/v/tag/AlexanderZhirov/singlog.svg?sort=semver&style=for-the-badge&color=blue&label=github&logo=D)](https://github.com/AlexanderZhirov/singlog)
|
|
|
|
[![dub](https://img.shields.io/dub/v/singlog.svg?sort=semver&style=for-the-badge&color=orange&logo=D)](https://code.dlang.org/packages/singlog)
|
2023-04-27 20:53:45 +00:00
|
|
|
[![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)
|
2023-03-29 12:53:00 +00:00
|
|
|
|
2023-03-23 09:20:46 +00:00
|
|
|
Singleton for simple logging
|
|
|
|
|
|
|
|
## Basic Usage
|
|
|
|
|
|
|
|
```d
|
2023-03-29 15:13:56 +00:00
|
|
|
import singlog;
|
2023-03-23 09:20:46 +00:00
|
|
|
|
2023-04-28 08:32:15 +00:00
|
|
|
void main(string[] argv) {
|
|
|
|
log.output(log.SYSLOG | log.STDOUT | log.FILE) // write to syslog, standard output stream and file
|
|
|
|
.name(argv[0]) // program name as an identifier (for Windows OS)
|
|
|
|
.level(log.DEBUGGING) // logging level
|
|
|
|
.file("./test.log"); // the path to the log file
|
|
|
|
|
|
|
|
log.e("This is an error message");
|
|
|
|
log.error("And this is also an error message");
|
|
|
|
log.w("This is a warning message");
|
|
|
|
log.i("This is an information message");
|
2023-03-23 09:20:46 +00:00
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
## Examples
|
|
|
|
|
2023-04-27 20:53:45 +00:00
|
|
|
Setting the name of the logged program (it matters for Windows OS):
|
|
|
|
|
|
|
|
```d
|
|
|
|
log.name("My program");
|
|
|
|
```
|
|
|
|
|
2023-03-23 09:20:46 +00:00
|
|
|
Setting the error output level:
|
|
|
|
|
|
|
|
```d
|
2023-04-28 09:13:19 +00:00
|
|
|
log.level(log.DEBUGGING);
|
2023-03-29 12:53:00 +00:00
|
|
|
log.level(log.ALERT);
|
2023-04-28 09:13:19 +00:00
|
|
|
log.level(log.CRITICAL);
|
|
|
|
log.level(log.ERROR);
|
2023-03-29 12:53:00 +00:00
|
|
|
log.level(log.WARNING);
|
|
|
|
log.level(log.NOTICE);
|
2023-04-28 09:13:19 +00:00
|
|
|
log.level(log.INFORMATION);
|
2023-03-23 09:20:46 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
Assigning a target output:
|
|
|
|
|
|
|
|
```d
|
2023-03-29 12:53:00 +00:00
|
|
|
log.output(log.SYSLOG);
|
|
|
|
log.output(log.STDOUT);
|
2023-03-23 09:20:46 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
Setup and allowing writing to a file:
|
|
|
|
|
|
|
|
```d
|
2023-03-29 12:53:00 +00:00
|
|
|
log.output(log.FILE);
|
|
|
|
log.file("./file.log");
|
2023-03-23 09:20:46 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
Output of messages to the log:
|
|
|
|
|
|
|
|
```d
|
2023-03-29 15:13:56 +00:00
|
|
|
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");
|
2023-03-23 09:20:46 +00:00
|
|
|
```
|
|
|
|
|
2023-04-27 20:53:45 +00:00
|
|
|
## DUB
|
2023-03-23 09:20:46 +00:00
|
|
|
|
2023-04-27 20:53:45 +00:00
|
|
|
Add a dependency on `"singlog": "~>0.3.0"`.
|