kubkon opened PR #1430 from trace-logs
to master
:
This commit augments
wiggle
with trace log generation for the shims,
returned errno values, and returned values proper (if any, i.e.,
different than unit type()
). What that means is that every syscall
will have auto-generated up to 3 traces, for instance,TRACE wasi_common::wasi::wasi_snapshot_preview1 > fd_prestat_get(fd=Fd(3)) TRACE wasi_common::wasi::wasi_snapshot_preview1 > | result=(buf=Dir(PrestatDir { pr_name_len: 1 })) TRACE wasi_common::wasi::wasi_snapshot_preview1 > | errno=No error occurred. System call completed successfully. (Errno::Success(0))Putting logging behind a feature gate in this case means that the log calls
are generated by thewiggle
crate regardless if the client requested
the feature or not, however, then their usage in the client lib is
dictated by the presence of the feature flag. So, for instance,wasi-common
has this feature enabled by default, while any other client lib
usingwiggle
if they don't want tracing enabled, they will just
leave the feature off. I'm not sure if this is what we wanted
but seemed easiest to implement quickly. Lemme y'all know your thoughts
about this!Closes #1420.
kubkon requested alexcrichton and pchickey for a review on PR #1430.
kubkon requested alexcrichton and pchickey for a review on PR #1430.
kubkon edited PR #1430 from trace-logs
to master
:
This commit augments
wiggle
with trace log generation for the shims,
returned errno values, and returned values proper (if any, i.e.,
different than unit type()
). What that means is that every syscall
will have auto-generated up to 3 traces, for instance,TRACE wasi_common::wasi::wasi_snapshot_preview1 > fd_prestat_get(fd=Fd(3)) TRACE wasi_common::wasi::wasi_snapshot_preview1 > | result=(buf=Dir(PrestatDir { pr_name_len: 1 })) TRACE wasi_common::wasi::wasi_snapshot_preview1 > | errno=No error occurred. System call completed successfully. (Errno::Success(0))Putting logging behind a feature gate in this case means that the log calls
are generated by thewiggle
crate regardless if the client requested
the feature or not, however, then their usage in the client lib is
dictated by the presence of the feature flag. So, for instance,wasi-common
has this feature enabled by default, while any other client lib
usingwiggle
if they don't want tracing enabled, they will just
leave the feature off. I'm not sure if this is what we wanted
but seemed easiest to implement quickly. Lemme y'all know your thoughts
about this!Closes #1420.
kubkon edited PR #1430 from trace-logs
to master
:
This commit augments
wiggle
with trace log generation for the shims,
returned errno values, and returned values proper (if any, i.e.,
different than unit type()
). What that means is that every syscall
will have auto-generated up to 3 traces, for instance,TRACE wasi_common::wasi::wasi_snapshot_preview1 > fd_prestat_get(fd=Fd(3)) TRACE wasi_common::wasi::wasi_snapshot_preview1 > | result=(buf=Dir(PrestatDir { pr_name_len: 1 })) TRACE wasi_common::wasi::wasi_snapshot_preview1 > | errno=No error occurred. System call completed successfully. (Errno::Success(0))Putting logging behind a feature flag in this case means that the log calls
are generated by thewiggle
crate regardless if the client requested
the feature or not, however, then their usage in the client lib is
dictated by the presence of the feature flag. So, for instance,wasi-common
has this feature enabled by default, while any other client lib
usingwiggle
if they don't want tracing enabled, they will just
leave the feature off. I'm not sure if this is what we wanted
but seemed easiest to implement quickly. Lemme y'all know your thoughts
about this!Closes #1420.
marmistrz submitted PR Review.
alexcrichton submitted PR Review.
kubkon merged PR #1430.
Last updated: Dec 23 2024 at 13:07 UTC