From c7cf687e66dc11baedeef1c299aa415df7f24d2e Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Wed, 22 Aug 2012 17:01:39 -0400 Subject: [PATCH] MM2: Imporoved some logging and error checking. --- python_apps/media-monitor2/media/monitor/eventcontractor.py | 3 +++ python_apps/media-monitor2/media/monitor/metadata.py | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/python_apps/media-monitor2/media/monitor/eventcontractor.py b/python_apps/media-monitor2/media/monitor/eventcontractor.py index 9eb181bf4..089b30a44 100644 --- a/python_apps/media-monitor2/media/monitor/eventcontractor.py +++ b/python_apps/media-monitor2/media/monitor/eventcontractor.py @@ -57,4 +57,7 @@ class EventContractor(Loggable): def __unregister(self, evt): try: del self.store[evt.path] + except KeyError as e: + self.logger.info("Contractor failed to unrecord event: '%s'" \ + % evt.path) except Exception as e: self.unexpected_exception(e) diff --git a/python_apps/media-monitor2/media/monitor/metadata.py b/python_apps/media-monitor2/media/monitor/metadata.py index 5f222c4b4..f718b7b2e 100644 --- a/python_apps/media-monitor2/media/monitor/metadata.py +++ b/python_apps/media-monitor2/media/monitor/metadata.py @@ -154,6 +154,11 @@ class Metadata(Loggable): try : full_mutagen = mutagen.File(fpath, easy=True) except Exception : raise BadSongFile(fpath) self.path = fpath + if not os.path.exists(self.path): + self.logger.info("Attempting to read metadata of file \ + that does not exist. Setting metadata to {}") + self.__metadata = {} + return # TODO : Simplify the way all of these rules are handled right not it's # extremely unclear and needs to be refactored. self.__metadata = Metadata.airtime_dict(full_mutagen)