• /
  • EnglishEspañolFrançais日本語한국어Português
  • 로그인지금 시작하기

사용자의 편의를 위해 제공되는 기계 번역입니다.

영문본과 번역본이 일치하지 않는 경우 영문본이 우선합니다. 보다 자세한 내용은 이 페이지를 방문하시기 바랍니다.

문제 신고

newrelic_record_datastore_segment(PHP 에이전트 API)

|View as Markdown (English)

통사론

newrelic_record_datastore_segment(callable $func, array $parameters)

데이터 저장소 세그먼트를 기록합니다.

요구 사항

에이전트 버전 7.5.0.199 이상.

설명

데이터스토어 세그먼트를 기록합니다. 데이터스토어 세그먼트는 Breakdown table Databases 뉴렐릭 에 있는 프로세서 페이지 의 및 탭에 UI 나타납니다.

이 기능을 사용하면 PHP 에이전트가 지원되는 데이터 저장소 를 자동으로 계측하는 것과 같은 방식으로 지원되지 않는 데이터 저장소를 계측할 수 있습니다.

매개변수

매개변수

설명

$callback

호출 가능한

필수의. 데이터 저장소 세그먼트를 생성하기 위해 시간을 설정해야 하는 함수입니다.

$parameters

정렬

필수의. 데이터 저장소 호출을 설명하는 매개변수의 연관 배열입니다.

$parameters 배열에서 지원되는 키는 다음과 같습니다.

열쇠

설명

product

끈

필수의. 사용 중인 데이터 저장소 제품의 이름입니다. 예를 들어 MySQL 은 세그먼트가 MySQL 데이터베이스에 대한 쿼리를 나타냄을 나타냅니다.

collection

끈

선택 과목. 사용 중이거나 쿼리 중인 테이블 또는 컬렉션입니다.

operation

끈

선택 과목. 수행 중인 작업: 예를 들어 SQL SELECT 쿼리의 경우 select , Memcached 집합 작업의 경우 set 입니다.

작업은 대소문자에 관계없이 지정할 수 있지만 New Relic은 PHP 에이전트의 자동화된 데이터 저장소 계측에서 사용되는 작업 이름과 더 잘 일치하도록 소문자를 사용할 것을 제안합니다.

host

끈

선택 과목. 데이터 저장소 호스트 이름입니다.

portPathOrId

끈

선택 과목. 데이터 저장소에 연결하는 데 사용되는 포트 또는 소켓입니다.

databaseName

끈

선택 과목. 사용 중인 데이터베이스 이름 또는 번호입니다.

query

끈

선택 과목. 서버로 보낸 쿼리입니다.

보안상의 이유로 이 값은 product 을 지원되는 데이터 저장소로 설정한 경우에만 사용됩니다. 이렇게 하면 에이전트가 쿼리를 올바르게 난독화할 수 있습니다. 지원되는 제품 값(대소문자 구분 없이 일치)은 MySQL , MSSQL , Oracle , Postgres , SQLite , Firebird , Sybase 및 Informix 입니다.

inputQueryLabel

끈

선택 과목. 사용 중인 ORM의 이름(예: Doctrine ).

inputQuery

끈

선택 과목. ORM에 제공된 입력 쿼리입니다.

보안상의 이유로 query 매개변수와 마찬가지로 제품이 지원되는 데이터 저장소가 아닌 경우 이 값은 무시됩니다.

중요

$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,
));
Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.