[rocprofiler-systems] Update logging to use spdlog library (#2428)

## Motivation

- Structured logging with proper log levels (TRACE, DEBUG, INFO, WARNING, ERROR, CRITICAL)
- Better performance through compile-time formatting
- Consistent formatting using fmt library
- Runtime log level control via arguments and environment variables
- Easier maintenance and debugging capabilities

## Technical Details

- Added spdlog as a submodule and integrated it into CMake build system
- Created new `rocprofiler-systems-logger` library wrapping spdlog functionality
- Replaced custom logging macros (`ROCPROFSYS_VERBOSE`, `ROCPROFSYS_DEBUG`, `ROCPROFSYS_FATAL`, `ROCPROFSYS_REQUIRE`, `ROCPROFSYS_CI_THROW`, etc.) with spdlog equivalents (`LOG_DEBUG`, `LOG_WARNING`, `LOG_CRITICAL`, etc.)
- Implemented log level control through command-line arguments and environment variables
- Converted assertion macros to proper error handling with exceptions and std::abort()
This commit is contained in:
Milan Radosavljevic
2026-01-14 21:27:51 +01:00
committed by GitHub
orang tua 499127c0b9
melakukan 318d13870f
111 mengubah file dengan 2657 tambahan dan 2602 penghapusan
+4
Melihat File
@@ -98,3 +98,7 @@
[submodule "projects/rocprofiler-systems/external/filesystem"]
path = projects/rocprofiler-systems/external/filesystem
url = https://github.com/gulrak/filesystem.git
[submodule "projects/rocprofiler-systems/external/spdlog"]
path = projects/rocprofiler-systems/external/spdlog
url = https://github.com/gabime/spdlog.git
tag = v1.16.0