この項では、APEX_ACTIVITY_LOGビューを使用して、現在のワークスペースのアクティビティを問い合せる方法について説明します。
アプリケーション定義の編集ページでアプリケーションのロギングを有効にできます。
アプリケーション定義を編集するには、次のステップを実行します。
「ワークスペース」ホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
アプリケーションを選択します。
アプリケーション名の右側にある「アプリケーション・プロパティの編集」ボタンをクリックします。
「アプリケーション定義の編集」ページが表示されます。
「プロパティ」で、「ロギング」を見つけます。「はい」または「いいえ」を選択します。
「はい」に設定した場合、すべてのページ・ビューがログに記録されるため、管理者はアプリケーションごとにユーザー・アクティビティを監視できます。高容量アプリケーションでは、ロギングを無効にすることをお薦めします。
| ヒント:Oracle Application Express管理サービスの「アプリケーション・アクティビティのロギング」属性が「アプリケーションの設定を使用(デフォルト)」に設定されている場合、「ロギング」属性の変更のみ可能です。 | 
| 関連項目:『Oracle Application Express管理ガイド』のロギングでのアプリケーション・アクティビティの有効化に関する項 | 
APEX_ACTIVITY_LOGビューには、開発者アクティビティ、アプリケーション実行時アクティビティなど、ワークスペースのすべてのアクティビティが記録されます。APEX_ACTIVITY_LOG使用して、現在のワークスペースのすべてのアクティビティを表示および問い合せることができます。たとえば、このビューを使用して、リアルタイムのパフォーマンス分析を提供する特定のアプリケーション内の監視レポートを開発できます。
表 23-1に、APEX_ACTIVITY_LOGビューの列を示します。
表 23-1 APEX_ACTIVITY_LOGの列
| 列 | タイプ | 説明 | 
|---|---|---|
| 
 | DATE | アクティビティがページ・ビューの末尾に記録された日時 | 
| 
 | VARCHAR2(255) | 今後の使用のための予約 | 
| 
 | VARCHAR2(255) | 今後の使用のための予約 | 
| 
 | VARCHAR2(4000) | ページのタイトル | 
| 
 | VARCHAR2(4000) | 今後の使用のための予約 | 
| 
 | NUMBER | ページ・ビューの経過時間(秒)。 | 
| 
 | NUMBER | ページ上で処理された行数 | 
| 
 | VARCHAR2(255) | ページ・ビューを実行しているユーザーのID | 
| 
 | VARCHAR2(4000) | クライアントのIPアドレス | 
| 
 | NUMBER | 対話モード・レポートID | 
| 
 | VARCHAR2 | ユーザーが入力した対話モード・レポート検索条件。 | 
| 
 | VARCHAR2(4000) | クライアントのWebブラウザ・ユーザー・エージェント。 | 
| 
 | NUMBER | アプリケーションID | 
| 
 | NUMBER | ページ番号。 | 
| 
 | NUMBER | Oracle Application Expressセッション識別子。 | 
| 
 | VARCHAR2(4000) | SQLエラー・メッセージ | 
| 
 | VARCHAR2(255) | 今後の使用のための予約 | 
| 
 | VARCHAR2(255) | 今後の使用のための予約 | 
アクティビティ・ログの領域を節約するため、一意のセッションそれぞれの最初のログ・エントリにのみIPアドレスとWebブラウザ・ユーザー・エージェントが含まれます。
次に、アプリケーション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つあるので、ロギング情報はログのうち古い方の使用可能なエントリのみとなります。アプリケーションの特定のログ情報を常に保持する場合は、所有するアプリケーション表に両方のログ情報をコピーするか、アプリケーションに直接ロギングを実装する必要があります。