From 6ac7afd4c2871f83575c7776507988fd237ad1e2 Mon Sep 17 00:00:00 2001 From: youmetme <321640253@qq.com> Date: Thu, 21 Nov 2024 12:48:11 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9api=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E5=90=8D=EF=BC=8C=E5=8A=A0=E5=85=A5Default=E5=85=B3=E9=94=AE?= =?UTF-8?q?=E5=AD=97=EF=BC=8C=E5=87=8F=E9=99=A4=E6=AD=A7=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.en.md | 52 ++++++++++++++++++++-------------------- README.md | 52 ++++++++++++++++++++-------------------- include/logging.h | 27 ++++++++++----------- src/logging.c | 20 ++++++---------- tests/test_interceptor.c | 24 +++++++++---------- tests/test_simple.c | 14 +++++------ 6 files changed, 90 insertions(+), 99 deletions(-) diff --git a/README.en.md b/README.en.md index a35ec21..b66dd97 100644 --- a/README.en.md +++ b/README.en.md @@ -26,15 +26,15 @@ conan create . #include "logging.h" int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } ``` @@ -45,16 +45,16 @@ int main() { #include "logging/logging-handler.h" int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); logger->addHandler(loggingFileHandler("test1", 1024*1024)); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } ``` @@ -71,13 +71,13 @@ Redirects intercepted logs to a dedicated file processor #include int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); char *test1[] = {"123", "tt"}; @@ -93,13 +93,13 @@ int main() { printf("Interceptor added\n"); printf("\n"); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } ``` diff --git a/README.md b/README.md index 9ee74e1..04f5194 100644 --- a/README.md +++ b/README.md @@ -29,15 +29,15 @@ conan create . #include "logging.h" int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } ``` @@ -48,16 +48,16 @@ int main() { #include "logging/logging-handler.h" int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); logger->addHandler(loggingFileHandler("test1", 1024*1024)); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } ``` @@ -75,13 +75,13 @@ int main() { #include int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); char *test1[] = {"123", "tt"}; @@ -97,13 +97,13 @@ int main() { printf("Interceptor added\n"); printf("\n"); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } ``` diff --git a/include/logging.h b/include/logging.h index 853aa6d..ce83afe 100644 --- a/include/logging.h +++ b/include/logging.h @@ -17,38 +17,35 @@ typedef struct Logger { log_Handler *handler; log_Interceptor *interceptor; const char *name; - void (*fatal)(const char *format, ...); - void (*error)(const char *format, ...); - void (*warning)(const char *format, ...); - void (*info)(const char *format, ...); - void (*debug)(const char *format, ...); - bool (*addHandler)(log_Handler *handler); bool (*addInterceptor)(log_Interceptor *Interceptor); } Logger; +void log_fatal(const char *format, ...); +void log_error(const char *format, ...); +void log_warning(const char *format, ...); +void log_info(const char *format, ...); +void log_debug(const char *format, ...); + /** -* @brief 创建日志对象,日志对象为单例模式,后续可通过getDefaultLogger方法获取, +* @brief +创建默认日志对象,日志对象为单例模式,后续可通过getDefaultLogger方法获取, 重复调用该方法不会创建新的日志对象,只会返回默认日志对象,并且会修改默认日志对象的名称和等级 * @param name 日志名称 * @param level 日志等级 * @return Logger* 日志对象指针 */ -Logger *newLogger(const char *name, log_level level); -/** - * @brief 设置日志等级 - * @param logger 日志对象 - * @param level 日志等级 - */ -log_status setLevel(Logger *logger, log_level level); +Logger *newDefaultLogger(const char *name, log_level level); + /** * @brief 获取默认日志对象 */ Logger *getDefaultLogger(void); + /** * @brief 销毁日志对象,该方法会销毁默认日志对象 */ -log_status destroyLogger(void); +log_status destroyDefaultLogger(void); #ifdef __cplusplus } diff --git a/src/logging.c b/src/logging.c index 55571b7..4bce8b0 100644 --- a/src/logging.c +++ b/src/logging.c @@ -101,7 +101,7 @@ _builtin_log(char *level, const char *color, const char *message, ...) { handler->output(handler, logStr); } -static void fatal(const char *message, ...) { +void log_fatal(const char *message, ...) { if (G_LOGGER->level >= LOG_ERROR) { char logStr[LOG_BUFFER_SIZE]; va_list args; @@ -112,7 +112,7 @@ static void fatal(const char *message, ...) { } } -static void error(const char *message, ...) { +void log_error(const char *message, ...) { if (G_LOGGER->level >= LOG_ERROR) { char logStr[LOG_BUFFER_SIZE]; va_list args; @@ -123,7 +123,7 @@ static void error(const char *message, ...) { } } -static void warning(const char *message, ...) { +void log_warning(const char *message, ...) { if (G_LOGGER->level >= LOG_WARNING) { char logStr[LOG_BUFFER_SIZE]; va_list args; @@ -134,7 +134,7 @@ static void warning(const char *message, ...) { } } -static void info(const char *message, ...) { +void log_info(const char *message, ...) { if (G_LOGGER->level >= LOG_INFO) { char logStr[LOG_BUFFER_SIZE]; va_list args; @@ -145,7 +145,7 @@ static void info(const char *message, ...) { } } -static void debug(const char *message, ...) { +void log_debug(const char *message, ...) { if (G_LOGGER->level >= LOG_DEBUG) { char logStr[LOG_BUFFER_SIZE]; va_list args; @@ -156,7 +156,7 @@ static void debug(const char *message, ...) { } } -Logger *newLogger(const char *name, log_level level) { +Logger *newDefaultLogger(const char *name, log_level level) { if (G_LOGGER != NULL) { G_LOGGER->name = name; G_LOGGER->level = level; @@ -165,12 +165,6 @@ Logger *newLogger(const char *name, log_level level) { Logger *logger = (Logger *)malloc(sizeof(Logger)); - logger->fatal = fatal; - logger->error = error; - logger->warning = warning; - logger->info = info; - logger->debug = debug; - logger->addHandler = addHandler; logger->addInterceptor = addInterceptor; @@ -186,7 +180,7 @@ Logger *newLogger(const char *name, log_level level) { /** * @brief 销毁日志对象 */ -log_status destroyLogger(void) { +log_status destroyDefaultLogger(void) { if (G_LOGGER != NULL) { if (G_LOGGER->handler != NULL) { G_LOGGER->handler->_free(G_LOGGER->handler); diff --git a/tests/test_interceptor.c b/tests/test_interceptor.c index 986d574..028e35b 100644 --- a/tests/test_interceptor.c +++ b/tests/test_interceptor.c @@ -2,13 +2,13 @@ #include int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); char *test1[] = {"123", "tt"}; @@ -24,12 +24,12 @@ int main() { printf("Interceptor added\n"); printf("\n"); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } \ No newline at end of file diff --git a/tests/test_simple.c b/tests/test_simple.c index d803794..18251d6 100644 --- a/tests/test_simple.c +++ b/tests/test_simple.c @@ -1,14 +1,14 @@ #include "logging.h" int main() { - Logger *logger = newLogger("testLogger", LOG_DEBUG); + Logger *logger = newDefaultLogger("testLogger", LOG_DEBUG); - logger->info("This is an info message"); - logger->error("This is an error message%s", "123"); - logger->fatal("This is an fatal message"); - logger->debug("This is a debug message"); - logger->warning("This is a warning message%s", "123"); + log_info("This is an info message"); + log_error("This is an error message%s", "123"); + log_fatal("This is an fatal message"); + log_debug("This is a debug message"); + log_warning("This is a warning message%s", "123"); - destroyLogger(); + destroyDefaultLogger(); return 0; } \ No newline at end of file