J
I'm looking for a C++ source code library to implement a file-based FIFO queue. I would like to spool timestamped process data records to a file to be picked up later by another process that would log the records to a remote database, which may or may not reachable.
More specifically, it should work just like a named pipe except:
-it doesn't block when the buffer is full - the pipe just gets longer (or fatter?)
-Data is persistent - i.e. will survive process or platform going down.
-Would have parameters to limit file size, set block sizes, etc.
-Would be nice if records were in human-readable form, but they don't have to be.
-Would be nice if the 'empty' API had a peek option - if the writes fail to the database, then the data should stay in the queue.
Seems a generic tool like this has been done a thousand times, but I haven't figured out the magic words to find it yet.
Thanks,
Joe Manns
More specifically, it should work just like a named pipe except:
-it doesn't block when the buffer is full - the pipe just gets longer (or fatter?)
-Data is persistent - i.e. will survive process or platform going down.
-Would have parameters to limit file size, set block sizes, etc.
-Would be nice if records were in human-readable form, but they don't have to be.
-Would be nice if the 'empty' API had a peek option - if the writes fail to the database, then the data should stay in the queue.
Seems a generic tool like this has been done a thousand times, but I haven't figured out the magic words to find it yet.
Thanks,
Joe Manns