def _init_worker()

in granule_ingester/granule_ingester/pipeline/Pipeline.py [0:0]


def _init_worker(processor_list, dataset, data_store_factory, metadata_store_factory, shared_memory, log_level):
    global _worker_processor_list
    global _worker_dataset
    global _shared_memory

    # _worker_data_store and _worker_metadata_store open multiple TCP sockets from each worker process;
    # however, these sockets will be automatically closed by the OS once the worker processes die so no need to worry.
    _worker_processor_list = processor_list
    _worker_dataset = dataset
    _shared_memory = shared_memory

    logging.basicConfig(level=log_level)

    logging.getLogger("").setLevel(log_level)
    loggers = [logging.getLogger(name) for name in logging.root.manager.loggerDict]
    for logger in loggers:
        logger.setLevel(log_level)

    logger.debug("worker init")