原文:
Displaying CPU Graphs For Different Time Ranges in Enterprise Manager
このご質問は、ツイッター上で @matvarsh30 さんから寄せられたものです。いわく、「いろいろな期間のCPU使用状況をEnterprise Managerで表示させたいのですが、どうすればできますか?」
皆さん、トップアクティビティの画面はお気に入りですよね。でもこの機能は、ビューのカスタマイズ性ということになると限られていて、このユーザーもそこで行き詰まっていました。このデータを表示する方法はいくつもありますが、ここでは私のお気に入りの一つである機能、トップアクティビティ画面の代替として作られたASH分析に焦点を当てたいと思います。
ASH分析用にAWRデータを保持する
注:この手順によるCPUグラフの表示は、EM12cとEM13cで使用できます。ターゲットメニューの位置が違うこと以外は大きく変わっていません
(ASH分析の)デフォルトの表示期間は1時間です。ASH分析はAWRデータに依存していますから、過去8日間分の詳細な情報を得るのは難しくありませんが、管理対象データベース側の保存期間期間を適切に変更し、8日間ぶん以上のAWRを見たり分析したりできるようにしておくことは大切です。私の信条としては、もしDiagnostics PackとTuning Packを持っているのであれば、その価値を最大限引き出せるように保存期間をデフォルト値から伸ばすために次のコマンドをSQL*Plusから実行します(適切な権限を持ったユーザーで):
BEGIN
DBMS_WORKLOAD_REPOSITORY.modify_snapshot_settings(
retention => 86400, -- 単位は分, 86400は60日
interval => 30); -- 単位は分, 負荷テストなどをするときなどにデフォルト値60から変更します。(通常は)60分間隔で問題ありません
END;
/
これで、EMメトリックデータ(ロールアップあり)だけでなく、ASH分析に必要なAWRでもディープな分析やレポーティングができるようになります。
これを前提として、この質問にこたえるグラフを作ってみましょう。「データベースのCPU使用を1週間以上とか、10日、30日、60日といった形で表示するには?」
パワーユーザー向けのビューに切り替える
いずれかのデータベースに(EMから)ログインすると、「パフォーマンス」ドロップダウンメニューからASH分析にアクセスすることができます。11gかそれ以下のデータベースの場合、パッケージをインストールしてEMCC用のビューを作らないといけないかもしれません。でもこれはEnterprise Managerのパワフルな機能を活用するために必要なことです。ASH分析はデータベースのバージョンが10.2.0.4以上の場合に動作します。
ASH分析のページにはいると、1時間分のインスタンスのデータが表示されますが、これを1週間のビューに変えるには、「Week(週)」をクリックしてからビューを動かし、画面下部のグラフに1週間分のデータが表示されるようにするだけです: