第15章 perf を使用した uprobes の作成


uprobes (ユーザー空間プローブ) は、ソースコードの変更や再コンパイルを必要とせずに、実行時にユーザー空間アプリケーション内の特定のポイントを監視する動的な計装メカニズムです。

uprobes が役立つ主なユースケースは 2 つあります。

デバッグとパフォーマンス分析
uprobes はウォッチポイントと同様に機能します。アプリケーション内の特定の場所に挿入して、そのコードパスが実行される頻度をカウントできます。さらに、コールスタックや変数値などの豊富なコンテキストを取得できるため、パフォーマンスのボトルネックの特定やバグの追跡に役立ちます。
イベントベースのデータ収集
uprobes は、循環バッファーなどのメカニズムに対する切り替えイベントとして機能し、ユーザー空間での実行トリガーに基づいてデータが記録またはフラッシュされるタイミングを制御するのに役立ちます。

uprobesperf とシームレスに統合するため、既存の uprobes を使用することも、新しい uprobes を作成することもできます。このような柔軟性を (kprobes による) カーネル空間の計装と併せて利用することで、ユーザー空間の動作を、効果的かつ非侵入的な方法で観測およびプロファイリングすることが可能になります。

15.1. perf を使用して関数レベルで uprobes を作成する

perf ツールを使用すると、プロセスまたはアプリケーション内の任意の点に動的なトレースポイントを作成できます。その後、このトレースポイントを perf statperf record などの他の perf ツールと併用すると、プロセスやアプリケーションの動作をよりよく理解できるようになります。

前提条件

  • perf ユーザー空間ツールがインストールされている。詳細は、perf のインストール を参照してください。

手順

  • プロセスまたはアプリケーション内の対象の場所で、監視対象のプロセスまたはアプリケーションに uprobe を作成します。

    # perf probe -x /path/to/executable -a function
    
    Added new event:
      probe_executable:function   (on function in /path/to/executable)
    
    You can now use it in all perf tools, such as:
        perf record -e probe_executable:function -aR sleep 1
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る