Added: phpdoc/ja/trunk/reference/oci8/OCI-Collection.xml
===================================================================
--- phpdoc/ja/trunk/reference/oci8/OCI-Collection.xml (rev 0)
+++ phpdoc/ja/trunk/reference/oci8/OCI-Collection.xml 2014-12-21 08:03:46 UTC (rev 335328)
@@ -0,0 +1,67 @@
+
+
+
+
+ OCI-Collection クラス
+ OCI-Collection
+
+
+
+
+
+ &reftitle.intro;
+
+ OCI8 コレクション機能です。
+
+
+
+
+
+ &reftitle.classsynopsis;
+
+
+
+ OCI-Collection
+
+
+
+
+ OCI-Collection
+
+
+
+
+ &Methods;
+
+
+
+
+
+
+
+
+ &reference.oci8.entities.OCI-Collection;
+
+
+
+
+
Added: phpdoc/ja/trunk/reference/oci8/OCI-Lob.xml
===================================================================
--- phpdoc/ja/trunk/reference/oci8/OCI-Lob.xml (rev 0)
+++ phpdoc/ja/trunk/reference/oci8/OCI-Lob.xml 2014-12-21 08:03:46 UTC (rev 335328)
@@ -0,0 +1,68 @@
+
+
+
+
+ OCI-Lob クラス
+ OCI-Lob
+
+
+
+
+
+ &reftitle.intro;
+
+ ラージバイナリ (BLOB) および キャラクタオブジェクト (CLOB) に対する
+ OCI8 ラージオブジェクト (LOB) 機能です。
+
+
+
+
+
+ &reftitle.classsynopsis;
+
+
+
+ OCI-Lob
+
+
+
+
+ OCI-Lob
+
+
+
+
+ &Methods;
+
+
+
+
+
+
+
+
+ &reference.oci8.entities.OCI-Lob;
+
+
+
+
+
Added: phpdoc/ja/trunk/reference/oci8/dtrace.xml
===================================================================
--- phpdoc/ja/trunk/reference/oci8/dtrace.xml (rev 0)
+++ phpdoc/ja/trunk/reference/oci8/dtrace.xml 2014-12-21 08:03:46 UTC (rev 335328)
@@ -0,0 +1,419 @@
+
+
+
+
+ OCI8 および DTrace 動的トレーシング
+
+
+ OCI8 2.0 では、DTrace をサポートする OS 上で使用できる
+ 静的な DTrace プローブが導入されました。
+ PHP および DTrace の概要については、DTrace 動的トレーシング をご覧ください。
+
+
+
+
+ DTrace サポート付きで OCI8 をインストール
+
+ PHP OCI8 で DTrace のサポートを有効にするには、
+ PHP_DTRACE を設定後、
+ OCI8 を共用拡張モジュールとしてビルドします。
+
+
+
+
+
+
+
+
+
+ php.ini を編集し、作成された oci8.so がある
+ ディレクトリを extension_dir に
+ 設定します。
+ さらに以下のように追加してその拡張モジュールを有効にします。
+
+
+
+
+
+
+
+
+
+ もし、phpize および configure を
+ ( pecl の代わりに)
+ 使用して PECL から PHP OCI8 2.0 をインストールする場合、
+ さらに PHP_DTRACE=yes を設定する必要があります。
+ それは、--enable-dtrace オプションが、PECL バンドルの
+ 制限された configure スクリプトにより
+ 無視されるからです。
+
+
+
+ 一般的な PECL インストール手順については、PECL 拡張モジュールのインストール
+ をご覧ください。
+
+
+
+
+ PHP OCI8 の DTrace 静的プローブ
+
+ PHP OCI8 では、以下の静的プローブが使用できます
+
+
+
+ プローブ名
+ プローブの説明
+ プローブの引数
+
+
+
+
+ oci8-connect-entry
+ oci_connect()、oci_pconnect() および oci_new_connect() により開始されます。データベース接続が確立する前に発射されます。
+ char *username, char *dbname, char *charset, long session_mode, int persistent, int exclusive
+
+
+ oci8-connect-return
+ 接続終了時に発射されます。
+ void *connection
+
+
+ oci8-check-connection
+ Oracle のエラーにより、接続が不正になったかもしれない場合に発射されます。
+ void *connection, char *client_id, int is_open, long errcode, unsigned long server_status
+
+
+ oci8-sqltext
+ oci_parse() が実行された際に発射されます。
+ void *connection, char *client_id, void *statement, char *sql
+
+
+ oci8-connection-close
+ データベースへの接続が完全に破壊された際に発射されます。
+ void *connection
+
+
+ oci8-error
+ Oracle のエラーが生じた場合に発射されます。
+ int status, long errcode
+
+
+ oci8-execute-mode
+ 実行モードを示す oci_execute のたびに発射されます。
+ void *connection, char *client_id, void *statement, unsigned int mode
+
+
+
+
+
+ これらのプローブは、OCI8 スクリプトのトレーシングで有用です。
+
+
+
+ connection および statement は、
+ PHP の接続および実行されたステートメントを追跡するために使用される内部構造への
+ ポインタです。
+
+
+
+ client_id は、
+ oci_set_client_identifier により設定される値です。
+
+
+
+
+
+
+
+
+
+
+
+
+
+ コア PHP にも静的プローブがあります。
+ コア PHP の DTrace 静的プローブ
+ をご覧ください。
+
+
+
+ OCI8 の DTrace プローブ内部デバッギング
+
+
+
+ プローブ名
+
+
+
+
+ oci8-connect-expiry
+
+
+ oci8-connect-lookup
+
+
+ oci8-connect-p-dtor-close
+
+
+ oci8-connect-p-dtor-release
+
+
+ oci8-connect-type
+
+
+ oci8-sesspool-create
+
+
+ oci8-sesspool-stats
+
+
+ oci8-sesspool-type
+
+
+
+
+
+ これらのプローブは、OCI8 メンテナにとって有用です。
+ 引数およびいつ発射されるかについては、OCI8 のソースコードを参照してください。
+
+
+
+
+ PHP OCI8 の DTrace 静的プローブ一覧
+
+ 使用できるプローブを一覧表示するには、
+ PHP プロセスを開始して以下のように実行します。
+
+
+
+
+
+
+
+
+ 出力は以下のようになります。
+
+
+
+
+
+
+
+
+ PROVIDER 列の値は、phpoci および
+ 現在実行中の PHP プロセスのプロセス ID から構成されます。
+
+
+
+ FUNCTION 列は、各プロバイダが配置された PHP 内部の C 実装関数名を参照します。
+
+
+
+ PHP プロセスが実行されていない場合、PHP プローブは表示されません。
+
+
+
+
+ PHP OCI8 についての DTrace の例
+
+ この例では、DTrace の D スクリプト言語の基本を示します。
+
+ DTrace を使用して
+ すべてのユーザーレベルの PHP OCI8 静的プローブをトレースするための
+ user_oci8_probes.d
+
+
+
+
+
+
+
+ このスクリプトは、dtrace に対して
+ -Z オプションを使用します。
+ それにより、実行中の PHP プロセスがない場合に実行できるようになります。
+ もしこのオプションが書き落とされた場合、
+ モニターされているプローブがどれも存在しないことがわかっているので、
+ PHP の実行可能ファイルが実行されていない場合、
+ スクリプトは即座に終了します。
+
+
+
+ マルチ CPU マシンでは、プローブの順序は規則的に連続して表示されないことがあります。
+ これは、どの CPU がプローブを処理し、
+ CPU の間をスレッドがどのように移動したかに依存します。
+ プローブのタイムスタンプを表示すると、
+ 混乱を減らすことができます。
+
+
+
+ スクリプトは、PHP スクリプト実行中の期間全体にわたって、
+ すべてのユーザーレベルの PHP OCI8 静的プローブ・ポイントをトレースします。
+ D スクリプトを実行します。
+
+
+
+
+
+
+
+
+ PHP スクリプトまたはアプリケーションを実行します。
+ モニタリングの D スクリプトは、各プローブが発射されるたびに
+ その引数を出力します。
+ 例えば、テーブルを照会する単純な PHP スクリプトにより
+ 以下のトレース出力がもたらされるでしょう。
+
+
+
+
+
+
+
+
+ モニタリングが完了した際には、^Cを使用して
+ D スクリプトを終わらせることができます。
+
+
+
+
+
+ 関連項目
+
+ DTrace 動的トレーシング
+
+
+
+
+
+
+