update 添加时间 等级
This commit is contained in:
parent
f4817f3ac1
commit
9bae918829
|
|
@ -3,5 +3,4 @@ project(cppTemp)
|
|||
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
|
||||
add_executable(cppTemp main.cpp
|
||||
)
|
||||
add_executable(cppTemp main.cpp Logger.cpp Logger.h)
|
||||
|
|
|
|||
88
Logger.h
88
Logger.h
|
|
@ -30,8 +30,9 @@ class LogQueue {
|
|||
public:
|
||||
void push(const std::string& msg) {
|
||||
std::lock_guard<std::mutex> lock(mutex_);
|
||||
queue_.push(msg);
|
||||
//构造好自动加锁,析构自动解锁
|
||||
cond_var_.notify_one();
|
||||
cond_var_.notify_all();
|
||||
}; //字符串放队列中
|
||||
bool pop(std::string& msg) {
|
||||
std::unique_lock<std::mutex> lock(mutex_);
|
||||
|
|
@ -44,6 +45,12 @@ public:
|
|||
if (is_shutdown_ && queue_.empty()) {
|
||||
return false;
|
||||
}
|
||||
//保证队列的数据被清空掉
|
||||
// while (is_shutdown_ && !queue_.empty()) {
|
||||
// msg = queue_.front();
|
||||
// queue_.pop();
|
||||
// return false;
|
||||
// }
|
||||
msg = queue_.front(); //返回消息给msg指针
|
||||
queue_.pop();
|
||||
return true;
|
||||
|
|
@ -60,6 +67,13 @@ private:
|
|||
bool is_shutdown_ = false;
|
||||
};
|
||||
|
||||
enum class Loglevel {
|
||||
INFO,
|
||||
DEBUG,
|
||||
WARNING,
|
||||
ERROR
|
||||
};
|
||||
|
||||
class Logger {
|
||||
public:
|
||||
Logger(const std::string& filename) : log_file_(filename, std::ios::out | std::ios::app)
|
||||
|
|
@ -75,12 +89,80 @@ public:
|
|||
}
|
||||
});
|
||||
};
|
||||
~Logger();
|
||||
~Logger() {
|
||||
exit_flag_ = true;
|
||||
log_queue_.shutdown();
|
||||
//如果日志结束了,说明主线程退出,这里是优雅退出,等待其他主线程
|
||||
if (worker_thread_.joinable()) {
|
||||
worker_thread_.join();
|
||||
}
|
||||
|
||||
if (log_file_.is_open()) {
|
||||
log_file_.close();
|
||||
}
|
||||
};
|
||||
|
||||
template<typename ... Args>
|
||||
void log(const std::string& format, Args&& ...args);
|
||||
void log(Loglevel loglevel, const std::string& format, Args&& ...args) {
|
||||
std::string level_str;
|
||||
switch (loglevel) {
|
||||
case Loglevel::INFO:
|
||||
level_str = "[INFO] ";
|
||||
break;
|
||||
case Loglevel::DEBUG:
|
||||
level_str = "[DEBUG] ";
|
||||
break;
|
||||
case Loglevel::WARNING:
|
||||
level_str = "[WARNING] ";
|
||||
break;
|
||||
case Loglevel::ERROR:
|
||||
level_str = "[ERROR] ";
|
||||
break;
|
||||
}
|
||||
log_queue_.push(level_str + formatMessage(format, std::forward<Args>(args)...));
|
||||
};
|
||||
|
||||
private:
|
||||
|
||||
std::string GetTimeStamp() {
|
||||
std::time_t now = std::time(nullptr);
|
||||
std::tm* local_time = std::localtime(&now);
|
||||
char buffer[80];
|
||||
std::strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", local_time);
|
||||
return std::string(buffer);
|
||||
}
|
||||
|
||||
template<typename ... Args>
|
||||
std::string formatMessage(const std::string& format, Args&&...args) {
|
||||
std::vector<std::string> arg_strings = {to_string_helper(std::forward<Args>(args))...};
|
||||
std::ostringstream oss;
|
||||
size_t arg_index = 0;
|
||||
size_t pos = 0;
|
||||
size_t placeholder = format.find("{}", pos);
|
||||
|
||||
oss << GetTimeStamp() << " ";
|
||||
|
||||
while (placeholder != std::string::npos) {
|
||||
oss << format.substr(pos, placeholder - pos);
|
||||
if (arg_index < arg_strings.size()) {
|
||||
oss << arg_strings[arg_index];
|
||||
} else {
|
||||
oss << "{}";
|
||||
//如果占位符没有对应参数,保留占位符
|
||||
}
|
||||
arg_strings[arg_index++];
|
||||
pos = placeholder + 2;
|
||||
placeholder = format.find("{}", pos);
|
||||
}
|
||||
|
||||
|
||||
oss << format.substr(pos);
|
||||
while (arg_index < arg_strings.size()) {
|
||||
oss << arg_strings[arg_index++];
|
||||
}
|
||||
return oss.str();
|
||||
}
|
||||
|
||||
LogQueue log_queue_;
|
||||
std::thread worker_thread_;
|
||||
std::ofstream log_file_;
|
||||
|
|
|
|||
|
|
@ -1,60 +0,0 @@
|
|||
{
|
||||
"configurations" :
|
||||
[
|
||||
{
|
||||
"directories" :
|
||||
[
|
||||
{
|
||||
"build" : ".",
|
||||
"jsonFile" : "directory-.-Debug-f5ebdc15457944623624.json",
|
||||
"minimumCMakeVersion" :
|
||||
{
|
||||
"string" : "3.30"
|
||||
},
|
||||
"projectIndex" : 0,
|
||||
"source" : ".",
|
||||
"targetIndexes" :
|
||||
[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"name" : "Debug",
|
||||
"projects" :
|
||||
[
|
||||
{
|
||||
"directoryIndexes" :
|
||||
[
|
||||
0
|
||||
],
|
||||
"name" : "cppTemp",
|
||||
"targetIndexes" :
|
||||
[
|
||||
0
|
||||
]
|
||||
}
|
||||
],
|
||||
"targets" :
|
||||
[
|
||||
{
|
||||
"directoryIndex" : 0,
|
||||
"id" : "cppTemp::@6890427a1f51a3e7e1df",
|
||||
"jsonFile" : "target-cppTemp-Debug-f55973cf228b99e57e4f.json",
|
||||
"name" : "cppTemp",
|
||||
"projectIndex" : 0
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"kind" : "codemodel",
|
||||
"paths" :
|
||||
{
|
||||
"build" : "/Users/czzhangheng/cppTemp/cmake-build-debug",
|
||||
"source" : "/Users/czzhangheng/cppTemp"
|
||||
},
|
||||
"version" :
|
||||
{
|
||||
"major" : 2,
|
||||
"minor" : 7
|
||||
}
|
||||
}
|
||||
|
|
@ -1,133 +0,0 @@
|
|||
{
|
||||
"artifacts" :
|
||||
[
|
||||
{
|
||||
"path" : "cppTemp"
|
||||
}
|
||||
],
|
||||
"backtrace" : 1,
|
||||
"backtraceGraph" :
|
||||
{
|
||||
"commands" :
|
||||
[
|
||||
"add_executable"
|
||||
],
|
||||
"files" :
|
||||
[
|
||||
"CMakeLists.txt"
|
||||
],
|
||||
"nodes" :
|
||||
[
|
||||
{
|
||||
"file" : 0
|
||||
},
|
||||
{
|
||||
"command" : 0,
|
||||
"file" : 0,
|
||||
"line" : 6,
|
||||
"parent" : 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"compileGroups" :
|
||||
[
|
||||
{
|
||||
"compileCommandFragments" :
|
||||
[
|
||||
{
|
||||
"fragment" : "-g -std=gnu++20 -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.5.sdk -fcolor-diagnostics"
|
||||
}
|
||||
],
|
||||
"language" : "CXX",
|
||||
"languageStandard" :
|
||||
{
|
||||
"backtraces" :
|
||||
[
|
||||
1
|
||||
],
|
||||
"standard" : "20"
|
||||
},
|
||||
"sourceIndexes" :
|
||||
[
|
||||
0,
|
||||
1,
|
||||
3
|
||||
]
|
||||
}
|
||||
],
|
||||
"id" : "cppTemp::@6890427a1f51a3e7e1df",
|
||||
"link" :
|
||||
{
|
||||
"commandFragments" :
|
||||
[
|
||||
{
|
||||
"fragment" : "-g",
|
||||
"role" : "flags"
|
||||
},
|
||||
{
|
||||
"fragment" : "",
|
||||
"role" : "flags"
|
||||
}
|
||||
],
|
||||
"language" : "CXX"
|
||||
},
|
||||
"name" : "cppTemp",
|
||||
"nameOnDisk" : "cppTemp",
|
||||
"paths" :
|
||||
{
|
||||
"build" : ".",
|
||||
"source" : "."
|
||||
},
|
||||
"sourceGroups" :
|
||||
[
|
||||
{
|
||||
"name" : "Source Files",
|
||||
"sourceIndexes" :
|
||||
[
|
||||
0,
|
||||
1,
|
||||
3
|
||||
]
|
||||
},
|
||||
{
|
||||
"name" : "Header Files",
|
||||
"sourceIndexes" :
|
||||
[
|
||||
2,
|
||||
4
|
||||
]
|
||||
}
|
||||
],
|
||||
"sources" :
|
||||
[
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"compileGroupIndex" : 0,
|
||||
"path" : "main.cpp",
|
||||
"sourceGroupIndex" : 0
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"compileGroupIndex" : 0,
|
||||
"path" : "dl.cpp",
|
||||
"sourceGroupIndex" : 0
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"path" : "dl.h",
|
||||
"sourceGroupIndex" : 1
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"compileGroupIndex" : 0,
|
||||
"path" : "d35.cpp",
|
||||
"sourceGroupIndex" : 0
|
||||
},
|
||||
{
|
||||
"backtrace" : 1,
|
||||
"path" : "d35.h",
|
||||
"sourceGroupIndex" : 1
|
||||
}
|
||||
],
|
||||
"type" : "EXECUTABLE"
|
||||
}
|
||||
|
|
@ -81,12 +81,12 @@ clean: CMakeFiles/cppTemp.dir/clean
|
|||
CMakeFiles/cppTemp.dir/all:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/depend
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/build
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles --progress-num=1,2,3,4 "Built target cppTemp"
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --progress-dir=/Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles --progress-num=1,2,3 "Built target cppTemp"
|
||||
.PHONY : CMakeFiles/cppTemp.dir/all
|
||||
|
||||
# Build rule for subdir invocation for target.
|
||||
CMakeFiles/cppTemp.dir/rule: cmake_check_build_system
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles 4
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles 3
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CMakeFiles/cppTemp.dir/all
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start /Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles 0
|
||||
.PHONY : CMakeFiles/cppTemp.dir/rule
|
||||
|
|
|
|||
|
|
@ -8,8 +8,7 @@ set(CMAKE_DEPENDS_LANGUAGES
|
|||
|
||||
# The set of dependency files which are needed:
|
||||
set(CMAKE_DEPENDS_DEPENDENCY_FILES
|
||||
"/Users/czzhangheng/cppTemp/d35.cpp" "CMakeFiles/cppTemp.dir/d35.cpp.o" "gcc" "CMakeFiles/cppTemp.dir/d35.cpp.o.d"
|
||||
"/Users/czzhangheng/cppTemp/dl.cpp" "CMakeFiles/cppTemp.dir/dl.cpp.o" "gcc" "CMakeFiles/cppTemp.dir/dl.cpp.o.d"
|
||||
"/Users/czzhangheng/cppTemp/Logger.cpp" "CMakeFiles/cppTemp.dir/Logger.cpp.o" "gcc" "CMakeFiles/cppTemp.dir/Logger.cpp.o.d"
|
||||
"/Users/czzhangheng/cppTemp/main.cpp" "CMakeFiles/cppTemp.dir/main.cpp.o" "gcc" "CMakeFiles/cppTemp.dir/main.cpp.o.d"
|
||||
)
|
||||
|
||||
|
|
|
|||
|
|
@ -83,49 +83,33 @@ CMakeFiles/cppTemp.dir/main.cpp.s: cmake_force
|
|||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/cppTemp.dir/main.cpp.s"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/czzhangheng/cppTemp/main.cpp -o CMakeFiles/cppTemp.dir/main.cpp.s
|
||||
|
||||
CMakeFiles/cppTemp.dir/dl.cpp.o: CMakeFiles/cppTemp.dir/flags.make
|
||||
CMakeFiles/cppTemp.dir/dl.cpp.o: /Users/czzhangheng/cppTemp/dl.cpp
|
||||
CMakeFiles/cppTemp.dir/dl.cpp.o: CMakeFiles/cppTemp.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/cppTemp.dir/dl.cpp.o"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/cppTemp.dir/dl.cpp.o -MF CMakeFiles/cppTemp.dir/dl.cpp.o.d -o CMakeFiles/cppTemp.dir/dl.cpp.o -c /Users/czzhangheng/cppTemp/dl.cpp
|
||||
CMakeFiles/cppTemp.dir/Logger.cpp.o: CMakeFiles/cppTemp.dir/flags.make
|
||||
CMakeFiles/cppTemp.dir/Logger.cpp.o: /Users/czzhangheng/cppTemp/Logger.cpp
|
||||
CMakeFiles/cppTemp.dir/Logger.cpp.o: CMakeFiles/cppTemp.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object CMakeFiles/cppTemp.dir/Logger.cpp.o"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/cppTemp.dir/Logger.cpp.o -MF CMakeFiles/cppTemp.dir/Logger.cpp.o.d -o CMakeFiles/cppTemp.dir/Logger.cpp.o -c /Users/czzhangheng/cppTemp/Logger.cpp
|
||||
|
||||
CMakeFiles/cppTemp.dir/dl.cpp.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/cppTemp.dir/dl.cpp.i"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/czzhangheng/cppTemp/dl.cpp > CMakeFiles/cppTemp.dir/dl.cpp.i
|
||||
CMakeFiles/cppTemp.dir/Logger.cpp.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/cppTemp.dir/Logger.cpp.i"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/czzhangheng/cppTemp/Logger.cpp > CMakeFiles/cppTemp.dir/Logger.cpp.i
|
||||
|
||||
CMakeFiles/cppTemp.dir/dl.cpp.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/cppTemp.dir/dl.cpp.s"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/czzhangheng/cppTemp/dl.cpp -o CMakeFiles/cppTemp.dir/dl.cpp.s
|
||||
|
||||
CMakeFiles/cppTemp.dir/d35.cpp.o: CMakeFiles/cppTemp.dir/flags.make
|
||||
CMakeFiles/cppTemp.dir/d35.cpp.o: /Users/czzhangheng/cppTemp/d35.cpp
|
||||
CMakeFiles/cppTemp.dir/d35.cpp.o: CMakeFiles/cppTemp.dir/compiler_depend.ts
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --progress-dir=/Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object CMakeFiles/cppTemp.dir/d35.cpp.o"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT CMakeFiles/cppTemp.dir/d35.cpp.o -MF CMakeFiles/cppTemp.dir/d35.cpp.o.d -o CMakeFiles/cppTemp.dir/d35.cpp.o -c /Users/czzhangheng/cppTemp/d35.cpp
|
||||
|
||||
CMakeFiles/cppTemp.dir/d35.cpp.i: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Preprocessing CXX source to CMakeFiles/cppTemp.dir/d35.cpp.i"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /Users/czzhangheng/cppTemp/d35.cpp > CMakeFiles/cppTemp.dir/d35.cpp.i
|
||||
|
||||
CMakeFiles/cppTemp.dir/d35.cpp.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/cppTemp.dir/d35.cpp.s"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/czzhangheng/cppTemp/d35.cpp -o CMakeFiles/cppTemp.dir/d35.cpp.s
|
||||
CMakeFiles/cppTemp.dir/Logger.cpp.s: cmake_force
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green "Compiling CXX source to assembly CMakeFiles/cppTemp.dir/Logger.cpp.s"
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /Users/czzhangheng/cppTemp/Logger.cpp -o CMakeFiles/cppTemp.dir/Logger.cpp.s
|
||||
|
||||
# Object files for target cppTemp
|
||||
cppTemp_OBJECTS = \
|
||||
"CMakeFiles/cppTemp.dir/main.cpp.o" \
|
||||
"CMakeFiles/cppTemp.dir/dl.cpp.o" \
|
||||
"CMakeFiles/cppTemp.dir/d35.cpp.o"
|
||||
"CMakeFiles/cppTemp.dir/Logger.cpp.o"
|
||||
|
||||
# External object files for target cppTemp
|
||||
cppTemp_EXTERNAL_OBJECTS =
|
||||
|
||||
cppTemp: CMakeFiles/cppTemp.dir/main.cpp.o
|
||||
cppTemp: CMakeFiles/cppTemp.dir/dl.cpp.o
|
||||
cppTemp: CMakeFiles/cppTemp.dir/d35.cpp.o
|
||||
cppTemp: CMakeFiles/cppTemp.dir/Logger.cpp.o
|
||||
cppTemp: CMakeFiles/cppTemp.dir/build.make
|
||||
cppTemp: CMakeFiles/cppTemp.dir/link.txt
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking CXX executable cppTemp"
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color "--switch=$(COLOR)" --green --bold --progress-dir=/Users/czzhangheng/cppTemp/cmake-build-debug/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Linking CXX executable cppTemp"
|
||||
$(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/cppTemp.dir/link.txt --verbose=$(VERBOSE)
|
||||
|
||||
# Rule to build all files generated by this target.
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
file(REMOVE_RECURSE
|
||||
"CMakeFiles/cppTemp.dir/d35.cpp.o"
|
||||
"CMakeFiles/cppTemp.dir/d35.cpp.o.d"
|
||||
"CMakeFiles/cppTemp.dir/dl.cpp.o"
|
||||
"CMakeFiles/cppTemp.dir/dl.cpp.o.d"
|
||||
"CMakeFiles/cppTemp.dir/Logger.cpp.o"
|
||||
"CMakeFiles/cppTemp.dir/Logger.cpp.o.d"
|
||||
"CMakeFiles/cppTemp.dir/main.cpp.o"
|
||||
"CMakeFiles/cppTemp.dir/main.cpp.o.d"
|
||||
"cppTemp"
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -1 +1 @@
|
|||
/Library/Developer/CommandLineTools/usr/bin/c++ -g -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.5.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cppTemp.dir/main.cpp.o CMakeFiles/cppTemp.dir/dl.cpp.o CMakeFiles/cppTemp.dir/d35.cpp.o -o cppTemp
|
||||
/Library/Developer/CommandLineTools/usr/bin/c++ -g -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX15.5.sdk -Wl,-search_paths_first -Wl,-headerpad_max_install_names CMakeFiles/cppTemp.dir/main.cpp.o CMakeFiles/cppTemp.dir/Logger.cpp.o -o cppTemp
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
CMAKE_PROGRESS_1 = 1
|
||||
CMAKE_PROGRESS_2 = 2
|
||||
CMAKE_PROGRESS_3 = 3
|
||||
CMAKE_PROGRESS_4 = 4
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
4
|
||||
3
|
||||
|
|
|
|||
|
|
@ -129,53 +129,29 @@ cppTemp/fast:
|
|||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/build
|
||||
.PHONY : cppTemp/fast
|
||||
|
||||
d35.o: d35.cpp.o
|
||||
.PHONY : d35.o
|
||||
Logger.o: Logger.cpp.o
|
||||
.PHONY : Logger.o
|
||||
|
||||
# target to build an object file
|
||||
d35.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/d35.cpp.o
|
||||
.PHONY : d35.cpp.o
|
||||
Logger.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/Logger.cpp.o
|
||||
.PHONY : Logger.cpp.o
|
||||
|
||||
d35.i: d35.cpp.i
|
||||
.PHONY : d35.i
|
||||
Logger.i: Logger.cpp.i
|
||||
.PHONY : Logger.i
|
||||
|
||||
# target to preprocess a source file
|
||||
d35.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/d35.cpp.i
|
||||
.PHONY : d35.cpp.i
|
||||
Logger.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/Logger.cpp.i
|
||||
.PHONY : Logger.cpp.i
|
||||
|
||||
d35.s: d35.cpp.s
|
||||
.PHONY : d35.s
|
||||
Logger.s: Logger.cpp.s
|
||||
.PHONY : Logger.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
d35.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/d35.cpp.s
|
||||
.PHONY : d35.cpp.s
|
||||
|
||||
dl.o: dl.cpp.o
|
||||
.PHONY : dl.o
|
||||
|
||||
# target to build an object file
|
||||
dl.cpp.o:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/dl.cpp.o
|
||||
.PHONY : dl.cpp.o
|
||||
|
||||
dl.i: dl.cpp.i
|
||||
.PHONY : dl.i
|
||||
|
||||
# target to preprocess a source file
|
||||
dl.cpp.i:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/dl.cpp.i
|
||||
.PHONY : dl.cpp.i
|
||||
|
||||
dl.s: dl.cpp.s
|
||||
.PHONY : dl.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
dl.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/dl.cpp.s
|
||||
.PHONY : dl.cpp.s
|
||||
Logger.cpp.s:
|
||||
$(MAKE) $(MAKESILENT) -f CMakeFiles/cppTemp.dir/build.make CMakeFiles/cppTemp.dir/Logger.cpp.s
|
||||
.PHONY : Logger.cpp.s
|
||||
|
||||
main.o: main.cpp.o
|
||||
.PHONY : main.o
|
||||
|
|
@ -210,12 +186,9 @@ help:
|
|||
@echo "... edit_cache"
|
||||
@echo "... rebuild_cache"
|
||||
@echo "... cppTemp"
|
||||
@echo "... d35.o"
|
||||
@echo "... d35.i"
|
||||
@echo "... d35.s"
|
||||
@echo "... dl.o"
|
||||
@echo "... dl.i"
|
||||
@echo "... dl.s"
|
||||
@echo "... Logger.o"
|
||||
@echo "... Logger.i"
|
||||
@echo "... Logger.s"
|
||||
@echo "... main.o"
|
||||
@echo "... main.i"
|
||||
@echo "... main.s"
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
Start testing: Jul 08 15:43 CST
|
||||
Start testing: Jul 09 14:56 CST
|
||||
----------------------------------------------------------
|
||||
End testing: Jul 08 15:43 CST
|
||||
End testing: Jul 09 14:56 CST
|
||||
|
|
|
|||
Binary file not shown.
14
main.cpp
14
main.cpp
|
|
@ -3,6 +3,20 @@
|
|||
|
||||
|
||||
int main() {
|
||||
try {
|
||||
Logger logger("log.txt");
|
||||
int id = 42;
|
||||
std::string action = "login";
|
||||
double duration = 2.333;
|
||||
std::string channel = "World";
|
||||
logger.log(Loglevel::INFO, "User {} performed {} in {} seconds", id, action, duration);
|
||||
logger.log(Loglevel::DEBUG,"Hello {}", channel);
|
||||
logger.log(Loglevel::WARNING,"This is a log message.");
|
||||
logger.log(Loglevel::ERROR,"Multiple placeholders : {}, {}, ",1,2,3);
|
||||
} catch (const std::exception&e) {
|
||||
std::cerr << "Error is" << e.what() << std::endl;
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue