Projet

Général

Profil

Bug #19532

iparapheur: erreur d'encodage du message d'erreur lors d'une tentative de creation d'un dossier

Ajouté par Serghei Mihai il y a plus de 6 ans. Mis à jour il y a presque 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
18 octobre 2017
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Error occurred while processing request
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/passerelle/utils/jsonresponse.py", line 117, in api
    resp = f(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/passerelle/views.py", line 267, in perform
    return self.endpoint(request, **self.get_params(request, *args, **kwargs))
  File "/usr/lib/python2.7/dist-packages/passerelle/contrib/iparapheur/models.py", line 144, in create_file
    r = c.service.CreerDossier(**d)
  File "/usr/lib/python2.7/dist-packages/suds/client.py", line 542, in __call__
    return client.invoke(args, kwargs)
  File "/usr/lib/python2.7/dist-packages/suds/client.py", line 602, in invoke
    result = self.send(soapenv)
  File "/usr/lib/python2.7/dist-packages/suds/client.py", line 652, in send
    log.error(self.last_sent())
  File "/usr/lib/python2.7/logging/__init__.py", line 1186, in error
    self._log(ERROR, msg, args, **kwargs)
  File "/usr/lib/python2.7/logging/__init__.py", line 1279, in _log
    self.handle(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 1289, in handle
    self.callHandlers(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 1329, in callHandlers
    hdlr.handle(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 757, in handle
    self.emit(record)
  File "/usr/lib/python2.7/dist-packages/django/utils/log.py", line 115, in emit
    record.getMessage()
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 603: ordinal not in range(128)

Historique

#1

Mis à jour par Benjamin Dauvergne il y a plus de 6 ans

Faut mettre à jour vers sud-jurko qui est dans python-backports, ça corrige ce genre de problème je pense.

#2

Mis à jour par Benjamin Dauvergne il y a plus de 6 ans

Le nom du paquet est le même, faut juste faire apt install -t jessie-backports python-suds.

#3

Mis à jour par Benjamin Dauvergne il y a plus de 6 ans

Mais ça peut-être sympa d'avoir un test qui reproduis le bug avec suds classique et montre que ça passe avec jurko.

#4

Mis à jour par Serghei Mihai il y a plus de 6 ans

Voilà, paquet mis à jour et on reçoit

Error occurred while processing request
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/passerelle/utils/jsonresponse.py", line 117, in api
    resp = f(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/passerelle/views.py", line 267, in perform
    return self.endpoint(request, **self.get_params(request, *args, **kwargs))
  File "/usr/lib/python2.7/dist-packages/passerelle/contrib/iparapheur/models.py", line 144, in create_file
    r = c.service.CreerDossier(**d)
  File "/usr/lib/python2.7/dist-packages/suds/client.py", line 566, in __call__
    return client.invoke(args, kwargs)
  File "/usr/lib/python2.7/dist-packages/suds/client.py", line 705, in invoke
    result = self.send(soapenv)
  File "/usr/lib/python2.7/dist-packages/suds/client.py", line 752, in send
    return self.process_reply(content, e.httpcode, tostr(e))
  File "/usr/lib/python2.7/dist-packages/suds/client.py", line 819, in process_reply
    raise Exception((status, description))
Exception: (500, u'Internal Server Error')

Le Parapheur est en carafe.

#5

Mis à jour par Serghei Mihai il y a plus de 6 ans

La réponse brute:

<html lang="fr">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>i-Parapheur - Erreur 500</title>

        <!-- Bootstrap -->
        <link href="/error_pages/css/bootstrap.min.css" rel="stylesheet">

        <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
        <!-- WARNING: Respond.js doesn\'t work if you view the page via file:// -->
        <!--[if lt IE 9]>
        <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
        <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
        <![endif]-->
    </head>
    <body>
        <nav class="navbar navbar-default" role="navigation">
            <div class="container-fluid">
                <div class="navbar-header">
                    <a class="navbar-brand" href="/iparapheur">i-Parapheur</a>
                </div>
            </div>
        </nav>
        <div class="container">
            <div class="alert alert-danger">
                <h1 style="margin-top:0px;">Erreur 500</h1>
                <p>Erreur interne du serveur.</p>
            </div>
        </div>
    </body>
</html>

#6

Mis à jour par Serghei Mihai il y a plus de 6 ans

Et au passage, Sentry ne remonte plus les erreurs.

Oct 18 22:15:05 passerelle passerelle DEBUG passerelle.alfortville.fr 5.135.221.5 - r:7F6E8A77B650 Sending message of length 18189 to https://sentry.entrouvert.org/api/1/store/
Oct 18 22:15:05 passerelle passerelle ERROR passerelle.alfortville.fr 5.135.221.5 - r:7F6E8A77B650 Sentry responded with an error:  (url: https://sentry.entrouvert.org/api/1/store/)#012{u'culprit': u'suds.client in process_reply',#012 u'event_id': u'91b806d3d081462a845dae6b18766044',#012 u'exception'

A creuser.

#7

Mis à jour par Frédéric Péters il y a plus de 6 ans

Voilà, paquet mis à jour et on reçoit

Non. #19536.

#9

Mis à jour par Benjamin Dauvergne il y a plus de 6 ans

J'avais quand même dit de développer un test :)

Pour sentry, en dehors du fait que la configuration n'est pas la bonne et que ça part donc dans Développement au lieu de Recette, ça marche. Je ne sais pas pourquoi sentry n'a pas accepté le rapport, peut-être trop long (mais je ne vois pas ce qu'il y a de si long ici). Le test suivant fait sur la machine passe:

passerelle:~# sudo -u passerelle SENTRY_DSN="https://a20092f7b3da484abf8fc0a4ee2f7202:c9fab41dcde24b04a30ac01ffd3c2457@sentry.entrouvert.org/1" GRAYLOG_URL="10.12.0.1:12203" passerelle-manage shell
Python 2.7.9 (default, Jun 29 2016, 13:08:31) 
Type "copyright", "credits" or "license" for more information.

IPython 2.3.0 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: import os

In [2]: os.environ['SENTRY_DSN']
Out[2]: 'https://a20092f7b3da484abf8fc0a4ee2f7202:c9fab41dcde24b04a30ac01ffd3c2457@sentry.entrouvert.org/1'

In [3]: from django.conf import settings

In [4]: settings.SENTRY_DSN
Out[4]: 'https://a20092f7b3da484abf8fc0a4ee2f7202:c9fab41dcde24b04a30ac01ffd3c2457@sentry.entrouvert.org/1'

In [5]: import logging

In [6]: logging.error('test from passerelle')

#10

Mis à jour par Frédéric Péters il y a presque 2 ans

  • Statut changé de Nouveau à Fermé
  • Planning mis à Non

Connecteur supprimé depuis. (#65657).

Formats disponibles : Atom PDF