zSeriesGuy / Tautulli

A Python based monitoring and tracking tool for Plex Media Server.
http://tautulli.com
GNU General Public License v3.0
27 stars 9 forks source link

Not able to start 4.0.00 version #19

Closed prinzpi closed 4 years ago

prinzpi commented 4 years ago

Hi,

I'm trying to start the new 4.0.00 version (fresh installation, just the old systemd entry). I have followed your instruction, but I'm receiving following error messages:

-- Unit tautulli.service has begun starting up.
Nov 13 19:59:56 SRV-Ubuntu-Plex python3[11777]: Traceback (most recent call last):
Nov 13 19:59:56 SRV-Ubuntu-Plex python3[11777]:   File "/opt/Tautulli/Tautulli.py", line 32, in <module>
Nov 13 19:59:56 SRV-Ubuntu-Plex python3[11777]:     import pytz
Nov 13 19:59:56 SRV-Ubuntu-Plex python3[11777]: ImportError: No module named 'pytz'
Nov 13 19:59:56 SRV-Ubuntu-Plex systemd[1]: tautulli.service: Control process exited, code=exited status=1
Nov 13 19:59:56 SRV-Ubuntu-Plex systemd[1]: Failed to start Tautulli - Stats for Plex Media Server usage.
-- Subject: Unit tautulli.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit tautulli.service has failed.
--
-- The result is failed.
Nov 13 19:59:56 SRV-Ubuntu-Plex systemd[1]: tautulli.service: Unit entered failed state.
Nov 13 19:59:56 SRV-Ubuntu-Plex systemd[1]: tautulli.service: Failed with result 'exit-code'.
Nov 13 19:59:56 SRV-Ubuntu-Plex sudo[11745]: pam_unix(sudo:session): session closed for user root

I have tried to install the pytz module - without success.

My systemd entry is looking like this:

[Unit] Description=Tautulli - Stats for Plex Media Server usage

[Service] ExecStart=/opt/Tautulli/bin/python3 /opt/Tautulli/Tautulli.py GuessMainPID=no Type=forking User=root Group=root

[Install] WantedBy=multi-user.target

As default I have used the user and group "Tautulli" which I have used before, but with this setting it wasn't also able to bring the service up. Do you have any idea what I'm probably just missing?

Thanks.

zSeriesGuy commented 4 years ago

Looks like your ExecStart is correct. You created the VENV per the instructions and ran the pip install -r requirements.txt after doing the source command? Did you do the systemctl daemon-reload after updating tautulli.service?

That's all I can think of at the moment.

Edit: Try running it directly using /opt/Tautulli/bin/python3 /opt/Tautulli/Tautulli.py instead of from the service as an initial test to make sure it is working.

zSeriesGuy commented 4 years ago

@prinzpi Did this resolve your issue? Is it working now?

prinzpi commented 4 years ago

@zSeriesGuy yes I have followed the instruction inside the VENV.

But also by executing the command /opt/Tautulli/bin/python3 /opt/Tautulli/Tautulli.py I'm receiving this error message:

(Tautulli) lukas@SRV-Ubuntu-Plex:/opt/Tautulli$ sudo /opt/Tautulli/bin/python3 /opt/Tautulli/Tautulli.py
Traceback (most recent call last):
  File "/opt/Tautulli/Tautulli.py", line 32, in <module>
    import pytz
ImportError: No module named 'pytz'

My logging of the requirements execution (may this will help to identify the issue):

(Tautulli) lukas@SRV-Ubuntu-Plex:/opt/Tautulli$ sudo pip3 install -r /opt/Tautulli/requirements.txt
WARNING: The directory '/home/lukas/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
WARNING: The directory '/home/lukas/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Ignoring infi.systray: markers 'sys_platform == "win32"' don't match your environment
Ignoring pywin32: markers 'sys_platform == "win32"' don't match your environment
Requirement already satisfied: apscheduler==3.6.3 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 7)) (3.6.3)
Requirement already satisfied: arrow==0.15.4 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 8)) (0.15.4)
Requirement already satisfied: beautifulsoup4==4.8.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 9)) (4.8.1)
Requirement already satisfied: bleach==3.1.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 10)) (3.1.0)
Requirement already satisfied: bs4==0.0.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 11)) (0.0.1)
Requirement already satisfied: certifi==2019.9.11 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 12)) (2019.9.11)
Requirement already satisfied: cffi==1.13.2 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 13)) (1.13.2)
Requirement already satisfied: chardet==3.0.4 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 14)) (3.0.4)
Requirement already satisfied: cheroot==8.2.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 15)) (8.2.1)
Requirement already satisfied: cherrypy==18.4.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 16)) (18.4.0)
Requirement already satisfied: click==7.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 17)) (7.0)
Requirement already satisfied: cloudinary==1.18.2 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 18)) (1.18.2)
Requirement already satisfied: configobj==5.0.6 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 19)) (5.0.6)
Requirement already satisfied: cryptography==2.8 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 20)) (2.8)
Requirement already satisfied: dnspython==1.16.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 21)) (1.16.0)
Requirement already satisfied: facebook-sdk==3.1.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 22)) (3.1.0)
Requirement already satisfied: feedparser==5.2.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 23)) (5.2.1)
Requirement already satisfied: future==0.18.2 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 24)) (0.18.2)
Requirement already satisfied: geoip2==2.9.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 25)) (2.9.0)
Requirement already satisfied: gntp==1.0.3 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 26)) (1.0.3)
Requirement already satisfied: httpagentparser==1.9.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 27)) (1.9.0)
Requirement already satisfied: idna==2.8 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 28)) (2.8)
Requirement already satisfied: ipwhois==1.1.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 30)) (1.1.0)
Requirement already satisfied: ipy==1.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 31)) (1.0)
Requirement already satisfied: jaraco.functools==2.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 32)) (2.0)
Requirement already satisfied: logutils==0.3.5 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 33)) (0.3.5)
Requirement already satisfied: mako==1.1.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 34)) (1.1.0)
Requirement already satisfied: markupsafe==1.1.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 35)) (1.1.1)
Requirement already satisfied: maxminddb==1.5.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 36)) (1.5.1)
Requirement already satisfied: mock==3.0.5 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 37)) (3.0.5)
Requirement already satisfied: more-itertools==7.2.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 38)) (7.2.0)
Requirement already satisfied: oauthlib==3.1.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 39)) (3.1.0)
Requirement already satisfied: paho-mqtt==1.5.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 40)) (1.5.0)
Requirement already satisfied: passlib==1.7.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 41)) (1.7.1)
Requirement already satisfied: pip-tools==4.2.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 42)) (4.2.0)
Requirement already satisfied: portend==2.6 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 43)) (2.6)
Requirement already satisfied: profilehooks==1.11.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 44)) (1.11.0)
Requirement already satisfied: pycparser==2.19 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 45)) (2.19)
Requirement already satisfied: pyjwt==1.7.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 46)) (1.7.1)
Requirement already satisfied: pynma==1.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 47)) (1.0)
Requirement already satisfied: pyopenssl==19.0.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 48)) (19.0.0)
Requirement already satisfied: python-dateutil==2.8.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 49)) (2.8.1)
Requirement already satisfied: python-twitter==3.5 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 50)) (3.5)
Requirement already satisfied: pytz==2019.3 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 51)) (2019.3)
Requirement already satisfied: requests-oauthlib==1.3.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 53)) (1.3.0)
Requirement already satisfied: requests==2.22.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 54)) (2.22.0)
Requirement already satisfied: six==1.13.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 55)) (1.13.0)
Requirement already satisfied: soupsieve==1.9.5 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 56)) (1.9.5)
Requirement already satisfied: tempora==1.14.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 57)) (1.14.1)
Requirement already satisfied: tzlocal==2.0.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 58)) (2.0.0)
Requirement already satisfied: urllib3==1.25.6 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 59)) (1.25.6)
Requirement already satisfied: webencodings==0.5.1 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 60)) (0.5.1)
Requirement already satisfied: websocket-client==0.56.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 61)) (0.56.0)
Requirement already satisfied: xmltodict==0.12.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 62)) (0.12.0)
Requirement already satisfied: zc.lockfile==2.0 in /usr/local/lib/python3.5/dist-packages (from -r /opt/Tautulli/requirements.txt (line 63)) (2.0)
Requirement already satisfied: setuptools>=0.7 in /usr/local/lib/python3.5/dist-packages (from apscheduler==3.6.3->-r /opt/Tautulli/requirements.txt (line 7)) (41.6.0)
zSeriesGuy commented 4 years ago

Looks like you are on Python 3.5. Try 3.7. I'll do some tests with 3.5 and see what the problem is.

sudo apt-get install python3.7 Delete your VENV that you previously build and then rebuild it using python3.7 in the commands.

Let me know how that works out.

zSeriesGuy commented 4 years ago

I just tested on Windows with Python 3.5.4 and it did not get that error. I did catch one little issue and pushed a fix for that. I'm guessing that your VENV is not set up correctly. In your log above, there is this message: If executing pip with sudo, you may want sudo's -H flag. You might give that a try.

prinzpi commented 4 years ago

@zSeriesGuy I have deleted the cloned Tautulli and have done the instruction again. Also I have tried to use sudo -H - but I'm receiving still the same error message regarding the missing pytz module.

Tried to update to python 3.7 - but that have failed. I'll try again to upgrade from 3.5 to 3.7 and test it again.

zSeriesGuy commented 4 years ago

Issue command sudo -i before running the install. And then don't use sudo on any of the other installation commands.

prinzpi commented 4 years ago

Issue command sudo -i before running the install. And then don't use sudo on any of the other installation commands.

With this hint it's now working. Thank you. Have a nice day.