DMXエージェント設定
DMXエージェントに必要な設定は、whatap.confファイルに作成します。 設定できるオプションについては、次を参照してください。
基本オプション
-
license String
エージェントのインストール時にサーバーから付与されたプロジェクトアクセスキーを設定します。プロジェクトアクセスキーには、エージェントが属するプロジェクトとセキュリティ通信のためのパスワードキーが含まれています。
-
whatap.server.host String
既定値
127.0.0.1,127.0.0.1エージェントが収集したデータを送信するWhaTap収集サーバーのIPアドレスを設定します。収集サーバーの冗長化で2つ以上のIPを所有する場合は、コンマ(,)を区切り文字として使用します。設定したIPアドレスには、収集サーバーproxyデーモンがリスニング状態でサービスされる必要があります。
-
ipckey String
ipcs -mコマンドを使用して取得できます。モニタリングするOracleのKey値(16進数)です。ノートipcsコマンドは、プロセス間の通信(IPC)に関する情報を提供します。-mオプションは、共有メモリリソースを照会します。
-
rac_name String
RACOracleのReal Application Clusters(RAC) クラスターグループに束ねられているインスタンスのグループ名を設定するオプションです。 このオプションを使用して、複雑なRACクラスター グループ名を簡潔で識別しやすい名前に設定できます。 このオプションによって設定されたRACクラスターグループ名は、WhaTapモニタリングサービス画面で確認できます。
例えば、RACクラスタグループ名が'my_long_rac_cluster_group_name'のように長い場合、ユーザーは次のように簡潔な名前で設定できます。
whatap.confrac_name=my_rac_cluster_groupWhaTapモニタリングサービスで'my_rac_cluster_group'と表示され、ユーザーはそのRACクラスターグループをすばやく識別してモニタリングできます。
データベースデータ収集オプション
-
bind_elapse Int
既定値
3SQLが設定した時間(秒)より長く実行すると、バインド値を収集するように設定します。 設定値が
0であれば、オプションは機能しません。bind_intervalを設定しなくてもSQLの実行時間が設定値より長い場合は、バインド値が収集されます。 -
bind_interval Int
既定値
0バインドキャプチャ間隔を秒単位で設定します。 既定値(
0)を設定するとバインドキャプチャしません。v$sql_bind_captureで設定した間隔単位で収集します。データが多いかもしれないので、最後に収集した時 間以降でありながら
bind_max_count分だけ収集します。 -
bind_max_count Int
既定値
1000バインドキャプチャ値を収集するときに、いくつまで収集するかを設定します。 最後の収集時間以降のバインドキャプチャ値のみを収集できます。
-
codefrom / codeto String
SQL textで韓国語の文字化けの問題がある場合、文字エンコーディングを変えるオプションです。 指定する値は、iconv -lのリストから選択できます。
例) codefrom=EUC-KR, codeto=UTF-8
-
conn_fail_count Int
既定値
1515回連続connection errorが発生した時に通知を送信します。 希望する回数を入力して、通知の発生基準を調整できます。
-
event String
既定値
db file scattered read、db file sequential read、direct path read、direct path write、enq: TX - row lock contention,latch free,library cache lock,library cache pinRAC環境の時は、gc cr block receive time、gc current block receive timeの2つの指標を基にさらに収集します。
イベント関連の指標を収集するように設定します。
v$system_event、v$event_nameなどのEVENTカラムを参照して収集したい指標名を作成してください。event+=などの方法で作成すると、基本指標とともに追加で収集できます。 空白なくコンマ(,)を区切り文字として利用して複数入力できます。イベント1つあたり、次の3つの値を収集します。
- time waited : 当該イベントで待ち受けた総時間(単位: 1/100秒)。例) db file sequential read time waited
- timeouts : タイムアウトで終わった待機回数。例) db file sequential read total timeouts
- total waits : 当該イベントが発生した総回数。例) db file sequential read total waits -
interval Int
既定値
3データ収集サイクルを秒単位で設定します。
ノートOracle Proは、メモリアクセスを通じてアクティブセッション及びSQL情報を1/20秒単位で収集します。 このように収集されたデータに基づいてstatを生成するため、データの損失が少ないです。
intervalオプションによって現在のDB状態を送信する際、stat、event、SQL stat、xview、lock、PQ情報はメモリから直接読み込み、迅速に処理されます。 一方、bind情報、DB parameter、plan情報、テーブル、テーブルスペース、Wait classなどはクエリーを通じて収集します。 -
multi_db_stat Boolean
既定値
trueMulti DBを使用する場合、データベースごとに指標を収集するか、全体インスタンス単位で合算(sum)して収集するかを設定します。
-
ora_hidden_param Boolean
既定値
falseヒドゥンパラメータ値を収集するかを設定します。 ヒドゥンパラメータを収集するには、オプション値を
trueに設定してください。 -
plan_change Int
既定値
1プランの変更履歴を収集するかを設定します。
1: sysを含まない2: sysを含む
-
plan_elapse Int
既定値
3実行時間が5秒以上かかるプランを収集します。
-
segments Boolean
既定値
trueセグメントサイズの情報を収集します。 統計/レポート > テーブルスペースのサイ ズメニューで該当データベースまたはテーブルスペースを選択すると、サイズ情報を確認できます。
-
segments_exclude_sys Int
既定値
1sysに該当するアカウントを除いて、セグメントのサイズ情報を収集します。
-
segments_hour Int
既定値
5セグメントサイズの情報を収集する時刻を設定します。 既定値は
5であり、午前5時に収集を始めます。 -
segments_max_count Int
既定値
50テーブルスペースごとにサイズの大きいセグメント50個だけを収集して保存します。
-
segments_min_size Int
既定値
10
セグメントサイズの情報を収集する最小単位の既定値は10MBです。 設定した値より小さいセグメントは収集しません。
-
segments_sys String
既定値:
Details
<summary>計18個のアカウントを表示</summary>
`APPQOSSYS`, `AUDSYS`, `CTXSYS`, `DBSFWUSER`, `DBSNMP`, `DVSYS`,
`GSMADMIN_INTERNAL`, `LBACSYS`, `MDSYS`, `OJVMSYS`, `OLAPSYS`,
`ORDDATA`, `ORDSYS`, `OUTLN`, `SYS`, `SYSTEM`, `WMSYS`, `XDB`sysに該当するアカウントの一覧です。 上記のアカウントに追加する場合は、
segments_sys+='xxx'で追加できます。 -
stat String
既定値:
Details
<summary>計20個の指標を表示</summary>
`CPU used by this session`, `data blocks consistent reads - undo records applied`, `db block changes`,
`db time`, `enqueue waits`, `execute count`, `logons current`, `opened cursors current`,
`parse count (hard)`, `parse count (total)`, `physical reads`, `physical writes`, `redo entries`,
`rollback changes - undo records applied`, `session logical reads`, `sorts (disk)`, `sorts (memory)`,
`transaction tables consistent reads - undo records applied`, `user commits`, `user rollbacks`統計関連の指標を収集するように設定します。
v$sysstat、v$statnameなどのNAMEカラムを参照して収集したい指標名を作成してください。stat+=などの方法で作成すると、基本指標とともに追加で収集できます。 空白なくコンマ(,)を区切り文字として利用して複数入力できます。 -
tablespace Int
既定値
1テーブルスペースの free space を照会する際に使用するビューを選択します。 環境によって
dba_free_spaceの照会で query timeout が発生する場合は、別のビューに変更できます。1:dba_free_spaceを照会2:dba_lmt_free_spaceを照会3:usage_metricsを照会
対応バージョン: dmx 1.0.1x 以上
-
tablespace_interval Int
既定値
60テーブルスペース情報の収集周期を分単位で設定します。 最小値は
5であり、5より小さい値を設定すると 5 分に自動補正され、補正したことを知らせるログが記録されます。60より大きい値も設定できます。対応バージョン: dmx 1.0.8c 以上
-
tablespace_send_opt Int
既定値
0テーブルスペース情報の送信方式を設定します。 テーブルスペースが多い環境で同一データが重複送信されてエラーが発生する問題を改善できます。
0: 分割送信1: 一括送信
対応バージョン: dmx 1.0.8c 以上
-
topevent Int
既定値
50イベント関連の主要指標の変化を高い数値順に設定された値だけ収集します。
stat_top、event_topカテゴリのデータを使用します。ノートこのオプションは、値を設定しないと
topstatの設定値に従って動作します。 -
topstat Int
既定値
50統計関連の主要指標の変化を高い数値順に設定された値だけ収集します。
stat_top、event_topカテゴリのデータを使用します。 -
trace_tkprof_path String
SQL trace 実行時の tkprof 実行ファイルのパスを指定します。
対応バージョン: dmx 1.0.4y 以上
-
waitclass_opt Int
既定値
1Wait Class 指標の収集方式を設定します。
1: Memory ベースの収集。 他の指標と同じ周期で収集します。1以外の値: 既存の方式(クエリベース、1 分周期固定)を維持します。
対応バージョン: dmx 1.0.8c 以上
-
xos Boolean
既定値
trueデータベースサーバーのリソースを追加でモニタリングするためのXOS エージェント(xos.conf)の活性化オプションです。
-
xview_min Int
既定値
100(1秒)単位はセンチ秒(centisecond, 1/100秒)です。 このオプションは、設定した値よりも長い経過時間(elapsed time)を持つジョブのみを処理します。
-1: このオプションを非活性化します。0: すべての作業を収集します。
ユーザーメトリック収集 (SQLMON)
SQLMON は、ユーザー定義の SQL 結果を定期的に収集し、メトリクスとして保存します。 数値を返し、負荷が低いクエリに適しています。
複数行の結果は最大 100 件まで保存し、結果値が int または float の場合は数値として認識します。 SELECT 以外に INSERT、UPDATE、DELETE 文も使用できます。
INSERT/UPDATE/DELETE 対応: dmx 1.0.8s 以上 · 複数行(最大 100 件)保存: dmx 1.0.5g 以上
-
sqlmon Int
既定値:
11: dbx と sqlmon を同時に実行2: sqlmon のみ実行
対応バージョン: 2.3.5 以上
設定
- dbx エージェント配下に
sqlmonディレクトリを作成し、収集したいクエリを<filename>.sqlファイルとして作成します。
dbx/
└── sqlmon/
├── active_sessions.sql
└── lock_count.sql
- 収集するクエリを
<filename>.sqlファイルとして保存します。
.sql ファイルの1行目に実行オプションを、2行目以降に SQL 文を記述します。
周期(分);動作時間;タグ名
SQL文
| 項目 | 説明 | 例 |
|---|---|---|
| 周期 | 実行周期(分単位)、最小値 1 | 1 → 1分ごとに実行 |
| 動作時間 | HHMM-HHMM 形式、カンマ(,)で複数の時間帯を指定可能。0 の場合は常時実行 | 0900-1100 → 09:00〜11:00のみ実行 |
| タグ名 | メトリクスに保存するタグ名。省略時はファイル名がタグ名として使用されます | whatap |
1;0900-1100;whatap
SELECT count(*) FROM active_sessions
1;0
SELECT count(*) FROM active_sessions
- 動作時間は日付をまたいで設定できます。(例:
2300-0100→ 23:00〜翌日01:00) - タグ名を省略する場合、動作時間の後にセミコロン(
;)を付けないでください。 - SQL 文の末尾にセミコロン(
;)を付けないでください。
-
whatap.confで SQLMON を有効化します。 -
エージェントを再起動します。
-
サイトマップ > メトリクス照会 メニューで、
sqlmonカテゴリを確認します。
# whatap.conf
sqlmon=1
AES256暗号化の適用
WhaTap DMXエージェントは、収集されたデータを暗号化してサーバーに送信します。 データの重要度や設定によって変更できます。 基本的にXOR演算とAESアルゴリズムによる暗号化を使用し、平文を128ビット単位に分割して暗号化、復号を行います。 ユーザー設定により、256ビットまで拡張できます。
WhaTap DMXエージェントをインストールした経路で whatap.confファイルに次のようにオプションを追加します。
cypher_level=256
設定を追加してから、エージェントを再起動してください。
エージェント名の設定
自動設定する
エージェント設定(whatap.conf)で名前を設定しないと、エージェント名はDMX-{hostname}と同じように、ホスト名が自動的に組み合わされて指定されます。
手動設定する
エージェント名を直接設定したい場合は、whatap.confファイルでwhatap.nameまたはobject_nameオプションに目的の名前を入力します。ユーザーが入力した名前がエージェント名として設定されます。
whatap.name=agent-1234
# or
object_name=agent-1234