Contents

Linux SYSCALLS

Check Exist

1
which strace
1
/usr/bin/strace

Tracing SYSCALLS with Running Command

1
strace echo 111
1
2
3
4
5
execve("/usr/bin/echo", ["echo", "111"], 0x7ffc891d5818 /* 8 vars */) = 0
.
.
.
[Output Truncated]
ValueDescription
/usr/bin/echoCommand path
[“echo”, “111”]Command and parameters
0x7ffc891d5818 /* 8 vars */)Environment values (env | wc -l is 8)

Tracing SYSCALLS with Running Process

Find Process ID

1
pidof etcd
1
3569

Trace with Process ID

1
strace -p 3569

With Option

1
strace -c echo 111
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 24.65    0.000261          43         6           pread64
 21.15    0.000224          32         7           mmap
 15.01    0.000159          39         4           mprotect
 11.14    0.000118          39         3           brk
  9.92    0.000105          26         4           close
  5.67    0.000060          60         1           write
  4.72    0.000050          16         3           fstat
  4.15    0.000044          44         1           munmap
  3.59    0.000038          19         2         1 arch_prctl
  0.00    0.000000           0         1           read
  0.00    0.000000           0         1         1 access
  0.00    0.000000           0         1           execve
  0.00    0.000000           0         2           openat
------ ----------- ----------- --------- --------- ----------------
100.00    0.001059                    36         2 total