denrepo

OraclePerformance

What active sessions are doing right now

Active user sessions grouped by wait event, with CPU shown separately. A quick live picture before you reach for ASH.

Not yet verified. How scripts are tested

ora-waits-now.sql
1CLEAR COLUMNS2SET LINESIZE 120 PAGESIZE 100 TRIMOUT ON TAB OFF3COLUMN activity   FORMAT A454COLUMN wait_class HEADING "WAIT CLASS" FORMAT A155COLUMN sessions   FORMAT 9,9906 7SELECT CASE WHEN state = 'WAITING' THEN event ELSE 'ON CPU' END AS activity,8       CASE WHEN state = 'WAITING' THEN wait_class ELSE 'CPU' END AS wait_class,9       COUNT(*) AS sessions10FROM v$session11WHERE status = 'ACTIVE'12  AND type = 'USER'13  AND (state <> 'WAITING' OR wait_class <> 'Idle')14GROUP BY CASE WHEN state = 'WAITING' THEN event ELSE 'ON CPU' END,15         CASE WHEN state = 'WAITING' THEN wait_class ELSE 'CPU' END16ORDER BY sessions DESC;

Save it as ora-waits-now.sql and run it with SQL> @ora-waits-now.

Open in denrepo

Helps with

Part of these runbooks

More Oracle scripts: Performance