7 動的ランブックの使用
動的ランブックを使用すると、問題の診断および解決について対象分野の専門家から手続きに関する知識と専門知識を入手し、それらをEnterprise Managerに格納して他のEnterprise Managerユーザーがアクセスし実行できるようにすることができます。動的ランブックは、インシデントおよびメトリックでサポートされています。
この章の構成は、次のとおりです。
機能の更新
機能/更新 | リリース |
---|---|
関連ターゲットのメトリック・ステップのサポート | Enterprise Manager 13cリリース5更新21 (13.5.0.21) |
「すべてのメトリック」ページからのランブックの起動 | Enterprise Manager 13cリリース5更新21 (13.5.0.21) |
ステップの指示およびノート・ステップでのEMページへのリンクのサポート | Enterprise Manager 13cリリース5更新21 (13.5.0.21) |
ステップ出力をランブック変数に保存 | Enterprise Manager 13cリリース5更新15 (13.5.0.18) |
ランブック・セッションでのコメント | Enterprise Manager 13cリリース5更新15 (13.5.0.17) |
SQLでのバインド・パラメータとしてのランブック変数 | Enterprise Manager 13cリリース5更新15 (13.5.0.17) |
メトリック・ステップ・チャートの警告しきい値およびクリティカしきい値 | Enterprise Manager 13cリリース5更新15 (13.5.0.17) |
オラクル社から提供されているランブックおよびOSコマンド・ステップ | Enterprise Manager 13cリリース5更新15 (13.5.0.15) |
インポート/エクスポートおよびノート・ステップの外部リンク | Enterprise Manager 13cリリース5更新11 (13.5.0.11) |
関連ランブック | Enterprise Manager 13cリリース5更新10 (13.5.0.10) |
類似作成 | Enterprise Manager 13cリリース5更新8 (13.5.0.8) |
動的ランブックの初期リリース | Enterprise Manager 13cリリース5更新7 (13.5.0.7) |
動的ランブックについて
背景と概念
動的ランブックとは、問題解決のためにIT運用担当者が従う手順を文書化したものです。動的ランブック内のステップは、多くの場合、問題にタイムリーに対応し解決するための一貫した方法を提供する役割を担う、対象分野の専門家の運用経験に基づいています。
動的ランブックは、通常は、メトリック・データの参照、ターゲット間でのデータの関連付け、問題を解決するためのEnterprise Managerリポジトリまたはターゲット・データベースに対するSQLの実行を含む一連の順序付けされた命令(ステップ)で構成されています。このようなタスクの多くは(すべてではない)、全体をEnterprise Manager内で実行できます。動的ランブックを使用すると、ユーザーは、Enterprise Manager内でこれらのステップを実行できます。
用語
- ランブック
インシデントを診断しそれに対応するための標準的な方法を提供するように設計された、順序付けられた命令、データおよびSQLのセット。
- ランブック・セッション
ユーザーによるランブックの実行
- ランブック変数
ランブックに適用されるコンテキスト値。メトリック名、ターゲット名、ターゲット・タイプなどがあります。これらは、ランブック・セッションが実行されているインシデントまたはメトリックから移入することも、前のランブック・ステップの出力にすることもできます。つまり、ランブック変数の値は、前のステップのいずれかからの出力に基づいてセッション・ユーザーが手動で入力できます。前のステップからこれを手動で行う手順は、そのステップ内の説明で示されている可能性があります。
前提条件
リポジトリSQLおよびターゲットSQLランブックのステップが機能するためには、次のOMSプロパティを設定する必要があります。
oracle.sysman.db.restfulapi.executesql.repository.query.enable
oracle.sysman.db.restfulapi.executesql.target.query.enable
oracle.sysman.db.restfulapi.executesql.target.update.enable
oracle.sysman.db.restfulapi.executesql.throttle.max.req.per.user.interval.sec
oracle.sysman.db.restfulapi.executesql.throttle.max.req.per.user
oracle.sysman.db.restfulapi.executesql.throttle.max.concurrent.request
例:
emctl set property -name oracle.sysman.db.restfulapi.executesql.repository.query.enable -value true -sysman_pwd "<your password>"
emctl set property -name oracle.sysman.db.restfulapi.executesql.target.query.enable -value true -sysman_pwd "<your password>"
emctl set property -name oracle.sysman.db.restfulapi.executesql.target.update.enable -value true -sysman_pwd "<your password>"
emctl set property -name oracle.sysman.db.restfulapi.executesql.throttle.max.req.per.user.interval.sec -value 60 -sysman_pwd "<your password>"
emctl set property -name oracle.sysman.db.restfulapi.executesql.throttle.max.req.per.user -value 30 -sysman_pwd "<your password>"
emctl set property -name oracle.sysman.db.restfulapi.executesql.target.update.enable -value true -sysman_pwd "<your password>"
emctl set property -name oracle.sysman.db.restfulapi.executesql.throttle.max.concurrent.request -value 20 -sysman_pwd "<your password>"
ターゲットSQLタイプのステップを実行するには、データベースで「データベース上で任意のSQLを実行」および「ターゲットの接続」権限が必要です。
動的ランブックの操作
大まかに述べると、動的ランブックの操作には次のワークフローが含まれます。
新しい動的ランブックの作成
ランブックを作成するには次の3つの方法があります:
インシデント・マネージャに移動し、ランブックを作成するインシデントを選択してから、ランブックの作成リンクをクリックします。

ターゲット・ホームページの「すべてのメトリック」ページに移動し、ランブックを作成するメトリックを選択します。「Runbookセッション」セクションで、「Runbookの作成」リンクをクリックします。

または、ランブック・ドラフトを作成してから、ランブックを作成するコンテキストおよびコンテキストIDを指定することで、ランブックを作成します。コンテキストIDは、インシデント・コンテキストまたはメトリック・コンテキストのいずれかです。インシデントの場合は、インシデント・マネージャからインシデントIDを取得します。メトリックの場合は、ターゲットの「すべてのメトリック」ページでメトリックに関連付けられている「Runbookセッション」セクションからメトリック・コンテキストを取得します。

これらすべての方法で、インシデントまたはメトリックを選択すると、ランブック・ステップの開発およびテストに使用するコンテキストが提供されます。ランブックが完成した後は、そのランブックを公開できます。
動的ランブックの新バージョンの作成
公開された動的ランブックの新バージョンを作成するには、そのランブックからランブック・ドラフトを作成し、そのステップを編集し、そのランブックを再公開します。ランブックの新バージョンを公開すると、公開された新バージョンが旧バージョンと置き換えられます。

公開された動的ランブックの使用
インシデントまたはメトリックのコンテキストから動的ランブックを実行することで、ランブック・セッションが作成されます。

動的ランブック・ユーザーのタイプ
動的ランブック・ユーザーには、ランブックの作成、実行および管理メンテナンスで特定の役割を担う様々なタイプがあります。
- ランブック作成者
このユーザーは次のことができます。
- ランブックの作成および公開
- 公開されたランブックの表示と非表示
ランブックの作成権限が必要です。
- ランブック・ユーザー
このユーザーは次のことができます。
- 公開されたランブックの実行(ランブック・セッションの開始)
- ユーザーは、インシデントを表示できる場合は、ランブック・セッションを実行できます。
すべてのEnterprise Managerユーザーはランブック・ユーザーです。
- ランブック管理者
このユーザーは次のことができます。
- 任意のランブックの削除および表示と非表示
- 公開されたランブックの表示と非表示
- 他のユーザーによって作成された、完了とマークされているランブック・セッションのリストおよび削除
- 完了とマークされたランブック・セッションの有効期限の延長
- インシデントまたはジョブへのアクセスなしでのランブック・セッション・データの表示
ランブックの管理権限が必要です。
ノート:
Enterprise Managerスーパー管理者には、ランブック・ライフサイクルのすべての面(作成、管理、編集、公開)への完全なアクセス権があります。動的ランブックへのアクセス
Enterprise Managerコンソールで、次の場所からランブックにアクセスできます。
ランブックリスト・ページ
「エンタープライズ」メニューから、「モニタリング」、ランブックの順に選択します。ランブックページに、すべての公開済ランブックが表示されます。ランブックの作成権限がある場合は、使用可能なランブック・ドラフトも表示されます。このページからランブック・ドラフトの作成を開始できます。ただし、新しいランブックを作成する方法としては、ランブックを作成するインシデントのコンテキストでの、インシデント・マネージャからの実行をお薦めします。
ランブック・セッションページ
「エンタープライズ」メニューから、「モニタリング」、ランブック・セッションの順に選択します。ここでは、自分が所有しているランブック・セッション(アクティブと完了の両方)のリストが表示されます。新しいランブック・セッションを開始するには、インシデント・マネージャに移動し、ランブック・セッションを開始するインシデントを見つけ、ランブック・セッションの開始のオプションをクリックします。
ターゲットの「すべてのメトリック」ページ
任意のターゲット・ホームページ・メニューから、「モニタリング」、「すべてのメトリック」の順に選択します。メトリックのリストからメトリックを選択すると、メトリック・チャートの横に「Runbookセッション」セクションが表示されます。ここから、そのメトリックで使用可能なランブックからランブック・セッションを開始したり、そのメトリックのコンテキストで新しいランブックを作成できます。
インシデント・マネージャ
「エンタープライズ」メニューから、「モニタリング」、「インシデント・マネージャ」の順に選択します。特定のインシデントをクリックすると、そのインシデントについて作成されたランブック・セッションが表示されます。インシデントに関連する可能性のある上位(最大3つ)のランブックを表示するオプションもあります(詳細は、「関連ランブック」を参照)。ここから、ランブック・セッションの開始や、インシデントのコンテキスト内でのランブックの新規作成ができます。
すべてのメトリック
ターゲット・インスタンス・ホームページで、「ターゲット」メニューから、「モニタリング」、「すべてのメトリック」の順に選択します。メトリック・グループ内の特定のメトリックをクリックすると、インシデント・マネージャに表示されるものと同様の「Runbook」セクションが表示され、ランブック・セッションを開始したり、新しいランブック・ドラフトを作成するための同じオプションがすべて表示されます。
動的ランブックの作成
どのランブック作成者も動的ランブックを作成できます。
-
インシデントの動的ランブックを作成するには、「エンタープライズ」メニューから、「モニタリング」、「インシデント・マネージャ」の順に選択します。インシデントの行をクリックしてそのインシデントの詳細を表示してから、ランブック・セッションリージョンに移動します。現在アクティブなランブック・セッションがある場合は、それがリストされます。
または、「すべてのメトリック」ページに移動して「Runbook」にアクセスします。メトリックの動的ランブックを作成するには、適切なターゲットの「すべてのメトリック」ページでメトリックを見つけます。メトリックのパフォーマンス・チャートの横に「Runbookセッション」リージョンが表示されます。
- ランブック・セッションリージョンで、ランブックの作成をクリックします。新規ランブック・オーサリングUIがインシデントまたはメトリックのコンテキストで表示されるので、ランブックのステップを作成できます。
- デフォルトでは、オーサリングUIが開き、最初のステップとして概要および前提条件が表示されます。ここで、新しいランブックで達成する内容、およびすべてのランブック・ステップを完了するために必要な前提条件について説明を入力します。読みやすくするために、概要および前提条件ステップでは、マークダウン記法による単純な書式がサポートされています。テキスト入力領域内の情報アイコン(「I」)をクリックして、テキスト・エディタでサポートされているマークダウン要素のリストを表示します。マークダウン書式は、ステップの保存時に適用されます。
- 「ステップの保存」をクリックします。
- ステップの追加ドロップダウン・メニューから、定義するステップ・タイプを選択します。次の4つのステップ・タイプがあります。
- ノート: ノート・ステップを使用してユーザーに指示を与えます。このステップでマークダウン書式を使用でき、ランブック変数を含めることもできます。ランブック変数の詳細は、ランブックのUIを参照してください。
- メトリック・データ: 一定期間のメトリックのグラフィカル・ビューを表示します
- リポジトリSQL: 文書化されたEnterprise Managerリポジトリ・スキーマ・ビュー(MGMT$)に対してSQL文を実行できます。
ノート:
Enterprise Managerリポジトリ・スキーマからの他の要素へのアクセスはサポートされていません。 -
ターゲットSQL: Enterprise Managerにおいて任意のデータベース・ターゲットに対してSQLを実行できます。
- OSコマンドおよびスクリプト: コマンドラインで行うように単一の操作を実行したり、ステップ定義の一部として入力するスクリプトの実行に使用するインタプリタを指定できます。
ステップ・タイプとそれらの使用方法の詳細は、「ステップのタイプ」を参照してください。
- ステップ・タイプを選択すると、ステップ・オーサリングUIが表示されます。ステップのタイトル、そのステップでの実行内容の説明、指示、および結果の解釈に関するその他の情報を入力します。
-
デフォルトで、ステップには、インシデントまたはメトリックのコンテキストからの設定が事前移入されます。ステップ・タイプによっては、現在の選択内容をクリックしてポップアップ・セレクタを表示しドロップダウン・リストから新しい値を選択することで、「メトリック・グループ名」などのその他のステップ・パラメータを選択できます。
ノート:
右側に、インシデント・コンテキストからプルされた変数のリストが表示され、それらの中から選択できます。要件を満たす変数がない場合は、ランブック変数の追加をクリックすることで独自の変数を作成できます。
ステップを定義するときに、ステップの出力からデータを割り当てて、作成者が定義した既存のランブック変数の値を移入できます。
Enterprise Manager 13cリリース5更新21 (13.5.0.21)以降では、ターゲット名や内部ターゲット・タイプなど、別のターゲット・インスタンスの詳細を直接設定することも、ランブック変数を使用して設定することもできます。
-
変数に保存(オプション)
ステップを定義するときに、次のステップに従って、ステップの出力からデータを割り当てて、作成者が定義したランブック変数の値を移入できます:
ノート:
ランブック変数には、単一ステップの出力の1つのセルのみから値を割り当てることができます。- 変数に保存をクリックしてタブを開きます。
- ステップの出力から、変数に保存する値を含むセルをクリックします。これを行うと、ランブック変数に保存ダイアログが表示されます。
- ランブック変数に保存ダイアログ・ボックスで、使用可能な変数を示すドロップダウン・リストをクリックして開き、データを含めるものを選択して、「保存」をクリックします。別のステップからランブック変数に値を保存する場合、作成者が定義したランブック変数はドロップダウン・リストに表示されません。リストが空の場合、または新しい変数を作成する場合は、リストの上部にある新規ランブック変数の作成をクリックし、ポップアップ・ウィンドウを使用して新しい変数を作成します。
変数に保存タブの右側にある保存済変数リストには、ステップ出力からデータを取得する変数が表示されます。
-
ステップの指示でのEMページへのリンク(オプション)
マークダウン言語を使用して、EMページへのリンクを指定します。リンクを構築するには、EMページに移動し、ホストおよびポート名の後に"
/
"で始まるURLの部分をコピーします。たとえば、URLがhttp://my.emsite.com:1234/em/faces/si-host-home?type=oracle_database&target=Oemrep_Database
の場合、これを[Target Home Page](/em/faces/si-host-home?)といったリンクとして使用できます。その他の例:
[Runbook Page](/em/faces/runbookPage)
[Target Page](/em/faces/core-uifwk-targetSearch-home)
URLで変数を使用することもできます。たとえば、ターゲット
Oemrep_Database
がtype=oracle_database
の場合、リンクが[Target Home Page](/em/faces/si-host-home?type=$target_type&target=$target_name)
になるように、それぞれ変数target_type
およびtarget_name
に挿入できます。 - 「実行」をクリックしてステップを実行し、現在のパラメータ設定で定義されているチャートや表などのレンダリングされたビジュアライゼーションを表示します。複数のテストを実行して、自分が設定した内容で目的の結果が得られることを確認できます。ステップを実行すると、ランブック変数に保存するように選択された値がそれらのランブック変数に割り当てられるようになります。
- 「ステップの保存」をクリックします。これで、ステップは使用準備が完了し、ステップのリストに追加されるようになります。
- ステップの追加が終了した後、それをまだ編集できるようにランブック・ドラフトを作成しました。それはランブックリスト・ページに表示されます。(「エンタープライズ」メニューから、「モニタリング」、ランブックの順に選択します)。ドラフト・モードでは、作成者のみがランブックを表示および編集できます。
ステップのタイプ
次のタイプのステップを作成できます。
ノート:
ステップに関する次の制限事項は、すべてのステップ・タイプに適用されます。- 1MBのデータ(OMSプロパティ
oracle.sysman.core.runbooks.maxStepDataSizeKB
を介して構成可能) - ランブックごとに20ステップ(
oracle.sysman.core.runbooks.maxSteps
OMSプロパティを介して構成可能)
- ノート・ステップ
ランブックに関連する情報または指示を提供することを目的としたあらゆるタイプのテキスト。ノートではプレーン・テキストを使用できますが、マークダウン言語による単純な書式にも対応できます。ノート・ステップの作成時には、サポートされている書式を示すマークダウン参照表が提供されます。
入力:
- 任意のタイプのテキスト
- テキストの基本書式(マークダウン)
- 箇条書きリスト(1レベル)
- 番号付きリスト(1レベル)
- 太字テキスト
- 斜体テキスト
- 太字、斜体テキスト
- ヘッダー(h3、h4、h5)
- 水平方向の罫線
- 引用
- ランブック変数
- 外部リンク
次のマークダウン表記法を使用して、ノート・ステップ内に2つのタイプの外部リンクを指定できます。
特定のURLへのリンク:
[Link Text](http//www.anothercompany.com)
My Oracle Supportノートへのリンク(MOS IDのみが必要):
[MOS Link Text](MOS:MOS ID)
。例:[Enterprise Manager configuration issues](MOS:1234567.1)
EMページへのリンク:
[Target Page](/em/faces/core-uifwk-targetSearch-home)
ノート:
外部リンクは、Enterprise Manager 13cリリース5更新11 (13.5.0.11)以降で使用できます。
出力:
ランブック変数を値に置き換えた書式設定済テキスト。
例:
Remember to have a named credential for the target database **$ora_target_name** on which the FRA incident has occurred.ノート・ステップでは次のように示されます: Remember to have a named credential for the target database orcl_database on which the FRA incident has occurred.
- メトリック
このステップでは、指定したメトリックの時系列チャートが表示されます。デフォルトでは、コンテキストで渡されたメトリックですが、それを変更できます。インシデントまたはイベントのコンテキストでランブックを起動すると、イベントが発生した時期もチャートに表示されます。
Oracle Enterprise Manager 13cリリース5更新17 (13.5.0.17)では、メトリックの現在の警告およびクリティカルのしきい値を表す線がチャートに表示されます。これにより、メトリック・トレンドを警告およびクリティカルのしきい値に対して評価できます。
Enterprise Manager 13cリリース5更新21 (13.5.0.21)以降では、ターゲット名や内部ターゲット・タイプなど、別のターゲット・インスタンスの詳細をターゲット・セレクタ入力ボックスに直接入力することも、ランブック変数を使用して設定することもできます。
ノート:
構成メトリックはサポートされていません。入力
- ターゲット名/指定
- メトリック・グループ
- メトリック
- メトリック・キー値
- 時間範囲の表記法:
開始日と終了日の指定により、メトリック期間を指定することもできます。これらの時間は、nowまたはevt_timeからの相対時間にできます。
- nowは、現在時間に相当します。
- evt_timeは、イベントが発生した日時に相当します。
受信コンテキストからの既知のランブック変数ora_event_timeは、evt_timeに相当します。キーワードnowまたはevt_timeの後に+または-を続け、最後に整数とm(分数の場合)、h(時間数の場合)またはd(日数の場合)を使用します。
例:
now
: ステップ実行時の現在時間now - 6h
: 現在時間の6時間前evt_time + 3d
: イベントが発生した3日後
出力:
- 時系列線グラフの表示
- 凡例
ノート:
インシデントまたはイベントのコンテキストでランブックが起動された場合は、指定した時間範囲にインシデント発生時間が含まれていれば、インシデント発生時間がチャートに表示されます。
- リポジトリSQL
リポジトリ・スキーマ内のMGMT$ビューに対して実行するSQL文を指定します。リポジトリ・ビュー表(MGMT$またはGC$)に対するSQLの実行のみに限定されています。BINDパラメータを使用できます。ステップ・サイズ・データには上限があります。SQL問合せの上限は、20列と1000行、または1MBのデータ(先に上限に達したほう)です。
バインド・パラメータの使用
ランブック変数からSQL文に値をバインドするには、コロンの後にランブック変数参照を続けます。次に例を示します。
select target_name from MGMT$TARGETS where target_type = :$ora_target_type_name
これにより、SQL文中にバインド・パラメータが作成され、そのSQLの実行時に、
$ora_target_type_name
の値がそのバインド・パラメータの値として使用されます。Enterprise Manager 13cリリース5更新21 (13.5.0.21)以降では、リポジトリSQLステップを使用して、別のターゲット・インスタンスの詳細(ターゲット名および内部ターゲット・タイプ)を見つけることができます。これらの値はランブック変数に割り当てることができ、ランブック変数はメトリック・ステップ編集画面でステップの値を制御するために使用できます。
SQL問合せの結果セットの書式設定
- 問合せの列リストにCLOBが含まれている場合は、TO_CHAR()関数でCLOBのcolumn_nameをラップします。
例:
SELECT em_varchar_col, to_char(clob_column) from MGMT$CLOB_TABLE
- 問合せの列リストにタイムスタンプが含まれている場合は、TO_CHAR()関数で日付列名をラップし、正しい日付書式マスクを指定します。
例:
SELECT em_varchar_col, to_char(em_timestamp_col,'DD-MON-YYYY HH24:MI:SS') from MGMT$DATE_TABLE
- ユーザー定義変数が日付を表す文字列であり、その変数が問合せのWHERE句で使用される場合は、その変数名をTO_TIMESTAMP()またはTO_DATE()関数でラップし、対応する日付書式マスクを指定します。
例:
SELECT em_varchar_col,to_char(em_timestamp_col,'DD-MON-YYYY HH24:MI:SS') FROM MGMT$DATE_TABLE where em_timestamp_col < to_date(:$l_user_defined_date_variable,'DD-MON-YYYY')
- 問合せの列リストにCLOBが含まれている場合は、TO_CHAR()関数でCLOBのcolumn_nameをラップします。
- ターゲットSQL
任意のデータベース・ターゲットに対して事前定義済SQL (単一文のみ)を実行する機能。SELECT文の実行に加え、データ操作言語(DML)およびデータ定義言語(DDL)を実行できます。SELECT文であるかDDLやDMLであるかに関係なく、名前付き資格証明が必要です。
前提条件:
データベース・ターゲットでターゲットSQLステップを実行するには、データベース・ターゲットに対して次の権限が必要です:
- データベースでの任意のSQLの実行
- ターゲットの接続
- ステップで参照される名前付き資格証明へのアクセス
入力
- ターゲット名
- ターゲット・タイプ
- SQL
- 名前付き資格証明
ランブック変数の使用
ターゲットSQL問合せ、DMLまたはDDL文でランブック変数を使用できます。
-
SQL問合せ(SELECT文):
バインド・パラメータを使用して、コロンの後にランブック変数参照を続けてランブック変数からSQL文に値をバインドできます。
例:
select target_name from MGMT$TARGETS where target_type =:$ora_target_type_name
これにより、SQL文中にバインド・パラメータが作成され、そのSQLの実行時に、$ora_target_type_nameの値がそのバインド・パラメータの値として使用されます。
-
DML文またはDDL文
DML文またはDDL文でランブック変数を使用するには、コロンに続けて
:$ora_target_name
や:$fra_size
などのランブック変数を指定します。例:
alter system set db_recovery_file_dest_size=:$fra_size scope=both
DML文またはDDL文を実行する前に、変数の値を置き換えます。
SQL問合せのWhere句でのISO 8601で書式設定されたランブック変数の使用
ランブック変数の値がISO 8601日付書式(例: 2022-03-01T19:21:00.000Z)であり、日付列を含むデータベース表またはビューに対するwhere句でそれを使用する必要がある場合:
- to_utc_timestamp_tz関数を使用して、その値をデータベースのタイムゾーン付きタイムスタンプ値に変換します。
- 1で示した値は、必要に応じて別のタイムゾーン(ターゲット・タイム・ゾーンなど)に変換できます。
- 1または2で出力された結果をdate型にキャストし、それをwhere句の一部として使用して、date列を含む表と結合します。
-
次の例では、utc_time1ランブック変数がISO 8601日付書式(例: 2022-03-01T19:21:00.000Z)の値に設定されていることを想定しています。
例:
例1: タイムゾーン変換を考慮せずに変数値を日付にキャストする方法を示します。
select to_char(min(collection_timestamp),'YYYY-MM-DD HH24:MI:SS') as min_time, to_char(max(collection_timestamp), 'YYYY-MM-DD HH24:MI:SS') as max_time, count(1) as total_count from mgmt$metric_current where collection_timestamp >= cast(TO_UTC_TIMESTAMP_TZ(:$ora_event_time_utc) as date)
例2: 変数値をターゲット・タイムゾーンに変換してからそれを日付にキャストする方法を示します。
select to_char(min(collection_timestamp),'YYYY-MM-DD HH24:MI:SS') as min_time, to_char(max(collection_timestamp), 'YYYY-MM-DD HH24:MI:SS') as max_time, count(1) as total_count from mgmt$metric_current where collection_timestamp >= cast((TO_UTC_TIMESTAMP_TZ(:$ora_event_time_utc) at time zone TIMEZONE_REGION) as date)
出力
- 戻りデータの表形式表示
- OSコマンドおよびスクリプト
指定したターゲットのホスト上のコマンドラインで実行するように、単一の操作を実行したり、指定したインタプリタを使用してステップ定義の一部として入力するスクリプトを実行したりできます。
前提条件:
「OSコマンドおよびスクリプト」のステップを実行するには、次の権限が必要です:
- ターゲット、ターゲットのホスト、およびターゲットのホストをモニターするエージェントに対する表示権限
- ステップで参照される名前付き資格証明へのアクセス
入力
- ターゲット名
- ターゲット・タイプ
- 名前付き資格証明
-
コマンド実行タイプ:
単一操作
-
コマンド
ノート:
インタプリタは、ホスト上のOSに対してデフォルト設定されます。
スクリプト
ノート:
Windowsプラットフォームの場合、コマンド実行タイプとしての「スクリプト」は現在サポートされていません。-
スクリプト
-
インタプリタ
ノート:
空白のままにした場合、インタプリタは、スクリプトが実行されるターゲット・ホストのOSに従ってデフォルト設定されます。
-
出力:
ターゲット・ホストでコマンドまたはスクリプトを実行した結果の出力を返します。
ランブック変数の作成
ランブック変数には、セッションまたはドラフトの作成時にインシデント詳細から値が移入されます。これらの値は、指示テキスト内で表示するためにステップによって、またはデータを取得するか一部のタスクを実行するステップ定義の一部として使用できます。これにより、ランブック・セッションで、そのセッション固有のコンテキストに基づいた情報提供およびタスク実行が可能になります。また、ドラフトの場合は、作成者が、ハードコードされた値ではなくランブック変数を使用してランブックを定義できるようになります。
ドラフトの作成時にコンテキストとして含まれていない値については、作成者が独自のランブック変数を作成できます。このランブック変数は、次の方法で移入できます:
-
ランブック変数は、そのランブックで最終的に作成されるセッション間で同じ値のままの静的値を持つことができます
-
ランブック変数では、そのランブックに対して新しいセッションが作成されるたびに、セッション・ユーザーが値を指定することが必要になる場合があります。たとえば、ターゲットDBのSQLのステップの場合に、名前付き資格証明が必要になります。この名前付き資格証明用にランブック変数を作成し、セッション・ユーザーにその値の設定を求めることで、そのステップの一部であるSQLが、そのセッションのターゲットDBに対して、セッション・ユーザーがアクセスできる名前付き資格証明を使用して実行されるようになります。
-
ランブック変数には、ステップの出力からデータを動的に移入することもできます。この機能により、ランブック変数の使用がより強力になり、Oracle Enterprise Manager 13cリリース5更新18以降で使用できます。たとえば、データベースで使用されるファイルシステムを決定するステップがあります。作成者は、そのステップの出力をランブック変数に保存し、次のステップでそのランブック変数を使用してファイルシステムの使用可能な空き領域を決定できます。ランブック変数は、ステップの出力の特定の値セルからデータを保存できるため、複数のデータ値を保存する必要がある場合は、複数のランブック変数に保存する必要があります。
作成者に可能なランブック変数のネーミングについて、いくつか制限事項があります。
- 先頭を
ora_
にすることはできません。 - 文字、数字およびアンダースコアのみを使用できます
- 64文字以下である必要があります
- また、資格証明の場合は、_
_cred
を名前に含める必要があります(これにより、ターゲットDBステップで使用される名前付き資格証明の特定のケースをフィルタできるようになります)
ランブック変数を作成するときは、作成者が次の内容を指定します。
- 名前。これにより、ステップにおいてそのランブック変数を参照します(たとえば、
user_target_db_cred
) - 表示名。これは、ユーザーが理解しやすい短い名前です(たとえば、Target Database Named Credential)
- 説明(オプション)。これは、セッション・ユーザーが値の入力を求められたときにセッションUIに表示されます(たとえば、「このターゲット・データベース用の名前付き資格証明を指定してください」)
- ドラフトで使用する値。これにより、作成者がそのステップの実行に使用可能な値を含めて、ランブック・ドラフトを作成できるようになります
- ランブック・セッションで使用される値のオプション:
ランブック・セッションで値を移入する方法についてオプションがあります。次の表に、これらのオプションおよび使用上のガイドラインのサマリーを示します。
ランブック・セッションで使用される値 | このオプションを使用するタイミング | ランブック変数値の移入方法 | ランブック・セッション・ユーザーがこれを変更できるかどうか | 使用上のノート |
---|---|---|---|---|
セッション・ユーザーまたはステップの実行によって指定されます | このオプションは、ランブック・セッション・ユーザーがランブック変数の値を指定する場合に使用します。通常、ランブック変数を移入するためにランブック・ステップを実行します。上級ユーザーの場合、セッション・ユーザーは必要に応じてランブック値を手動で入力できます。 | ランブック・セッションで、ユーザーはランブック変数を移入するステップを実行するか、変数の値を入力します。 | はい - 値を入力するか、ステップを実行します | 変数の初期値は空(null)です。 |
値は作成者またはステップの実行によって提供されます | このオプションは、セッション・ユーザーがランブック変数値を手動で指定できないようにする場合に使用します。かわりに、セッション・ユーザーがステップを実行して値を移入するか、ランブック定義の一部として値を定義します。 | ランブックの作成者は、ランブック定義の一部として値を定義するか、ユーザーがステップを実行して値を移入します。 | はい - ランブックの作成者がランブック変数を移入するステップを作成する場合のみ、ステップを実行します | 作成者がステップを実行して変数の値が移入されることを想定している場合、変数の初期値はnullです。 |

ランブックの公開
ランブック・ドラフトの定義が終了したら、それを公開する準備は完了です。それは、公開後はすべてのランブック・ユーザーが使用できるようになります。ランブック・ドラフトの作成者のみがそれを公開できます。
ランブックリスト・ページ(「エンタープライズ」→「モニタリング」→ランブック)に移動し、「ドラフト」タブに移動します。自分のランブックの「アクション」メニューから、「公開」を選択します。「公開済」タブをクリックして公開済ランブックのリストで自分のランブックを表示します。
ランブックの新バージョンの作成
- 公開済ランブックからドラフトを作成します。ランブックページに移動します。目的のランブックの「アクション」メニューから、「新規バージョンの作成」を選択します。
- ドラフトの編集中も、ユーザーがセッションの作成を続行できるように、そのランブックの公開済バージョンは使用可能なままになります。
- ランブック作成者は、これを行うためにコンテキストIDを指定する必要があります。
- 新しいドラフトが公開されると、以前に公開されたランブックが、ユーザーによる確認後にそれと置き換えられます。
- この新しい公開されたランブックが、今後のすべてのランブック・セッションの作成に使用されるようになります。それが以前のランブック・セッションに影響することはありません。
既存のランブックからの新しいランブックの作成
時間と労力を節約するために、「類似作成」処理を使用して、既存の動的ランブックから新しい動的ランブックを作成できます。「類似作成」は、公開済またはドラフト・ランブックのどちらかに使用できます。
公開済動的ランブックの使用
ノート:
公開済ランブックの所有者でない場合も、「類似作成」アクションを使用できます。- 「エンタープライズ」メニューから、「モニタリング」、ランブックの順に選択します。
- 「公開済」タブをクリックして、公開済ランブックの表を表示します。
- 選択したランブックの「アクション」ドロップダウン・メニューから、「類似作成」を選択します。「類似作成」ダイアログが表示されます。
- 新しいドラフト・ランブックの作成に使用するコンテキストIDを入力します。
- 「OK」をクリックします。ランブックのエディタ画面が表示され、公開済ランブックがドラフト・モードで表示されます。このドラフトの所有者として、このランブックは指定したコンテキストIDのコンテキストで編集できます。
ドラフト動的ランブックの使用
ドラフト・バージョンのランブックを所有していると、より完全なコピーを作成できます。選択したドラフト・ランブックには、すでにコンテキストIDが含まれているため、その情報を指定する必要はありません。
- 「エンタープライズ」メニューから、「モニタリング」、ランブックの順に選択します。
- ドラフト・タブをクリックして、所有するドラフト・ランブックの表を表示します。
- 選択したランブックの「アクション」ドロップダウン・メニューから、「類似作成」を選択します。「類似作成」確認ダイアログが表示されます。
- 「OK」をクリックします。ランブック・エディタ・ページに、新しいドラフト・ランブックが表示されます。
その他の操作
ランブックを公開した後は、「アクション」メニューから他の操作を実行できます。
次の操作を実行できます。- ランブックを表示するか非表示にして、公開済ランブックを全員に使用可能にするかどうかを制御します。
- 公開済ランブックを削除します。
ノート:
これらの操作は、ランブック作成者またはランブック管理者のみが実行できます。外部リンクの追加
将来のランブック・ユーザーに追加の診断情報またはコンテキスト情報を提供できる情報に、外部リンクを追加できます。
インシデントの動的ランブックを指定するルールの作成
ランブックを作成して公開した後、インシデントに使用する特定のランブックを指定できます。インシデントの特定のランブックは、イベント・ルール・アクションの一部として指定できます。
- イベント・ルールの作成を開始します。
-
「アクションの追加」ページで、「インシデントの作成」を選択します。
- ランブックの関連付けセクションで検索バーをクリックします。
- インシデントに指定するランブックを検索して選択し、「選択」をクリックします。
インシデント・ルールを適用してインシデントを作成すると、前述のステップでインシデントに関連付けられたランブックがインシデントの一部になり、ランブック・セッションの開始の下のセクションに表示されます。これは、インシデント・ルールで推奨というテキストを含む唯一のエントリになります。その他の関連するランブックはすべて、すべての関連ランブック...リンクから引き続きアクセスできます。

インシデント・ルールを通じて関連付けられたランブックは常にリストの最上部に表示され、ランブック名の横に[インシデント・ルールで推奨]というテキストが表示されます。関連性スコアは自動的に100%になり(全バーが表示されます)、テキストに「推奨」と表示されます。

動的ランブックの使用
ランブック・ユーザーとして、インシデント・マネージャまたは「すべてのメトリック」ページからランブック・セッションを作成できます。
- 「Runbookセッション」リージョンに移動し、「Runbookセッションの開始」をクリックします。
ランブック・セッションの開始ページが開き、セッションを開始するランブックを選択できる表が表示されます。
ノート:
インシデント・マネージャ・ランブック・セッション・リージョンから、特定のインシデントに関連するランブックのリストを表示することもできます(詳細は、「関連ランブック」を参照)。関連ランブックのいずれかにアクセスするには、すべての関連ランブック…をクリックして、関連ランブックをリストするランブック・セッションの開始ページを表示します。
- セッションの開始をクリックします。そのインシデントまたはメトリックの「Runbookセッション」ページが開きます。インシデント・コンテキストまたはメトリック・コンテキストの詳細がページの上部にリストされます。
- 概要および前提条件のステップは、そのランブックの用途、およびそのランブックの後続のステップを実行する前にユーザーに必要な前提条件を示すことが目的となっています。ランブック・セッションを開始する前に、すべての前提条件を満たしていることを確認してください。このステップを完了したら、チェック・ボックスをクリックしてステップが完了したことを示すことができます。
- ステップごとに、再生アイコンをクリックして操作を実行し、そのステップによって生成されたライブ診断情報を確認します。ランブック・ステップの横に歯車アイコンが表示されている場合は、そのステップの実行前にユーザーによる入力が必要であることを意味します。ユーザー入力の一例は、ターゲット・データベース用の名前付き資格証明です。入力内容を指定すると、歯車アイコンが再生アイコンに変わります。これは、そのステップを実行できることを示しています。
右側に、インシデント・コンテキストに関連するランブック変数のリストがあります。
Enterprise Manager 13cリリース5更新21 (13.5.0.21)以降では、他のターゲット・インスタンスのメトリック・ステップが使用可能になります。
ノート:
最後のステップは成功基準ステップである必要があり、このステップにより、セッション・ユーザーが、そのユーザーが実行したランブック・ステップによって問題が解決されたことを確認できます。 - ランブック・セッションを完了しない場合は、それを開いたままにしておき、それに戻ることができます。セッション所有者のみが、ステップの実行を続行するために戻り、そのランブック・セッションを完了できます。なお、14日間のパージ・ポリシーがあります。つまり、ランブック・セッションは、14日間のうちに完了しないとシステムからパージされることになります。
ノート:
デフォルトのパージ・ポリシーは、oracle.sysman.core.runbooks.runbookSessionMinLifeDays
OMSプロパティを設定することで延長できます。 - ランブック・セッションを終了したら、完了としてマークをクリックします。
- これにより、そのランブック・セッションが読取り専用モードになります。それ以降は編集もステップの実行もできません。
- 完了とマークした後は、ランブック・セッションリスト・ページで有効期限を延長することで、そのセッションを長期間保存できます。
有効期限の延長
- セッションはデフォルトの期間保持され、自動的にパージされます。
- その期間は、そのセッションが完了としてマークされている場合に延長できます。
- セッションが保存されるデフォルト期間は14日間です。デフォルトの延長期間は、セッションの開始から45日間です。
ノート:
デフォルトのパージ・ポリシーは、oracle.sysman.core.runbooks.runbookSessionMaxLifeDays
OMSプロパティを設定することで延長できます。
動的ランブックのエクスポートおよびインポート
Oracle Enterprise Manager 13cリリース5更新11 (13.5.0.11)以降では、公開されたランブック定義をエクスポートおよびインポートできるため、ランブックの再利用が大幅に拡張され、管理者がランブックを最初から開発する必要がなくなります。
ノート:
エクスポート/インポートできるのは、公開されたランブックのみです。ランブック・ドラフトおよびランブック・セッションは、作成されているEnterprise Managerシステムに固有のコンテキスト・プロパティがあるため、使用できません。Enterprise Managerのインストール全体にわたって移植することはできません。
使用上のガイドライン
Enterprise Managerバージョン間での公開済ランブックのエクスポート/インポート:
- 古いEnterprise Managerバージョンからエクスポートして新しいEnterprise Managerバージョンにインポートすることは、常に機能します。
- 新しいEnterprise Managerバージョンからエクスポートして古いEnterprise Managerバージョンにインポートすると、ステップ・タイプに互換性がある(両方のバージョンでサポートされる)場合にのみ機能します。
次の表に、現在使用可能なステップ・タイプおよび対応する最小の互換性のあるEnterprise Managerリリースを示します。
ステップ・タイプ | 適用されるEMリリース |
---|---|
ノート | Enterprise Manager 13cリリース5更新7以降 |
ターゲットSQL | Enterprise Manager 13cリリース5更新7以降 |
リポジトリSQL | Enterprise Manager 13cリリース5更新7以降 |
メトリック | Enterprise Manager 13cリリース5更新7以降 |
Enterprise Manager 13cリリース5更新11より前に作成されたランブックの再公開
Enterprise Manager 13cリリース5更新7から10を使用して作成された公開済ランブックについては、エクスポート/インポートを計画しているランブックを再公開する必要があります。これにより、ランブックのプロパティが最新であり、Enterprise Managerデプロイメント全体で互換性があることが保証されます。
ノート:
ランブックを再公開するには、既存の公開済ランブックから新しいドラフトを作成し、オプションでドラフトを編集してからランブックを公開します。
必須のユーザー権限
公開済ランブックをエクスポートまたはインポートするには、次の権限のうち少なくとも1つが必要です。
- CREATE_RUNBOOK - ランブックを作成して公開できます。
- MANAGE_RUNBOOK - ランブックの削除/表示/非表示、ランブック・セッション・データの表示などの管理操作を実行できます。
詳細は、「動的ランブック・ユーザーのタイプ」を参照してください。
公開済ランブックのエクスポート
- 「公開済」ページに移動します。「エンタープライズ」メニューから、「モニタリング」、ランブックの順に選択します。
- エクスポートするランブックの「アクション」メニューから、「エクスポート」を選択します。デフォルトのエクスポート・ファイル名を含む「エクスポート」ダイアログが表示されます。デフォルトでは、現在公開されているランブックの名前が使用されますが、新しいファイル名を入力できます。
- 「OK」をクリックします。ランブック定義のJSONファイルがローカル・ファイル・システムに保存されます。
公開済ランブックのインポート
- 「公開済」ページに移動します。「エンタープライズ」メニューから、「モニタリング」、ランブックの順に選択します。
- 「インポート」をクリックします。公開済ランブックのインポート・ダイアログが表示されます
- ランブック定義ファイルをダイアログに直接ドラッグ・アンド・ドロップするか、「ドラッグ・アンド・ドロップ」リージョンをクリックしてファイル・ブラウザを開き、ファイルを選択します。インポートされた定義ファイルは、「公開済」ランブック表に即時に表示されます。
- 「閉じる」をクリックします。
ノート:
ランブック定義をインポートするユーザーが、そのランブックの新しい所有者になります。Oracle提供のランブック
Oracle Enterprise Manager 13cリリース5更新15 (13.5.0.15)以降では、これらのランブックを使用して、Enterprise Manager環境の問題を優先順位付けして解決できます。
動的ランブック | 説明 |
---|---|
エージェント・バックオフ・リクエストの原因となるローダーの問題 |
このランブックは、多くのエージェントがOracle Management Server (OMS)へのデータのアップロードをバックオフするように求められたときにEM管理者が受信するインシデントを診断して解決するのに役立ちます。 |
DB表領域の使用済メトリック・タイムアウト・エラー |
このランブックは、Oracleデータベース表領域使用率(%)メトリックのメトリック収集エラーの診断に役立ちます。 |
ジョブの一時停止エージェント準備中 | このランブックは、ステータスが「一時停止エージェント準備中」のジョブ実行のトラブルシューティングに役立ちます。 |
高度な操作と構成
次のトピックでは、ランブック管理者および作成者に役立つ可能性がある領域を説明します。
ユーザーの削除と動的ランブックへのその影響
Enterprise Managerユーザーを削除すると、次のように動的ランブックに影響します。
- 公開済ランブック
- ユーザーを削除する場合は、削除されるユーザーが所有する公開済ランブックを、他のEnterprise Managerユーザーに再割当てできます
- 再割当先ユーザーには、ランブックの作成権限は必要ありません。それは後で付与できます。
- 削除されたユーザーが公開済ランブックを所有しており、再割当先ユーザーが指定されていない場合、ランブックはリポジトリ所有者に再割当されます
- ユーザーを削除する場合は、削除されるユーザーが所有する公開済ランブックを、他のEnterprise Managerユーザーに再割当てできます
- ドラフト・ランブック
- 削除されたユーザーが所有するドラフト(未公開)ランブックは必ず削除されます
- ドラフト・ランブックの一部として保存されたデータも、同様に削除されます
- ランブック・セッション
- 再割当先ユーザーが指定されている場合でも、ランブック・セッションは、どのユーザーにも再割当てされません
- 削除されたユーザーが所有するオープン状態のランブック・セッションは、自動的に完了としてマークされます。
- 削除されたユーザーが所有する完了状態のランブック・セッションは、他のセッションと同様に、期限が切れると自動パージ・ポリシーによって削除されます。
構成可能なプロパティ
ランブックのOMSプロパティ
動的ランブックの構成には、次のOMSプロパティを使用します。OMSプロパティの設定の詳細は、OMSのEMCTLコマンドに関する項を参照してください。
- ステップ・データ・サイズ上限
名前:
oracle.sysman.core.Runbooks.maxStepDataSizeKB
説明: ランブック・ステップ用に許容される最大データ・サイズ(KB)。
デフォルト: 1024 (1 MB)
最小: 100 (100KB)
最大: 10240 (10MB)
- 許容される最大ステップ数
名前:
oracle.sysman.core.Runbooks.maxSteps
説明: 1つのランブックで許容される最大ステップ数。
デフォルト: 20
最小: 10
最大: 50
- セッションの最短存続日数
名前:
oracle.sysman.core.Runbooks.RunbookSessionMinLifeDays
説明: セッションがパージされるまでの保持日数の初期値。
デフォルト: 14
最小: 14
最大: 30
- セッションの最長存続日数
名前:
oracle.sysman.core.Runbooks.RunbookSessionMaxLifeDays
説明: ランブック・セッションがパージされるまでの許容される最長日数。
デフォルト: 45
最小: 45
最大: 90
- OSコマンド・ステップによって返される最大出力サイズ
名前:
oracle.sysman.core.runbooks.oscmd.maxRunStepOutputSize.KB
説明: OSコマンド実行ステップで返される最大データ・サイズ(KB)。
デフォルト: 1024 (1 MB)
最小: 10 (100KB)
最大: 10240 (10MB)
- OSコマンド・ステップの実行の最大時間
名前:
oracle.sysman.core.runbooks.oscmd.maxRunStepTime.seconds
説明: OSコマンド実行ステップREST APIに許容される最大時間(秒)。
デフォルト: 120 (2分)
最小: 15 (15秒)
最大: 600 (10分)
リポジトリSQLのスロットル
Enterprise Managerのパフォーマンスへの影響を最小限に抑えるために、SQLのスロットルを有効にできます。詳細は、リポジトリ・セッション(SQL)スロットルを参照してください。
関連ランブック
ランブック・セッションは、関連ランブックの「インシデントの詳細」ページから直接開始するか、すべての関連ランブック…をクリックすると、関連性スコアでランク付けされたランブックのリストから選択できます。インシデントに適用されるランブックは、ランブック・セッションの開始ページの表に、必要に応じてページ区切りされて表示されます。

このページから、関連性スコアをガイドとして使用して、インシデントの解決要件に最も一致するランブック・セッションを開始できます。前述のとおり、関連性スコアは昇順にソートされます。
関連性スコアについて
関連性スコアは、ランブックが現在のインシデントとどの程度一致しているかを示す尺度です。一致のレベルが大きいほど、関連性スコアは高くなります。ランブック・ドラフトは、特定のインシデントのコンテキストで作成され、公開時にそれらの値の一部が転送されます。ランブックは公開され、インシデントに使用できるときでも、このインシデントのコンテキストの一部が転送されます。その初期コンテキストは、公開されているランブックに、提供されているプロパティのどれが必須で、どれがオプションかを示します。
関連性スコアが作成されると、現在表示しているインシデントのコンテキストが公開済ランブックと比較されます。スコアを生成するには、次のものを使用します。
- 必須プロパティはすべて指定する必要があります。これは、現在のインシデントのランブック・セッションを作成するために必要です。
- オプションのプロパティが評価されます。オプションのプロパティが存在する場合は、関連性スコアが増加します。公開済ランブックのプロパティ値が現在のインシデント・コンテキストと一致する場合、スコアはさらに増加します。
- ステップで使用されるランブック変数が評価されます。オプションのプロパティと同様に、ステップで使用される変数がインシデントによって提供される情報に表示される場合、関連性スコアが増加します。インシデントと変数の値が一致すると、スコアがさらに増加します。
ノート:
デフォルトでは、Enterprise Manager 13cリリース5更新10 (13.5.0.10)より前に公開されたランブックは、関連性スコアが低くなります。これらを新しいランブックと同等にするには、これらの古いランブックを再公開する必要があります。再公開すると、システムは関連性スコアを再計算します。
古いランブックをすばやく再公開するには、次の手順に従います。
ランブック所有者として:
- 公開されているバージョンのランブックを見つけて、新しいバージョンを作成します。これにより、ランブック・ドラフトが作成されます。変更する必要はありません。ランブック・ドラフトは自動的に保存されます。
- 次に、この新しいドラフトをすぐに公開します。ランブック・ドラフトの公開ダイアログが表示され、既存の公開済ランブックをこの新しいバージョンに置き換えるかどうかを尋ねられます。このオプションを受け入れるには、「OK」をクリックします。ランブックが公開されます。