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 f0dfa13b1cc39c1616c85c3e9bd13ab5d838de85..973efd4f34978d1653a993586856c6de7998cdd8 100755
--- a/src/python/dm/daq_web_service/service/impl/dmFileSystemEventHandler.py
+++ b/src/python/dm/daq_web_service/service/impl/dmFileSystemEventHandler.py
@@ -46,9 +46,13 @@ class DmFileSystemEventHandler(FileSystemEventHandler):
                 files = glob.glob(os.path.join(event.src_path,'*'))
                 self.logger.debug('Processing directory event: %s , src path: %s' % (event.__dict__, event.src_path))
                 if len(files) > 0:
-                    filePath = max(files, key=os.path.getctime)
-                    self.logger.debug('Latest file: %s' % (filePath))
-                    self.fileSystemObserver.fileUpdated(filePath, self.dataDirectory, self.experiment)
+                    sortedFiles = sorted(files, key=os.path.getctime, reverse=True)
+                    for filePath in sortedFiles:
+                        if os.path.isfile(filePath):
+                            self.logger.debug('Latest file: %s' % (filePath))
+                            self.fileSystemObserver.fileUpdated(filePath, self.dataDirectory, self.experiment)
+                            return
+                    self.logger.debug('No new files found in %s' % (event.src_path))
             except Exception, ex:
                 self.logger.error('Exception occured when searching for file in directory %s: %s' % (event.__dict__, ex))
         else:
diff --git a/src/python/dm/daq_web_service/service/impl/fileSystemObserver.py b/src/python/dm/daq_web_service/service/impl/fileSystemObserver.py
index 1d907ce9a67992e6d2e3c0f2e5cfa8e4cbbe59cf..b3900e5a86bffc8283fdde17b61a1b5befe4394b 100755
--- a/src/python/dm/daq_web_service/service/impl/fileSystemObserver.py
+++ b/src/python/dm/daq_web_service/service/impl/fileSystemObserver.py
@@ -110,7 +110,7 @@ class FileSystemObserver(threading.Thread,Singleton):
             observedFile['statusMonitor'] = daqInfo
         observedFile.setLastUpdateTimeToNow()
         self.observedFileMap[filePath] = observedFile
-        self.logger.debug('Observed file updated: %s', observedFile)
+        self.logger.debug('Observed file updated: %s', filePath)
        
     @ThreadingUtility.synchronize
     def checkObservedFilesForProcessing(self):