The problem we have is that the end-users tell us about the freeze adter the event so we can not look at the transactions and sessions till after. On the few occaisions that we have been able to check, everything has looked fine.
The crux of the problem is that we can not narrow it down to one cause. We have other apps using the same database and have tested with one on, one off e.t.c. and have had varying results on when the freezing occurs.
It all depends on whether your database freezes or the application. I don't think the database freezes, so at the time the freeze is occuring you can check outstanding thatnsaction with 'onstat -x'
'onstat -g sql' will give you an overview of all sessions.
You can check you message log for any errors on the database level.
onstat -p will show you the amount of lock wait, deadlocks, sequential scans etc.
All these could cause some sort of an application freeze. In that case, you might experience locking problems or index problems or database design problems.