SystemTap 5.0 動的トレースシステムのリリースが公開され、プラットフォームが利用可能になりました。 Linux DTraceテクノロジーに似たデバッグツール。SystemTapは、実行中のシステムの詳細な監視を可能にします。 Linuxアプリケーション統計情報の収集、プロファイリング、システムコールの監視を行うシステムです。制御はコマンドラインインターフェースとC言語に似た特殊なスクリプト言語で行います。このシステムはカーネルと互換性があります。 Linux バージョン3.10から6.6-rc0まで。
Red Hat、IBM、Intel、日立、Oracle などの企業がプロジェクトの開発に参加しています。サンプルのカタログには、メモリ割り当て、I/O、ディスク操作、ネットワーク トラフィック (NFS 操作の分析など)、タスク スケジューラ操作、割り込み処理、システム バッファの使用、設定の監視に適した、さまざまな状況に対応した 190 以上のスクリプトが含まれています。ロック、システムコールの実行、シグナルの処理など。
主な変更点:
- RHEL6で使用されていたカーネル2.6.32ブランチのサポートは終了しました。SystemTapのテストは、カーネル3.10(RHEL7)、4.18(RHEL8以降)を使用して実施されます。 CentOS ストリーム 8)、5.14.0 (RHEL9 + CentOS Stream 9)、6.4 (Fedora 38)、6.5 (Fedora 39)、および 6.6-rc (Fedora rawhide)。
- インストールされた実行可能ファイルに関するデバッグ情報とメタデータを動的に取得するための debuginfod プロセスのサポートが追加されました。
- DWARF5 形式のデバッグ データのサポートが追加されました。これは print_ubacktrace_fileline() 関数で使用できます。
- フロントエンド(stapユーティリティ)で利用可能な場合 サーバー debuginfod は、対象プロセスを定義する際にワイルドカードの使用をサポートするようになりました。たとえば、stap -e 'probe debuginfod.process(«/usr/*/curl»).begin { log(«hi»)}' のように使用できます。また、複数の "-v" オプションと組み合わせて "-L" オプションを使用した場合、リスト出力のプロセス詳細が改善されました。
- バックエンドでは、アッププローブの登録パフォーマンスが向上し、カーネル モジュールの起動が高速化されました。カーネルとユーザー空間の間でメッセージを渡すための、より高速で信頼性の高いシステムが提案されています。
- 追加されたランタイム マクロ: STP_TIMING_NSECS はチェック タイミング情報をナノ秒単位で取得し、STP_FORCE_STDOUT_TTY は STP_STDOUT_NOT_ATTY をオーバーライドします。
出所: オープンネット.ru
