CodeStream は、コードから構築されたサービスがどのように実行されているかの全体像を提供するだけでなく、コード自体がどのように実行されているかをインサイトに提供します。
異常検知
CodeStream はコード内のパフォーマンス上の問題に自動的にフラグを立て、パフォーマンス上の問題が発生したときに積極的に対処できるようにします。
CodeStream は、トランザクションから開始して、エラー率または平均継続時間のいずれかの異常を探すことにより、パフォーマンスの問題を特定します。 New Relic の変更追跡 (変更追跡機能)を使用してデプロイメント情報を送信している場合、異常は、最後のリリース以降のパフォーマンスを過去 3 週間と比較することによって計算されます。 それ以外の場合は、過去 7 日間が使用されます。 パフォーマンスの問題があると特定されたトランザクションについて、CodeStream は、その現場を構成するセグメント (データベース書き込み、外部呼び出し、個々のメソッドなど) をドリルダウンして、パフォーマンスが低下しているセグメントがないかどうかを確認します。 これにより、問題の原因に焦点を当てることができます。
CodeStream では、VS Code または JetBrains IDE のデスクトップ通知を通じてパフォーマンスの問題についても通知します。
エディタ内のパフォーマンスデータ
パフォーマンス データは、探さなくてもエディターに状況に応じて表示されるため、作業中の作業に情報を提供できます。バグ修正に取り組んでいて、作業中のコード領域のエラー率が上昇していることに偶然気づいたとします。もしかしたら、より大きな問題に発展しないように、バグ修正の一環としてその問題に対処するかもしれません。
CodeStream は、New Relic APM エージェントによって計測された各メソッドの上の CodeLens に、過去 30 分間の平均継続時間とエラー率を表示します。メトリクスは、CodeStream ペインで現在選択されているサービスに対して計算されます。別のサービスを展開すると、それに応じてメトリクスが更新されます。
CodeLens をクリックすると、各メトリクスを視覚化したグラフが表示されます。リポジトリが複数の New Relic 監視サービスに関連付けられている場合、それらを簡単に切り替えることができます。これにより、チャートとエディターの両方に表示されるコードレベルのメトリクスのベースとなるサービスが変更され、CodeStream ペインでのサービスの選択も変更されます。
エラー率のグラフに加えて、同じ時間枠で発生した実際のエラーのリスト (それぞれの発生数を含む) も表示されます。エラー率が急上昇しており、特定のエラーが問題の原因であることがわかった場合は、そのエラーをクリックしてスタック トレースを表示し、解決に向けた共同作業を開始できます。
要件
エディター内のパフォーマンス データを表示するには、サービスが以下の要件を満たしている必要があり、サービスは過去 30 分間にデータを収集している必要があります。 New Relic エージェントは、HTTP リクエストに関連付けられたクラスの関数のデータを自動的に収集しようとします。 多くの場合、MVC フレームワークを使用する多くのフレームワークでは、これらはコントローラー クラスのメソッドであることがよくあります。
New Relic エージェントによるすべてのリクエストが常に収集されるわけではないため、トラフィックの少ないメソッドではデータが表示されない可能性があります。結果を確認したい特定のメソッドのデータが欠落している場合は、カスタム インストルメンテーションを使用してギャップを埋めることができます。Java 、.NET 、 PHP 、 Python 、 Ruby 、 Go 、およびNode.jsのガイダンスを参照してください。
- 分散トレーシングを 有効にする必要があります。分散トレースは、すべてのエージェントの最近のバージョンでデフォルトでオンになっているため、これについて心配する必要があるのは、分散トレースを無効にしている場合のみです。
- Go: Go エージェント バージョン 3.24.0 以降が必要です。VS Code を使用している場合は、言語サーバーを有効にして Go for VS Code 拡張機能もインストールする必要があります。
- Java: Java エージェント バージョン 7.11.0 以降が必要です。コードレベルのメトリクスは、 サポートされている Java フレームワークで実装されたプロジェクトでのみ使用できます。VS Code を使用している場合は、 Red Hat 拡張機能による Java の言語サポートも インストールする必要があります。Kotlin サポートは IntelliJ でのみ利用できることに注意してください。
- .NET: .NET エージェント バージョン 10.2.0 以降が必要です。Visual Studio を使用している場合は、 Tools > Options > Text Editor > All Languages > CodeLens に移動し、"Enable CodeLens" [CodeLens を有効にする] と "Show CodeStream Code-Level Metrics" [CodeStream コードレベルのメトリックを表示する] の両方がオンになっていることを確認して、CodeLenses が有効になっていることを確認します。 。VS Code を使用している場合は、 C# 拡張機能がインストールされている必要があります。
- Node.js: Node.js エージェントのバージョン 10.5.0 以降が必要です。
- PHP: PHP エージェントのバージョン 10.6.0 以降が必要です。
- Python: Python エージェント バージョン 7.10.0.175 以降が必要です。 コードレベルのメトリクスは、 サポートされている Python フレームワーク で実装されたプロジェクトと、PHP バージョン 7.0 以降でのみ使用できます。 VS Code を使用している場合は、言語サーバーを有効にして Python 拡張機能もインストールする必要があります。
- Ruby: Ruby エージェント バージョン 8.10.0 以降が必要です。コードレベルのメトリクスは、手動トレースを使用する Rails アプリケーションと Ruby メソッドでのみ使用できます (Ruby メソッドと CodeStream について詳しくは、こちらをご覧ください)。VS Code を使用している場合は、言語サーバーを有効にして Ruby または Ruby Solargraph 拡張機能をインストールする必要もあります。
IDE の設定の CodeStream セクションに移動し、 CodeStream: Show Golden Signals In Editor設定のチェックを外すことで、CodeLenses をオフにすることができます。