Does eventvwr or cluster log clearly shows the reason for a failover?
What's the effective way to find the cause of a failover?
I would start with the SQL error log, of course. Then you can check Event Viewer.
Both provide very good information about what went wrong and what caused the fail over. For instance, if a LUN went off or got disconnected, most likely you will see iSCSI errors on the Windows Error log followed by SQL errors.
Also, if you have a monitoring system, go back and check historical data there too. I use RedGate monitoring and I can go back in time and review the logs and SQL's health a min before.