This is an automated notification sent by LCG Savannah.
It relates to:
                task #13799, project CDS Invenio

==============================================================================
 LATEST MODIFICATIONS of task #13799:
==============================================================================

Update of task #13799 (project cdsware):

                  Status:                    None => Done                   
        Percent Complete:                      0% => 100%                   
             Open/Closed:                    Open => Closed                 


==============================================================================
 OVERVIEW of task #13799:
==============================================================================

URL:
  <http://savannah.cern.ch/task/?13799>

                 Summary: WSGI and centralized exception logging
                 Project: CDS Invenio
            Submitted by: simko
            Submitted on: 2010-02-08 10:26
         Should Start On: 2010-02-08 00:00
   Should be Finished on: 2010-02-08 00:00
                Category: WebStyle
                Priority: 7 - High
                  Status: Done
                 Privacy: Public
        Percent Complete: 100%
             Assigned to: skaplun
             Open/Closed: Closed
         Discussion Lock: Any
                  Effort: 0.00

    _______________________________________________________


After the move to mod_wsgi, the unhandled exceptions coming from
Invenio behave differently.  For example:

1) Previously, with mod_python, one could have raised exceptions
intentionally for debugging, see section A of
<https://twiki.cern.ch/twiki/bin/view/CDS/PythonAndApache#4_Debugging_mod_python_apps>).
Now, with mod_wsgi, these exceptions are not presented in the browser,
not in invenio.err, but they go to apache.err.

2) It is not good to log Invenio exceptions into apache.err only.  The
exceptions generated by Invenio should be logged in the central place
which is invenio.err.  The apache.err log should contain only possible
non-Invenio stuff, such as IOError cases occuring when tring to write
output to a browser that closed connection, or cases of that kind.

    _______________________________________________________

Follow-up Comments:


-------------------------------------------------------
Date: 2010-02-08 12:57              By: Tibor Simko <simko>
3) Also, while working on this, it would be good to improve the
logging syntax a bit, e.g. by printing leading `*** ' (say) in front
of the registered old and new messages, to have:

   *** 2010-02-05 19:41:32 --> ERR_BIBFORMAT_EVALUATING_ELEMENT :
CERN_AUTHORS
   [...]
   *** 2010-02-05 19:45:00 --> ERR_BIBFORMAT_EVALUATING_ELEMENT :
CERN_AUTHORS
   [...]
   *** 2010-02-05 19:45:00 --> NameError: global name 'req' is not defined
   [...]
   *** 2010-02-04 07:44:38 --> SERVER_RETURN: 404
   [...]

The leading asterisks could then be used for text `folding' in editors
(think Emacs outline mode or org-mode), or for nice grepping for
errors with bodies (think grep `-A 10'), or for nice error inspection
commands that we may introduce later to inveniocfg (think `git log'
and `git log -p').

The outlining could apply even to the message body:

   *** 2010-02-04 07:44:38 --> SERVER_RETURN: 404
   **** userinfo:
   [...]
   **** traceback:
   [...]
   **** local variables:
   [...]

if we want to overdo it a bit. :)





    _______________________________________________________

Carbon-Copy List:

CC Address                          | Comment
------------------------------------+-----------------------------
2195                                | -UPD-
1576                                | -SUB-




==============================================================================

This item URL is:
  <http://savannah.cern.ch/task/?13799>

_______________________________________________
  Message sent via/by LCG Savannah
  http://savannah.cern.ch/

Reply via email to