This is how I would debug a Selenium session to find out what is happening:
Step-by-step debugging: Most IDE's allow you todo step-by-step debugging, you could set a break point just before the point you want to investigate. This will pause the execution of the test and lets you examine the browser with its own tools. You can step thru each line of code one by one and monitor the behaviourbehavior. See this video for example for an example
Video recording: Record the test session with a screen-recorder or use one of the online Selenium grids like Sauce labs or TestingBot, both offer recordingto record of the test session by default and give enough free minutes to analyseanalyze most issue'sissues. After the recording, you can playback frame by frame.
Sleeps: Like others suggest, you can add sleepsa sleep or increase the default wait-times. Personally, I am not a fan of this because you might need to rerun the test a couple of times if the sleeps aresleep is not long enough.