Publishing and reading uORB topics to and from a queue

I am trying to log some changes to (non-Px4) parameters on my board. I have created a uORB topic which I publish whenever I vary these parameters.

When trying to read the uORB topic in order to log each and every parameter change, I do not know how to check how many uORB messages are queued, or how to read them all out correctly. If I use to the usual orb_check() and orb_copy() approach I only get the latest changed published message read out from the uORB and I miss the others messages that were published just before it in the loop.

Any pointers/help would be appreciated.