not sure whether it is better to use Log or throw another exception as you do here.