Example rxi/log.c library
This commit is contained in:
commit
6b535aa50b
24
.editorconfig
Normal file
24
.editorconfig
Normal file
@ -0,0 +1,24 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[{*.c,*.h}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
[Makefile]
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
|
||||
[humans.txt]
|
||||
indent_style = tab
|
||||
indent_size = 2
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
[submodule "rxi/log/3rdparty/log.c"]
|
||||
path = rxi/log/3rdparty/log.c
|
||||
url = https://github.com/rxi/log.c.git
|
2
rxi/log/.gitignore
vendored
Normal file
2
rxi/log/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
*.o
|
||||
example_log
|
BIN
rxi/log/.screen.png
Normal file
BIN
rxi/log/.screen.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 107 KiB |
1
rxi/log/3rdparty/log.c
vendored
Submodule
1
rxi/log/3rdparty/log.c
vendored
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit f9ea34994bd58ed342d2245cd4110bb5c6790153
|
19
rxi/log/Makefile
Normal file
19
rxi/log/Makefile
Normal file
@ -0,0 +1,19 @@
|
||||
PROGRAM = example_log
|
||||
OBJ = example_log.o log.o
|
||||
HEADER = -I./3rdparty/log.c/src
|
||||
OUT =
|
||||
CC = gcc
|
||||
CFLAGS = -O2 -g -Wall $(HEADER)
|
||||
LFLAGS =
|
||||
LIBS =
|
||||
|
||||
all: $(PROGRAM)
|
||||
|
||||
$(PROGRAM): $(OBJ)
|
||||
$(CC) $(CFLAGS) -o $@ $(OBJ)
|
||||
|
||||
log.o:
|
||||
$(CC) $(CFLAGS) -c -DLOG_USE_COLOR -o $@ ./3rdparty/log.c/src/log.c
|
||||
|
||||
clean:
|
||||
rm -f $(OBJ) $(PROGRAM)
|
18
rxi/log/README.md
Normal file
18
rxi/log/README.md
Normal file
@ -0,0 +1,18 @@
|
||||
# Example `rxi/log.c` library
|
||||
|
||||
Library link: https://github.com/rxi/log.c.git
|
||||
|
||||
For build run `make` command.
|
||||
|
||||
![Screenshot result](./.screen.png)
|
||||
|
||||
## Описание уровней логирования
|
||||
|
||||
* **Info** — общая информация о работе службы или сервиса.
|
||||
* **Debug** — запись масштабных переходов состояний, например, обращение к базе данных, старт/пауза сервиса, успешная обработка записи и пр.
|
||||
* **Warning** — нештатная ситуация, потенциальная проблема, может быть странный формат запроса или некорректный параметр вызова.
|
||||
* **Error** — типичная ошибка.
|
||||
* **Fatal** — тотальный сбой работоспособности, когда нет доступа к базе данных или сети, сервису не хватает места на жестком диске.
|
||||
* **Trace** — пошаговые записи процесса. Полезен, когда сложно локализовать ошибку.
|
||||
|
||||
[(©)](https://greendc.ru/blog/kak-razobratsya-s-logirovaniem-gayd-dlya-nachinayushchikh/)
|
14
rxi/log/example_log.c
Normal file
14
rxi/log/example_log.c
Normal file
@ -0,0 +1,14 @@
|
||||
#include <log.h>
|
||||
|
||||
int main(int argc, char const *argv[]) {
|
||||
log_info("LOG VERSION " LOG_VERSION "\n");
|
||||
|
||||
log_info("Example INFO message");
|
||||
log_debug("Example DEBUG message");
|
||||
log_warn("Example WARNING message");
|
||||
log_error("Example ERROR message");
|
||||
log_fatal("Example FATAL message");
|
||||
log_trace("Example TRACE message");
|
||||
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user