Уведомления

Группа в Telegram: @pythonsu

#1 Май 5, 2012 21:03:46

rooty
От:
Зарегистрирован: 2009-09-26
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Supervisor и без него

Никак не пойму, в чем дело. Если запускать срипт(демон RPC) в обычной консоли, то все нормально, а если от supervisord, то ругается(уже при обращении к одному из методов RPC):

File "rpc_client.py", line 23, in <module>
    print s.reg_user(u' Rem', 'testresm22233131ss', u'12345', 162, u'bochkinssa1221233@gmail.com', 93, 'Sasha', u'ррр45.рф')
  File "/usr/lib/python2.7/xmlrpclib.py", line 1224, in __call__
    return self.__send(self.__name, args)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1578, in __request
    verbose=self.__verbose
  File "/usr/lib/python2.7/xmlrpclib.py", line 1264, in request
    return self.single_request(host, handler, request_body, verbose)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1297, in single_request
    return self.parse_response(response)
  File "/usr/lib/python2.7/xmlrpclib.py", line 1473, in parse_response
    return u.close()
  File "/usr/lib/python2.7/xmlrpclib.py", line 793, in close
    raise Fault(**self._stack[0])
xmlrpclib.Fault: <Fault 1: "<type 'exceptions.UnicodeEncodeError'>:'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)">
Скрипт один и тот же просто разный способ запуска. Приходит в голову что, supervisor не ставит какие то нужные переменные окружения(например локаль), в остальном отличий быть не может. Есть ли какие то тонкости в этом плане?



Офлайн

#2 Май 5, 2012 22:02:56

beelze
Зарегистрирован: 2012-04-11
Сообщения: 104
Репутация: +  3  -
Профиль   Отправить e-mail  

Supervisor и без него

а что говорит locale в том и другом случае?

Офлайн

#3 Май 6, 2012 06:16:49

rooty
От:
Зарегистрирован: 2009-09-26
Сообщения: 14
Репутация: +  0  -
Профиль   Отправить e-mail  

Supervisor и без него

beelze
а что говорит locale в том и другом случае?

Для обычной консоли:


LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE=“en_US.UTF-8”
LC_NUMERIC=“en_US.UTF-8”
LC_TIME=“en_US.UTF-8”
LC_COLLATE=“en_US.UTF-8”
LC_MONETARY=“en_US.UTF-8”
LC_MESSAGES=“en_US.UTF-8”
LC_PAPER=“en_US.UTF-8”
LC_NAME=“en_US.UTF-8”
LC_ADDRESS=“en_US.UTF-8”
LC_TELEPHONE=“en_US.UTF-8”
LC_MEASUREMENT=“en_US.UTF-8”
LC_IDENTIFICATION=“en_US.UTF-8”
LC_ALL=

А что там в момент запуска supervisor как это узнать?



Офлайн

#4 Май 6, 2012 10:41:32

beelze
Зарегистрирован: 2012-04-11
Сообщения: 104
Репутация: +  3  -
Профиль   Отправить e-mail  

Supervisor и без него

> что там в момент запуска supervisor как это узнать?
можно логировать os/posix.environ (не уверен что лучший способ но вдруг что полезное увидите)

кроме того, здесь читали? Может быть способ запуска супервизора или его конфиг прольет свет на проблему?

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version