awslabs / web-client-for-aws-transfer-family

This solution creates a web portal for your customers to access your corporate Secure Shell File Transfer Protocol (SFTP) environment. It combines the benefits of using AWS Transfer for SFTP with an intuitive web browser interface for your non-technical users.
https://aws.amazon.com/solutions/implementations/web-client-for-aws-transfer-family/?did=sl_card&trk=sl_card
Apache License 2.0
73 stars 41 forks source link

ECS Tasks keep terminating while Fargate Service is creating new ones. #12

Closed rathialok901 closed 2 years ago

rathialok901 commented 2 years ago

My SFTP Backend ECS Task keep terminating with the logs here. Looks like its failing to import a bunch of modules, not sure why is it doing this.

2022-03-16 18:44:26[2022-03-16 13:14:26 +0000] [10] [ERROR] Exception in worker process 2022-03-16 18:44:26Traceback (most recent call last): 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker 2022-03-16 18:44:26 worker.init_process() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 119, in init_process 2022-03-16 18:44:26 self.load_wsgi() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi 2022-03-16 18:44:26 self.wsgi = self.app.wsgi() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/base.py", line 67, in wsgi 2022-03-16 18:44:26 self.callable = self.load() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 49, in load 2022-03-16 18:44:26 return self.load_wsgiapp() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp 2022-03-16 18:44:26 return util.import_app(self.app_uri) 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/util.py", line 358, in import_app 2022-03-16 18:44:26 mod = importlib.import_module(module) 2022-03-16 18:44:26 File "/usr/local/lib/python3.8/importlib/init.py", line 127, in import_module 2022-03-16 18:44:26 return _bootstrap._gcd_import(name[level:], package, level) 2022-03-16 18:44:26 File "", line 1014, in _gcd_import 2022-03-16 18:44:26 File "", line 991, in _find_and_load 2022-03-16 18:44:26 File "", line 975, in _find_and_load_unlocked 2022-03-16 18:44:26 File "", line 671, in _load_unlocked 2022-03-16 18:44:26 File "", line 843, in exec_module 2022-03-16 18:44:26 File "", line 219, in _call_with_frames_removed 2022-03-16 18:44:26 File "/app/transfer_sftp_backend.py", line 7, in 2022-03-16 18:44:26 from flask import Flask 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/flask/init.py", line 19, in 2022-03-16 18:44:26 from . import json 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/flask/json/init.py", line 15, in 2022-03-16 18:44:26 from itsdangerous import json as _json 2022-03-16 18:44:26ImportError: cannot import name 'json' from 'itsdangerous' (/root/.local/lib/python3.8/site-packages/itsdangerous/init.py) 2022-03-16 18:44:26[2022-03-16 13:14:26 +0000] [11] [ERROR] Exception in worker process 2022-03-16 18:44:26Traceback (most recent call last): 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker 2022-03-16 18:44:26 worker.init_process() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 119, in init_process 2022-03-16 18:44:26 self.load_wsgi() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi 2022-03-16 18:44:26 self.wsgi = self.app.wsgi() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/base.py", line 67, in wsgi 2022-03-16 18:44:26 self.callable = self.load() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 49, in load 2022-03-16 18:44:26 return self.load_wsgiapp() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp 2022-03-16 18:44:26 return util.import_app(self.app_uri) 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/util.py", line 358, in import_app 2022-03-16 18:44:26 mod = importlib.import_module(module) 2022-03-16 18:44:26 File "/usr/local/lib/python3.8/importlib/init.py", line 127, in import_module 2022-03-16 18:44:26 return _bootstrap._gcd_import(name[level:], package, level) 2022-03-16 18:44:26 File "", line 1014, in _gcd_import 2022-03-16 18:44:26 File "", line 991, in _find_and_load 2022-03-16 18:44:26 File "", line 975, in _find_and_load_unlocked 2022-03-16 18:44:26 File "", line 671, in _load_unlocked 2022-03-16 18:44:26 File "", line 843, in exec_module 2022-03-16 18:44:26 File "", line 219, in _call_with_frames_removed 2022-03-16 18:44:26 File "/app/transfer_sftp_backend.py", line 7, in 2022-03-16 18:44:26 from flask import Flask 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/flask/init.py", line 19, in 2022-03-16 18:44:26 from . import json 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/flask/json/init.py", line 15, in 2022-03-16 18:44:26 from itsdangerous import json as _json 2022-03-16 18:44:26ImportError: cannot import name 'json' from 'itsdangerous' (/root/.local/lib/python3.8/site-packages/itsdangerous/init.py) 2022-03-16 18:44:26[2022-03-16 13:14:26 +0000] [12] [ERROR] Exception in worker process 2022-03-16 18:44:26Traceback (most recent call last): 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker 2022-03-16 18:44:26 worker.init_process() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 119, in init_process 2022-03-16 18:44:26 self.load_wsgi() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi 2022-03-16 18:44:26 self.wsgi = self.app.wsgi() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/base.py", line 67, in wsgi 2022-03-16 18:44:26 self.callable = self.load() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 49, in load 2022-03-16 18:44:26 return self.load_wsgiapp() 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp 2022-03-16 18:44:26 return util.import_app(self.app_uri) 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/gunicorn/util.py", line 358, in import_app 2022-03-16 18:44:26 mod = importlib.import_module(module) 2022-03-16 18:44:26 File "/usr/local/lib/python3.8/importlib/init.py", line 127, in import_module 2022-03-16 18:44:26 return _bootstrap._gcd_import(name[level:], package, level) 2022-03-16 18:44:26 File "", line 1014, in _gcd_import 2022-03-16 18:44:26 File "", line 991, in _find_and_load 2022-03-16 18:44:26 File "", line 975, in _find_and_load_unlocked 2022-03-16 18:44:26 File "", line 671, in _load_unlocked 2022-03-16 18:44:26 File "", line 843, in exec_module 2022-03-16 18:44:26 File "", line 219, in _call_with_frames_removed 2022-03-16 18:44:26 File "/app/transfer_sftp_backend.py", line 7, in 2022-03-16 18:44:26 from flask import Flask 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/flask/init.py", line 19, in 2022-03-16 18:44:26 from . import json 2022-03-16 18:44:26 File "/root/.local/lib/python3.8/site-packages/flask/json/init.py", line 15, in 2022-03-16 18:44:26 from itsdangerous import json as _json 2022-03-16 18:44:26ImportError: cannot import name 'json' from 'itsdangerous' (/root/.local/lib/python3.8/site-packages/itsdangerous/init.py) 2022-03-16 18:44:26[2022-03-16 13:14:26 +0000] [12] [INFO] Worker exiting (pid: 12) 2022-03-16 18:44:23[2022-03-16 13:14:23 +0000] [12] [INFO] Booting worker with pid: 12 2022-03-16 18:44:23[2022-03-16 13:14:23 +0000] [11] [INFO] Booting worker with pid: 11 2022-03-16 18:44:23[2022-03-16 13:14:23 +0000] [10] [INFO] Booting worker with pid: 10 2022-03-16 18:44:23[2022-03-16 13:14:23 +0000] [8] [INFO] Listening at: http://0.0.0.0:80 (8) 2022-03-16 18:44:23[2022-03-16 13:14:23 +0000] [8] [INFO] Using worker: sync 2022-03-16 18:44:23[2022-03-16 13:14:23 +0000] [8] [INFO] Starting gunicorn 20.0.4

rathialok901 commented 2 years ago

I was able to get around this by adding itsdangerous==2.0.1 to the Docker requirements and the ECS Tasks are working as expected now.