MCPcopy
hub / github.com/celery/celery / setup_logging_subsystem

Method setup_logging_subsystem

celery/app/log.py:87–146  ·  view source on GitHub ↗
(self, loglevel=None, logfile=None, format=None,
                                colorize=None, hostname=None, **kwargs)

Source from the content-addressed store, hash-verified

85 )
86
87 def setup_logging_subsystem(self, loglevel=None, logfile=None, format=None,
88 colorize=None, hostname=None, **kwargs):
89 if self.already_setup:
90 return
91 if logfile and hostname:
92 logfile = node_format(logfile, hostname)
93 Logging._setup = True
94 loglevel = mlevel(loglevel or self.loglevel)
95 format = format or self.format
96 colorize = self.supports_color(colorize, logfile)
97 reset_multiprocessing_logger()
98 receivers = signals.setup_logging.send(
99 sender=None, loglevel=loglevel, logfile=logfile,
100 format=format, colorize=colorize,
101 )
102
103 if not receivers:
104 root = logging.getLogger()
105
106 if self.app.conf.worker_hijack_root_logger:
107 root.handlers = []
108 get_logger('celery').handlers = []
109 get_logger('celery.task').handlers = []
110 get_logger('celery.redirected').handlers = []
111
112 # Configure root logger
113 self._configure_logger(
114 root, logfile, loglevel, format, colorize, **kwargs
115 )
116
117 # Configure the multiprocessing logger
118 self._configure_logger(
119 get_multiprocessing_logger(),
120 logfile, loglevel if MP_LOG else logging.ERROR,
121 format, colorize, **kwargs
122 )
123
124 signals.after_setup_logger.send(
125 sender=None, logger=root,
126 loglevel=loglevel, logfile=logfile,
127 format=format, colorize=colorize,
128 )
129
130 # then setup the root task logger.
131 self.setup_task_loggers(loglevel, logfile, colorize=colorize)
132
133 try:
134 stream = logging.getLogger().handlers[0].stream
135 except (AttributeError, IndexError):
136 pass
137 else:
138 set_default_encoding_file(stream)
139
140 # This is a hack for multiprocessing's fork+exec, so that
141 # logging before Process.run works.
142 logfile_name = logfile if isinstance(logfile, str) else ''
143 os.environ.update(_MP_FORK_LOGLEVEL_=str(loglevel),
144 _MP_FORK_LOGFILE_=logfile_name,

Callers 9

setupMethod · 0.95
setup_loggerMethod · 0.80
bench_workFunction · 0.80
evcamFunction · 0.80
detachFunction · 0.80

Calls 10

supports_colorMethod · 0.95
_configure_loggerMethod · 0.95
setup_task_loggersMethod · 0.95
node_formatFunction · 0.90
mlevelFunction · 0.90
get_loggerFunction · 0.90
sendMethod · 0.45
updateMethod · 0.45