プライマリ・コンテンツに移動
Oracle® Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド
リリース18.1
E98591-01
目次へ移動
目次
索引へ移動
索引

前
次

22.8 APEX_ACTIVITY_LOGを使用したカスタム・アクティビティ・レポートの作成

APEX_ACTIVITY_LOGビューを使用して、現在のワークスペースのアクティビティを問い合せる方法について学習します。

22.8.1 アプリケーションのロギングの有効化

アプリケーション定義の編集ページでアプリケーションのロギングを有効にできます。

アプリケーション定義を編集するには、次のステップを実行します。

  1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
  2. アプリケーションを選択します。
  3. アプリケーション名の右側にある「アプリケーション・プロパティの編集」ボタンをクリックします。

    「アプリケーション定義の編集」ページが表示されます。

  4. 「プロパティ」で、「ロギング」を見つけます。「はい」または「いいえ」を選択します。

    「はい」に設定した場合、すべてのページ・ビューがログに記録されるため、管理者はアプリケーションごとにユーザー・アクティビティを監視できます。高容量アプリケーションでは、ロギングを無効にすることをお薦めします。

ヒント:

Oracle Application Express管理サービスの「アプリケーション・アクティビティのロギング」属性が「アプリケーションの設定を使用(デフォルト)」に設定されている場合、「ロギング」属性の変更のみ可能です。

関連項目:

『Oracle Application Express管理ガイド』のロギングでのアプリケーション・アクティビティの有効化に関する項

22.8.2 APEX_ACTIVITY_LOG

APEX_ACTIVITY_LOGを使用して、現在のワークスペースのすべてのアクティビティを表示および問い合せます。

APEX_ACTIVITY_LOGビューには、開発者アクティビティ、アプリケーション実行時アクティビティなど、ワークスペースのすべてのアクティビティが記録されます。APEX_ACTIVITY_LOG使用して、現在のワークスペースのすべてのアクティビティを表示および問い合せることができます。たとえば、このビューを使用して、リアルタイムのパフォーマンス分析を提供する特定のアプリケーション内の監視レポートを開発できます。

表 22-1に、APEX_ACTIVITY_LOGビューの列を示します。

表 22-1 APEX_ACTIVITY_LOGの列

データ型 説明

time_stamp

DATE

アクティビティがページ・ビューの末尾に記録された日時

component_type

VARCHAR2(255)

将来の使用のために予約されています。

component_name

VARCHAR2(255)

将来の使用のために予約されています。

component_attribute

VARCHAR2(4000)

ページのタイトル

information

VARCHAR2(4000)

将来の使用のために予約されています。

elap

NUMBER

ページ・ビューの経過時間(秒)。

num_rows

NUMBER

ページ上で処理された行数

userid

VARCHAR2(255)

ページ・ビューを実行しているユーザーのID

ip_address

VARCHAR2(4000)

クライアントのIPアドレス

ir_report_id

NUMBER

対話モード・レポートID

ir_search

VARCHAR2

ユーザーが入力した対話モード・レポート検索条件。

user_agent

VARCHAR2(4000)

クライアントのWebブラウザ・ユーザー・エージェント。

flow_id

NUMBER

アプリケーションID

step_id

NUMBER

ページ番号

session_id

NUMBER

Oracle Application Expressセッション識別子。

sqlerrm

VARCHAR2(4000)

SQLエラー・メッセージ

sqlerrm_component_type

VARCHAR2(255)

将来の使用のために予約されています。

sqlerrm_component_name

VARCHAR2(255)

将来の使用のために予約されています。

アクティビティ・ログの領域を節約するため、一意のセッションそれぞれの最初のログ・エントリにのみIPアドレスとWebブラウザ・ユーザー・エージェントが含まれます。

22.8.3 APEX_ACTIVITY_LOGのサンプル問合せ

次に、アプリケーション9529に関する過去24時間のページ・ビュー合計数および平均ページ・ビュー時間がユーザーID別に表示されるレポートを作成する方法の例を示します。

SELECT COUNT(*), AVG(elap), userid
    FROM APEX_ACTIVITY_LOG
 WHERE time_stamp > (SYSDATE-1)
   AND flow_id = 9529
GROUP BY userid

Oracle Application Expressインスタンスでのアクティビティ・ロギングは2つの異なるログ表を順番に使用することに注意してください。ログ表は2つあるので、ロギング情報はログのうち古い方の使用可能なエントリのみとなります。アプリケーションの特定のログ情報を常に保持する場合は、所有するアプリケーション表に両方のログ情報をコピーするか、アプリケーションに直接ロギングを実装する必要があります。