Updated debug logging for sanitising user data

This commit is contained in:
Abby Gourlay 2020-03-08 16:29:15 +00:00
commit 36cd765c21
4 changed files with 28 additions and 5 deletions

View file

@ -127,6 +127,13 @@ class Library(threading.Thread):
@stop()
def service(self):
from kodi_six import xbmc, xbmcaddon
from datetime import datetime
path = xbmcaddon.Addon(id='plugin.video.jellyfin').getAddonInfo('path')
from pyinstrument import Profiler
profiler = Profiler()
profiler.start()
''' If error is encountered, it will rerun this function.
Start new "daemon threads" to process library updates.
(actual daemon thread is not supported in Kodi)
@ -146,8 +153,17 @@ class Library(threading.Thread):
self.worker_userdata()
self.worker_remove()
self.worker_notify()
profiler.stop()
with open(str(path)+'/output-'+str(datetime.now())+'.html', 'w+') as output:
output.write(profiler.output_html().encode('utf-8'))
if self.pending_refresh:
from kodi_six import xbmc, xbmcaddon
from datetime import datetime
path = xbmcaddon.Addon(id='plugin.video.jellyfin').getAddonInfo('path')
from pyinstrument import Profiler
profiler = Profiler()
profiler.start()
window('jellyfin_sync.bool', True)
if self.total_updates > self.progress_display:
@ -169,6 +185,11 @@ class Library(threading.Thread):
self.screensaver = get_screensaver()
set_screensaver(value="")
profiler.stop()
with open(str(path)+'/output-'+str(datetime.now())+'.html', 'w+') as output:
output.write(profiler.output_html().encode('utf-8'))
if (self.pending_refresh and not self.download_threads and not self.writer_threads['updated'] and not self.writer_threads['userdata'] and not self.writer_threads['removed']):
self.pending_refresh = False
self.save_last_sync()
@ -194,6 +215,8 @@ class Library(threading.Thread):
if xbmc.getCondVisibility('Window.IsMedia'):
xbmc.executebuiltin('Container.Refresh')
def stop_client(self):
self.stop_thread = True