docs: debugging facilities

This commit is contained in:
Marian Beermann 2017-05-16 23:18:48 +02:00
parent 6d6ae65be3
commit 054897c872
1 changed files with 16 additions and 2 deletions

View File

@ -505,8 +505,8 @@ Miscellaneous Help
.. include:: usage/help.rst.inc
Debug Commands
--------------
Debugging Facilities
--------------------
There is a ``borg debug`` command that has some subcommands which are all
**not intended for normal use** and **potentially very dangerous** if used incorrectly.
@ -525,6 +525,20 @@ They exist to improve debugging capabilities without direct system access, e.g.
in case you ever run into some severe malfunction. Use them only if you know
what you are doing or if a trusted |project_name| developer tells you what to do.
Borg has a ``--debug-topic TOPIC`` option to enable specific debugging messages. Topics
are generally not documented.
A ``--debug-profile FILE`` option exists which writes a profile of the main program's
execution to a file. The format of these files is not directly compatible with the
Python profiling tools, since these use the "marshal" format, which is not intended
to be secure (quoting the Python docs: "Never unmarshal data received from an untrusted
or unauthenticated source.").
The ``borg debug profile-convert`` command can be used to take a Borg profile and convert
it to a profile file that is compatible with the Python tools.
Additionally, if the filename specified for ``--debug-profile`` ends with ".pyprof" a
Python compatible profile is generated. This is only intended for local use by developers.
Additional Notes
----------------