Proporciona una interfaz clásica de estilo Heartbeats a Heartbeats-simple.
Se requiere la utilidad pkg-config durante la compilación para ubicar algunas de estas dependencias.
Este proyecto usa Cmake.
Para construir, ejecutar:
mkdir _build
cd _build
cmake ..
makePara instalar, ejecute con los privilegios adecuados:
make install En Linux, la instalación generalmente coloca bibliotecas en /usr/local/lib y archivos de encabezado en /usr/local/include .
La instalación debe ejecutarse antes de desinstalar para tener un manifiesto.
Para desinstalar, ejecute con privilegios adecuados:
make uninstallEl siguiente fragmento de código es un ejemplo de uso estándar de latidos del corazón.
const uint64_t WINDOW_SIZE = 20 ;
const char * LOG_FILE = "heartbeat.log" ;
const uint64_t ITERATIONS = 1000 ;
const uint64_t WORK_PER_ITERATION = 10 ;
hbsc_ctx hb ;
uint64_t i , j ;
// initialize
hbsc_init ( & hb , WINDOW_SIZE , LOG_FILE );
// should first issue a starter heartbeat to initialize start values (tag and work values are ignored)
hbsc ( & hb , 0 , 0 );
for ( i = 0 ; i < ITERATIONS / WORK_PER_ITERATION ; i ++ ) {
// do some amount of application work
for ( j = 0 ; j < WORK_PER_ITERATION ; j ++ ) {
do_work ();
}
// issue a heartbeat
hbsc ( & hb , i , WORK_PER_ITERATION );
}
// cleanup
hbsc_finish ( & hb );Tenga en cuenta el corazón de inicio antes de que realmente comience el trabajo: si no se emite, el primer registro se perderá. Esto se usa en lugar de establecer los valores de inicio en la función INIT para que los retrasos entre la inicialización del corazón y el trabajo inicial no afecten los resultados de la sincronización.
Encuentre esto y fuentes de proyectos relacionadas en la Organización Libheartbeats en Github.
Este proyecto se origina en: https://github.com/libheartbeats/heartbeats-simple-classic
Los informes de errores y las solicitudes de extracción de correcciones de errores y mejoras son bienvenidas.