I've started trying to have others use Meltano wit...
# troubleshooting
e
I've started trying to have others use Meltano with a project of mine, and shared the Juju Charm which sets up and installs meltano.. but this user is getting hit by gunicorn errors... and now periodically I too am having problems.. it will manifest by .. after installing and setting up meltano.. I attempt to
meltano ui
.. but when I goto the page nothing works.. not even connect error, it just spins and spins.. I
sudo kill -9 <pid>
and
meltano ui
again while watching the terminal.. and got this.. but unsure if it's my fault or .. have I hit some python misconfiguration..?
```ubuntu@juju-2dd159-258:~/meltano_proj_repo/.meltano/run$ meltano ui 2021-12-04T213924.060431Z [info ] Auto-compiling models in '/home/ubuntu/meltano_proj_repo/model' 2021-12-04T213924.066089Z [info ] All workers started. [2021-12-04 223924,454] [17818|MainThread|gunicorn.error] [INFO] Starting gunicorn 19.10.0 [2021-12-04 223924,454] [17818|MainThread|gunicorn.error] [INFO] Listening at: http://0.0.0.0:5000 (17818) [2021-12-04 223924,454] [17818|MainThread|gunicorn.error] [INFO] Using worker: sync /usr/lib/python3.8/os.py1023 RuntimeWarning: line buffering (buffering=1) isn't supported in binary mode, the default buffer size will be used return io.open(fd, *args, **kwargs) [2021-12-04 223924,456] [17822|MainThread|gunicorn.error] [INFO] Booting worker with pid: 17822 [2021-12-04 223924,474] [17823|MainThread|gunicorn.error] [INFO] Booting worker with pid: 17823 [2021-12-04 223924,570] [17824|MainThread|gunicorn.error] [INFO] Booting worker with pid: 17824 [2021-12-04 223924,655] [17825|MainThread|gunicorn.error] [INFO] Booting worker with pid: 17825 [2021-12-04 223924,787] [17822|MainThread|gunicorn.error] [ERROR] Exception in worker process Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/gunicorn/arbiter.py", line 586, in spawn_worker worker.init_process() File "/usr/local/lib/python3.8/dist-packages/gunicorn/workers/base.py", line 135, in init_process self.load_wsgi() File "/usr/local/lib/python3.8/dist-packages/gunicorn/workers/base.py", line 144, in load_wsgi self.wsgi = self.app.wsgi() File "/usr/local/lib/python3.8/dist-packages/gunicorn/app/base.py", line 67, in wsgi self.callable = self.load() File "/usr/local/lib/python3.8/dist-packages/gunicorn/app/wsgiapp.py", line 52, in load return self.load_wsgiapp() File "/usr/local/lib/python3.8/dist-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp return util.import_app(self.app_uri) File "/usr/local/lib/python3.8/dist-packages/gunicorn/util.py", line 361, in import_app app = eval(obj, vars(mod)) File "<string>", line 1, in <module> File "/usr/local/lib/python3.8/dist-packages/meltano/api/app.py", line 88, in create_app from .controllers.repos import reposBP File "/usr/local/lib/python3.8/dist-packages/meltano/api/controllers/repos.py", line 6, in <module> import markdown File "/usr/local/lib/python3.8/dist-packages/markdown/__init__.py", line 29, in <module> from .core import Markdown, markdown, markdownFromFile # noqa: E402 File "/usr/local/lib/python3.8/dist-packages/markdown/core.py", line 26, in <module> from . import util File "/usr/local/lib/python3.8/dist-packages/markdown/util.py", line 88, in <module> INSTALLED_EXTENSIONS = metadata.entry_points(group='markdown.extensions') TypeError: entry_points() got an unexpected keyword argument 'group' [2021-12-04 223924,787] [17822|MainThread|gunicorn.error] [INFO] Worker exiting (pid: 17822) [2021-12-04 223924,790] [17823|MainThread|gunicorn.error] [ERROR] Exception in worker process Traceback (most recent call last): File "/usr/local/lib/python3.8/dist-packages/gunicorn/arbiter.py", line 586, in spawn_worker worker.init_process() File "/usr/local/lib/python3.8/dist-packages/gunicorn/workers/base.py", line 135, in init_process self.load_wsgi() File "/usr/local/lib/python3.8/dist-packages/gunicorn/workers/base.py", line 144, in load_wsgi self.wsgi = self.app.wsgi() File "/usr/local/lib/python3.8/dist-packages/gunicorn/app/base.py", line 67, in wsgi self.callable = self.load() File "/usr/local/lib/python3.8/dist-packages/gunicorn/app/wsgiapp.py", line 52, in load return self.load_wsgiapp() File "/usr/local/lib/python3.8/dist-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp return util.import_app(self.app_uri) File "/usr/local/lib/python3.8/dist-packages/gunicorn/util.py", line 361, in imp…
seems it could be some sort of python deps issue.. I've switched from pip to pip3 .. but maybe
pip3 install meltano
needs to have some sub-dependencies pinned differently? I cannot recreate the bug easily nor understand the error other than it's related to
markdown.extensions
on install I see these warnings.. but Meltano seems , in this run of the installer at least.. to get going and I can load the UI
Copy code
machine-266: 23:36:27 WARNING unit.meltano/102.juju-log About to pip install Meltano
unit-meltano-102: 23:36:47 WARNING unit.meltano/102.install ERROR: launchpadlib 1.10.13 requires testresources, which is not installed.
unit-meltano-102: 23:36:47 WARNING unit.meltano/102.install ERROR: importlib-resources 5.4.0 has requirement zipp>=3.1.0; python_version < "3.10", but you'll have zipp 1.0.0 which is incompatible.
unit-meltano-102: 23:36:47 WARNING unit.meltano/102.install ERROR: snowflake-connector-python 2.7.1 has requirement cryptography<4.0.0,>=3.1.0, but you'll have cryptography 2.8 which is incompatible.
unit-meltano-102: 23:36:47 WARNING unit.meltano/102.install ERROR: flask 1.1.4 has requirement itsdangerous<2.0,>=0.24, but you'll have itsdangerous 2.0.1 which is incompatible.
machine-266: 23:36:53 WARNING unit.meltano/102.juju-log meltano installed
p
Why don't you use the docker installation instead?
e
Hi Pablo.. I prefer utilizing VMs and Linux containers.. not just for peace of mind that something I’m using is fresh.. but also as trustworthy as I can make it
IMO, docker adds a lot of value.. when you know what you’re building
when I am experimenting, or testing.. I prefer something simpler
anyway I figured it out.. it turned out something deep in python pypi had changed and I think I’ve successfully cleaned up things so far..
I will test next week with this user I am demoing meltano with..
Copy code
apt update
apt -y upgrade
apt -y install python3-dev python3-pip libpq-dev python3.8-venv python-is-python3
juju-log -l "WARNING" "Apt dependencies installed"
status-set maintenance "Apt dependencies installed $(date +"%H:%M")"

#######################################################################################################################
#  Install Meltano via pip
#######################################################################################################################
status-set maintenance "About to pip install Meltano $(date +"%H:%M")"
juju-log -l "WARNING" "About to pip install Meltano"
pip3 install meltano poetry
status-set maintenance "meltano installed $(date +"%H:%M")"
juju-log -l "WARNING" "meltano installed"