{"id":44332403,"url":"https://github.com/bringauto/ba-logger","last_synced_at":"2026-02-11T10:09:57.941Z","repository":{"id":59660014,"uuid":"475864737","full_name":"bringauto/ba-logger","owner":"bringauto","description":"BringAuto logger library - simple logging abstraction","archived":false,"fork":false,"pushed_at":"2025-04-08T09:53:08.000Z","size":407,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-08T10:36:00.690Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bringauto.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":"2022-03-30T12:17:56.000Z","updated_at":"2025-04-08T09:53:07.000Z","dependencies_parsed_at":"2024-08-01T08:52:57.349Z","dependency_job_id":null,"html_url":"https://github.com/bringauto/ba-logger","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/bringauto/ba-logger","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bringauto%2Fba-logger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bringauto%2Fba-logger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bringauto%2Fba-logger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bringauto%2Fba-logger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bringauto","download_url":"https://codeload.github.com/bringauto/ba-logger/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bringauto%2Fba-logger/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29331747,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T06:13:03.264Z","status":"ssl_error","status_checked_at":"2026-02-11T06:12:55.843Z","response_time":97,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2026-02-11T10:09:56.924Z","updated_at":"2026-02-11T10:09:57.936Z","avatar_url":"https://github.com/bringauto.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BringAuto Logger Library\n\nBringAuto Logger Library provides a robust and stable API for logging.\n\nThe library serves as a consistent API to provide access to different logging libraries, formats, and technologies.\n\nThis library consists of header files (.hpp) and multiple implementations. To use the library compile it with your desired implementation,\ninstall it (or create a package) and follow the instructions in the Usage section.\n\n\n\n## Requirements\n\nBefore building the library, ensure the following dependencies are installed on your host system:\n\n- **CMake** [\u003e= 3.20]\n- **C++20**\n- **[cmlib](https://github.com/cmakelib/cmakelib)**\n- **[spdlog](https://github.com/gabime/spdlog)**\n- **[Google Test](https://github.com/google/googletest/blob/main/googletest/README.md)** (for running tests)\n\n## Build Instructions\n\nTo build the library, follow these steps:\n\n```bash\nmkdir -p _build \u0026\u0026 cd _build\ncmake .. -DCMAKE_INSTALL_PREFIX=\u003cpath_where_to_install\u003e -DLIB_TYPE=SPDLOG -DCMAKE_BUILD_TYPE=Release [-DCMLIB_DIR=\u003cpath_to_cmlib_dir\u003e]\nmake -j 8\n```\n\nOther configuration options\n\n- `BRINGAUTO_SYSTEM_DEP=[ON|OFF]` - set the variable to `ON` if the system installed dependencies should be used instead of precompiled ones\n\n### Environment Variable\n\nIf CMLIB is installed and the `CMLIB_DIR` environment variable is set, you can omit the `-DCMLIB_DIR=\u003cpath_to_cmlib_dir\u003e` option.\n\n### Implementations\n\nSpecify the logging implementation type with the `-DLIB_TYPE=\u003cTYPE\u003e` option. Supported types are:\n\n- **DUMMY**: For testing purposes; outputs log messages to the console.\n- **SPDLOG**: Utilizes the [spdlog](https://github.com/gabime/spdlog) logging library.\n\n### Example Application\n\nTo build the example application, enable the `BRINGAUTO_SAMPLES` option in CMake:\n\n```bash\ncmake .. -DBRINGAUTO_SAMPLES=ON\n```\n\nThe executable for the example application will be located in the `./_build/example/` directory.\n\n### Running Tests\n\nTo build and run tests, use the following options:\n\n- **Build Tests**: Use the flag `-DBRINGAUTO_TESTS=ON`. Test executables will be located in the `./_build/tests/` directory.\n\nTo execute the tests, run:\n\n```bash\nctest .\n```\n\nfrom within the `_build` directory after configuring with `-DBRINGAUTO_TESTS=ON`.\n\n## Usage\n\nTo integrate the library into your project:\n\n1. **Generate a Package**: Use the `cpack` command to create a package.\n2. **Install the Package**: Install the package on your system.\n3. **Include in CMake**:\n\n    ```cmake\n    FIND_PACKAGE(libbringauto_logger)\n    TARGET_LINK_LIBRARIES(\u003ctarget\u003e bringauto_logger::bringauto_logger)\n    ```\n\n4. **Initialize Logger**:\n\n    - Call `Logger::addSink()` with the desired sink and parameters.\n    - Call `Logger::init()` to finalize the setup.\n    - After initialization, you can use the logging functions. Refer to the example application for detailed usage.\n\n## Installation\n\nTo install the library, enable the `BRINGAUTO_INSTALL` option in CMake:\n\n```bash\ncmake .. -DBRINGAUTO_INSTALL=ON\n```\n\nTo create a package, use the `BRINGAUTO_PACKAGE` option and rename the package to follow our naming convention: `\u003cpackagename\u003e_\u003cversion\u003e_\u003carchitecture\u003e-\u003cdistro\u003e.\u003cextension\u003e`. For example: `libbringauto_logger_1.5.01_amd64-ubuntu2004.zip`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbringauto%2Fba-logger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbringauto%2Fba-logger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbringauto%2Fba-logger/lists"}