Sys_enter_openat syscallの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
_をhex(5af693f224)
ではなく_filename: <string>
_として表示できるように出力形式を変更する方法はありますか?
したがって、基本的には、特定のイベント(上記のsys_enter_openatなど)をftraceにトレースしながら出力形式を変更する方法があります。
これはsystemtapまたはkrpobeを使用して可能だったと思いますが、私のセットアップでは現在のところ使用できません。
残念ながら、現在これを行う方法はありません。しかし、もし私がそのようなことをするためのまともなインターフェースと実装を理解できれば、おそらく将来的にそれを追加するかもしれません。多分私は出力を異なって表示させるトリガーを追加します。
StackExchangeは初めてかもしれませんが、ftrace(本名はSteven Rostedt-gitの履歴を調べます)の作成者です。 「本当の答え」は、コードを書くときに起こります。