1STRACE-LOG-MERGE(1) General Commands Manual STRACE-LOG-MERGE(1)
2
3
4
6 strace-log-merge - merge strace -ff -tt output
7
9 strace-log-merge STRACE_LOG
10
11 strace-log-merge --help
12
14 strace-log-merge merges the output of strace -ff -tt[t] command,
15 prepending PID to each line and sorting the result using time stamp as
16 a key.
17
19 --help Show program usage and exit.
20
21 STRACE_LOG
22 Output file name prefix of files produced by a strace -ff -tt[t]
23 command.
24
26 0 Success
27
28 Non-zero
29 Error occurred: either no argument specified (in that case a us‐
30 age is printed), or something went wrong during the processing
31 of STRACE_LOG.* files.
32
34 $ strace -o sleepy -ff -tt -e trace=execve,nanosleep \
35 sh -c 'sleep 0.1 & sleep 0.2 & sleep 0.3'
36 $ strace-log-merge sleepy | fold -w 72 -s
37 13475 21:13:52.040837 execve("/bin/sh", ["sh", "-c", "sleep 0.1 & sleep
38 0.2 & sleep 0."...], 0x7ffde54b2450 /* 33 vars */) = 0
39 13478 21:13:52.044050 execve("/bin/sleep", ["sleep", "0.3"],
40 0x5631be4f87a8 /* 33 vars */) = 0
41 13476 21:13:52.044269 execve("/bin/sleep", ["sleep", "0.1"],
42 0x5631be4f87a8 /* 33 vars */) = 0
43 13477 21:13:52.044389 execve("/bin/sleep", ["sleep", "0.2"],
44 0x5631be4f87a8 /* 33 vars */) = 0
45 13478 21:13:52.046207 nanosleep({tv_sec=0, tv_nsec=300000000}, NULL) = 0
46 13476 21:13:52.046303 nanosleep({tv_sec=0, tv_nsec=100000000}, NULL) = 0
47 13477 21:13:52.046318 nanosleep({tv_sec=0, tv_nsec=200000000}, NULL) = 0
48 13476 21:13:52.146852 +++ exited with 0 +++
49 13475 21:13:52.146942 --- SIGCHLD {si_signo=SIGCHLD,
50 si_code=CLD_EXITED, si_pid=13476, si_uid=1000, si_status=0, si_utime=0,
51 si_stime=0} ---
52 13477 21:13:52.247782 +++ exited with 0 +++
53 13475 21:13:52.247885 --- SIGCHLD {si_signo=SIGCHLD,
54 si_code=CLD_EXITED, si_pid=13477, si_uid=1000, si_status=0, si_utime=0,
55 si_stime=0} ---
56 13478 21:13:52.347680 +++ exited with 0 +++
57 13475 21:13:52.347786 --- SIGCHLD {si_signo=SIGCHLD,
58 si_code=CLD_EXITED, si_pid=13478, si_uid=1000, si_status=0, si_utime=0,
59 si_stime=0} ---
60 13475 21:13:52.348069 +++ exited with 0 +++
61
62
64 strace-log-merge does not work well with strace logs generated by
65 strace -tt invocation that pass midnight, as those lack the information
66 required for the proper sorting. Employing the -ttt option in the re‐
67 spective strace invocation should solve the problem.
68
70 strace-log-merge does not perform any checks whether the files speci‐
71 fied are in the correct format and implies that only files from a sin‐
72 gle strace session match STRACE_LOG.* glob pattern.
73
75 The initial version of strace-log-merge was written by Denys Vlasenko
76 in 2012.
77
79 Problems with strace-log-merge should be reported to the strace mailing
80 list at <strace-devel@lists.strace.io>.
81
83 strace(1)
84
85
86
87strace 5.14 2021-08-24 STRACE-LOG-MERGE(1)