Hi,
First of all, I'm quite surprised that you can experience such a problem with pmemlog pool. The pmemlog metadata is just one integer (offset), so even if pmemlog_append() operation is torn by program crash, you should still be able to open the pool - only the last append data would be lost. Perhaps your problem is related to the changes you've made to pmemlog API?
Anyway, as Andy said, using debug version of libpmemlog may help to identify the problem (you may need to set the higher log level to see more details, i.e.: export PMEMLOG_LOG_LEVEL=4).
But you can also use our "pmempool" utility to diagnose the issue:
$ pmempool check -v <path_to_your_pool_file>
HTH,
K.