Wednesday, February 4, 2026

How to Monitor When Oracle Management Packs Are Activated or Used in Oracle database ?

 

How to Monitor When Oracle Management Packs Are Activated or Used

Oracle provides multiple internal views, advisor logs, and AWR/ADDM activity indicators that reveal accidental or unauthorized use of:

  • Diagnostics Pack
  • Tuning Pack

Below is a complete monitoring framework.


1. Check if Diagnostic/Tuning Features Were Used (Primary Indicator)

Oracle logs all usage in DBA_FEATURE_USAGE_STATISTICS.

Run:

SELECT name, detected_usages, total_samples, last_usage_date
FROM dba_feature_usage_statistics
WHERE name IN (
'Automatic Workload Repository',
'ADDM',
'SQL Tuning Advisor',
'SQL Access Advisor',
'ASH',
'AWR Baseline',
'Real-Time SQL Monitoring'
)
ORDER BY last_usage_date DESC;

What to look for:

  • DETECTED_USAGES > 0 → feature was used
  • LAST_USAGE_DATE not null → pack was accessed
  • If you disabled packs but this still updates → OEM or some script is still invoking features

This is the most authoritative licensing indicator.


2. Monitor the Management Pack Parameter (Active Status)

Run:

SHOW PARAMETER control_management_pack_access;

Expected safe value:

NONE

If it changes to:

  • DIAGNOSTIC
  • DIAGNOSTIC+TUNING

➡️ Packs are active and billable.

For automated monitoring, query:

SELECT value
FROM v$parameter
WHERE name='control_management_pack_access';


3. Check if AWR Snapshots Are Being Generated (Diagnostics Pack Usage)

If snapshots exist, AWR is active → Diagnostic Pack is considered used.

SELECT snap_id, begin_interval_time, end_interval_time
FROM dba_hist_snapshot
ORDER BY snap_id DESC
FETCH FIRST 10 ROWS ONLY;

If you see new snapshots after disabling:

➡️ Something is still collecting AWR data.


4. Monitor ADDM Execution (Diagnostics Pack)

SELECT task_name, created, status
FROM dba_advisor_tasks
WHERE advisor_name='ADDM';

If any task appears → Diagnostics Pack used.


5. Monitor SQL Tuning Advisor Activity (Tuning Pack)

SELECT task_name, created, status
FROM dba_advisor_tasks
WHERE advisor_name='SQL TUNING ADVISOR';

If tasks ran → Tuning Pack usage triggered.

Also check:

SELECT COUNT(*) FROM DBA_ADVISOR_LOG WHERE advisor_name='SQL TUNING ADVISOR';


6. Monitor SQL Access Advisor Activity (Tuning Pack)

SELECT task_name, created, execution_start
FROM dba_advisor_tasks
WHERE advisor_name='SQL ACCESS ADVISOR';

Any appearance = Tuning Pack usage.


7. Detect Automatic SQL Monitoring (Diagnostics + Tuning Pack)

SQL Monitoring is part of Tuning Pack.

Check ASH/SQL Monitor usage:

SELECT sql_id, status, sid, username, elapsed_time
FROM v$sql_monitor;

If rows appear → Tuning Pack active.


8. OEM Activity Monitoring (Common Source of Accidental Usage)

OEM may trigger pack usage even if DBAs don't run anything manually.

Check OEM repository:

For AWR/ASH report generation:

SELECT * FROM mgmt$awr_reports ORDER BY time_start DESC;

For SQL Tuning Advisor tasks created by OEM:

SELECT task_name, created
FROM dba_advisor_tasks
WHERE task_name LIKE 'SYS_AUTO_SQL%';

If OEM is generating:

  • AWR Reports
  • ADDM Reports
  • SQL Tuning tasks

➡️ Packs are being used even if parameter says NONE.


9. Enable Audit Monitoring for Parameter Changes

Track if someone re-enabled packs:

AUDIT ALTER SYSTEM;

Then check:

SELECT username, timestamp, sql_text
FROM dba_audit_trail
WHERE sql_text LIKE '%control_management_pack_access%';

This is extremely valuable during SOX audits.


📈 10. Recommended Scheduled Monitoring Script

Run daily/weekly through OEM/cron.

SELECT 'FEATURE_USAGE', name, detected_usages, last_usage_date
FROM dba_feature_usage_statistics
WHERE detected_usages > 0
UNION ALL
SELECT 'AWR_SNAP', snap_id, begin_interval_time, end_interval_time
FROM dba_hist_snapshot
WHERE begin_interval_time > SYSDATE-1;

Generate alerts if ANY usage is detected.


🎯 Summary – What You Must Monitor

Check AreaWhat It DetectsIndicates Usage
DBA_FEATURE_USAGE_STATISTICSCore featuresPrimary licensing indicator
DBA_HIST_SNAPSHOTAWR snapshotsDiagnostics Pack
ADDM TasksDiagnostics PackYes
SQL Tuning AdvisorTuning PackYes
SQL Access AdvisorTuning PackYes
SQL MonitoringTuning PackYes
OEM ActivityAuto usage triggersVery common
Audit of parameter changeRe-enabling packsCompliance breach


No comments:

Post a Comment

How to Monitor When Oracle Management Packs Are Activated or Used in Oracle database ?

  How to Monitor When Oracle Management Packs Are Activated or Used Oracle provides multiple internal views , advisor logs, and AWR/ADDM act...