catch all subscribe errors and call onError callback