abumq / easyloggingpp

C++ logging library. It is extremely powerful, extendable, light-weight, fast performing, thread and type safe and consists of many built-in features. It provides ability to write logs in your own customized format. It also provide support for logging your classes, third-party libraries, STL and third-party containers etc.
MIT License
3.75k stars 918 forks source link

How much does easyloggingpp rely on STL? #837

Open lgacnik opened 1 year ago

lgacnik commented 1 year ago

I'm not reporting a bug, I'm just looking for plain information about easyloggingpp in general.

I'm looking for a lightweight, fast, and thread-safe logger which for an embedded device. I see that easyloggingpp uses Standard Template Library which is something I want to avoid for now. However if easyloggingpp doesn't heavily rely on STL I would consider trying it out. Note that I'm not knowledgable about STL, I'm just wary of it since my hardware specs are limited. So, generally I would ask whether easyloggingpp logger heavily relies on STL or/and is spdlog applicable for use on embedded devices as well?

abumq commented 1 year ago

Hi @MucaGinger thanks for reaching out with this question.

The reliance of Easylogging++ on STL is minimal like the data structures (vector, map, streams). You can test it on the embedded device that you want to build for and see how it performs. I have tested it with small embedded device previously few years ago and as far as i remember i didn't have any issues but can't remember the details on specs etc.

The library makes use of preprocessor directives to enable logging for certain libraries including STL but by default its off and won't effect the build time or performance when logging an STL structure for example.

Let me know how you go. Feel free to close this issue if its resolved.