- move data selection into own function and add exception handling
- log errors in _fetch()