Files @ a4a4bcc09ac5
Branch filter:

Location: kallithea/docs/usage/debugging.rst

a4a4bcc09ac5 1.2 KiB text/prs.fallenstein.rst Show Annotation Show as Raw Download as Raw
Mads Kiilerich
middleware: remove access fallback to reuse previous access - drop _git_stored_op

Before, the previous action was kept in the global controller instance. That
was conceptually wrong. The previous request might be entirely unrelated,
coming from another user.

It was mainly used for 'info/refs' commands ... but even more, that will be the
first command that is sent, giving nothing relevant to reuse.

Fortunately, with handling of 'info/refs', we no longer seem to need it.

The fallback for unknown commands with unknown 'action' is now to return a HTTP
failure, like we do for Mercurial.
.. _debugging:

===================
Debugging Kallithea
===================

If you encounter problems with Kallithea, here are some instructions
on how to debug them.

.. note:: First make sure you're using the latest version available.


Enable detailed debug
---------------------

Kallithea uses the standard Python ``logging`` module to log its output.
By default only loggers with ``INFO`` level are displayed. To enable full output
change ``level = DEBUG`` for all logging handlers in the currently used .ini file.
This change will allow you to see much more detailed output in the log file or
console. This generally helps a lot to track issues.


Enable interactive debug mode
-----------------------------

To enable interactive debug mode simply comment out ``set debug = false`` in
the .ini file. This will trigger an interactive debugger each time
there is an error in the browser, or send a http link if an error occurred in the backend. This
is a great tool for fast debugging as you get a handy Python console right
in the web view.

.. warning:: NEVER ENABLE THIS ON PRODUCTION! The interactive console
             can be a serious security threat to your system.