この記事は インフォマティカ Advent Calendar 2021 Day 18 の記事として書かれています。
これまで、Day 4、Day 8、Day 12とIPU メータリング ダッシュボード入門編をお届けしてきましたが、今日はオペレーションインサイトの機能についてIPU(Informatica Processing Unit)消費監視に役立つデータ統合アラートを紹介します。
この原稿を書いている時点では、データ統合アラートは日本リージョンでは未リリースで、AWS-USAやAWS-APACリージョンでは使用可能となっていました。
#はじめに
オンラインマニュアルが日本語化されていないためか、まだ情報が少ないオペレーションインサイトですが、クラスメソッド様の インフォマティカ Advent Calendar 2020 Advent Calendar 2020 Day19で【小ネタ】IICSのSecure Agentをお手軽に監視するとして一度紹介されています。
英語のメニューではOperational Insightsですが日本語でのメニューはオペレーショナルインサイトではなく、オペレーションインサイトとなっています。
データ統合アラートは、左側のナビゲーションメニューにデータ統合が存在する場合に有効化されているアラート機能です。
#アラート
アラートには現時点で5つの機能があります。アラートを受信は発生済のアラートをリストします。インフラストラクチャのアラートは前出のクラスメソッド様の記事で紹介された機能です。一括取り込みアラートはMass Ingestion(一括取り込み)で使用可能です。PowerCenterのアラートは英語のオンラインマニュアルに記載してあるドメイン登録の設定画面が見当たらず使用可否の判断がつきませんでした。ではData Integration(データ統合)で使えるデータ統合アラートを紹介していきます。
マッピングタスク自体にタスク終了時に通知する機能は存在しますが、このデータ統合アラートでもタスクの状態に応じて通知をメールで受け取る設定が可能です。
##アラート作成
アラート作成画面の上段から説明していきます。
###全般
- 有効/無効のスライドバー:作成後に有効化するかしないかを選択します
- 名前:アラートの名前を入力します
- 説明:アラートの説明を入力します
- アラートルールオン:アラートの対象とするアセットを選択します
説明は設定必須項目ではありませんが通知メールに記載されるので、アラートの内容を簡潔に記載しておくことをお勧めします。アラート作成画面の下段を説明していきます。
###アラート条件
- ジョブの状態:実行中/完了したジョブ(失敗/警告/成功)選択します。「実行中」と「完了したジョブ」の同時選択は不可です。
- 完了したジョブ:失敗/警告/成功のいずれか、もしくは任意の複数の組み合わせでジョブ完了時の状態を指定します。(例えば「失敗」と「警告」を選択)しきい値からの条件追加は任意です。
- 実行中:しきい値からの条件追加が必須です。
実行中のジョブに対するアラート作成機能が本日紹介したかったデータ統合アラートの活用ポイント!
- しきい値:
- 継続時間:秒単位でジョブの継続時間を指定します。さらに指定した継続時間に対して、上回ったのか/下回ったのか/同じなのかという条件をLOVから選択します。
データ統合ではジョブの実行時間に対してIPUが消費されますので、継続時間を超過したジョブが発生した場合にPUSH型で通知を受け取れるというのがIPU消費の監視という観点で便利な機能です。
- 処理済の行数:ターゲット側で処理した行数を指定します。さらに指定した行数に対して、上回ったのか/下回ったのか/同じなのかという条件をLOVから選択します。
- エラー行数:「完了したジョブ」でのみ設定可能。ターゲット側でエラーとなった行数を指定します。さらに指定した行数に対する条件をLOVから選択します。
###アラートアクション
- 電子メール通知:アラートの通知先となるIICSユーザを指定します。デフォルトではアラート作成ユーザのみが設定された状態で表示されいます。右側の▼を展開してLOVから他ユーザを追加可能です。
- タスク停止: 「実行中」のジョブでのみ設定可能。タスクを停止する場合に指定します。
全て情報を入力後右上の「保存」ボタンをクリックするとアラート作成の完了です。作成されたアラートはデータ統合アラートの画面でリストに表示されます。
ではアラート発生後のアラートを受信画面や受け取った通知メールを見ていきます。
##アラートを受信 画面
デフォルトではフィルタの条件が「受信日時:過去24時間」、「サービス:有効化済サービス全て選択」で表示されます。
赤枠内はダウンロードボタンとなっておりリストをCSV形式でダウンロード可能です。ファイルをそのまま開くと日本語が文字化けしますのでUTF-8で再度読み込む必要があります。
- 受信日時:アラートを検知した日時
- アラート名:クリックするとアラート編集画面が表示されます。
- トリガ日時:アラートの対象として設定したアセット名。クリックするとジョブのプロパティ画面が表示されます。
※英語の画面では「Triggered on」となっているため「トリガ日時」は日本語訳が不適切ですね。
##通知メール
実際に受信した通知メールをいくつか紹介します。メールは英語で送信され、送信元アドレス、メール本文内に含まれている項目は固定です。Viwe Job Runはジョブのプロパティ画面へのリンクとなっており、Manage this Alertはアラート編集画面へのリンクとなっています。
####設定例①実行中のジョブに対して継続時間3分以上でアラート発生
Job State:RUNNINGでEnd Timeが空白であることから、実行中のジョブに対して作成したアラート(継続時間3分以上を検知)が機能したことがわかります。
####設定例②「成功」で完了したジョブに対して処理行数が100未満でアラート発生
Alert Nameにアラートの条件を使用したためなぜこの通知を受信したのか判断できますが、メール本文の項目に**「行数」は存在しません。このような場合はView Job Runでジョブのプロパティ画面をで詳細を確認しましす。
プロパティ画面で確認すると結果でステータス:成功、成功した行:99が確認できますので、作成したアラート(成功で完了したジョブで処理行数100未満を検知)が機能したことがわかります。
もう一つ実例を紹介して終わりにしたいと思います。
####設定例③実行中のジョブに対して継続時間50秒以上でタスク停止とアラート発生
これもAlert NameやAlert Descriptionからなぜこの通知を受信したのか想像できますが、メール本文の項目にタスクの状態を示す情報は存在しません。この場合もView Job Runでジョブのプロパティ画面をで詳細を確認しましす。
プロパティ画面で確認すると結果でステータス:失敗**が確認できます。さらに、エラーメッセージを確認すると実行したユーザによりAPI経由でジョブが停止されたメッセージが記載されています。このマッピングタスクでは、ソースと同一行数がターゲットにロードされる事になっているため、エラーが無いにもかかわらず処理が途中で停止されたことを伺い知ることができます。
#参考資料
https://docs.informatica.com/integration-cloud/cloud-platform/current-version/operational-insights/part-2--monitoring-informatica-intelligent-cloud-services/monitoring-informatica-intelligent-cloud-services-data-integrati.html
https://www.youtube.com/watch?v=T9X06XiGgfo
#おわりに
機会があればもう少し調査したいと思っていますが、アラートの検知/通知は一定間隔(おそらく数分毎)で実行されているようで、動作検証した限りにおいてはリアルタイムで通知されることはありませんでした。今後もインフォマティカ Japan User GroupかQiitaで継続的に情報発信していきたい思います。