|  | @@ -1,7 +1,9 @@
 | 
											
												
													
														|  | -from celery.utils import timer2
 |  | 
 | 
											
												
													
														|  | 
 |  | +import atexit
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +from celery import platforms
 | 
											
												
													
														|  |  from celery.app import app_or_default
 |  |  from celery.app import app_or_default
 | 
											
												
													
														|  |  from celery.datastructures import TokenBucket
 |  |  from celery.datastructures import TokenBucket
 | 
											
												
													
														|  | 
 |  | +from celery.utils import timer2
 | 
											
												
													
														|  |  from celery.utils import instantiate, LOG_LEVELS
 |  |  from celery.utils import instantiate, LOG_LEVELS
 | 
											
												
													
														|  |  from celery.utils.dispatch import Signal
 |  |  from celery.utils.dispatch import Signal
 | 
											
												
													
														|  |  from celery.utils.timeutils import rate
 |  |  from celery.utils.timeutils import rate
 | 
											
										
											
												
													
														|  | @@ -69,8 +71,13 @@ class Polaroid(object):
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  def evcam(camera, freq=1.0, maxrate=None, loglevel=0,
 |  |  def evcam(camera, freq=1.0, maxrate=None, loglevel=0,
 | 
											
												
													
														|  | -        logfile=None, timer=None, app=None):
 |  | 
 | 
											
												
													
														|  | 
 |  | +        logfile=None, pidfile=None, timer=None, app=None):
 | 
											
												
													
														|  |      app = app_or_default(app)
 |  |      app = app_or_default(app)
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +    if pidfile:
 | 
											
												
													
														|  | 
 |  | +        pidlock = platforms.create_pidlock(pidfile).acquire()
 | 
											
												
													
														|  | 
 |  | +        atexit.register(pidlock.release)
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  |      if not isinstance(loglevel, int):
 |  |      if not isinstance(loglevel, int):
 | 
											
												
													
														|  |          loglevel = LOG_LEVELS[loglevel.upper()]
 |  |          loglevel = LOG_LEVELS[loglevel.upper()]
 | 
											
												
													
														|  |      logger = app.log.setup_logger(loglevel=loglevel,
 |  |      logger = app.log.setup_logger(loglevel=loglevel,
 |