STRACE-LOG-MERGE(1) General Commands Manual STRACE-LOG-MERGE(1)

strace-log-merge - ادغام خروجی‌های strace -ff -tt

strace-log-merge STRACE_LOG
strace-log-merge --help

strace-log-merge فایل‌های لاگ تولید شده توسط دستور strace -ff -tt[t] را ادغام می‌کند. این ابزار شناسه فرایند (PID) را به ابتدای هر خط اضافه کرده و خروجی ترکیب‌شده را بر اساس برچسب زمانی به‌ترتیب زمانی مرتب می‌کند.

نمایش نحوه استفاده از برنامه و خروج.
پیشوند نام فایل‌ها را برای لاگ‌های تولید شده توسط دستور strace -ff -tt[t] مشخص می‌کند. این ابزار تمام فایل‌های منطبق با الگوی STRACE_LOG.* را خواهد خواند.

0
موفقیت‌آمیز
خطایی رخ داده است. این خطا می‌تواند به دلیل مشخص نکردن آرگومان (که در این حالت اطلاعات نحوه استفاده چاپ می‌شود) یا بروز خطا در حین پردازش فایل‌های STRACE_LOG.* باشد.

$ strace -o sleepy -ff -tt -e trace=execve,nanosleep \
        sh -c 'sleep 0.1 & sleep 0.2 & sleep 0.3'
$ strace-log-merge sleepy | fold -w 72 -s
13475 21:13:52.040837 execve("/bin/sh", ["sh", "-c", "sleep 0.1 & sleep
0.2 & sleep 0."...], 0x7ffde54b2450 /* 33 vars */) = 0
13478 21:13:52.044050 execve("/bin/sleep", ["sleep", "0.3"],
0x5631be4f87a8 /* 33 vars */) = 0
13476 21:13:52.044269 execve("/bin/sleep", ["sleep", "0.1"],
0x5631be4f87a8 /* 33 vars */) = 0
13477 21:13:52.044389 execve("/bin/sleep", ["sleep", "0.2"],
0x5631be4f87a8 /* 33 vars */) = 0
13478 21:13:52.046207 nanosleep({tv_sec=0, tv_nsec=300000000}, NULL) = 0
13476 21:13:52.046303 nanosleep({tv_sec=0, tv_nsec=100000000}, NULL) = 0
13477 21:13:52.046318 nanosleep({tv_sec=0, tv_nsec=200000000}, NULL) = 0
13476 21:13:52.146852 +++ exited with 0 +++
13475 21:13:52.146942 --- SIGCHLD {si_signo=SIGCHLD,
si_code=CLD_EXITED, si_pid=13476, si_uid=1000, si_status=0, si_utime=0,
si_stime=0} ---
13477 21:13:52.247782 +++ exited with 0 +++
13475 21:13:52.247885 --- SIGCHLD {si_signo=SIGCHLD,
si_code=CLD_EXITED, si_pid=13477, si_uid=1000, si_status=0, si_utime=0,
si_stime=0} ---
13478 21:13:52.347680 +++ exited with 0 +++
13475 21:13:52.347786 --- SIGCHLD {si_signo=SIGCHLD,
si_code=CLD_EXITED, si_pid=13478, si_uid=1000, si_status=0, si_utime=0,
si_stime=0} ---
13475 21:13:52.348069 +++ exited with 0 +++

strace-log-merge ممکن است در مرتب‌سازی صحیح لاگ‌هایی که با -tt تولید شده و از نیمه‌شب عبور می‌کنند، با مشکل مواجه شود. دلیل این امر آن است که برچسب زمانی استاندارد -tt فاقد اطلاعات مربوط به تاریخ است، در حالی که برای مرتب‌سازی درست به این اطلاعات نیاز است. استفاده از گزینه -ttt همراه با strace این مشکل را برطرف می‌کند، زیرا قالب برچسب زمانی آن شامل تاریخ نیز می‌شود.

strace-log-merge قالب فایل‌های ورودی را اعتبارسنجی نمی‌کند. این ابزار فرض می‌کند تمام فایل‌های منطبق با الگوی STRACE_LOG.* فایل‌های لاگ با قالب‌بندی صحیح مربوط به یک نشست واحد strace هستند.

نسخه اولیه strace-log-merge در سال ۲۰۱۲ توسط Denys Vlasenko نوشته شد.

مشکلات مربوط به strace-log-merge باید به فهرست پستی strace به نشانی <strace-devel@lists.strace.io> گزارش شوند.

strace(1)

2025-07-02 strace 7.0