Update: A commenter suggests using InsuFixer which simplifies this process greatly.
A few weeks ago Google Play started throwing an error the error "Insufficient storage available." I looked at my phone storage and saw ~4gb available. Annoyed, I googled around for fixes. Most forums suggest clearing caches, repairing permissions, or deleting random things out of /data/app. Of course, none of which fixed my issues.
I decided to poke around with adb shell to see what was going on and discovered a great tool that ships with the SDK called monitor.
Running monitor gives a live view (LogCat) of whatever is going on while the error condition is happening.
I assume you don't have android sdk on OS X so here are the steps, you can watch them too.