How to get workflow state transition history for a node?
The Workflow module has a lot of API calls that you can use to get the relevant information you need.

Here are all the workflow functions you can access

It seems like you might be looking specifically for the workflow_get_workflow_node_history_by_nid function

Here you supply a node ID and it will return the history results as an object where you can find the information you need.  It even joins it with the users table so you have all the relevant user information.