mirror of
https://gitee.com/jiuyilian/embedded-framework.git
synced 2025-01-06 10:16:51 -05:00
Log
This commit is contained in:
parent
5e978069b6
commit
0eda768579
|
@ -6,7 +6,7 @@ include_directories(
|
|||
.
|
||||
./src
|
||||
./include
|
||||
${UTILS_SOURCE_PATH}/Log/src/easyloggingpp
|
||||
${UTILS_SOURCE_PATH}/Log/include
|
||||
${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googletest/include
|
||||
${EXTERNAL_SOURCE_PATH}/gtest/googletest-release-1.11.0/googlemock/include
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
|
||||
#include "ILog.h"
|
||||
// #include <gmock/gmock.h>
|
||||
#include <gtest/gtest.h>
|
||||
|
@ -7,6 +7,7 @@ namespace ILogTest
|
|||
// ../output_files/test/bin/LogTest --gtest_filter=ILogTest.Demo
|
||||
TEST(ILogTest, Demo)
|
||||
{
|
||||
|
||||
CreateLogModule();
|
||||
ILogInit(LOG_INSTANCE_TYPE_END);
|
||||
LogInfo("hello world.");
|
||||
|
@ -15,78 +16,4 @@ namespace ILogTest
|
|||
ILogUnInit();
|
||||
DestroyLogModule();
|
||||
}
|
||||
} // namespace ILogTest
|
||||
*/
|
||||
|
||||
#define ELPP_THREAD_SAFE
|
||||
#include "easylogging++.h"
|
||||
#include <gtest/gtest.h>
|
||||
#include <gmock/gmock.h>
|
||||
|
||||
INITIALIZE_EASYLOGGINGPP
|
||||
|
||||
namespace ILogTest
|
||||
{
|
||||
TEST(ILogTest, Demo)
|
||||
{
|
||||
// 假设你已经在全局范围内设置了日志格式
|
||||
el::Configurations defaultConf;
|
||||
defaultConf.setToDefault();
|
||||
/*
|
||||
defaultConf.set(el::Level::Global,
|
||||
el::ConfigurationType::Format,
|
||||
"\x1b[32m%datetime %level %msg\x1b[0m"); // 绿色日志消息
|
||||
|
||||
*/
|
||||
|
||||
// 设置 INFO 级别的日志格式为绿色
|
||||
defaultConf.set(el::Level::Info,
|
||||
el::ConfigurationType::Format,
|
||||
"\x1b[32m%datetime %level %msg\x1b[0m");
|
||||
|
||||
// 设置 WARNING 级别的日志格式为黄色
|
||||
defaultConf.set(el::Level::Debug,
|
||||
el::ConfigurationType::Format,
|
||||
"\x1b[33m%datetime %level %msg\x1b[0m");
|
||||
|
||||
// 设置 ERROR 级别的日志格式为红色
|
||||
defaultConf.set(el::Level::Error,
|
||||
el::ConfigurationType::Format,
|
||||
"\x1b[31m%datetime %level %msg\x1b[0m");
|
||||
|
||||
// 注意:上面的格式将所有日志消息都设置为绿色。
|
||||
// 如果你想要为不同的日志级别设置不同的颜色,你需要为每个级别分别设置格式。
|
||||
|
||||
// 另一种方法是使用条件格式,但这在 INI 配置文件中可能更难以实现,
|
||||
// 因此你可能需要通过编程方式来实现。
|
||||
|
||||
el::Loggers::reconfigureLogger("default", defaultConf);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// 如果你使用的是配置文件,确保它已正确设置并加载
|
||||
// 否则,你可以在这里通过编程方式配置elpp
|
||||
|
||||
// 示例:动态设置配置以启用颜色输出(注意:这只是一个示例,实际配置可能不同)
|
||||
// el::Configurations defaultConf;
|
||||
// defaultConf.setToDefault();
|
||||
// defaultConf.set(el::Level::Global,
|
||||
// el::ConfigurationType::Format,
|
||||
// "%datetime %level %msg %func %loc");
|
||||
// defaultConf.set(el::Level::Global,
|
||||
// el::ConfigurationType::EnableColoredLogMessages,
|
||||
// "true");
|
||||
// el::Loggers::reconfigureLogger("default", defaultConf);
|
||||
|
||||
// 使用easylogging++的日志宏
|
||||
LOG(INFO) << "hello world.";
|
||||
LOG(ERROR) << "create ... failed.";
|
||||
LOG(DEBUG) << "a = " << 124 << " b = " << "apple";
|
||||
|
||||
// 注意:在单元测试中,你可能不需要初始化或销毁日志模块,
|
||||
// 因为easylogging++已经为你处理了这些。
|
||||
// 但是,如果你有自己的日志封装或初始化代码,你应该根据需要进行调整。
|
||||
}
|
||||
} // namespace ILogTest
|
|
@ -1,32 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration>
|
||||
|
||||
<!-- 启用颜色输出 -->
|
||||
<colored>true</colored>
|
||||
|
||||
<!-- 设置日志格式 -->
|
||||
<formats>
|
||||
<pattern>%datetime %level %msg</pattern>
|
||||
</formats>
|
||||
|
||||
<!-- 其他配置... -->
|
||||
|
||||
<appenders>
|
||||
<console name="Stdout">
|
||||
<enabled>true</enabled>
|
||||
<!-- 对于控制台输出,通常不需要设置颜色,因为<colored>标签已经启用了颜色 -->
|
||||
</console>
|
||||
|
||||
<!-- 如果你还配置了文件输出等其他appender,可以在这里设置 -->
|
||||
|
||||
</appenders>
|
||||
|
||||
<loggers>
|
||||
<root>
|
||||
<level value="debug" />
|
||||
<appender-ref ref="Stdout" />
|
||||
<!-- 引用其他appender(如果有的话) -->
|
||||
</root>
|
||||
</loggers>
|
||||
|
||||
</configuration>
|
|
@ -19,6 +19,7 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <easylogging++.h>
|
||||
/**
|
||||
* @brief jieshao
|
||||
*
|
||||
|
@ -33,7 +34,24 @@ static void LogFree(ILog *object)
|
|||
}
|
||||
static int LogPrintf(ILog *object, const char *function, const int line, const enum LogType type, const char *format,
|
||||
...)
|
||||
{
|
||||
{
|
||||
el::Configurations defaultConf;
|
||||
defaultConf.setToDefault();
|
||||
|
||||
defaultConf.set(el::Level::Info,
|
||||
el::ConfigurationType::Format,
|
||||
"\x1b[32m%datetime %level %msg\x1b[0m");
|
||||
|
||||
defaultConf.set(el::Level::Debug,
|
||||
el::ConfigurationType::Format,
|
||||
"\x1b[33m%datetime %level %msg\x1b[0m");
|
||||
|
||||
defaultConf.set(el::Level::Error,
|
||||
el::ConfigurationType::Format,
|
||||
"\x1b[31m%datetime %level %msg\x1b[0m");
|
||||
|
||||
el::Loggers::reconfigureLogger("default", defaultConf);
|
||||
|
||||
// TODO:
|
||||
// LogTypeToString(type);
|
||||
constexpr int SEND_TRACE_BUFF_SIZE = 2048;
|
||||
|
|
Loading…
Reference in New Issue
Block a user