Skip to content

Commit aaaf221

Browse files
committed
Merge branch 'master' of https://github.com/ImagingDataCommons/IDC-WebApp into idc-test
2 parents 0b6c7b9 + a325870 commit aaaf221

File tree

4 files changed

+108
-96
lines changed

4 files changed

+108
-96
lines changed

idc/settings.py

Lines changed: 53 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
import sys
2626
import dotenv
2727
from socket import gethostname, gethostbyname
28-
28+
import google.cloud.logging
2929

3030
SECURE_LOCAL_PATH = os.environ.get('SECURE_LOCAL_PATH', '')
3131

@@ -337,11 +337,40 @@
337337

338338
TEST_RUNNER = 'django.test.runner.DiscoverRunner'
339339

340-
# A sample logging configuration. The only tangible logging
341-
# performed by this configuration is to send an email to
342-
# the site admins on every HTTP 500 error when DEBUG=False.
343-
# See http://docs.djangoproject.com/en/dev/topics/logging for
344-
# more details on how to customize your logging configuration.
340+
handler_set = ['console_dev', 'console_prod']
341+
handlers = {
342+
'mail_admins': {
343+
'level': 'ERROR',
344+
'filters': ['require_debug_false'],
345+
'class': 'django.utils.log.AdminEmailHandler'
346+
},
347+
'console_dev': {
348+
'level': 'DEBUG',
349+
'filters': ['require_debug_true'],
350+
'class': 'logging.StreamHandler',
351+
'formatter': 'verbose',
352+
},
353+
'console_prod': {
354+
'level': 'DEBUG',
355+
'filters': ['require_debug_false'],
356+
'class': 'logging.StreamHandler',
357+
'formatter': 'simple',
358+
},
359+
}
360+
361+
if IS_APP_ENGINE:
362+
# We need to hook up Python logging to Google Cloud Logging for AppEngine (or nothing will be logged)
363+
client = google.cloud.logging_v2.Client()
364+
client.setup_logging()
365+
handler_set.append('stackdriver')
366+
handlers['stackdriver'] = {
367+
'level': 'DEBUG',
368+
'filters': ['require_debug_false'],
369+
'class': 'google.cloud.logging_v2.handlers.CloudLoggingHandler',
370+
'client': client,
371+
'formatter': 'verbose'
372+
}
373+
345374
LOGGING = {
346375
'version': 1,
347376
'disable_existing_loggers': False,
@@ -355,57 +384,33 @@
355384
},
356385
'formatters': {
357386
'verbose': {
358-
'format': '[%(levelname)s] @%(asctime)s in %(module)s/%(process)d/%(thread)d - %(message)s'
387+
'format': '[%(name)s] [%(levelname)s] @%(asctime)s in %(module)s/%(process)d/%(thread)d - %(message)s'
359388
},
360389
'simple': {
361-
'format': '[%(levelname)s] @%(asctime)s in %(module)s: %(message)s'
390+
'format': '[%(name)s] [%(levelname)s] @%(asctime)s in %(module)s: %(message)s'
362391
},
363392
},
364-
'handlers': {
365-
'mail_admins': {
366-
'level': 'ERROR',
367-
'filters': ['require_debug_false'],
368-
'class': 'django.utils.log.AdminEmailHandler'
369-
},
370-
'console_dev': {
371-
'level': 'DEBUG',
372-
'filters': ['require_debug_true'],
373-
'class': 'logging.StreamHandler',
374-
'formatter': 'verbose',
375-
},
376-
'console_prod': {
377-
'level': 'DEBUG',
378-
'filters': ['require_debug_false'],
379-
'class': 'logging.StreamHandler',
380-
'formatter': 'simple',
381-
},
393+
'handlers': handlers,
394+
'root': {
395+
'level': 'INFO',
396+
'handlers': handler_set
382397
},
383398
'loggers': {
384-
'django.request': {
385-
'handlers': ['console_dev', 'console_prod'],
386-
'level': 'DEBUG',
387-
'propagate': False,
388-
},
389-
'main_logger': {
390-
'handlers': ['console_dev', 'console_prod'],
391-
'level': 'DEBUG',
392-
'propagate': True,
399+
'': {
400+
'level': 'INFO',
401+
'handlers': handler_set,
402+
'propagate': True
393403
},
394-
'axes': {
395-
'handlers': ['console_dev', 'console_prod'],
396-
'level': 'DEBUG',
397-
'propagate': True,
404+
'django': {
405+
'level': 'INFO',
406+
'handlers': handler_set,
407+
'propagate': False
398408
},
399-
'allauth': {
400-
'handlers': ['console_dev', 'console_prod'],
401-
'level': 'DEBUG',
402-
'propagate': True,
403-
},
404-
'google_helpers': {
405-
'handlers': ['console_dev', 'console_prod'],
406-
'level': 'DEBUG',
409+
'django.request': {
410+
'handlers': ['mail_admins'],
411+
'level': 'ERROR',
407412
'propagate': True,
408-
},
413+
}
409414
},
410415
}
411416

idc/settings_unit_test.py

Lines changed: 52 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import sys
2323
import dotenv
2424
from socket import gethostname, gethostbyname
25+
import google.cloud.logging
2526

2627
SECURE_LOCAL_PATH = os.environ.get('SECURE_LOCAL_PATH', '')
2728

@@ -263,11 +264,40 @@
263264

264265
TEST_RUNNER = 'django.test.runner.DiscoverRunner'
265266

266-
# A sample logging configuration. The only tangible logging
267-
# performed by this configuration is to send an email to
268-
# the site admins on every HTTP 500 error when DEBUG=False.
269-
# See http://docs.djangoproject.com/en/dev/topics/logging for
270-
# more details on how to customize your logging configuration.
267+
handler_set = ['console_dev', 'console_prod']
268+
handlers = {
269+
'mail_admins': {
270+
'level': 'ERROR',
271+
'filters': ['require_debug_false'],
272+
'class': 'django.utils.log.AdminEmailHandler'
273+
},
274+
'console_dev': {
275+
'level': 'DEBUG',
276+
'filters': ['require_debug_true'],
277+
'class': 'logging.StreamHandler',
278+
'formatter': 'verbose',
279+
},
280+
'console_prod': {
281+
'level': 'DEBUG',
282+
'filters': ['require_debug_false'],
283+
'class': 'logging.StreamHandler',
284+
'formatter': 'simple',
285+
},
286+
}
287+
288+
if IS_APP_ENGINE:
289+
# We need to hook up Python logging to Google Cloud Logging for AppEngine (or nothing will be logged)
290+
client = google.cloud.logging_v2.Client()
291+
client.setup_logging()
292+
handler_set.append('stackdriver')
293+
handlers['stackdriver'] = {
294+
'level': 'DEBUG',
295+
'filters': ['require_debug_false'],
296+
'class': 'google.cloud.logging_v2.handlers.CloudLoggingHandler',
297+
'client': client,
298+
'formatter': 'verbose'
299+
}
300+
271301
LOGGING = {
272302
'version': 1,
273303
'disable_existing_loggers': False,
@@ -281,57 +311,33 @@
281311
},
282312
'formatters': {
283313
'verbose': {
284-
'format': '[%(levelname)s] @%(asctime)s in %(module)s/%(process)d/%(thread)d - %(message)s'
314+
'format': '[%(name)s] [%(levelname)s] @%(asctime)s in %(module)s/%(process)d/%(thread)d - %(message)s'
285315
},
286316
'simple': {
287-
'format': '[%(levelname)s] @%(asctime)s in %(module)s: %(message)s'
317+
'format': '[%(name)s] [%(levelname)s] @%(asctime)s in %(module)s: %(message)s'
288318
},
289319
},
290-
'handlers': {
291-
'mail_admins': {
292-
'level': 'ERROR',
293-
'filters': ['require_debug_false'],
294-
'class': 'django.utils.log.AdminEmailHandler'
295-
},
296-
'console_dev': {
297-
'level': 'DEBUG',
298-
'filters': ['require_debug_true'],
299-
'class': 'logging.StreamHandler',
300-
'formatter': 'verbose',
301-
},
302-
'console_prod': {
303-
'level': 'DEBUG',
304-
'filters': ['require_debug_false'],
305-
'class': 'logging.StreamHandler',
306-
'formatter': 'simple',
307-
},
320+
'handlers': handlers,
321+
'root': {
322+
'level': 'INFO',
323+
'handlers': handler_set
308324
},
309325
'loggers': {
326+
'': {
327+
'level': 'INFO',
328+
'handlers': handler_set,
329+
'propagate': True
330+
},
331+
'django': {
332+
'level': 'INFO',
333+
'handlers': handler_set,
334+
'propagate': False
335+
},
310336
'django.request': {
311337
'handlers': ['mail_admins'],
312338
'level': 'ERROR',
313339
'propagate': True,
314-
},
315-
'main_logger': {
316-
'handlers': ['console_dev', 'console_prod'],
317-
'level': 'DEBUG',
318-
'propagate': True,
319-
},
320-
'allauth': {
321-
'handlers': ['console_dev', 'console_prod'],
322-
'level': 'DEBUG',
323-
'propagate': True,
324-
},
325-
'google_helpers': {
326-
'handlers': ['console_dev', 'console_prod'],
327-
'level': 'DEBUG',
328-
'propagate': True,
329-
},
330-
'data_upload': {
331-
'handlers': ['console_dev', 'console_prod'],
332-
'level': 'DEBUG',
333-
'propagate': True,
334-
},
340+
}
335341
},
336342
}
337343

requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ django-session-security==2.6.5
1111
future==0.18.3
1212
google-api-python-client==2.133.0
1313
google-cloud-bigquery
14+
google-cloud-logging
1415
google-cloud-pubsub
1516
google-cloud-storage==2.17.0
1617
httplib2==0.19.0

static/js/tables.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -763,7 +763,7 @@ define(['cartutils','filterutils','tippy','jquery', 'base'], function(cartutils,
763763

764764
window.updateStudyTable = function(rowsAdded, studyID, table_search) {
765765
let updatePromise = $.Deferred();
766-
let nonViewAbleModality= new Set([""]);
766+
let nonViewAbleModality= new Set(["REG"]);
767767
var viewCases = [];
768768
for (projid in window.openCases) {
769769
viewCases = viewCases.concat(Object.keys(window.openCases[projid]));
@@ -1127,7 +1127,7 @@ define(['cartutils','filterutils','tippy','jquery', 'base'], function(cartutils,
11271127

11281128
window.updateSeriesTable = function(rowsAdded, seriesID, table_search) {
11291129
let updatePromise = $.Deferred();
1130-
var nonViewAbleModality= new Set(["PR","SEG","RTSTRUCT","RTPLAN","RWV", "SR", "ANN"])
1130+
var nonViewAbleModality= new Set(["PR","SEG","REG", "RTSTRUCT","RTPLAN","RWV", "SR", "ANN"])
11311131
var slimViewAbleModality=new Set(["SM"])
11321132
viewStudies = []
11331133
for (caseid in window.openStudies){

0 commit comments

Comments
 (0)