title: Does python logging support multiprocessing?
body: <p>I have been told that logging can not be used in Multiprocessing. You have to do the concurrency control in case multiprocessing messes the log.</p>
  
  <p>But I did some test, it seems like there is no problem using logging in multiprocessing</p>
  
  <pre><code>import time
  import logging
  from multiprocessing import Process, current_process, pool
  
  
  # setup log
  logger = logging.getLogger(__name__)
  logging.basicConfig(level=logging.DEBUG,
                      format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
                      datefmt='%a, %d %b %Y %H:%M:%S',
                      filename='/tmp/test.log',
                      filemode='w')
  
  
  def func(the_time, logger):
      proc = current_process()
      while True:
          if time.time() &gt;= the_time:
              logger.info('proc name %s id %s' % (proc.name, proc.pid))
              return
  
  
  
  if __name__ == '__main__':
  
      the_time = time.time() + 5
  
      for x in xrange(1, 10):
          proc = Process(target=func, name=x, args=(the_time, logger))
          proc.start()
  </code></pre>
  
  <p>As you can see from the code.</p>
  
  <p>I deliberately let the subprocess write log at the same moment( 5s after start) to increase the chance of conflict. But there are no conflict at all.</p>
  
  <p>So my question is can we use logging in multiprocessing?
  Why so many posts say we can not ?</p>