https://github.com/fmotalleb/hemend_async_log_recorder
An Extension to the hemend_logger package that enables asynchronously logging.
https://github.com/fmotalleb/hemend_async_log_recorder
async async-logger dart file-logger flutter logger logging stream websocket
Last synced: about 2 months ago
JSON representation
An Extension to the hemend_logger package that enables asynchronously logging.
- Host: GitHub
- URL: https://github.com/fmotalleb/hemend_async_log_recorder
- Owner: FMotalleb
- License: mit
- Created: 2023-05-23T11:15:57.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-02-26T05:02:04.000Z (about 1 year ago)
- Last Synced: 2025-02-13T04:42:32.432Z (3 months ago)
- Topics: async, async-logger, dart, file-logger, flutter, logger, logging, stream, websocket
- Language: Dart
- Homepage:
- Size: 208 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Hemend Async Logger
[![License: MIT][license_badge]][license_link]
[][pub_link]
[][git_link]
[][pub_link]
[][pub_link]
[][git_link]
[](https://github.com/FMotalleb/hemend_async_log_recorder/actions/workflows/main.yaml)
[](https://github.com/FMotalleb/hemend_async_log_recorder/actions/workflows/publish.yaml)
[](https://codecov.io/gh/FMotalleb/hemend_async_log_recorder)The presented software package expands upon the existing functionality of the hemend_logger package, which can be found at . This extension enhances the capabilities of the package by introducing asynchronous logging functions that enable the recording of logs using various methods, such as post requests, websockets, files, and more.
At its current state, the package includes built-in support for post request, web socket and file logging functionalities, allowing users to seamlessly utilize these mechanisms for recording logs.


## Installation 💻
**❗ In order to start using Hemend Async Logger you must have the [Dart SDK][dart_install_link] installed on your machine.**
Add `hemend_async_log_recorder` and `hemend_logger` to your`pubspec.yaml`:
```yaml
dependencies:
hemend_logger:
hemend_async_log_recorder:
```Install it:
```sh
dart pub get
```---
## Usage
Just add desired logger to the hemend_logger instance and start logging
```dart
HemendLogger.defaultLogger()
..addListener(
HemendAsyncLogRecorder.post(postUrl: 'https:///record'),
)
..addListener(
HemendAsyncLogRecorder.file(filePath: 'example/test.log'),
);
```---
## Continuous Integration 🤖
Hemend Async Logger comes with a built-in [GitHub Actions workflow][github_actions_link] powered by [Very Good Workflows][very_good_workflows_link] but you can also add your preferred CI/CD solution.
Out of the box, on each pull request and push, the CI `formats`, `lints`, and `tests` the code. This ensures the code remains consistent and behaves correctly as you add functionality or make changes. Code coverage is enforced using the [Very Good Workflows][very_good_coverage_link].
[dart_install_link]: https://dart.dev/get-dart
[github_actions_link]: https://docs.github.com/en/actions/learn-github-actions
[license_badge]: https://img.shields.io/badge/license-MIT-blue.svg
[license_link]: https://opensource.org/licenses/MIT
[very_good_coverage_link]: https://github.com/marketplace/actions/very-good-coverage
[very_good_workflows_link]: https://github.com/VeryGoodOpenSource/very_good_workflows
[git_link]: https://github.com/FMotalleb/hemend_async_log_recorder
[pub_link]: https://pub.dev/packages/hemend_async_log_recorder