중요
이 에이전트 버전의 지원 종료일은 2019년 7월 29일입니다. 최신 에이전트 버전으로 업데이트하려면 에이전트 업데이트를 참조하세요. 자세한 내용은 수명 종료 정책을 참조하세요.
메모:
apt
저장소는 이제 디지털 서명되었으며, Ubuntu나 다른 Debian 계열 시스템용 이 저장소에서 에이전트를 업데이트하려면 다음 명령을 사용하여 새 GPG 키를 가져와야 합니다(맨 마지막에 마이너스 기호가 있으니 주의하세요!).wget -O - https://download.newrelic.com/NEWRELIC_APT_2DAD550E.public | sudo gpg --import --batch --no-default-keyring --keyring /usr/share/keyrings/download.newrelic.com-newrelic.gpg
Zend와 Magento 거래의 명명 방식을 개선할 것을 제안해 준 IGN Entertainment의 Nick Calugar에게 매우 특별하고 큰 감사를 전합니다. 이 두 프레임워크의 경우, 거래 명명 방식이 이전에 사용하던 거래 명명 방식보다 더 정확해졌고 오버헤드도 줄었습니다. 이를 통해 Magento 거래 이름에 가끔 가비지 문자가 포함되거나 심지어 PHP 스크립트 조각이 포함되는 문제도 해결되었습니다. 두 경우 모두 다른 프레임워크와 마찬가지로 트랜잭션의 이름이 '모듈/컨트롤러/액션'으로 지정됩니다.
베타 테스트 기간 동안 귀중한 도움을 주시고 OCI8 지원 테스트에 참여해 주신 더블린의 Arithon 소속 Roderick Smyth에게 특별히 감사드립니다.
자동 사용자 실감시(autoRUM)가 크게 개선되었습니다. 가장 중요한 변경 사항은 자동 RUM이 이제 출력 필터로 구현되어 Drupal과 Wordpress뿐만 아니라 모든 프레임워크에서 작동한다는 것입니다. 또한 모듈이나 프레임워크의 다른 변경 사항이 더 이상 RUM 헤더와 푸터를 삽입하는 방법에 영향을 미치지 않으므로 안정성이 상당히 높아졌습니다. 이전에 RUM 헤더와 푸터를 수동으로 삽입해야 했던 경우 기존 수동 호출의 자동RUM 및 푸터를 다시 활성화하는 것이 좋습니다. 이 변경 사항에 따라 'newrelic_disable_autorum()'이라는 새로운 API 호출이 있는데, 이를 호출하면 주어진 트랜잭션에 대해 자동 RUM이 실행되는 것을 방지할 수 있습니다. 예를 들어 AJAX 호출에 대한 자동 RUM을 비활성화할 수 있습니다.
어떻게 호출하든, 동일한 트랜잭션에서 헤더가 제거되지 않은 경우에는 RUM 푸터가 더 이상 제거되지 않습니다. 이렇게 하면 헤더가 삽입되지 않을 경우 JavaScript 오류가 발생하는 것을 방지할 수 있습니다.
RUM 헤더와 푸터가 약간 수정되어 마지막 스크립트 명령 뒤에 누락된 세미콜론이 추가되었습니다. 이를 통해 일부 브라우저와 규정 준수 분석기가 JavaScript에 대해 불평하는 것도 방지할 수 있습니다.
레디스에 MemCache와 유사한 기능 지원이 추가되었습니다. 이는 REDIS에 대한 완전한 지원은 아니며, 기존 MemCache 지표에 깔끔하게 매핑되는 REDIS API 의 일부에 대한 지원일 뿐입니다. 이러한 항목은 개요 그래프에 MemCache 활동으로 표시되므로 MemCache와 Lendis를 모두 사용하면 다른 SQL 데이터베이스에 대한 개요가 병합되는 것처럼 데이터가 병합됩니다.
여러 프레임워크 사이트(동일한 사이트의 여러 부분에 두 개 이상의 프레임워크가 사용되는 경우)에 대한 지원이 상당히 개선되었습니다. 프레임워크 관련 함수에 대한 측정, 로그는 이제 요청별로 격리되므로 하나의 PHP에서 처리하는 여러 requests 프레임워크의 갑작스러운 변경으로 인해 더 이상 혼동되지 않습니다.
logrotate 펼쳐보기는 더 이상 뉴렐릭 서버 모니터가 설치한 버전과 충돌하지 않습니다.
어떤 이유로든 데몬이 응답하지 않는 경우 에이전트가 더 이상 데몬이 복구될 때까지 기다리지 않고(따라서 아파치가 충돌하는 것처럼 보이도록) 에이전트-데몬 통신에 대한 시간 초과를 구현했습니다.
오류 처리기에서 사용자 알림 오류를 올바르게 무시합니다.
더 이상 사용되지 않지만 여전히 자주 사용되는
mysql_db_query
함수에 대한 지원이 추가되었습니다.Zend에서 외부 서비스 호출을 더 잘 추적하기 위해 Zend 프레임워크의 Zend_Http_Client::request() 메서드에 대한 지원이 추가되었습니다.
애플리케이션 이름을 설정할 때 구문
newrelic.appname="%{VARIABLE}"
사용할 수 있는 기능이 추가되었습니다. 이렇게 하면 SAPI의 환경 변수 조회 메커니즘을 사용하여 VARIABLE을 찾고 그에 따라 애플리케이션 이름을 설정합니다.REPLACE
SQL 명령 동사는 이제 "기타"로 묶이지 않고 인식되고 고유한 메트릭이 생성됩니다.OpenSolaris의 스레드 뮤텍스 교착 상태 문제가 해결되었습니다.
Wikia의 순수 PHP MemCached 클라이언트에 대한 지원이 추가되었습니다.
file_get_contents()
이제 검색되는 개체가 원격이고 HTTP 또는 HTTPS를 사용하는 경우 외부 서비스 탭에 표시됩니다.newrelic_notice_error()
에는 이제 문자열과Exception
객체를 취하는 세 번째 호출 형식이 있습니다. 문자열이 제공되면 오류 메시지로 사용됩니다. 비어 있는 경우Exception::__toString()
와 비슷한 형식의 기본 문자열이 자동으로 생성되어 오류 메시지로 사용됩니다. 제공된 예외 객체는 예외에 대한 스택 추적을 생성하는 데 사용되므로, 예외를 표시할 시점의 스택 추적이 아닌 예외 발생 시점의 스택 추적을 볼 수 있습니다.newrelic.capture_params = true
설정하여 요청 캡처 캡처를 활성화하면 이제newrelic.ignored_params
쉼표로 구분된 민감한 매개변수 목록으로 설정하여 뉴렐릭으로 전송되는 모든 데이터에서 제외할 수도 있습니다.CakePHP 2.0에 대한 지원이 추가되었고, CakePHP 1.2와 1.3 지원은 저자인 Mark Story의 피드백을 바탕으로 약간 개편되었습니다. CakePHP 1.2 애플리케이션은 새로운 트랜잭션 명명 메커니즘 덕분에 뉴렐릭이 활성화되면 상당히 더 빨라질 것입니다. 또한 사용자 정의 디스패처 클래스를 구현한 경우에도 트랜잭션 이름이 올바르게 지정되도록 보장합니다.
이제 MongoDB가
update
명령을 올바르게 계측했습니다.가장 중요한 두 가지 호출인
oci_parse()
및oci_execute().
에 대한 작업 데이터베이스에 대한 지원이 추가되었습니다. 현재 다른 OCI 호출은 리소스가 없습니다.세그먼테이션 위반을 일으킬 수 있는 버그가 수정되었습니다.
에이전트의 오버헤드를 더욱 줄이는 여러 가지 성능 개선 사항이 있습니다.