{"id":16606499,"url":"https://github.com/mfreiholz/humblelogging","last_synced_at":"2025-10-17T08:09:50.383Z","repository":{"id":10771527,"uuid":"13036458","full_name":"mfreiholz/humblelogging","owner":"mfreiholz","description":"HumbleLogging is a lightweight C++ logging framework. It aims to be extendible, easy to understand and as fast as possible.","archived":false,"fork":false,"pushed_at":"2023-04-26T18:21:16.000Z","size":313,"stargazers_count":28,"open_issues_count":8,"forks_count":10,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-07-27T05:28:21.151Z","etag":null,"topics":["cpp","logger","logging-library"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mfreiholz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-09-23T13:26:38.000Z","updated_at":"2025-03-01T17:29:23.000Z","dependencies_parsed_at":"2024-10-28T10:29:24.862Z","dependency_job_id":"531e3ed0-ae28-487d-be98-c8a21c7b9188","html_url":"https://github.com/mfreiholz/humblelogging","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/mfreiholz/humblelogging","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfreiholz%2Fhumblelogging","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfreiholz%2Fhumblelogging/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfreiholz%2Fhumblelogging/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfreiholz%2Fhumblelogging/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mfreiholz","download_url":"https://codeload.github.com/mfreiholz/humblelogging/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfreiholz%2Fhumblelogging/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274231229,"owners_count":25245659,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cpp","logger","logging-library"],"created_at":"2024-10-12T01:09:03.397Z","updated_at":"2025-10-17T08:09:45.349Z","avatar_url":"https://github.com/mfreiholz.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HumbleLogging Framework (C++)\r\n\r\n\u003cimg src=\"https://raw.githubusercontent.com/mfreiholz/humblelogging/master/logo.png\" title=\"HumbleLogging\" style=\"float: right;\"\u003e\r\n\r\nHumbleLogging is a lightweight C++ logging framework.  \r\nIt aims to be extendible, easy to understand and as fast as possible.\r\n\r\n[![Build Status](https://api.travis-ci.org/mfreiholz/humblelogging.svg?branch=master)](https://travis-ci.org/mfreiholz/humblelogging)\r\n\r\n__Do NOT use `master` branch for productivity!__\r\n\r\n# Documentation\r\n\r\n- [Features](#)\r\n\t- [Built-in Appenders](#)\r\n\t- [Built-in Formatters](#)\r\n- [Build \u0026 Installation](#)\r\n\t- [Build from source](#)\r\n\t- [Build options](#)\r\n- [Tutorial](#)\r\n\t- [Creating a test project](#)\r\n\t- [Configure by file](#)\r\n\t- [Using custom log output format](#)\r\n- [Benchmarks](#)\r\n\t- [Submit your benchmark](#)\r\n\t- [Existing benchmarks](#)\r\n- [Download](#)\r\n- [Feedback \u0026 Contribute](#)\r\n\r\n\r\n# Features\r\n\r\n- Portable logging library (C++17).\r\n- Dependency free, no third-party libraries required.\r\n- Synchronized logging accross multiple threads.\r\n- Configuration from external file.\r\n- Changable log-levels, appenders (outputs) and formats during runtime.\r\n- No restriction on logger names.\r\n- Multiple appenders for loggers (outputs).\r\n- Simple API to implement custom appenders and formatters.\r\n\r\n## Built-in Appenders\r\n\r\n- **NullAppender**  \r\n  Doesn't log anything. It is mostly used for performance testing.\r\n\r\n- **ConsoleAppender**  \r\n  Prints log-events to `stdout`.\r\n\r\n- **FileAppender**  \r\n  Writes all log-events to a single file.\r\n\r\n- **RollingFileAppender**  \r\n  Writes all log-events to a file which gets rolled as it reaches\r\n  a configured size (e.g.: file.log, file.log.1, file.log.2, ...).\r\n  The file's size and the number of files can be configured.\r\n\r\n## Built-in Formatters\r\n\r\n- **SimpleFormatter**  \r\n  The default Formatter includes the most important information in a\r\n  predefined layout.\r\n\r\n- **PatternFormatter**  \r\n  Provides placeholders to define a custom log messages format  \r\n  (e.g.: `[%date] [%lls] [line=%line] [file=%filename] %m\\n`)\r\n\r\n\r\n# Build \u0026 Installation\r\n\r\n## Prerequisites\r\n\r\nHumbleLogging only needs a _C++17_ compiler and an available\r\nimplementation of the standard template library (STL).\r\n\r\nIt has been tested on Linux and Microsoft Windows.\r\n\r\n## Build from source\r\n\r\nDownload or clone the latest release package (*.tar* or *.zip*).  \r\n__Note:__ Building from source requires [CMake][cmake-homepage] (\u003e=2.8) installed on your machine.\r\n\r\n```bash\r\ngit clone git@github.com:mfreiholz/humblelogging.git\r\ngit checkout \u003cversion-tag\u003e\r\n```\r\n\r\n```bash\r\ntar -xfz humblelogging-XXX.tar.gz\r\ncd humblelogging\r\n```\r\n\r\n```bash\r\ncd humblelogging/\r\nmkdir build\r\ncd build\r\ncmake ..\r\n```\r\n\r\nAfter you ran these commands you have a *Makefile* or\r\nVisual Studio solution (*.sln*) to build the library.\r\n\r\n*Linux:* Type `make` as next command in your console to build.\r\n\r\n*Windows:* Double click the `HumbleLogging.sln` and build with\r\nVisual Studio.\r\n\r\n## Build options\r\n\r\nHumbleLogging can be build in different variants which makes it\r\npossible to run in many different environments with best settings.\r\nAll build-options must be provided as CMake command line arguments with\r\nthe `-D` parameter. You can append as many options as you want.\r\n\r\n**-DBuildShared=ON** `default=OFF`\r\n\u003e Builds the library as static or shared library.\r\n\r\n**-DBuildTests=ON** `default=OFF`\r\n\u003e Builds all sub projects in the `./tests/` folder, based on GTest.\r\n\u003e You do not need these projects to include the library in your project,\r\n\u003e but they might be used for testing purposes.\r\n\r\n**-DBuildApps=OFF** `default=ON`\r\n\u003e Builds all sub projects in the `./apps/` folder.\r\n\u003e You do not need these projects to include the library in your project,\r\n\u003e but they might be used for testing purposes.\r\n\r\n# Usage\r\n\r\nSee `./apps/basic_example` for a working example.\r\n\r\n# Contribute \u0026 Feedback\r\n\r\nFeel free to write a review, comparison, benchmark or\r\n[submit bugs and features][github-issues] on GitHub.\r\n\r\n## Contributors\r\n\r\nManuel Freiholz, Germany, [GitHub Profile](https://github.com/mfreiholz)\r\nDaniel Toplak, Germany, [GitHub Profile](https://github.com/hsimpson)\r\n\r\n\r\n[cmake-homepage]: https://www.cmake.org/\r\n[github-issues]: https://github.com/mfreiholz/humblelogging/issues","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmfreiholz%2Fhumblelogging","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmfreiholz%2Fhumblelogging","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmfreiholz%2Fhumblelogging/lists"}