{
    "content": [
        {
            "type": "text",
            "text": "# DBILOGSTRIP(1p) (man)\n\n## NAME\n\ndbilogstrip - filter to normalize DBI trace logs for diff'ing\n\n## SYNOPSIS\n\nRead DBI trace file \"dbitrace.log\" and write out a stripped version to\n\"dbitracestripped.log\"\ndbilogstrip dbitrace.log > dbitracestripped.log\nRun \"yourscript.pl\" twice, each with different sets of arguments, with DBITRACE enabled.\nFilter the output and trace through \"dbilogstrip\" into a separate file for each run. Then\ncompare using diff. (This example assumes you're using a standard shell.)\nDBITRACE=2 perl yourscript.pl ...args1... 2>&1 | dbilogstrip > dbitrace1.log\nDBITRACE=2 perl yourscript.pl ...args2... 2>&1 | dbilogstrip > dbitrace2.log\ndiff -u dbitrace1.log dbitrace2.log\n\n## DESCRIPTION\n\nReplaces any hex addresses, e.g, 0x128f72ce with \"0xN\".\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "DBILOGSTRIP",
        "section": "1p",
        "mode": "man",
        "summary": "dbilogstrip - filter to normalize DBI trace logs for diff'ing",
        "synopsis": "Read DBI trace file \"dbitrace.log\" and write out a stripped version to\n\"dbitracestripped.log\"\ndbilogstrip dbitrace.log > dbitracestripped.log\nRun \"yourscript.pl\" twice, each with different sets of arguments, with DBITRACE enabled.\nFilter the output and trace through \"dbilogstrip\" into a separate file for each run. Then\ncompare using diff. (This example assumes you're using a standard shell.)\nDBITRACE=2 perl yourscript.pl ...args1... 2>&1 | dbilogstrip > dbitrace1.log\nDBITRACE=2 perl yourscript.pl ...args2... 2>&1 | dbilogstrip > dbitrace2.log\ndiff -u dbitrace1.log dbitrace2.log",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 13,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 15,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "dbilogstrip - filter to normalize DBI trace logs for diff'ing\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "Read DBI trace file \"dbitrace.log\" and write out a stripped version to\n\"dbitracestripped.log\"\n\ndbilogstrip dbitrace.log > dbitracestripped.log\n\nRun \"yourscript.pl\" twice, each with different sets of arguments, with DBITRACE enabled.\nFilter the output and trace through \"dbilogstrip\" into a separate file for each run. Then\ncompare using diff. (This example assumes you're using a standard shell.)\n\nDBITRACE=2 perl yourscript.pl ...args1... 2>&1 | dbilogstrip > dbitrace1.log\nDBITRACE=2 perl yourscript.pl ...args2... 2>&1 | dbilogstrip > dbitrace2.log\ndiff -u dbitrace1.log dbitrace2.log\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "Replaces any hex addresses, e.g, 0x128f72ce with \"0xN\".\n\nReplaces any references to process id or thread id, like \"pid#6254\" with \"pidN\".\n\nSo a DBI trace line like this:\n\n-> STORE for DBD::DBM::st (DBI::st=HASH(0x19162a0)~0x191f9c8 'fparams' ARRAY(0x1922018)) thr#1800400\n\nwill look like this:\n\n-> STORE for DBD::DBM::st (DBI::st=HASH(0xN)~0xN 'fparams' ARRAY(0xN)) thrN\n\n\n\nperl v5.34.0                                 2022-02-06                              DBILOGSTRIP(1p)",
                "subsections": []
            }
        }
    }
}