1 dépôt
Configuration of memory buffers used for background log processing to maintain responsiveness.
Distinct from Log Buffering: Focuses on the management of the temporary buffer for responsiveness, not just the decoupling of I/O.
Explore 1 awesome GitHub repository matching data & databases · Asynchronous Buffer Management. Refine with filters or upvote what's useful.
EasyLogger est une bibliothèque de journalisation C/C++ légère et un framework asynchrone conçu pour les systèmes embarqués, les appareils IoT et les objets connectés. Il fonctionne comme un logger efficace en ressources et un gestionnaire de mémoire flash, fournissant des outils pour le débogage bas niveau et l'enregistrement d'événements système avec des besoins minimaux en ROM et RAM. Le projet se distingue par un modèle de journalisation asynchrone qui met en mémoire tampon les messages dans un thread séparé, empêchant les opérations de journalisation de bloquer l'exécution de l'application en temps réel. Il inclut un gestionnaire de mémoire flash spécialisé qui utilise une mémoire tampon circulaire pour conserver les journaux dans un stockage non volatil, garantissant que les données critiques sont préservées lors des redémarrages de l'appareil. La bibliothèque couvre un large éventail de capacités d'observabilité, notamment les assertions système pour la validation d'état, le filtrage de sévérité à la compilation et à l'exécution, et la génération de dumps hexadécimaux binaires bruts. Elle prend en charge l'enrichissement des métadonnées avec des horodatages et des identifiants de thread, ainsi qu'une interface portable pour acheminer les journaux vers des destinations personnalisées telles que des ports série ou des fichiers. Le système garantit l'intégrité des données grâce à la synchronisation des écritures et fournit des mécanismes pour le vidage manuel des tampons et la récupération des journaux stockés.
Processes logs in the background and manages temporary buffers to maintain application responsiveness.