[xdebug-general] xdebug.trace_format - suggestion for new options (PLAIN TEXT)

From: Bill Brachhold <billbrach[@]hotmail.com>
Date: Tue, 28 Aug 2007 08:18:32 -0400

Derick,

( note: I added a couple of more ideas )

When debugging php code, it would be nice to remove the TIME and MEMORY
portion of the output line. Without this info, there is less for the
developer to look through. A possibly better solution would be to allow the
user to select and display the specific columns they want to see. This
would be outstandingly helpful, ESPECIALLY if it worked with ALL output
formats !!

Also, a slight re-arrangement of the data output would make it MUCH easier
to read the trace file, particularly when the program being traced goes off
to a different file. The advantage of my display format is that it is far
easier to see when the code being debugged changes files. See my example
below.

If I knew anything about C, I'd change it myself but I'm sure I'd make more
trouble for myself than solving this !! I could probably figure out the
changes if I knew which of your source files and the approximate area to
look in, to make this change.

Something else I thought of is that it is real easy to forget *where* you
put the xdebug_start_trace *and* xdebug_stop_trace function calls. An
additional parameter in the function call could give you that. What you'd
do is put the file name and line # where you put the function call, or any
other text that might help the developer. An example might be
"forms-ln539". This is really low priority as you can usually get a good
idea of where the function calls are by looking at the trace output.

As it is now:
void xdebug_start_trace( string trace_file [, integer options] )

With location info:
void xdebug_start_trace( string trace_file [, integer options][, string
ANY_TEXT_HERE] )
void xdebug_stop_trace( [string ANY_OTHER_TEXT_HERE] )

Then, in the trace file output, you see:
TRACE START [2007-08-25 22:00:06][ANY_TEXT_HERE]
TRACE END [2007-05-06 14:37:07][ANY_OTHER_TEXT_HERE]

Thanks for such a GREAT utility !

Bill

(output as it is now )

TRACE START [2007-08-25 22:00:06]
    0.6469 1950016 -> is_subaction('customers', '')
/var/www/servman/pb_events.php:263
    0.6471 1949992 -> echoloc('0', '5')
/var/www/servman/pb_events.php:270
    0.6472 1949992 -> is_subaction('suppliers', '')
/var/www/servman/pb_events.php:272
    0.6473 1949968 -> echoloc('0', '6')
/var/www/servman/pb_events.php:279
    0.6474 1949968 -> is_subaction('parts', 'add2inv')
/var/www/servman/pb_events.php:281
    0.6474 1949928 -> is_subaction('parts', 'showparts')
/var/www/servman/pb_events.php:288
    0.6475 1949888 -> is_subaction('parts', '')
/var/www/servman/pb_events.php:296
    0.6476 1949872 -> echoloc('0', '7')
/var/www/servman/pb_events.php:303
    0.6477 1949872 -> echoloc('0', '8')
/var/www/servman/pb_events.php:312
    0.6478 1949872 -> is_subaction('invoices', 'print')
/var/www/servman/pb_events.php:314
    0.6479 1949832 -> is_subaction('invoices', 'showinvs')
/var/www/servman/pb_events.php:321
    0.6480 1949784 -> echoloc('0', '9')
/var/www/servman/pb_events.php:329
    0.6481 1949784 -> is_subaction('invoices', 'store')
/var/www/servman/pb_events.php:334
    0.6481 1949744 -> echoloc('0', '10')
/var/www/servman/pb_events.php:343
    0.6482 1949736 -> is_subaction('invoices', '')
/var/www/servman/pb_events.php:345
    0.6483 1949712 -> echoloc('0', '11')
/var/www/servman/pb_events.php:352
    0.6489 1949704 -> is_subaction('helpers', '')
/var/www/servman/pb_events.php:354
    0.6490 1949680 -> echoloc('0', '12')
/var/www/servman/pb_events.php:361
    0.6491 1949672 -> is_subaction('eqtypes', '')
/var/www/servman/pb_events.php:363
    0.6492 1949648 -> is_subaction('payterms', '')
/var/www/servman/pb_events.php:370
    0.6493 1949624 -> is_subaction('paymethods', '')
/var/www/servman/pb_events.php:377
    0.6493 1949592 -> is_subaction('invoicestatus', '')
/var/www/servman/pb_events.php:384
    0.6494 1949552 -> echoloc('0', '13')
/var/www/servman/pb_events.php:391
    0.6495 1949544 -> is_subaction('partstatus', '')
/var/www/servman/pb_events.php:393
    0.6496 1949512 -> echoloc('0', '14')
/var/www/servman/pb_events.php:408
    0.6497 1949504 -> is_subaction('compinfo', '')
/var/www/servman/pb_events.php:410
    0.6498 1949480 -> echoloc('0', '15')
/var/www/servman/pb_events.php:417
    0.6499 1949472 -> xdebug_stop_trace()
/var/www/servman/pb_events.php:418
    0.6499 1949472
TRACE END [2007-08-25 22:00:06]

(output format that would be easier to read, if just looking to debug/follow
code)

TRACE START [2007-08-25 22:00:06]
/var/www/servman/pb_events.php:263 -> is_subaction('customers', '')
/var/www/servman/pb_events.php:270 -> echoloc('0', '5')
/var/www/servman/pb_events.php:272 -> is_subaction('suppliers', '')
/var/www/servman/pb_events.php:279 -> echoloc('0', '6')
/var/www/servman/pb_events.php:281 -> is_subaction('parts', 'add2inv')
/var/www/servman/pb_events.php:288 -> is_subaction('parts', 'showparts')
/var/www/servman/pb_events.php:296 -> is_subaction('parts', '')
/var/www/servman/lib/forms.php:303 -> echoloc('0', '7')
/var/www/servman/lib/forms.php:312 -> echoloc('0', '8')
/var/www/servman/lib/forms.php:314 -> is_subaction('invoices', 'print')
/var/www/servman/lib/forms.php:321 -> is_subaction('invoices', 'showinvs')
/var/www/servman/lib/forms.php:329 -> echoloc('0', '9')
/var/www/servman/lib/forms.php:334 -> is_subaction('invoices', 'store')
/var/www/servman/lib/template.php:343 -> echoloc('0', '10')
/var/www/servman/lib/template.php:345 -> is_subaction('invoices', '')
/var/www/servman/lib/template.php:352 -> echoloc('0', '11')
/var/www/servman/lib/template.php:354 -> is_subaction('helpers', '')
/var/www/servman/lib/template.php:361 -> echoloc('0', '12')
/var/www/servman/lib/template.php:363 -> is_subaction('eqtypes', '')
/var/www/servman/lib/template.php:370 -> is_subaction('payterms', '')
/var/www/servman/forms.php:377 -> is_subaction('paymethods', '')
/var/www/servman/forms.php:384 -> is_subaction('invoicestatus', '')
/var/www/servman/forms.php:391 -> echoloc('0', '13')
/var/www/servman/lib/sqladmin.php:393 -> is_subaction('partstatus', '')
/var/www/servman/lib/sqladmin.php:408 -> echoloc('0', '14')
/var/www/servman/lib/sqladmin.php:410 -> is_subaction('compinfo', '')
/var/www/servman/lib/sqladmin:417 -> echoloc('0', '15')
/var/www/servman/pb_events.php:418 -> xdebug_stop_trace()
TRACE END [2007-08-25 22:00:06]
Received on Tue Aug 28 2007 - 14:18:09 BST

This archive was generated by hypermail 2.2.0 : Mon Jun 25 2018 - 06:00:04 BST