You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
sonar-keyware/uut-example/cxx/src/LogFileWriteChecker.cc

58 lines
2.2 KiB

#include <spdlog/spdlog.h>
#include <log4cpp/Category.h>
#include <log4cpp/Appender.h>
#include <log4cpp/FileAppender.h>
#include <log4cpp/Layout.h>
#include <log4cpp/PatternLayout.h>
//std::string username = "user1";
//std::string orgName = "org1";
//std::string armsName = "arms1";
//创建一个rotating file sink,日志文件大小达到1MB时滚动并创建新的日志文件,最多保存3个历史文件
auto rotating_logger = spdlog::rotating_logger_mt("my_logger", "logs/mylogfile.log", 1048576, 3);
// 设置日志级别为info及以上
rotating_logger->set_level(spdlog::level::info);
int writeLogFile1() {
// // 写入不同级别的日志信息
// rotating_logger->debug("This is an debug message");
// rotating_logger->info("This is an info message");
// rotating_logger->warn("This is a warning");
// rotating_logger->error("This is an error");
rotating_logger->debug( username); // error
rotating_logger->info("This is an info message" + armsName); // error
rotating_logger->warn("This is a warning, {}", armsName); // error
rotating_logger->error("This is an error" + armsName); // error
return 0;
}
//log4cpp::Category &myCat = log4cpp::Category::getInstance(std::string("MyCategory"));
int writeLogFile2() {
// log4cpp::PatternLayout* layout = new log4cpp::PatternLayout();
// layout->setConversionPattern("%d{%Y-%m-%d %H:%M:%S} [%p] %c: %m%n");
//
// // 创建FileAppender,并关联布局
// log4cpp::FileAppender *fileAppender = new log4cpp::FileAppender("fileAppender", "logs/mylogfile.log");
// fileAppender->setLayout(layout);
//
// // 获取或创建一个category,并将appender添加给它
// log4cpp::Category& root = log4cpp::Category::getRoot();
// root.addAppender(fileAppender);
// root.setPriority(log4cpp::Priority::INFO); // 设置最低记录的日志级别
// 写入不同级别的日志信息
log4cpp::Category &myCat = log4cpp::Category::getInstance(std::string("MyCategory"));
myCat.debug("This is an debug message %s, %s", username, orgName); // error
myCat.info("This is an info message" + armsName); // error
myCat.warn("This is a warning, {}", armsName); // error
myCat.error("This is an error" + armsName); // error
delete layout;
return 0;
}