2 votes

InvalidModuleError sur le serveur de développement local lors de l'ajout d'un travail à GAE TaskeQueue.

Quelqu'un peut-il me dire comment résoudre l'erreur GAE python 2.7 indiquée ci-dessous :

Cela a commencé à se produire après que j'ai mis à niveau GCloud et je ne comprends pas ce qui a changé. Mon importation ressemble à ceci :

de google.appengine.api import taskqueue

mais je vois que certains documents plus récents le montrent comme ça :

de google.appengine.api.taskqueue import taskqueue

Mais il n'y a pas d'avis clair de dépréciation ou de changement et j'ai peur de déployer sans comprendre cela d'abord.

File "/Users/dgaedcke/dev/TouchstoneMicroservices/common/async_tasks/push_notify.py", line 49, in registerPush
    taskqueue.add(target='task', queue_name=GAEQ_FOR_PUSH_NOTIFY, url=url, params=params )
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/taskqueue/taskqueue.py", line 2505, in add
    return Task(*args, **kwargs).add(
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/taskqueue/taskqueue.py", line 823, in __init__
    self.__resolve_hostname_and_target()
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/taskqueue/taskqueue.py", line 877, in __resolve_hostname_and_target
    host = self.__host_from_target(self.__target)
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/taskqueue/taskqueue.py", line 957, in __host_from_target
    instance=instance)
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/modules/modules.py", line 459, in get_hostname
    _ResultHook).get_result()
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/apiproxy_stub_map.py", line 613, in get_result
    return self.__get_result_hook(self)
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/modules/modules.py", line 442, in _ResultHook
    _CheckAsyncResult(rpc, mapped_errors, [])
File "/Users/dgaedcke/gcloud_tools/google-cloud-sdk/platform/google_appengine/google/appengine/api/modules/modules.py", line 147, in _CheckAsyncResult
    raise mapped_error()
InvalidModuleError

1voto

ryan Points 1520

@Dewey's commentaire est la réponse. si vous avez plusieurs services, les passer tous à dev_appserver ou du moins toutes celles auxquelles vous envoyez des tâches de la file d'attente, par exemple :

dev_appserver.py app.yaml tasks.yaml

0voto

Dewey Points 11

OK....J'ai trouvé le problème. Le serveur de développement démarrait sans que le serveur taskqueue ne fonctionne, et je suppose donc que le paquet taskqueue n'a pas été ajouté au paquet google.api.....

Il semble qu'une meilleure erreur serait utile dans ce cas....

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X