Revision d01cd522
b/snf-common/synnefo/lib/amqp_puka.py | ||
---|---|---|
51 | 51 |
from ordereddict import OrderedDict |
52 | 52 |
from synnefo import settings |
53 | 53 |
|
54 |
logging.basicConfig(level=logging.DEBUG, |
|
55 |
format="[%(levelname)s %(asctime)s] %(message)s") |
|
56 | 54 |
logger = logging.getLogger() |
57 | 55 |
|
58 | 56 |
|
b/snf-common/synnefo/settings/default/logging.py | ||
---|---|---|
3 | 3 |
# Logging configuration |
4 | 4 |
################################## |
5 | 5 |
|
6 |
LOGGING_SETUP = { |
|
7 |
'version': 1, |
|
8 |
'disable_existing_loggers': True, |
|
9 | 6 |
|
10 |
'formatters': {
|
|
7 |
FORMATTERS = {
|
|
11 | 8 |
'simple': { |
12 | 9 |
'format': '%(asctime)s [%(levelname)s] %(message)s' |
13 | 10 |
}, |
14 | 11 |
'verbose': { |
15 |
'format': '%(asctime)s %(name)s %(module)s [%(levelname)s] %(message)s' |
|
12 |
'format': '%(asctime)s [%(process)d] %(name)s %(module)s [%(levelname)s] %(message)s'
|
|
16 | 13 |
}, |
17 | 14 |
'django': { |
18 | 15 |
'format': '[%(asctime)s] %(levelname)s %(message)s', |
19 | 16 |
'datefmt': '%d/%b/%Y %H:%M:%S' |
20 | 17 |
}, |
21 |
}, |
|
18 |
} |
|
19 |
|
|
20 |
LOGGING_SETUP = { |
|
21 |
'version': 1, |
|
22 |
'disable_existing_loggers': True, |
|
22 | 23 |
|
24 |
'formatters': FORMATTERS, |
|
23 | 25 |
'handlers': { |
24 | 26 |
'null': { |
25 | 27 |
'class': 'logging.NullHandler', |
26 | 28 |
}, |
27 | 29 |
'console': { |
28 | 30 |
'class': 'logging.StreamHandler', |
29 |
'formatter': 'simple'
|
|
31 |
'formatter': 'verbose'
|
|
30 | 32 |
}, |
31 | 33 |
'syslog': { |
32 | 34 |
'class': 'logging.handlers.SysLogHandler', |
... | ... | |
66 | 68 |
}, |
67 | 69 |
} |
68 | 70 |
} |
71 |
|
|
72 |
SNF_MANAGE_LOGGING_SETUP = { |
|
73 |
'version': 1, |
|
74 |
'disable_existing_loggers': True, |
|
75 |
|
|
76 |
'formatters': FORMATTERS, |
|
77 |
|
|
78 |
'handlers': { |
|
79 |
'console': { |
|
80 |
'class': 'logging.StreamHandler', |
|
81 |
'formatter': 'verbose' |
|
82 |
}, |
|
83 |
}, |
|
84 |
|
|
85 |
'loggers': { |
|
86 |
'': { |
|
87 |
'handlers': ['console'], |
|
88 |
'level': 'INFO' |
|
89 |
}, |
|
90 |
'synnefo': { |
|
91 |
'handlers': ['console'], |
|
92 |
'level': 'INFO', |
|
93 |
'propagate': 0 |
|
94 |
} |
|
95 |
} |
|
96 |
} |
b/snf-cyclades-app/synnefo/app_settings/default/logging.py | ||
---|---|---|
2 | 2 |
# snf-cyclades-app logging configuration |
3 | 3 |
##################### |
4 | 4 |
|
5 |
DISPATCHER_LOGGING = { |
|
6 |
'version': 1, |
|
7 |
'disable_existing_loggers': True, |
|
8 |
|
|
9 |
'formatters': { |
|
10 |
'simple': { |
|
11 |
'format': '%(asctime)s [%(levelname)s] %(message)s' |
|
12 |
}, |
|
13 |
'verbose': { |
|
14 |
'format': '%(asctime)s [%(process)d] %(name)s %(module)s [%(levelname)s] %(message)s' |
|
15 |
}, |
|
16 |
'django': { |
|
17 |
'format': '[%(asctime)s] %(levelname)s %(message)s', |
|
18 |
'datefmt': '%d/%b/%Y %H:%M:%S' |
|
19 |
}, |
|
20 |
}, |
|
21 |
|
|
22 |
'handlers': { |
|
23 |
'console': { |
|
24 |
'class': 'logging.StreamHandler', |
|
25 |
'formatter': 'verbose' |
|
26 |
}, |
|
27 |
'file': { |
|
28 |
'class': 'logging.handlers.WatchedFileHandler', |
|
29 |
'filename': '/var/log/synnefo/dispatcher.log', |
|
30 |
'formatter': 'verbose', |
|
31 |
'level': 'DEBUG' |
|
32 |
}, |
|
33 |
}, |
|
34 |
|
|
35 |
'loggers': { |
|
36 |
'synnefo': {'propagate': 0, |
|
37 |
'handlers': ['file'], |
|
38 |
'level': 'INFO' |
|
39 |
} |
|
40 |
}, |
|
41 |
|
|
42 |
'root': { |
|
43 |
'handlers': ['file'], |
|
44 |
'level': 'DEBUG', |
|
45 |
} |
|
46 |
} |
|
47 |
|
|
48 |
|
|
49 | 5 |
SNFADMIN_LOGGING = { |
50 | 6 |
'version': 1, |
51 | 7 |
'disable_existing_loggers': True, |
b/snf-cyclades-app/synnefo/logic/dispatcher.py | ||
---|---|---|
48 | 48 |
|
49 | 49 |
from django.db import close_connection |
50 | 50 |
|
51 |
import logging |
|
52 | 51 |
import time |
53 | 52 |
|
54 | 53 |
import daemon |
... | ... | |
64 | 63 |
from synnefo.lib.amqp import AMQPClient |
65 | 64 |
from synnefo.logic import callbacks |
66 | 65 |
|
67 |
from synnefo.util.dictconfig import dictConfig |
|
68 |
dictConfig(settings.DISPATCHER_LOGGING) |
|
66 |
import logging |
|
69 | 67 |
log = logging.getLogger() |
70 | 68 |
|
71 | 69 |
# Queue names |
... | ... | |
304 | 302 |
disp.wait() |
305 | 303 |
|
306 | 304 |
|
305 |
def setup_logging(opts): |
|
306 |
import logging |
|
307 |
formatter = logging.Formatter("%(asctime)s %(name)s %(module)s [%(levelname)s] %(message)s") |
|
308 |
if opts.debug: |
|
309 |
stream_handler = logging.StreamHandler() |
|
310 |
stream_handler.setFormatter(formatter) |
|
311 |
log.addHandler(stream_handler) |
|
312 |
else: |
|
313 |
import logging.handlers |
|
314 |
log_file = "/var/log/synnefo/dispatcher.log" |
|
315 |
file_handler = logging.handlers.WatchedFileHandler(log_file) |
|
316 |
file_handler.setFormatter(formatter) |
|
317 |
log.addHandler(file_handler) |
|
318 |
|
|
319 |
log.setLevel(logging.DEBUG) |
|
320 |
|
|
321 |
|
|
307 | 322 |
def main(): |
308 | 323 |
(opts, args) = parse_arguments(sys.argv[1:]) |
309 | 324 |
|
... | ... | |
312 | 327 |
# the executable by NUL bytes, so only show the name of the executable |
313 | 328 |
# instead. setproctitle.setproctitle("\x00".join(sys.argv)) |
314 | 329 |
setproctitle.setproctitle(sys.argv[0]) |
315 |
|
|
316 |
if opts.debug: |
|
317 |
stream_handler = logging.StreamHandler() |
|
318 |
formatter = logging.Formatter("%(asctime)s %(module)s %(levelname)s: %(message)s", |
|
319 |
"%Y-%m-%d %H:%M:%S") |
|
320 |
stream_handler.setFormatter(formatter) |
|
321 |
log.addHandler(stream_handler) |
|
330 |
setup_logging(opts) |
|
322 | 331 |
|
323 | 332 |
# Init the global variables containing the queues |
324 | 333 |
_init_queues() |
b/snf-webproject/synnefo/webproject/manage.py | ||
---|---|---|
56 | 56 |
from django.utils.importlib import import_module |
57 | 57 |
from optparse import Option, make_option |
58 | 58 |
from synnefo.util.version import get_component_version |
59 |
from synnefo.lib.dictconfig import dictConfig |
|
59 | 60 |
|
60 | 61 |
import sys |
61 | 62 |
import os |
... | ... | |
63 | 64 |
|
64 | 65 |
_commands = None |
65 | 66 |
|
67 |
|
|
66 | 68 |
def find_modules(name, path=None): |
67 | 69 |
"""Find all modules with name 'name' |
68 | 70 |
|
... | ... | |
296 | 298 |
klass = load_command_class(app_name, subcommand) |
297 | 299 |
return klass |
298 | 300 |
|
301 |
|
|
302 |
def configure_logging(): |
|
303 |
try: |
|
304 |
from synnefo.settings import SNF_MANAGE_LOGGING_SETUP |
|
305 |
dictConfig(SNF_MANAGE_LOGGING_SETUP) |
|
306 |
except ImportError: |
|
307 |
import logging |
|
308 |
logging.basicConfig() |
|
309 |
log = logging.getLogger() |
|
310 |
log.warning("SNF_MANAGE_LOGGING_SETUP setting missing.") |
|
311 |
|
|
312 |
|
|
299 | 313 |
def main(): |
300 | 314 |
# no need to run setup_environ |
301 | 315 |
# we already know our project |
302 | 316 |
os.environ['DJANGO_SETTINGS_MODULE'] = os.environ.get('DJANGO_SETTINGS_MODULE', |
303 | 317 |
'synnefo.settings') |
318 |
configure_logging() |
|
304 | 319 |
mu = SynnefoManagementUtility(sys.argv) |
305 | 320 |
mu.execute() |
306 | 321 |
|
Also available in: Unified diff