Set up a Real User Monitor for an APEX application with OCI Application Performance Monitoring
https://github.com/oracle-quickstart/oci-o11y-solutions/tree/main/knowlege-content/oracle-database/APEX/apm
設定手順がYouTubeのビデオで紹介されていて、その手順に従うと設定できました。ただしAlways Free(無償枠)の範囲だと、ビデオの後半で説明されているカスタム・ダッシュボードの作成とデータベースへのドリルダウンは(データベースのモニタリングが無償ではないため)できないようです。
設定手順がYouTubeのビデオで紹介されていて、その手順に従うと設定できました。ただしAlways Free(無償枠)の範囲だと、ビデオの後半で説明されているカスタム・ダッシュボードの作成とデータベースへのドリルダウンは(データベースのモニタリングが無償ではないため)できないようです。
本記事では、Oracle APEXに関わる設定で確認した内容を紹介します。
最初にAPMドメインを作成します。
Oracle Cloudのコンソールのメニューより、監視および管理を選択し、アプリケーション・パフォーマンス・モニタリングの管理を開きます。
すでに作成済みのAPMドメインがあればそれを利用するか、または新規に作成します。
今回は新規に作成します。APMドメインの作成をクリックします。
作成するAPMドメインの名前はAPEXとします。無償枠の範囲とするためAlways Freeドメインとして作成にチェックを入れます。
作成するコンパートメントを選んで、作成をクリックします。
APMエージェントのダウンロードを開きます。
APEXアプリケーションに組み込むのはブラウザ・エージェントです。
YouTubeのビデオでは、これをコピーしてAPEXのアプリケーションに貼り付けるように案内していますが、GitHubにリアル・ユーザー・モニターのudfAttributesを含んだブラウザ・エージェントの記述があるので、そちらを使います。
ブラウザ・エージェントについて、以下で説明されています。
今回はサンプル・データセットのEMP/DEPTをインストールしたときに作成できるアプリケーション、Demonstration - EMP / DEPTにブラウザ・エージェントを組み込みます。
組み込むブラウザ・エージェントを、以下よりコピペします。
グローバール・ページを開き、タイプが静的コンテンツのリージョンを作成します。識別のタイトルはRUM Agentとします。
ソースのHTMLコードにブラウザ・エージェントのコードを記述します。ページにJavaScriptのコードを埋め込むだけで、何も表示する必要はないため、外観のテンプレートはなしにします。
作成したAPMドメインAPEXの詳細を開き、データ・アップロード・エンドポイントとパブリック・データ・キーを確認します。これらの値は、ブラウザ・エージェントのコードに埋め込みます。
<APM Browser>の部分はAPEX UI、<Web App Name>はDemonstration - EMP / DEPTに置き換えます。2箇所ある<ociDataUploadEndpoint>をAPMドメインの詳細画面に記載のあるデータ・アップロード・エンドポイントに置き換え、<APM_Public_Datakey>をパブリック・データ・キーに置き換えます。
以上でAPEXアプリケーションへのブラウザ・エージェントの組み込みは完了です。
アプリケーションを実行し、色々と操作をします。
Oracle Cloudのコンソールよりアプリケーション・パフォーマンス・モニタリングのダッシュボードを開きます。
無償枠の範囲でできることは以上です。
YouTubeのビデオでは、ブラウザ・エージェントのudfAttributesに設定したUserName(APP_USER)、APEXSessioinId(APP_SESSION)、APEXPageId(APP_PAGE_ID)さらにAPEXDBClientId(APP_USER:APP_SESSIONはデータベースのV$SESSIONの列CLIENT_IDENTIFIERに設定されるため、この値を使ってDBの情報をドリルダウンできます)などの情報を使った、カスタムのダッシュボードの作成やデータベースの情報の参照方法を紹介しています。
完