• EnglishEspañol日本語한국어Português
  • ログイン今すぐ開始

この機械翻訳は参考用に提供されます。

英語版と翻訳版に矛盾がある場合は、英語版が優先されます。詳細については、このページ を参照してください。

問題を作成する

Sidekiqのインストルメント

Web アプリケーション自体に加えて、New Relic Ruby エージェント (バージョン 3.6.0 以降) は、 Sidekiq ジョブを自動的にインスツルメンテーションすることができます。 。ワーカーにインスツルメンテーションライブラリを含める必要はありません。

Ruby エージェントは、すべての Sidekiq ワーカーで perform メソッドを計測します。バックグラウンド ジョブのデータは、トランザクション タイプとして Non-web transactions [非 Web トランザクション] を選択すると、トランザクション追跡とエラーとともに APM の Transactions [トランザクション] ページ に表示されます。

ジョブ引数の取得

Rubyエージェントバージョン3.6.9以降、オプションで、トランザクショントレースおよびトレースされたエラーでSidekiqジョブ引数をキャプチャするようにRubyエージェントを構成できます。これは、失敗したジョブを再現しようとする場合に特に役立ちます。

デフォルトでは、ジョブの引数に機密情報が含まれている場合、この機能はオフになっています。この機能を有効にするには、お使いのエージェントのバージョンに合わせて、 newrelic.yml を編集してください。

  • newrelic_rpm 3.12.0 以降: attributes.include: job.sidekiq.args.*
  • newrelic_rpm 3.6.9 から 3.11.x: sidekiq.capture_params: true

ヒント

この機能は、HTTP リクエスト パラメータがトランザクション トレースでキャプチャされ、Web リクエストのエラーがトレースされるかどうかを制御する一般的な capture_params 最上位設定とは異なります。これら 2 つの設定は個別に構成できます。

特定のジョブ引数を含めるか除外する

Ruby エージェント バージョン 9.5.0 以降では、上記のように Sidekiq ジョブ引数をキャプチャするように設定されたエージェントのインスタンスは、New Relic に報告される引数をきめ細かく制御するために、特定の引数を含めたり除外したりするようにさらに設定できるようになりました。

:'sidekiq.args.include' 構成オプションは、集合的にホワイトリストとして機能する文字列の配列に設定できます。これらの各文字列は、正規表現を完全にサポートするために Regexp.new に渡されます。ジョブ引数がハッシュである場合、ハッシュのキーがインクルード パターンのいずれかに一致する場合、キーとそれに対応する値の両方がインクルードされます。スカラー引数の場合、スカラーの文字列表現は、キャプチャされるインクルード パターンの 1 つと一致する必要があります。

:'sidekiq.args.exclude' オプションも同様に機能します。パターンを作成するためにそれぞれが Regexp.new に渡される文字列の配列に設定できます。これらのパターンは集合的に、不要なジョブ引数の拒否リストとして機能します。除外パターンに一致するハッシュキー、ハッシュ値、またはスカラーは除外されます (New Relic には送信されません)。

sidekiq.args.includesidekiq.args.excludeを構成します (newrelic_rpm 9.5.0 以降)。

newrelic.yml 例:

:'sidekiq.args.include' または :'sidekiq.args.exclude' 配列内の文字列は正規表現に変換されます。Ruby の正規表現サポート に関する知識は活用できますが、必須ではありません。正規表現構文が使用されない場合、不完全一致が実行され、文字列「Fortune」は「Fortune 500」と「Fortune and Glory」の両方に一致します。完全に一致するには、 正規表現アンカーを使用します。

# Include any argument whose string representation matches either "apple" or "banana"
# The "apple" pattern will match both "green apple" and "red apple"
sidekiq.args.include:
- apple
- banana
# Exclude any arguments that match either "grape", "orange", or "pear"
sidekiq.args.exclude:
- grape
- orange
- pear
# Exclude any argument that is a 9 digit number
sidekiq.args.exclude:
- '\d{9}'
# Include anything that starts with "blue" but exclude anything that ends in "green"
sidekiq.args.include
- '^blue'
sidekiq.args.exclude
- 'green$'

Sidekiqのトラブルシューティングの仕事

ジョブが監視されていないように見える場合は、ワーカーの起動時に生成される newrelic_agent.log ファイルを確認してください。このファイルには、エージェントがSidekiqを検出し、サーバーと通信しているかどうかが示されているはずです。サポートが必要な場合は、Sidekiqの起動に使用したコマンドラインを正確に記録してください。

Copyright © 2024 New Relic株式会社。

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