GNU/Linux >> Linux の 問題 >  >> Linux

Linux – Syscallイベントトレース出力の形式をFtraceに変更しますか?

sys_enter_openatシステムコールのftraceイベントトレースを有効にしました。 events / syscalls / sys_enter_openat/formatで指定されたそれぞれの出力形式は

です。
print fmt: "dfd: 0x%08lx, filename: 0x%08lx, flags: 0x%08lx, mode: 0x%08lx", ((unsigned long)(REC->dfd)), ((unsigned long)(REC->filename)), ((unsigned long)(REC->flags)), ((unsigned long)(REC->mode))

予想どおり、ftraceへの出力行のサンプルは次のようになります

msm_irqbalance-1338  [000] ...1 211710.033931: sys_openat(dfd: ffffff9c, filename: 5af693f224, flags: 2, mode: 0)

filename: 5af693f224のように出力形式を変更する方法はありますか? filename: <string>として表示できます hex(5af693f224)の代わりに ?

したがって、基本的に、特定のイベント(上記のsys_enter_openatなど)をftraceにトレースしながら出力形式を変更する方法があります。

これはsystemtapまたはkrpobeを使用して可能だったと思いますが、私のセットアップでは現在のところ使用できません。

承認された回答:

残念ながら、現在これを行う方法はありません。しかし、おそらく将来的には、そのようなことを行うための適切なインターフェースと実装を理解できれば、それを追加する可能性があります。たぶん、出力が異なって表示されるようにするトリガーを追加します。

StackExchangeは初めてかもしれませんが、私はftraceの作成者です(本名はSteven Rostedt – gitの履歴を調べてください)。 「本当の答え」は、コードを書くときに起こります!


Linux
  1. Linuxでホスト名を変更する方法

  2. Linux – Ps Lstartの出力が変更されましたか?

  3. Linuxでシェルを変更する方法

  1. Linuxの名前変更コマンド

  2. Linuxサーバーのホスト名を変更する

  3. ss - Linux ソケット統計ユーティリティの出力形式

  1. Linux でユーザー名を変更する

  2. 12 UNIX / Linux 時刻コマンド出力形式オプション例

  3. Linux で出力行ごとに 1 つのファイル名をリストするにはどうすればよいですか?