Использует ли движок приложений google python 2.7.0 или 2.7.1?

Какую версию Python использует движок приложения?

Это связано с проблемами, которые у меня возникают в mac osx с работой pycrypto. Поскольку версия python теперь в Mac - 2.7.1. Когда Google говорит, что версия python для движка приложений - 2.7, они имеют в виду именно 2.7.0? Или python 2.7.1 тоже в порядке?

Может ли это вызвать проблемы с моей локальной установкой pycrypto? (который я установил с помощью pip: sudo pip install pycrypto==2.6) Библиотека pycrypto работает правильно, но каким-то образом нарушает работу движка приложения, на котором запущен сервер разработки. В журнале не отображаются все ошибки или журналы, которые, как я ожидаю, там появятся.


person Igor Hoogerwoord    schedule 22.09.2015    source источник
comment
Как насчет того, чтобы спросить службу поддержки Google App Engine?   -  person ρss    schedule 22.09.2015
comment
SO дает более быстрый ответ   -  person Igor Hoogerwoord    schedule 22.09.2015


Ответы (2)


Когда Google говорит, что версия python для движка приложений - 2.7, они имеют в виду именно 2.7.0? Или python 2.7.1 тоже в порядке?

Любая подрывная версия python 2.7 работает. 2.7.0 работает, но я также широко использовал 2.7.6 и 2.7.10. Так что уверен, что 2.7.1 тоже подойдет.

Может ли это вызвать проблемы для моей локальной установки pycrypto? (который я установил с помощью pip, используя: 'sudo pip install pycrypto == 2.6') Библиотека pycrypto работает правильно, но каким-то образом нарушает работу движка приложения, на котором запущен сервер разработки. В журнале не отображаются все ошибки или журналы, которые, как я ожидаю, там появятся.

Я знаю, что вы спрашивали об этом раньше, но я дам вам другой (лучший) способ включить pycrypto в ваш проект appengine.

В вашем app.yaml укажите следующее:

libraries:
- name: pycrypto
  version: "2.6"  # or "latest", or "2.3"

См. https://cloud.google.com/appengine/docs/python/tools/libraries27 для получения дополнительной информации о том, какие библиотеки поддерживаются appengine и как вы можете импортировать какие версии.

person Tim    schedule 22.09.2015
comment
Да, библиотека pycrypto правильно включена в app.yaml, так было до, во время и после проблемы, которую я описал в этом и других вопросах. - person Igor Hoogerwoord; 22.09.2015
comment
@iciPiracy Что ж, чтобы ответить на ваш вопрос: любые проблемы с pycrypto, испорченными журналированием, безусловно, не связаны с какой-либо разницей между python 2.7.0 и python 2.7.1 - person Tim; 22.09.2015
comment
@iciPiracy пожалуйста. Прочтите это: stackoverflow.com/help/someone-answers - person Tim; 22.09.2015

Кажется, что вы задаете вопрос, который вдохновил вас на заголовок, о python verson 2.7.x, как способ понять вашу актуальную проблему, которая связана с pycrypto. Ответ Тима касался вопроса о том, какие подверсии 2.7.x поддерживаются.

Похоже, вы используете оба раздела библиотеки app.yaml и pip для получения экземпляра pycrypto. Так:

Установленный pip pycrypto находится на вашем dev-box где-то вроде /usr/local/lib/python-2.7, или, в частности, в папке приложения?

Когда dev-сервер запущен, возможно ли, что ваш путь Python использует pycrypto, установленный pip в вашей системе, при этом pycrypto является версией, отличной от той, которая находится в производстве? Это может привести к различному поведению на dev-сервере и на рабочем сервере.


... Все это говорит о том, что, как заметил Тим, все еще кажется странным, что вы должны увидеть нарушение регистрации на основе этого. Что вы регистрируете, и используете ли вы какую-либо обработку исключений, которая может сбрасывать ответственность за регистрацию?

Наконец, есть ли настройка при запуске dev-сервера, которую вы можете использовать, чтобы включить более подробную информацию < / а>? Попробуйте это, чтобы увидеть, сможете ли вы поднять уровень ведения журнала настолько, чтобы сделать исключения, которые вы ищете, видимыми.

Это мои мысли о том, как выбраться из твоей пробки.

person Nick    schedule 22.09.2015
comment
Спасибо за ваш вклад. Прямо сейчас я установил pycrypto с PIP, и он действительно находится в пакетах сайта python 2.7. У меня нет папки или библиотеки pycrypto в моей папке приложения. Я пробовал поднять уровень для отладки, но это ничего не меняет. - person Igor Hoogerwoord; 23.09.2015
comment
Я пробовал использовать как pycrypto 2.3, 2.6 и 2.6.1. Приложение вылетает на 2.3, потому что я использую функции, не поддерживаемые в этой версии. И 2.6, и 2.6.1 дают одну и ту же проблему, заключающуюся в том, что ведение журнала перестает работать (однако, непоследовательно). Я экспериментировал, помещая строки журнала до и после каждого оператора импорта python в каждый файл python, и ведение журнала перестает работать сразу после импорта pycrypto. Это означает мои собственные строки logging.info ('') 'и любые ошибки, которые сервер разработки движка приложений должен отображать в журнале. - person Igor Hoogerwoord; 23.09.2015
comment
Проверьте уровень ведения журнала по previousLevel = logging.getLogger().getEffectiveLevel(), logging.getLogger().setLevel (logging.DEBUG), logging.info ("%d > %d?" % (previousLevel, logging.INFO)). - person Nick; 23.09.2015
comment
Если previousLevel больше, чем logging.INFO, значит уровень ведения журнала (на самом деле порог, с последовательностью { DEBUG, INFO, ... }, увеличивающейся численно) каким-то образом был установлен выше, чем INFO. - person Nick; 23.09.2015