7

PHP Web アプリで New Relic をセットアップしました。1 つのことを除いて、すべてがうまく機能しています... すべてのトランザクションは、「index.php」を経由していると表示されます。

この理由は、Slim フレームワーク(ルーティングに 多くの 代替手段 あります) を URL 書き換えと共に使用しているため、すべてのコントローラーとアクションのフォルダーがなくても、"/user/settings" のような適切な人間の URL を使用できるためです。

index.phpしかしそれでも、すべての New Relic Web トランザクションの名前は私のままです。

4

4 に答える 4

8

検索には少し時間がかかりましたが、CodeIgniter に関連する回答 (こちらから入手可能) を見つけることができました。

少し変更を加えただけで (Slim で) うまくいきました。他の PHP ルーターやフレームワークでもほぼ同じ解決策になると思います。

if (extension_loaded ('newrelic')) {
    newrelic_name_transaction($_SERVER['REQUEST_URI']);
}

編集: GET パラメータを含めないようにするには、2 行目にこれを使用します。

newrelic_name_transaction(current(explode('?', $_SERVER['REQUEST_URI'])))

注: Slim を使用している場合、ルート パターンの使用を推奨する Emerson の回答は、リテラル URL を使用するよりもはるかに優れたオプションです。

于 2013-07-25T14:14:06.503 に答える
1

New Relicは、PHP エージェントのバージョン6.7.0.174から、Slim Framework をすぐにサポートできるようになりました。

于 2016-09-21T21:07:07.423 に答える