On Fri, Jan 22, 2016 at 11:17 PM, David Timothy Strauss < da...@davidstrauss.net> wrote:
> Rebooting an old thread now that we're finally testing this out. > > > "strace" should do the job. It should give you a pretty good idea of all > syscalls a process uses. That's what I used when testing SyscallFilters=. > > This turns out to be less useful than it seems. > > There are two major ways to invoke strace, each with caveats: > > - Launch the process with strace. This captures everything from the > first syscall to daemonized operation, but it's hard to create an > equivalent context and environment versus how the service runs normally. > This is especially bad for socket-activated services because those may > actually use fewer or different syscalls than if they have to open their > own listener sockets. > - Attach to an existing process. This allows seeing behavior under > systemd, but it misses early service startup because the PID is only > knowable after the service has started. We've specifically seen issues > where some syscalls are only used in early service startup. > > There's a third way: ExecStart=/usr/bin/strace -D -ff -o /tmp/myservice.trace /usr/bin/myservlce --foo -- Mantas Mikulėnas <graw...@gmail.com>
_______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel