diff --git a/src/python/dm/daq_web_service/service/impl/dmFileSystemEventHandler.py b/src/python/dm/daq_web_service/service/impl/dmFileSystemEventHandler.py index a5ece2de17cc553d9abc032b3ba18ba435c76c6f..b7ba939b26876fed9a518772225ac5d4f9caa28c 100755 --- a/src/python/dm/daq_web_service/service/impl/dmFileSystemEventHandler.py +++ b/src/python/dm/daq_web_service/service/impl/dmFileSystemEventHandler.py @@ -2,7 +2,6 @@ import os import glob - from watchdog.events import FileSystemEventHandler from dm.common.utility.loggingManager import LoggingManager @@ -37,13 +36,17 @@ class DmFileSystemEventHandler(FileSystemEventHandler): def on_modified(self, event): FileSystemEventHandler.on_modified(self, event) + self.logger.debug('File system directory modified event: %s' % (event.__dict__)) if event.is_directory: try: - filePath = max(glob.glob(event.src_path+'*.*'), key=os.path.getctime) - self.logger.debug('File system directory modified event: %s , latest file: %s' % (event.__dict__, filePath)) - self.fileSystemObserver.fileUpdated(filePath, self.dataDirectory, self.experiment) + files = glob.glob(event.src_path+'/*.*') + self.logger.debug('File system directory modified event: %s , src path: %s , latest files: %s' % (event.__dict__, event.src_path, files)) + if len(files) > 0: + filePath = max(files, key=os.path.getctime) + self.logger.debug('File system directory modified event: %s , latest file: %s' % (event.__dict__, filePath)) + self.fileSystemObserver.fileUpdated(filePath, self.dataDirectory, self.experiment) except: - self.logger.debug('Exception occured when searching for file in directory: %s' % (event.__dict__)) + self.logger.error('Exception occured when searching for file in directory: %s' % (event.__dict__)) else: filePath = event.src_path self.logger.debug('File system modified event: %s' % (event.__dict__))