重要
このエージェント バージョンのサポート終了日は 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 氏に、心から感謝いたします。これら 2 つのフレームワークでは、トランザクションの命名がより正確になり、トランザクションの命名に使用されていた以前のメカニズムよりもオーバーヘッドが少なくなりました。これにより、Magento トランザクション名に文字化けした文字が含まれたり、PHP スクリプトのフラグメントが含まれたりすることがある問題も修正されました。どちらの場合も、トランザクションの名前は他のフレームワークと同様に「module/controller/action」になります。
また、ベータ テスト期間中の非常に貴重な支援と OCI8 サポートのテストにご協力いただいたダブリンの Arithon の Roderick Smyth 氏にも、心より感謝申し上げます。
自動リアルユーザー監視 (auto RUM ) が大幅に改善されました。 最も重要な変更点は、自動 RUM が出力フィルターとして実装され、Drupal や Wordpress だけでなくすべてのフレームワークで機能するようになったことです。その結果、モジュールやフレームワークのその他の変更が RUM ヘッダーとフッターの挿入方法に影響を与えなくなったため、信頼性も大幅に向上しました。以前にRUMヘッダーとフッターを手動で挿入する必要があった場合は、自動RUM再度有効にして、既存の手動呼び出しをコメントアウトすることを強くお勧めします。 この変更に伴い、特定のトランザクションで自動 が実行されないようにするために呼び出すことができる新しいAPI コール「newrelic_disable_autorum()」が追加されました。RUMたとえば、AJAX 呼び出しの自動 RUM を無効にする場合があります。
呼び出し方法に関係なく、同じトランザクションでヘッダーも排出されなかった場合、RUM フッターは排出されなくなりました。これにより、ヘッダーの挿入に何らかの理由で失敗した場合に JavaScript エラーが発生するのを防ぎます。
RUM ヘッダーとフッターがわずかに変更され、最後のスクリプト コマンドの後に欠落していたセミコロンが追加されました。これにより、一部のブラウザやコンプライアンス アナライザーが JavaScript についてエラーを報告しなくなることも防げます。
Redis の MemCache のような機能のサポートが追加されました。これは決してRedisの完全なサポートではなく、既存の MemCache メトリックにきれいにマップされるRedis APIの部分のみをサポートします。 これらは概要グラフに MemCache アクティビティとして表示されるため、MemCache と Redis の両方を使用する場合は、異なる SQL データベースの概要がマージされるのと同じように、データがマージされます。
マルチフレームワーク サイト (同じサイトの複数の部分で複数のフレームワークが使用されているサイト) のサポートが大幅に改善されました。フレームワーク固有の機能の計装がリクエストごとに分離されるようになったため、1 つの PHP インスタンスで処理される複数のrequestsフレームワークの突然の変更によって混乱することがなくなりました。
logrotate スクリプトはNew Relic Server モニターによってインストールされたバージョンと競合しなくなりました。
エージェントとデーモン間の通信にタイムアウトを実装しました。これにより、デーモンが何らかの理由で応答しなくなった場合でも、デーモンの回復を待ってエージェントがハングアップすることがなくなりました (Apache がクラッシュしたように見えることもなくなりました)。
エラー ハンドラー内のユーザー通知エラーを適切に無視します。
非推奨だが依然として頻繁に使用される
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
オブジェクトを受け取る 3 番目の呼び出し形式が追加されました。文字列が指定されている場合は、それがエラーメッセージとして使用されます。 空の場合、Exception::__toString()
に似た形式のデフォルト文字列が自動的に生成され、エラーメッセージとして使用されます。 提供された例外オブジェクトは、例外のスタックト レースを作成するために使用されます。これにより、例外の表示時のスタックト レースではなく、例外発生時のスタックト レースを確認できるようになります。newrelic.capture_params = true
を設定してリクエストのキャプチャを有効にすると、 New Relicに送信されるデータから除外される機密問題のカンマ区切りリストをnewrelic.ignored_params
に設定することもできます。CakePHP 2.0 のサポートが追加され、作者の Mark Story からのフィードバックに基づいて CakePHP 1.2 および 1.3 のサポートが若干改良されました。新しいトランザクション命名メカニズムにより、New Relic を有効にすると CakePHP 1.2 アプリケーションの実行速度が大幅に向上します。また、独自のカスタム ディスパッチャ クラスを実装した場合でも、トランザクションの名前が正しく付けられることが保証されます。
MongoDB は、
update
コマンドを正しくインストゥルメントできるようになりました。インストゥルメントによってOracleデータベースのサポートが追加されました:
oci_parse()
とoci_execute().
2 つの最も重要な呼び出しが現在インストゥルメントで行われている他の OCI 呼び出しはありません。セグメンテーション違反を引き起こす可能性があったバグが修正されました。
エージェントのオーバーヘッドをさらに削減するいくつかのパフォーマンス改善。