diff --git a/conf/dataManager.conf b/conf/dataManager.conf
index 6ff991bea40052a69d39bed68b2a9c041516a55f..9064a30aeb5ab7c36147be044d42aded5700ac11 100644
--- a/conf/dataManager.conf
+++ b/conf/dataManager.conf
@@ -63,3 +63,6 @@ logfilePath         = /space/projects/zeromq-data-transfer/logs
 # Filename used for logging
 logfileName         = dataManager.log
 
+# File size before rollover in B (linux only)
+logfileSize         = 10485760 ; #100 MB
+
diff --git a/conf/dataReceiver.conf b/conf/dataReceiver.conf
index fba543c47cc2eab05382b168bb0f16116e4686fa..966b91005af6df3a568dc7219a638f8e1b3e521e 100644
--- a/conf/dataReceiver.conf
+++ b/conf/dataReceiver.conf
@@ -10,3 +10,6 @@ dataStreamPort    = 50100
 logfilePath       = /space/projects/zeromq-data-transfer/logs
 # Filename used for logging
 logfileName       = dataReceiver.log
+# File size before rollover in B (linux only)
+logfileSize         = 104857600 ; #100 MB
+
diff --git a/src/receiver/DataReceiver.py b/src/receiver/DataReceiver.py
index 63bd9d19d59366f2ee8763da09e5310801e4602e..9a13084d86e96514bd63c253e4b737b6897195ef 100644
--- a/src/receiver/DataReceiver.py
+++ b/src/receiver/DataReceiver.py
@@ -35,6 +35,8 @@ def argumentParsing():
 
     logfilePath    = config.get('asection', 'logfilePath')
     logfileName    = config.get('asection', 'logfileName')
+    logfileSize    = config.get('asection', 'logfileSize')
+
 
     targetDir      = config.get('asection', 'targetDir')
 
@@ -49,6 +51,9 @@ def argumentParsing():
     parser.add_argument("--logfileName"          , type    = str,
                                                    help    = "Filename used for logging (default=" + str(logfileName) + ")",
                                                    default = logfileName )
+    parser.add_argument("--logfileSize"          , type    = int,
+                                                   help    = "File size in B before rollover (linux only; (default=" + str(logfileSize) + ")",
+                                                   default = logfileSize )
     parser.add_argument("--verbose"              , help    = "More verbose output",
                                                    action  = "store_true" )
     parser.add_argument("--onScreen"             , type    = str,
@@ -71,6 +76,7 @@ def argumentParsing():
     logfilePath = arguments.logfilePath
     logfileName = arguments.logfileName
     logfile     = os.path.join(logfilePath, logfileName)
+    logsize     = arguments.logfileSize
     verbose     = arguments.verbose
     onScreen    = arguments.onScreen
 
@@ -80,7 +86,7 @@ def argumentParsing():
     root = logging.getLogger()
     root.setLevel(logging.DEBUG)
 
-    handlers = helpers.getLogHandlers(logfile, verbose, onScreen)
+    handlers = helpers.getLogHandlers(logfile, logsize, verbose, onScreen)
 
     if type(handlers) == tuple:
         for h in handlers:
diff --git a/src/sender/DataDispatcher.py b/src/sender/DataDispatcher.py
index 11a353a9eea28fda1a1e000972fa2db8b4544106..4fc49bc3cd571a33a9fcd920ceb5fcca7c6e840d 100644
--- a/src/sender/DataDispatcher.py
+++ b/src/sender/DataDispatcher.py
@@ -204,12 +204,13 @@ if __name__ == '__main__':
 
     freeze_support()    #see https://docs.python.org/2/library/multiprocessing.html#windows
 
-    logfile = BASE_PATH + os.sep + "logs" + os.sep + "dataDispatcher.log"
+    logfile  = BASE_PATH + os.sep + "logs" + os.sep + "dataDispatcher.log"
+    logsize  = 10485760
 
     logQueue = Queue(-1)
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Start queue listener using the stream handler above
     logQueueListener    = helpers.CustomQueueListener(logQueue, h1, h2)
diff --git a/src/sender/DataManager.py b/src/sender/DataManager.py
index 31c4080837bc437242d1c61080fa8684adc3c776..11310c222bd4185f3df0cd623f7e924153d631bd 100644
--- a/src/sender/DataManager.py
+++ b/src/sender/DataManager.py
@@ -40,6 +40,7 @@ def argumentParsing():
 
     logfilePath         = config.get('asection', 'logfilePath')
     logfileName         = config.get('asection', 'logfileName')
+    logfileSize         = config.get('asection', 'logfileSize') #100*1048576
 
     comPort             = config.get('asection', 'comPort')
     whitelist           = json.loads(config.get('asection', 'whitelist'))
@@ -74,6 +75,9 @@ def argumentParsing():
     parser.add_argument("--logfileName"        , type    = str,
                                                  help    = "Filename used for logging (default=" + str(logfileName) + ")",
                                                  default = logfileName )
+    parser.add_argument("--logfileSize"        , type    = int,
+                                                 help    = "File size before rollover in B (linux only; (default=" + str(logfileSize) + ")",
+                                                 default = logfileSize )
     parser.add_argument("--verbose"            , help    = "More verbose output",
                                                  action  = "store_true")
     parser.add_argument("--onScreen"           , type    = str,
@@ -188,6 +192,7 @@ class DataManager():
         logfilePath         = arguments.logfilePath
         logfileName         = arguments.logfileName
         logfile             = os.path.join(logfilePath, logfileName)
+        logsize             = arguments.logfileSize
         verbose             = arguments.verbose
         onScreen            = arguments.onScreen
 
@@ -202,12 +207,12 @@ class DataManager():
 
             # Get the log Configuration for the lisener
             if onScreen:
-                h1, h2 = helpers.getLogHandlers(logfile, verbose, onScreen)
+                h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose, onScreen)
 
                 # Start queue listener using the stream handler above
                 self.logQueueListener = helpers.CustomQueueListener(self.logQueue, h1, h2)
             else:
-                h1 = helpers.getLogHandlers(logfile, verbose, onScreen)
+                h1 = helpers.getLogHandlers(logfile, logsize, verbose, onScreen)
 
                 # Start queue listener using the stream handler above
                 self.logQueueListener = helpers.CustomQueueListener(self.logQueue, h1)
@@ -427,11 +432,12 @@ if __name__ == '__main__':
 
 
         logfile = BASE_PATH + os.sep + "logs" + os.sep + "dataManager_test.log"
+        logsize = 10485760
 
         logQueue = Queue(-1)
 
         # Get the log Configuration for the lisener
-        h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+        h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
         # Start queue listener using the stream handler above
         logQueueListener = helpers.CustomQueueListener(logQueue, h1, h2)
diff --git a/src/sender/SignalHandler.py b/src/sender/SignalHandler.py
index a19e0555f6aeb4e39a4770c061d294cebea27283..b2424a2c6c49dd76cc4664a9f2940dd7ea65c5d7 100644
--- a/src/sender/SignalHandler.py
+++ b/src/sender/SignalHandler.py
@@ -35,7 +35,7 @@ class SignalHandler():
                   logQueue, context = None):
 
         # to get the logging only handling this class
-        log                 = None
+        log                  = None
 
         self.context         = context or zmq.Context()
         self.localhost       = "127.0.0.1"
@@ -421,12 +421,13 @@ if __name__ == '__main__':
     requestFwPort = "6001"
     requestPort   = "6002"
 
-    logfile       = BASE_PATH + os.sep + "logs" + os.sep + "signalHandler.log"
+    logfile  = BASE_PATH + os.sep + "logs" + os.sep + "signalHandler.log"
+    logsize  = 10485760
 
     logQueue = Queue(-1)
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Start queue listener using the stream handler above
     logQueueListener    = helpers.CustomQueueListener(logQueue, h1, h2)
diff --git a/src/sender/TaskProvider.py b/src/sender/TaskProvider.py
index 2120bc253081629afa213c21acce2091035917c9..f4688a04f6960de0f916fabcba93ac0efbb06ebf 100644
--- a/src/sender/TaskProvider.py
+++ b/src/sender/TaskProvider.py
@@ -273,6 +273,7 @@ if __name__ == '__main__':
     freeze_support()    #see https://docs.python.org/2/library/multiprocessing.html#windows
 
     logfile = BASE_PATH + os.sep + "logs" + os.sep + "taskProvider.log"
+    logsize = 10485760
 
 #    eventDetectorConfig = {
 #            "eventDetectorType"   : "inotifyx",
@@ -297,7 +298,7 @@ if __name__ == '__main__':
     logQueue = Queue(-1)
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Start queue listener using the stream handler above
     logQueueListener    = helpers.CustomQueueListener(logQueue, h1, h2)
diff --git a/src/sender/dataFetchers/getFromFile.py b/src/sender/dataFetchers/getFromFile.py
index 2a5ad34587a74cdc648c211b841f22927d947f6c..a1aeecc88a7197505710cd7f1a6176d169968f58 100644
--- a/src/sender/dataFetchers/getFromFile.py
+++ b/src/sender/dataFetchers/getFromFile.py
@@ -237,9 +237,10 @@ if __name__ == '__main__':
     import helpers
 
     logfile = BASE_PATH + os.sep + "logs" + os.sep + "getFromFile.log"
+    logsize = 10485760
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Create log and set handler to queue handle
     root = logging.getLogger()
diff --git a/src/sender/dataFetchers/getFromQueue.py b/src/sender/dataFetchers/getFromQueue.py
index 78afea98e75f2ac6384d6d0b0df29d0b671c15f2..7b7722af0a832fc911338094fe923caaf41aba46 100644
--- a/src/sender/dataFetchers/getFromQueue.py
+++ b/src/sender/dataFetchers/getFromQueue.py
@@ -184,9 +184,10 @@ if __name__ == '__main__':
     import helpers
 
     logfile = BASE_PATH + os.sep + "logs" + os.sep + "getFromFile.log"
+    logsize = 10485760
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Create log and set handler to queue handle
     root = logging.getLogger()
diff --git a/src/sender/eventDetectors/InotifyxDetector.py b/src/sender/eventDetectors/InotifyxDetector.py
index f4b0c7002e26e7db97be1f2d33867d8f18fb8aab..de19b9961feded591a649b8805bc0b3e11cda8af 100644
--- a/src/sender/eventDetectors/InotifyxDetector.py
+++ b/src/sender/eventDetectors/InotifyxDetector.py
@@ -331,11 +331,12 @@ if __name__ == '__main__':
     import helpers
 
     logfile  = BASE_PATH + os.sep + "logs" + os.sep + "inotifyDetector.log"
+    logsize  = 10485760
 
     logQueue = Queue(-1)
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Start queue listener using the stream handler above
     logQueueListener = helpers.CustomQueueListener(logQueue, h1, h2)
diff --git a/src/sender/eventDetectors/LambdaDetector.py b/src/sender/eventDetectors/LambdaDetector.py
index 0bc70e97fa0bf22ca8409ef06dfbfd70ed1b9c18..d78c9795f89852e4d706ae5ef79492b72861197a 100644
--- a/src/sender/eventDetectors/LambdaDetector.py
+++ b/src/sender/eventDetectors/LambdaDetector.py
@@ -123,11 +123,12 @@ if __name__ == '__main__':
     import helpers
 
     logfile  = BASE_PATH + os.sep + "logs" + os.sep + "lambdaDetector.log"
+    logsize  = 10485760
 
     logQueue = Queue(-1)
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Start queue listener using the stream handler above
     logQueueListener = helpers.CustomQueueListener(logQueue, h1, h2)
diff --git a/src/sender/eventDetectors/WatchdogDetector.py b/src/sender/eventDetectors/WatchdogDetector.py
index 8f967d5ef838f568298b28e440c38b1ac907fd17..215fe0c0fb091ef1215e39400de75b12f3b82461 100644
--- a/src/sender/eventDetectors/WatchdogDetector.py
+++ b/src/sender/eventDetectors/WatchdogDetector.py
@@ -374,11 +374,12 @@ if __name__ == '__main__':
     import helpers
 
     logfile  = BASE_PATH + os.sep + "logs" + os.sep + "watchdogDetector.log"
+    logsize  = 10485760
 
     logQueue = Queue(-1)
 
     # Get the log Configuration for the lisener
-    h1, h2 = helpers.getLogHandlers(logfile, verbose=True, onScreenLogLevel="debug")
+    h1, h2 = helpers.getLogHandlers(logfile, logsize, verbose=True, onScreenLogLevel="debug")
 
     # Start queue listener using the stream handler above
     logQueueListener = helpers.CustomQueueListener(logQueue, h1, h2)
diff --git a/src/shared/helpers.py b/src/shared/helpers.py
index 33a54788ebe23fdc49484a7ef715f399a784a63b..6d3b868778053f21cf7d86426deae2580c93af43 100644
--- a/src/shared/helpers.py
+++ b/src/shared/helpers.py
@@ -201,6 +201,7 @@ def checkLogFileWritable(filepath, filename):
     try:
         logfullPath = os.path.join(filepath, filename)
         logFile = open(logfullPath, "a")
+        logFile.close()
     except:
         print "Unable to create the logfile " + str(logfullPath)
         print "Please specify a new target by setting the following arguments:\n--logfileName\n--logfilePath"
@@ -291,7 +292,7 @@ class CustomQueueListener(QueueListener):
 
 
 # Get the log Configuration for the lisener
-def getLogHandlers(logfile, verbose, onScreenLogLevel = False):
+def getLogHandlers(logfile, logsize, verbose, onScreenLogLevel = False):
     # Enable more detailed logging if verbose-option has been set
     logLevel = logging.INFO
     if verbose:
@@ -304,7 +305,7 @@ def getLogHandlers(logfile, verbose, onScreenLogLevel = False):
     # Setup file handler to output to file
     # argument for RotatingFileHandler: filename, mode, maxBytes, backupCount)
     # 1048576 = 1MB
-    h1 = logging.handlers.RotatingFileHandler(logfile, 'a', 3*1048576, 5)
+    h1 = logging.handlers.RotatingFileHandler(logfile, 'a', logsize, 5)
     f1 = logging.Formatter(datefmt=datef,fmt=f)
     h1.setFormatter(f1)
     h1.setLevel(logLevel)