<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/107662>107662</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [feature-request] [llvm-symbolizer] Implement symbolizing ASAN logs written with `log_path=/tmp/file.log,symbolize=0`.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          shamefulCake1
      </td>
    </tr>
</table>

<pre>
    When I compile my code with a sanitizer, and set `ASAN_OPTIONS=log_path=/tmp/file.log,symbolize=0`, the resulting log file looks like this:

```
==1429==ERROR: LeakSanitizer: detected memory leaks 
 
Direct leak of 72 byte(s) in 1 object(s) allocated from: 
    #0 0x56387d58b50f (/usr/bin/daemon+0x11f50f) 
    #1 0x56387d612a43  (/usr/bin/daemon+0x1a6a43) 
 #2 0x56387d5dbc69  (/usr/bin/daemon+0x16fc69) 
    #3 0x56387d5da673  (/usr/bin/daemon+0x16e673) 
    #4 0x56387d638de8  (/usr/bin/daemon+0x1ccde8) 
    #5 0x56387d62f56d  (/usr/bin/daemon+0x1c356d) 
    #6 0x56387d62edc0  (/usr/bin/daemon+0x1c2dc0)
 #7 0x56387d5c9400  (/usr/bin/daemon+0x15d400)
    #8 0x56387d5c90bb (/usr/bin/daemon+0x15d0bb)
    #9 0x7f965d32b03c (/lib64/libc.so.6+0x2403c)
```

When I set `symbolize=1`, the stack traces have line number and function info, but that `daemon` program actively manipulates its children, so when `llvm-symbolizer` becomes its child, it misbehaves.
Nevertheless, I can symbolize this output by running `llvm-symbolizer /usr/bin/daemon 0x15d0bb`, but it's annoying to do it manually for each line.

May I ask that a standard filter be added, so that I could just run:  `llvm-symbolizer /tmp/file.log > file.symbolized.log`?

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUlV-P2ygUxT8NeblqhMHG9kMepk0jjbTbrtqV9rHiz3VMgyELeKbpp1_hpJm0s6topcgkMfx87sWcI1Oye4-4Ic1b0mxXcs5jiJs0ygmH2b2TB6xWKpjT5q8RPTyCDtPROoTpBDoYhGebR5CQpLfZfsdI2DuQ3kDCDETQh88PH758_OPPx48fPhO-dWH_5SjzSPiWsF2ejoTtButw7cKesHfpNKng7HckfEuJoAWWR4SIaXbZ-j24sIeyAFwIhwTOHhDyaBPhD4RuCf1xFfTyOf_kW8K3Vc3687f3nz59_ET4A_yG8vD5Kp0_gMGMOqOBCacQT-BQHhKcKZdhayPqvNyBMEDLQJ0yEtYlwnqwHioI6ivq_OMv6VzQskCHGKbylAsPAAjjFOi3RvCuNU2nGjoAYR1huzlFwnbKesJ2RuIUPGFv6beqGho6FOxPkOoKERWTNYc7FClkzW8ohHH2osMoLfp7CDFo0b8Swm8oUrR3hQgULX9FqV_K4Z3B7h5Fa4PdK0rzQmFDI8xdCm-EeUURNxQ0mt6lMKMpYf1LZ9uXnui-pncJjanpDeEso7uFUKXuMqhSvzJ6oN_aoReN4UxRri8MZ5Woz6Nep7AWC4LVlOsr4dcTtVwvnnA567ent7o5vSlLfYAcpcYEo3xCcNYj-HlSGBezGGavsw0erB9CWabmDHmUC_ZSlaBwjGEf5QRSZ_uE7gST9PY4O5kxgc0J9GidiegLIgV4LvKIoM49TW-u6mJBKdRhul1VltgMk00Ki8a0Ppf4AZ8w5hEdplTmPIKWHq6wxXwgzPk4Z1AniLP3xadePxX-dbPgulXnfpXCbSasTSC9D6fCygFMWMRJP0vnTjCECCj1uDRyfbsjv8sTPIJMh3P7ZGm-NzKa4poZIygEaQyaS4uWWcXVZ2fg65xyqaBY1H9U8LNlA-HvFzteX2eZxcoFJXx3VrQyG2563ssVbqqWNaKtaV-vxg1vK85MpRAH2vQ4qL5rK6S6blXL-q5b2Q2jrKY9bWnV1E29rkytZKf6QdCBsb4hNcVJWrcuQtch7lc2pRk3FW2FYCsnFbq0JBtjHp9huUsYK0EXN0t1at4nUlNnU04vmGyzWyJxQJnniG8i_j1jyqTZAmne_vo-NVt4nI4OJ_T5-mqUnSvpVyIrwXO0OaM_x2Vp7f8LwvVqjm4z5nxcko7tCNvtbR5ntdZhKkfXPf0Y3hxjOMfPbik4Eba7dORpw_4JAAD__1S9YoQ">