構文
newrelic_record_datastore_segment(callable $func, array $parameters)データストアのセグメントを記録します。
要件
エージェントのバージョン 7.5.0.199 以上。
説明
データストア セグメントを記録します。 データストア セグメントは、New Relic UI のトランザクション ページのBreakdown tableタブとDatabasesタブに表示されます。
この関数は、サポートされていないデータストアを、PHPエージェントが サポートされているデータストアを自動的にインスツルメンテーションするのと同じように、インスツルメンテーションすることができます 。
パラメーター
パラメータ  | 説明  | 
|---|---|
 キャラブル  | 必要です。データストア・セグメントを作成するために時間を設定する必要がある関数です。  | 
 アレイ  | 必要です。データストアの呼び出しを説明するパラメータの連想配列です。  | 
$parameters配列でサポートされているキーは次のとおりです:
鍵  | 説明  | 
|---|---|
 ストリング  | 必須。使用されているデータストア製品の名前: たとえば、   | 
 ストリング  | オプションです。使用または問い合わせを行うテーブルまたはコレクション。  | 
 ストリング  | オプション。実行中の操作: たとえば、SQL SELECT クエリの場合は 操作名の大文字小文字は問いませんが、PHP エージェントの自動データストア計測機能で使用する操作名との整合性をとるために、New Relic では小文字を使用することを推奨します。  | 
 ストリング  | オプションです。データストアのホスト名です。  | 
 ストリング  | オプションです。データストアへの接続に使用するポートまたはソケットです。  | 
 ストリング  | オプションです。使用中のデータベース名または番号です。  | 
 ストリング  | オプションです。サーバーに送信されたクエリです。 セキュリティ上の理由から、この値は、サポートされているデータストアに  | 
 ストリング  | オプション。使用中の ORM の名前 (例:   | 
 ストリング  | オプションです。ORM に提供された入力クエリ。 セキュリティ上の理由から、   | 
重要
$parameters配列で使用される文字列引数には、特殊文字「/」を含めないでください。
戻り値
$callbackの戻り値が返されます。エラーが発生した場合、 falseが返され、 E_WARNINGレベルのエラーがトリガーされます。
例
サポートされていないNoSQLデータストアのインストゥルメント化
getメソッドを公開するBucketという架空の NoSQL データストアを計測するには、次のコードで New Relic UI に表示されるデータストア メトリックを作成します。
$bucket = new Bucket($host, $port);$id = 12345;
$value = newrelic_record_datastore_segment(function () use ($bucket, $id) {    return $bucket->get($id);}, array(    'product'      => 'Bucket',    'collection'   => $id,    'operation'    => 'get',    'host'         => $host,    'portPathOrId' => $port,));サポートされていないSQLクライアントライブラリのインストゥルメント化
サポートされていないMySQLクライアントライブラリのクエリを、難読化してセグメントに添付して記録する。
$sql = 'SELECT * FROM table';$stmt = $db->prepare($sql);
$result = newrelic_record_datastore_segment(function () use ($stmt) {    return $stmt->execute();}, array(    'product'      => 'MySQL',    'collection'   => 'table',    'operation'    => 'select',    'host'         => $host,    'portPathOrId' => $port,    'databaseName' => 'dbname',    'query'        => $query,));