Interview Question: Virtualization and software quality assurance
In general, I'd use the hypervisors' API to monitor the VM status, while killing it's process, to simulate failure. The API based monitoring will write logs with timestamps.
This can be the broad answer, as for specifics - it would depend on what hypervisor and management are used