Skip to content

Add a comparison mode: disable timestamps, obscure 0xblah repr pointers, & canonicalize pathnames #46

@gpshead

Description

@gpshead

My first use of snoop was to compare execution logs for a buggy area of the code between two runs to figure out where their behavior diverged. (A weak form of co-execution I suppose)

But before I could use diff, I had to post process the snoop output to remove the timestamps, obscure the repr's that contain 0x7f267b0a00 style memory addresses, and canonicalize the pathnames in str reprs that contained them as they differed between each execution environment.

It'd be nice to have a way to do a lot of this upfront via parameters to snoop() itself. I propose both of these:

  • Add the ability to omit timestamps.
  • Accept a repr post-processing callable.

The latter would allow for hex pointer value matching and cleanup as well as pathname cleanup. A pointer value cleanup only function could be provided as an example. Beyond that it's probably getting individual use case and application specific as to what people need to sanitize to make execution log comparisons easy.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions