ヘッダーをスキップ
Oracle® Providers for ASP.NET 開発者ガイド
11gリリース2 (11.2.0.3)for Microsoft Windows
B62266-02
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

OracleWebEventProviderクラス

OracleWebEventProviderクラスにより、ASP.NETアプリケーションは、WebイベントをOracleデータベースに格納できます。

クラスの継承

System.Object

  System.Configuration.Provider.ProviderBase

    System.Web.Management.WebEventProvider

      System.Web.Management.BufferedWebEventProvider

        Oracle.Web.Management.OracleWebEventProvider

宣言

// C#
public class OracleWebEventProvider: BufferedWebEventProvider

スレッド安全性

すべてのパブリック静的メソッドはスレッドセーフですが、インスタンス・メンバーがスレッドセーフであることは保証されません。

備考

このクラスにより、ASP.NETアプリケーションは、OracleデータベースにWebイベント情報を格納できます。

次に、OracleWebEventProviderクラスをデフォルト・プロバイダとして使用するASP.NETアプリケーションのweb.configの例を示します。この構成では、machine.configファイルで指定された接続文字列とデフォルト属性値を使用します。

machine.configファイルはイベント・マッピング、バッファ・モードおよびルールに必要な構成エントリを提供しないため、アプリケーションがこれらの構成エントリをweb.configファイルで提供する必要があります。次のweb.configファイルで例を示します。

<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <system.web>
    <healthmonitoring enabled="true"/>
      <bufferModes>
        <add name="Notification"
             maxBufferSize="1000"
             maxFlushSize="200"
             urgentFlushThreshold="500"
             regularFlushInterval="00:00:6"
             urgentFlushInterval="00:00:03"
             maxBufferThreads="1"/>
      </bufferModes>
      <eventMappings>
        <add name="CustomEvent"
             type="CustomEventSource.CustomEvent, CustomEventSource"/>
      </eventMappings>
      <rules>
        <add name="CustomRule"
             eventName="CustomEvent"
             provider="OracleWebEventProvider"
             minInterval="00:00:00"/>
      </rules>
    </healthMonitoring>
  </system.web>
</configuration>

次に、OracleWebEventProviderクラスをデフォルト・プロバイダとして使用し、接続文字列名とアプリケーション名に対するカスタマイズされた設定、アプリケーション固有の接続文字列、および前の例で説明したその他の構成を使用するASP.NETアプリケーションのweb.configの例を示します。

<?xml version="1.0"?>
<configuration xmlns=
  "http://schemas.microsoft.com/.NetConfiguration/v2.0">
  <connectionStrings>
    <add name="my_webevent_app_con_string" connectionString=
      "User Id=scott;Password=tiger;Data Source=Oracle"/>
  </connectionStrings>
  <system.web>
    <!-- Enable and customize OracleWebEventProvider -->
    <healthMonitoring enabled="true">
      <providers>
        <add name="CustomOracleWebEventProvider"
             type="Oracle.Web.Management.OracleWebEventProvider,
                   Oracle.Web, Version=2.112.2.0, Culture=neutral,
                   PublicKeyToken=89b483f429c47342"
             connectionStringName="my_webevent_app_con_string"
             bufferMode="CustomBufferMode">
      </providers>
      <bufferModes>
        <add name="CustomBufferMode"
             maxBufferSize="1000"
             maxFlushSize="200"
             urgentFlushThreshold="500"
             regularFlushInterval="00:00:06"
             urgentFlushInterval="00:00:03"
             maxBufferThreads="1"/>
      </bufferModes>
      <eventMappings>
        <add name="CustomEvent"
             type="CustomEventSource.CustomEvent, CustomEventSource"/>
      </eventMappings>
      <rules>
        <add name="CustomRule"
             eventName="CustomEvent"
             provider="CustomOracleWebEventProvider"
             minInterval="00:00:00"/>
      </rules>
    </healthMonitoring>
  </system.web>
</configuration>

applicationName属性は、ASP.NETアプリケーションごとに一意の値に設定する必要があります。

要件

ネームスペース: Oracle.Web.Management

アセンブリ: Oracle.Web.dll

Oracle Providers for ASP.NETのバージョン: Oracle Providers for ASP.NET 2.0およびOracle Providers for ASP.NET 4


OracleWebEventProviderメンバー

次の表にOracleWebEventProviderメンバーをリストします。

OracleWebEventProviderコンストラクタ

OracleWebEventProviderコンストラクタを、表7-1にリストします。

表7-1 OracleWebEventProviderコンストラクタ

コンストラクタ 説明

OracleWebEventProviderコンストラクタ

OracleWebEventProviderクラスの新規インスタンスをインスタンス化します


OracleWebEventProvider静的メソッド

OracleWebEventProvider静的メソッドを、表7-2にリストします。

表7-2 OracleWebEventProvider静的メソッド

静的メソッド 説明

Equals

System.Objectからの継承(オーバーロード)

ReferenceEquals

System.Objectからの継承


OracleWebEventProviderパブリック・プロパティ

OracleWebEventProviderパブリック・プロパティを、表7-3にリストします。

表7-3 OracleWebEventProviderパブリック・プロパティ

パブリック・プロパティ 説明

BufferMode

System.Web.Management.BufferedWebEventProviderからの継承

CommandTimeout


コマンドが例外で実行を終了するまでに実行可能な秒数を取得します

Description

System.Configuration.Provider.ProviderBaseからの継承

Name

System.Configuration.Provider.ProviderBaseからの継承

UseBuffering

System.Web.Management.BufferedWebEventProviderからの継承


OracleWebEventProviderパブリック・メソッド

OracleWebEventProviderパブリック・メソッドを、表7-4にリストします。

表7-4 OracleWebEventProviderパブリック・メソッド

パブリック・メソッド 説明

Initialize


ASP.NETアプリケーションの構成ファイルで指定されたプロパティ値でOracleWebEventProviderインスタンスを初期化します

ProcessEvent


渡されたイベントを引数として処理します

ProcessEventFlush


引数として渡される情報をフラッシュします

Shutdown


すべてのリソースを解放します

Flush

System.BufferedWebEventProviderからの継承

Equals(オーバーロード)

System.Objectからの継承

GetHashCode

System.Objectからの継承

GetType

System.Objectからの継承

ToString

System.Objectからの継承



OracleWebEventProviderコンストラクタ

このコンストラクタでは、OracleWebEventProviderクラスのインスタンスが作成されます。

オーバーロード・リスト:

OracleWebEventProvider()

このコンストラクタでは、OracleWebEventProviderクラスのインスタンスが作成されます。

宣言

// C#
public OracleWebEventProvider();

備考

このコンストラクタでは、OracleWebEventProviderクラスの新規インスタンスが作成されます。


OracleWebEventProvider静的メソッド

OracleWebEventProvider静的メソッドを、表7-5にリストします。

表7-5 OracleWebEventProvider静的メソッド

静的メソッド 説明

Equals

System.Objectからの継承(オーバーロード)

ReferenceEquals

System.Objectからの継承



OracleWebEventProviderパブリック・プロパティ

OracleWebEventProviderパブリック・プロパティを、表7-6にリストします。

表7-6 OracleWebEventProviderパブリック・プロパティ

パブリック・プロパティ 説明

BufferMode

System.Web.Management.BufferedWebEventProviderからの継承

CommandTimeout


コマンドが例外で実行を終了するまでに実行可能な秒数を取得します

Description

System.Configuration.Provider.ProviderBaseからの継承

Name

System.Configuration.Provider.ProviderBaseからの継承

UseBuffering

System.Web.Management.BufferedWebEventProviderからの継承


CommandTimeout

このプロパティは、コマンドが例外で実行を終了するまでに実行可能な秒数を取得します。

宣言

// C#
public int CommandTimeout {get;}
 

プロパティ値

int

備考

プロバイダをカスタマイズするために、ASP.NET開発者は、commandTimeout属性を使用してweb.configファイルでこのプロパティに整数値を設定できます。

デフォルト値は30秒です。構成ファイルの属性名は、大文字と小文字が区別されます。


OracleWebEventProviderパブリック・メソッド

OracleWebEventProviderパブリック・メソッドを、表7-7にリストします。

表7-7 OracleWebEventProviderパブリック・メソッド

パブリック・メソッド 説明

Initialize


ASP.NETアプリケーションの構成ファイルで指定されたプロパティ値でOracleWebEventProviderインスタンスを初期化します

ProcessEvent


渡されたイベントを引数として処理します

ProcessEventFlush


引数として渡される情報をフラッシュします

Shutdown


すべてのリソースを解放します

Flush

System.BufferedWebEventProviderからの継承

Equals(オーバーロード)

System.Objectからの継承

GetHashCode

System.Objectからの継承

GetType

System.Objectからの継承

ToString

System.Objectからの継承


Initialize

このメソッドは、OracleWebEventProviderインスタンスを、ASP.NETアプリケーション構成ファイル(web.config)で指定されたプロパティ値で初期化します。

宣言

// C#
public override void Initialize(string name, NameValueCollection config);

パラメータ

例外

InvalidOperationException - OracleWebEventProviderインスタンスがすでに初期化されている場合。

ProviderException - 次のいずれかの条件が存在します。

備考

Initializeメソッドは、アプリケーションによって直接呼び出されることを意図していません。

ProcessEvent

このメソッドは、引数として渡されたイベントを処理します。

宣言

// C#
public override void ProcessEvent(WebBaseEvent eventRaised);

パラメータ

備考

このメソッドは、イベント処理を開始するためにASP.NETアプリケーションによって呼び出されます。バッファリングが有効になっている場合は、イベントがイベントのバッファに追加され、それ以外の場合はイベント情報がOracle Databaseに直接書き込まれます。

ProcessEventFlush

このメソッドは、引数として渡された情報をフラッシュします。

宣言

// C#
public override void ProcessEventFlush(WebEventBufferFlushInfo flushEvent);

パラメータ

備考

このメソッドは、すべてのイベントをOracle DatabaseにフラッシュするためにASP.NETアプリケーションによって呼び出されます。

Shutdown

このメソッドは、すべてのリソースを解放します。

宣言

// C#
public override void Shutdown();

備考

このメソッドは、プロバイダがアンロードされるときにASP.NETアプリケーションによって呼び出されます。プロバイダがシャットダウンする前に、バッファリングされたすべてのイベントがOracle Databaseにフラッシュされます。