メインコンテンツまでスキップ

セットアップ

1. サポートバージョン​

  • Oracle 12c 以上のバージョンをサポートします。

Cloud環境のOracleサポート状況​

Cloud環境Oracleサポート有無
AWS✅ サポート
Azure❌ 非サポート
OCI✅ サポート
NCP❌ 非サポート
GCP❌ 非サポート
SCP❌ 非サポート

2. 必須権限​

基本必要権限​

モニタリングアカウント(例: exemone)に次の権限を付与する必要があります。

GRANT CREATE SESSION TO exemone;
GRANT SELECT ANY dictionary TO exemone;
GRANT SELECT_CATALOG_ROLE TO exemone;
GRANT ALTER system TO exemone;

-- AWS RDSの場合は追加権限
GRANT EXECUTE ON rdsadmin.rdsadmin_util TO exemone;

ANY dictionary権限の付与が難しい場合​

SELECT ANY dictionary権限の付与ができない環境では、下記のtable/viewに対する個別のSELECT権限が必要です。

収集項目必要なtable/view
ActiveSessionv$session, v$sql, v$sort_usage, v$transaction, v$process, v$statname, v$sesstat, v$sqltext
ArchivedLogv$archived_log
ASMv$asm_disk, v$asm_diskgroup
DBStatv$sysstat
DBVersionv$instance, v$version
DBWaitv$system_event
EventNamev$event_name
InitBootTimeV$INSTANCE
InitInstanceproduct_component_version, v$license
InitSQLStatv$sqlstats, v$sql
KillSessionALTER SYSTEM KILL SESSION 権限
OSStatV$OSSTAT
Parameterv$parameter
RACStatusv$instance, v$option
Rmanv$rman_backup_job
segmentdba_segments
SessionCountv$session
SessionDetailv$transaction, v$process, v$sort_usage, v$session, v$sql
SessionMetricv$sessmetric
SessionStatMetricv$sesstat
SessionStatusv$session
SgaStatv$sgastat
SQLBindv$sql_bind_capture
SQLMetricv$sql
SQLPlan / PlanDetail / PlanDiffv$sql_plan
SQLReasonv$sql_shared_cursor
SQLStatv$sqlstats, v$sql
StatNamev$statname
TableDBA_TAB_Modifications
Tablespacedba_free_space, dba_data_files
Tempv$sort_segment, dba_tablespaces, dba_temp_files
Timemodelv$sys_time_model
Undodba_undo_extents, dba_data_files, dba_rollback_segs
WaitChaindba_objects, v$wait_chains

3. 事前設定​

Oracleインスタンスは、Setting > DatabaseのInstance登録/編集画面のCustom Configurationで下記のキー値を設定することで、指標収集方式を細かく調整できます。

exemONEモニタリングオプション設定​

オプション名デフォルト値説明
oracle.is_oracle_linuxfalseOracle Linux環境でOS指標をエージェントではなくクエリ方式で収集します。
oracle.segment100SegmentMessage収集queryの入力argument
oracle.sqlbind_elapsedtime10SqlStatMessage収集結果のelapsed timeが該当値を超過した場合、SqlBindMessageを収集
oracle.sqlbind_executions50SqlStatMessage収集結果のexecutionsが該当値を超過した場合、SqlBindMessageを収集
oracle.sqlplan_elapsedtime10SqlStatMessage収集結果のelapsed timeが該当値を超過した場合、SqlPlanMessageを収集
oracle.sqlplan_executions50SqlStatMessage収集結果のexecutionsが該当値を超過した場合、SqlPlanMessageを収集
oracle.sqlreason_elapsedtime10SqlStatMessage収集結果のelapsed timeが該当値を超過した場合、SqlReasonMessageを収集
oracle.sqlreason_executions50SqlStatMessage収集結果のexecutionsが該当値を超過した場合、SqlReasonMessageを収集
oracle.sqltext_process_batch100SqlTextデータの1回あたりの収集件数設定
oracle.sqltext_process_interval5SqlTextデータの収集間隔設定
oracle.sqltext_process_lru_count10000SqlTextデータの収集リスト管理件数設定
oracle.use_sidfalseDB接続設定

oracle.is_oracle_linuxオプション設定​

  1. Setting > DatabaseでOracle Instanceを登録します。このときOS Resourceの収集はdisableに設定します。
  2. 1で登録したInstanceの編集 > Custom Configurationでoracle.is_oracle_linuxオプションをtrueに設定した後、保存します。

オプションをtrueに設定すると、次の指標がクエリ方式で収集されます。

指標Data ID計算方式
(OS) Db Cpu Usage (%)db_oracle_os.db_cpu_usagebusy_time / (busy_time + idle_time) * 100のデルタ値
(OS) Db Memory Usage (%)db_oracle_os.db_memory_percentinactive_memoryが存在する場合: (1 - ((free_memory + inactive_memory) / total_memory)) * 100
inactive_memoryが存在しない場合: (1 - (free_memory / total_memory)) * 100
  • 指標を直接設定できる画面(例: ダッシュボード、Oracle > Multi View、Trend Analysis > Trendチャートなど)には上記の指標が反映されます。
  • DB共通で表示される画面(例: Database > Instance ListのCPU/Memoryデータ、Database > Instance DetailのMetric)には反映されません。