/r/Tautulli
Tautulli is a 3rd party application that you can run alongside your Plex Media Server to monitor activity and track various statistics.
Please use the Tautulli Discord server for support: https://tautulli.com/discord
Tautulli is a 3rd party application that you can run alongside your Plex Media Server to monitor activity and track various statistics.
/r/Tautulli
So just recently Tautulli has stopped working and I checked the logs and I see this in my logs.
ERROR :: ThreadPoolExecutor-2_0 : Failed to access uri endpoint /status/sessions. Connection error: HTTPConnectionPool(host='plex.example.com', port=32400): Max retries exceeded with url: /status/sessions (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x76ceeef76090>: Failed to establish a new connection: [Errno -3] Try again'))
WARNING :: ThreadPoolExecutor-2_0 : Tautulli Pmsconnect :: Unable to parse XML for get_current_activity: 'NoneType' object has no attribute 'getElementsByTagName'.
And
ERROR :: Thread-166 (run) : Tautulli WebSocket :: [Errno -3] Try again.
Running in docker with Ubuntu 24.04.
I get these same errors starting on a fresh install too (copying database elsewhere and deleting the tuatulli folder). The only thing I've done recently was set up Samba Share. I don't think that should have anything to do with it but might be worth mentioning.
I receive errors when I try to enable tautulli plus when I manually download the app it just doesn't show on the interface or at the app section, and if it does, it's give operations fail error. Any idea why ?
Hey folks,
I have had Tautulli working like a charm on my Windows machine like a charm for the past 5 years. Recently jumped into the unRaid docker world. Everything else works well until I got to Tautulli. The Plex server is behind Tailscale at the moment and can be reached via a browser by manually changing the URL from http://tailscaleIP to https://tailscaleIP (not sure why...)
Now the issue is that my Tautulli docker cannot link to the Plex Media Server somehow. it can find my server, within the local network at 192.168.1.250, but upon connecting it, it says "websocket error". That's probly because the server actually sit behind tailscale ip.
I'd like to change the "PLEX server URL" to https:TailscalePlexserverip with all the security tokens and what not. But it does not let you edit that field. And when I go to config file to mannually change the ip address from 192.168.1.250, save, restart the docker. the Config file just automatically revert back to the local IP instead the one I just put into the config file. Does any of you folks know how to change the IP address in Tautulli setting of the docker plex server?
Some players will tell you why video/audio is transcoding, and this information seems to be available in PMS as shown here. Would it be possible to get this information added to the stream details so admins can easier debug why things are trancoding?
Plex rarely crashes on me, but when it does, I'd like to auto-restart it (while I look for the root cause). As such, I want to use the script notification feature to launch a .sh file that restarts Plex if it crashes. I can see in the logs that the script gets "executed", but Plex never starts. IF I run the same script manually in terminal it starts Plex perfectly. What am I doing wrong? I've chmod the script file to make it executable. The Tautulli logs show:
The actual .sh file looks like this:
open -a "Plex Media Server"
Hey everyone just as the title says I purged my user watch history and reconnected my server to tautulli and now tautulli is only logging TV shows and documentary shows. I have Movies, Documentary Movies and Various videos. When I watch one of those three it shows up that it's playing when I open up tautulli, however when it's finished it's not logged that it was played, nor is the time on which platform it was played on. Does anyone know a fix for this?
Thank you.
It can do this via notifications or API, but I couldn't find any information on where it gets this data from. Does it require plex pass? Can someone explain?
I am feeling a bit stupid, but how can I jump to a specific date in the History tab?
There is no datepicker or filter in this column?
I have Discord and Tautulli connected and working well. It announces when a new movie or TV show is available using a poster (imugr), tile and summary. One thing I'd like to add is the Overseerr User who requested that Movie/TV Show (their username). Is this possible using the markup in Discord?
Hi folks, for some reason, the posters are not matching correctly the movie on the newsletter. What am I doing wrong?
email: https://i.imgur.com/XsoZhcB.png
dashboard: https://i.imgur.com/v5wPKas.png
Terrifier and Transformers are not matching. If I click "preview newsletter" it's fine... but when it triggered the email...it doesn't match.
Using that title to try and best describe what I'd like to do ...
I am wondering ... is there is a way to notify a specific user when a new episode of a specific show is available? I am open to trying any platform that might work best/easiest.
Thanks!
I am trying to make a newsletter yet it will not send an email.
I use outlook and used:
|| || |SMTP server name|smtp-mail.outlook.com| |SMTP port|587| |SMTP encryption|STARTTLS|
I used my email as the user and my outlook password.
I tried different methods and the top log entry is the main way i think should work.
Tautulli Notifiers :: Email notification failed: SMTP AUTH extension not supported by server.
Tautulli Notifiers :: Email notification failed: (535, b'5.7.3 Authentication unsuccessful [SY5PR01CA0113.ausprd01.prod.outlook.com 2024-10-29T06:16:32.812Z 08DCF74EE3BD4413]')
Tautulli Notifiers :: Email notification failed: (535, b'5.7.139 Authentication unsuccessful, basic authentication is disabled. [SYAPR01CA0028.ausprd01.prod.outlook.com 2024-10-29T06:18:06.395Z 08DCE4210005D76F]')
I have ran very few exports since I've been using Tautulli, but I've never had any issues in the couple of years I've been running it. I ran one export a week ago to look for any issues with files in my Plex movie library.
I sorted out all the issues with my files and went to run another export and it failed. Never seen it fail before so I tried it again and it failed again. Some posts said it could be a communication issue so I went to my Plex machine and opened Tautulli since I had been trying from my main PC and not my Plex server. Even trying to run the export from the same machine that is hosting Plex, it still failed. It did have an older version of Tautulli, so when it failed I updated to the newer version and still no success.
I changed the export threads from 8 to 4 in the config.ini file and even added a plexapi.config.ini file as suggested in another post to increase the timeout and I'm still unable to complete an export. I'm not sure what happened in the last week, but I just can get the tool to do one of the basic functions.
Any ideas?
Hi everyone!
Maybe someone experienced a similar issue. After moving tautulli from windows installation inside docker I've imported DB and config file backup through WEB UI.
Now, when I trying to open global history page app crashed and restarts.
This is what I can seen in docker logs:
/app/tautulli/lib/gntp/core.py:22: SyntaxWarning: invalid escape sequence '\d'
tautulli | 'GNTP/(?P<version>\d+\.\d+) (?P<messagetype>REGISTER|NOTIFY|SUBSCRIBE|\-OK|\-ERROR)' +
tautulli | /app/tautulli/lib/gntp/core.py:29: SyntaxWarning: invalid escape sequence '\d'
tautulli | 'GNTP/(?P<version>\d+\.\d+) (?P<messagetype>REGISTER|NOTIFY|SUBSCRIBE|\-OK|\-ERROR)',
tautulli | /app/tautulli/lib/gntp/core.py:33: SyntaxWarning: invalid escape sequence '\w'
tautulli | GNTP_HEADER = re.compile('([\w-]+):(.+)')
tautulli | /app/tautulli/lib/facebook/__init__.py:99: SyntaxWarning: invalid escape sequence '\d'
tautulli | version_regex = re.compile("^\d\.\d{1,2}$")
Have no clue were to look. Tried to google something but with no avail.
Appreciate any assistance. Thanks!
I find it just fills up the history, and I'd rather just not see it. I have:
But I'm still seeing music in my history.
Hey all, i’m still very new with plex and everything. I got tautulli setup with notifications and emails! Now im struggling to actually have the app work when im outside of my home network.Not really sure what i should be doing to try to fix this.
Bonjour,
Mon système : synology DS918+ avec DSM 7.2 :
- Plex média serveur par paquet
- tautulli en docker
tautulli ne se connecte plus à plex depuis 5 jours.
j'ai réinstallé un nouveau docker pour vérifier, à l'installation, le serveur est trouvé mais ensuite, de nouveau l'impossibilité de se connecter. je cherche mais je ne trouve pas comment résoudre ce problème.
Mes logs https://gist.github.com/cedbuj/79c61e04f1b5387f9c1036d80062d122
Merci de votre aide
Hi all,
One of my Hard disk broke last week, no backups of course :D So in these days I played really hard with Tautulli's Export, to get what media is missing, luckily I got the list of all the media missing, but it was a pain in the ass :)
To prevent that this happens again, I'm starting to backing up with Backblaze (I wanted to do it last week but the hard disk broke before).
But I thought that an automized export from Tautulli could be useful to have every once a while, maybe once a week. So I needed a script that could do it.
I never used Powershell, so I asked ChatGPT to create this script, I tested it and works :D This script is for my TV Series, which has section_id = 4, you can get this parameter from the Tautulli URL when you click on the TV Series media.
Of course I think that this script can be written much better :D But at least it works, here it is if someone need its here:
# 1. Call the "export_metadata" API to create the export. Save "export_id" in "export".
# Check https://github.com/Tautulli/Tautulli/wiki/Exporter-Guide to see all the metadata that you can export
$response = curl "http://[TAUTULLI_IP]:[TAUTULLI_PORT]/api/v2?apikey=[TAUTULLI_API]&cmd=export_metadata§ion_id=[SECTION_ID_NUMBER]&file_format=csv&metadata_level=0&media_info_level=0&custom_fields=title,seasons.episodes.title,seasons.episodes.locations,seasons.episodes.media.videoCodec"
#http://[TAUTULLI_IP]:[TAUTULLI_PORT]/api/v2?apikey=[TAUTULLI_API]&cmd=export_metadata§ion_id=[SECTION_ID_NUMBER]&file_format=csv&metadata_level=0&media_info_level=0&custom_fields=title,seasons.episodes.title,seasons.episodes.locations,seasons.episodes.media.videoCodec
$jsonResponse = $response | ConvertFrom-Json
# write the response Json on the Console for check
Write-Host "JSON Response of Export:"
Write-Host $jsonResponse | ConvertTo-Json -Depth 3
$exportId = $jsonResponse.response.data.export_id
# Check that export_id as been saved correctly
if ($null -eq $exportId) {
Write-Host "Error: export_id not found"
exit
}
Write-Host "Export ID saved: $exportId"
# 2. Calls the "get_exports_table" API every 5 minutes, to check if the "Export_metadata" API has finished
$exists = $false
while (-not $exists) {
# Esegui il secondo comando curl - section_id=X in base al valore che riporta Tautulli
$checkResponse = curl "http://[TAUTULLI_IP]:[TAUTULLI_PORT]/api/v2?apikey=[TAUTULLI_API]&cmd=get_exports_table§ion_id=4"
$checkJson = $checkResponse | ConvertFrom-Json
# write the response Json on the Console for check
Write-Host "JSON Response of Get Exports Table:"
Write-Host $checkJson | ConvertTo-Json -Depth 3
# Search for the record with the export_id
$exportRecord = $checkJson.response.data.data | Where-Object { $_.export_id -eq $exportId }
if ($null -ne $exportRecord) {
# write the response Json of the specific export on the Console for check
Write-Host "Record export found:"
Write-Host $exportRecord | ConvertTo-Json -Depth 3
# Checks the parameter "exists"
$exists = $exportRecord.exists
Write-Host "Value of 'exists': $exists"
if ($exists) {
Write-Host "Export completed."
break
} else {
Write-Host "Export not completed, checking again in 5 minutes."
}
} else {
Write-Host "Record with export_id $exportId not found."
}
# wait 5 minutes
Start-Sleep -Seconds 300
}
# 3. Copy the last folder created in the export path of tautulli
# export path, need to change it with your local path
$exportPath = "C:\Users\stefa\AppData\Local\Tautulli\exports"
# Search for the last folder created which starts with "Library - Serie TV - "
$latestExportFolder = Get-ChildItem -Path $exportPath | Where-Object { $_.PSIsContainer -and $_.Name -like "Library - Serie TV -*" } | Sort-Object LastWriteTime -Descending | Select-Object -First 1 | ForEach-Object { $_.Name }
# complete Source Path and Destination Path
# choose your destinationPath
$sourcePath = Join-Path $exportPath $latestExportFolder
$destinationPath = "X:\DriveListBackups\Tautulli\SerieTV"
# Check if source path exists
if (-Not (Test-Path -LiteralPath $sourcePath)) {
Write-Host "Error: the source path $sourcePath doesn't exsist. "
exit
}
# Verifica esistenza file CSV
$exportedFile = Get-ChildItem -LiteralPath $sourcePath -Filter "*.csv" | Select-Object -First 1
if ($null -eq $exportedFile) {
Write-Host "Error: no CSV file found in the source path: $sourcePath."
exit
}
# Stampa i percorsi per debug
Write-Host "Source Path: $sourcePath"
Write-Host "Destination Path: $destinationPath"
# Check if the destination Path exsist
if (-Not (Test-Path -Path $destinationPath)) {
Write-Host "Destination Path doesn't exsist. Folder creation in progress..."
New-Item -Path $destinationPath -ItemType Directory
}
# Esegui la copia della cartella
try {
Copy-Item -LiteralPath $sourcePath -Destination $destinationPath -Recurse -Force
Write-Host "Folder $latestExportFolder successfully copied in $destinationPath."
} catch {
Write-Host "Error during the copy of the folder: $_"
}
I tried to setup an API, and if I try to use tls or ssl for the send type along with my api key and passcode and it throws a python error. I am running Tautulli in a unraid docker container if that helps any
|| || |Tautulli NotificationHandler :: Notification thread exception: please run connect() first Traceback (most recent call last): File "/app/plexpy/notification_handler.py", line 57, in process_queue notify_newsletter(**params) File "/app/plexpy/newsletter_handler.py", line 141, in notify success = newsletter_agent.send() ^^^^^^^^^^^^^^^^^^^^^^^ File "/app/plexpy/newsletters.py", line 524, in send return self._send() ^^^^^^^^^^^^ File "/app/plexpy/newsletters.py", line 569, in _send return email.notify( ^^^^^^^^^^^^^ File "/app/plexpy/notifiers.py", line 965, in notify return self.agent_notify(subject=subject, body=body, action=action, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/plexpy/notifiers.py", line 1392, in agent_notify mailserver.quit() File "/usr/local/lib/python3.11/smtplib.py", line 1004, in quit res = self.docmd("quit") ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.11/smtplib.py", line 431, in docmd self.putcmd(cmd, args) File "/usr/local/lib/python3.11/smtplib.py", line 378, in putcmd self.send(f'{s}{CRLF}') File "/usr/local/lib/python3.11/smtplib.py", line 365, in send raise SMTPServerDisconnected('please run connect() first') smtplib.SMTPServerDisconnected: please run connect() first|
using none and port 25 just doesn't do anything, no errors, no messages received by the email I am sending the test to.
Is there a way to add a custom email header to the newsletter?
I'm occasionally getting mails marked as Spam, DKIM, SPF are all set up and working, but the remaining issue is that my mails don't include a List-Unsubscribe header in the email.
Looking to either use a mailto or http type unsubscribe (I have the endpoints set up for this already), but can't see how I can add this header to the mail Tautulli sends out.
I exported a list of my movies into a CSV from Tautulli and I'm noticing at least one file is listed that does not exist. I went to the folder containing the library and the file is not there. I also cannot find the title by searching Plex. It truly does not exist unless it's got a ghost hanging somewhere.
Having trouble triggering notification agents for media upgrades. Example is simple sonarr or radarr first import triggers notification, but if sonarr or radarr upgrades the same movie or series, tautulli does nothing, how can I trigger notification for upgrades too?
For notifications I use scripts or webhooks to change posters or to change default audio track and subtitles in plex.
Found interesting lines in tautulli config.ini notify_recently_added_grandparent = 0 notify_recently_added_upgrade = 0 Tried to change 0 to 1 and restarted, but nothing changed.
I’m getting empty tautulli notifications from the Tautulli Remote app when I’m not on my local network. Works fine when I’m home, but remotely the notification just says “Tautulli Notification”, it was working fine couple days ago.
Hey there everyone. I'm looking to create a newsletter to send my users monthly that will point to a collection in Plex I have created with Maintainerr. The movies in that collection will be deleted within the next 30 days.
I have read through so many posts as well as the wiki to see if this is possible and at this moment I'm not sure that it is at least not while keeping the current template which I would like to continue to use for recently added newsletters. Does anyone have something setup like this?
Hello everyone,
My Tautuilli instance has been sending me the same notification over and over again for some time now.
One Piece S22 was recently added.
What I have tried so far:
Plex Dance with the complete S22
PlexDB Repair
Can anyone help me?
LOGS: https://gist.github.com/SynMaki/2200fa84c8a39c5a731b4ae4503d4b21
Thank you very much!
Hi there
A friend of mine has recently had huge problems with his plex server on his pc. So we setup his plex in docker on a ubuntu nuc machine. While doing this we also setup Tautulli for the first time on both his and my machines.
His Tautulli shows 3 users with a yellow triangle warning that says “user not on plex” One of those 3 has an pending invite. The other 2 are no where to be found in plex friends nor in library access.
Does anyone know how this can be?
They are both users he havde given access before, but has since removed from his plex server.
Thank you all in advance!
/Thrawn
Hi, when I setup Tautulli I used my now previous login (for Plex). I have since bought a lifetime pass with Plex and transferred ownership to my new pass. Only problem is, I am now unable to login to Tautulli. I am sure I have made a rookie error - any help appreciated.
Sending a newsletter has worked for over a year. I've changed nothing in the configuration. It just started crashing. Here's an excerpt from the log.
I've changed no configuration. Literally nothing changed since last week when it worked.
Any ideas?
2024-10-04 00:57:07 - INFO :: Thread-2 (process_queue) : Tautulli NewsletterHandler :: Preparing newsletter for newsletter_id 5.
2024-10-04 00:57:07 - INFO :: Thread-2 (process_queue) : Tautulli Newsletters :: Generating newsletter.
2024-10-04 00:57:07 - INFO :: Thread-2 (process_queue) : Tautulli Newsletters :: Recently Added newsletter saved to 'newsletter_db2a4586.html'
2024-10-04 00:57:13 - ERROR :: Thread-2 (process_queue) : Tautulli Notifiers :: Email notification failed: Connection unexpectedly closed: The read operation timed out
2024-10-04 00:57:13 - ERROR :: Thread-2 (process_queue) : Tautulli NotificationHandler :: Notification thread exception: please run connect() first
Traceback (most recent call last):
File "/snap/tautulli/2020/plexpy/notification_handler.py", line 57, in process_queue
notify_newsletter(**params)
File "/snap/tautulli/2020/plexpy/newsletter_handler.py", line 129, in notify
success = newsletter_agent.send()
File "/snap/tautulli/2020/plexpy/newsletters.py", line 524, in send
return self._send()
File "/snap/tautulli/2020/plexpy/newsletters.py", line 558, in _send
return send_notification(
File "/snap/tautulli/2020/plexpy/notifiers.py", line 707, in send_notification
return agent.notify(subject=subject,
File "/snap/tautulli/2020/plexpy/notifiers.py", line 965, in notify
return self.agent_notify(subject=subject, body=body, action=action, **kwargs)
File "/snap/tautulli/2020/plexpy/notifiers.py", line 1392, in agent_notify
mailserver.quit()
File "/usr/lib/python3.10/smtplib.py", line 1004, in quit
res = self.docmd("quit")
File "/usr/lib/python3.10/smtplib.py", line 431, in docmd
self.putcmd(cmd, args)
File "/usr/lib/python3.10/smtplib.py", line 378, in putcmd
self.send(f'{s}{CRLF}')
File "/usr/lib/python3.10/smtplib.py", line 365, in send
raise SMTPServerDisconnected('please run connect() first')
smtplib.SMTPServerDisconnected: please run connect() first
I was having newsletters sent weekly to my users showing what was added the previous 7 days. I use an Outlook email address, however as of the past 1+ month or so, I am getting an error:
Tautulli Notifiers :: Email notification failed: (535, b'5.7.139 Authentication unsuccessful, basic authentication is disabled. [YT4PR01CA0160.CANPRD01.PROD.OUTLOOK.COM 2024-10-03T20:27:51.847Z 08DCE3B25BE944DA]')
I tried searching for basic authentication and I cannot find that setting anywhere in Tautulli, am I just blind? For the life of me I cannot figure this out and it was working great for a number of months before this. Thanks in advance.
Hello,
I have just installed Tautulli and excited to use it and learn how to do other things.
For example I would love to add this script so all new movies get labelled automatically without affecting the old ones
https://gist.github.com/JonnyWong16/4cfcf8ea50dab1b720b4d30e9a01835c
I see I can go to Tautulli - notification agents - Script but then I am a little (a lot) confused. I did a search but have not had much help as I would love to learn how to do this rather than give up.
Thank you.