| 1 |
// $Id$
|
| 2 |
|
| 3 |
NOTE: this module is primarily intended for use by system administrators and
|
| 4 |
developers, and the available documentation (or lack thereof) reflects that
|
| 5 |
in the set of implicit assumptions it makes. Please post a support request
|
| 6 |
in the module's issue tracker (see below) if anything is unclear.
|
| 7 |
|
| 8 |
DESCRIPTION
|
| 9 |
-----------
|
| 10 |
This is a sysadmin & developer tool that adds extensive tracing facilities
|
| 11 |
for Drupal hook invocations, database queries and PHP errors.
|
| 12 |
|
| 13 |
|
| 14 |
FEATURES
|
| 15 |
--------
|
| 16 |
* Outputs trace messages to a file or the syslog (on Unix platforms).
|
| 17 |
* Traces Drupal hook invocations with an optional filter and stack trace.
|
| 18 |
* Traces PHP warnings and errors with an optional full stack trace and
|
| 19 |
including the source code for the line that caused the error.
|
| 20 |
* Traces watchdog messages with optional filtering by message type (TODO).
|
| 21 |
* Traces SQL database queries with optional filtering by query type.
|
| 22 |
* Trace output includes microsecond-level timing information.
|
| 23 |
* Stack traces include the function's passed arguments in PHP syntax.
|
| 24 |
* Optional debug output includes PHP superglobals and HTTP headers.
|
| 25 |
* Defines a hook allowing other modules to extend the trace output targets.
|
| 26 |
|
| 27 |
|
| 28 |
INSTALLATION
|
| 29 |
------------
|
| 30 |
Please refer to the accompanying file INSTALL.txt for installation
|
| 31 |
requirements and instructions.
|
| 32 |
|
| 33 |
|
| 34 |
IMPORTANT NOTES
|
| 35 |
---------------
|
| 36 |
* The trace output file can quickly grow extremely large, especially with
|
| 37 |
stack tracing enabled. Anyone who leaves this module activated on a
|
| 38 |
production server, without tuning down the output parameters, deserves the
|
| 39 |
ensuing chaos.
|
| 40 |
|
| 41 |
|
| 42 |
LIMITATIONS
|
| 43 |
-----------
|
| 44 |
* Due to limitations of the database query debug mechanism provided in
|
| 45 |
Drupal 6.x, the time delta on SQL query trace messages is only a
|
| 46 |
best-effort guess. It should be approximate enough for most uses, though.
|
| 47 |
|
| 48 |
|
| 49 |
MANUAL TOGGLE
|
| 50 |
-------------
|
| 51 |
In case you wish to manually enable/disable tracing directly from MySQL,
|
| 52 |
here's how to do that using the `mysql' command-line tool (or phpMyAdmin):
|
| 53 |
|
| 54 |
* Enable tracing:
|
| 55 |
UPDATE variable SET value = 's:1:"1";' WHERE name = 'trace_enabled';
|
| 56 |
DELETE FROM cache WHERE cid = 'variables';
|
| 57 |
|
| 58 |
* Disable tracing:
|
| 59 |
UPDATE variable SET value = 's:1:"0";' WHERE name = 'trace_enabled';
|
| 60 |
DELETE FROM cache WHERE cid = 'variables';
|
| 61 |
|
| 62 |
The above presupposes that the module itself has already been enabled via
|
| 63 |
Drupal's admin/modules screen, of course; so the above only toggles the
|
| 64 |
tracing option ("Activate tracing") itself.
|
| 65 |
|
| 66 |
|
| 67 |
BUG REPORTS
|
| 68 |
-----------
|
| 69 |
Post bug reports and feature requests to the issue tracking system at:
|
| 70 |
|
| 71 |
<http://drupal.org/node/add/project-issue/trace>
|
| 72 |
|
| 73 |
|
| 74 |
FEATURE REQUESTS
|
| 75 |
----------------
|
| 76 |
The authors are available for contract development and customization
|
| 77 |
relating to this module. You can reach them at:
|
| 78 |
|
| 79 |
<http://drupal.org/user/51124/contact>
|
| 80 |
<http://drupal.org/user/26089/contact>
|
| 81 |
|
| 82 |
|
| 83 |
CREDITS
|
| 84 |
-------
|
| 85 |
Originally developed by Arto Bendiken <http://ar.to/>
|
| 86 |
Ported to Drupal 6 by Justin Miller <http://codesorcery.net/>
|
| 87 |
Sponsored by MakaluMedia Group <http://www.makalumedia.com/>
|
| 88 |
Sponsored by M.C. Dean, Inc. <http://www.mcdean.com/>
|
| 89 |
Developed for SPAWAR <http://www.spawar.navy.mil/>
|