(2006, "Access denied for user 'ecmwf'@'k8s-bol-webapps-test-worker-015.ecmwf.int' (using password: NO)")
Request Method: | GET |
---|---|
Request URL: | https://apps-dev.ecmwf.int/datasets/history/tigge-lam-prod/ |
Django Version: | 1.10.8 |
Exception Type: | OperationalError |
Exception Value: | (2006, "Access denied for user 'ecmwf'@'k8s-bol-webapps-test-worker-015.ecmwf.int' (using password: NO)") |
Exception Location: | /usr/local/lib/python2.7/site-packages/MySQLdb/connections.py in __init__, line 208 |
Python Executable: | /usr/local/bin/uwsgi |
Python Version: | 2.7.18 |
Python Path: | ['.', '', '/code/apps', '/code/lib', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages', '/code/apps'] |
Server time: | Fri, 29 Mar 2024 15:04:47 +0000 |
/usr/local/lib/python2.7/site-packages/django/core/handlers/exception.py
in inner
This decorator is automatically applied to all middleware to ensure that
no middleware leaks an exception and that the next middleware in the stack
can rely on getting a response instead of an exception.
"""
@wraps(get_response, assigned=available_attrs(get_response))
def inner(request):
try:
response = get_response(request)...
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | OperationalError(2006, "Access denied for user 'ecmwf'@'k8s-bol-webapps-test-worker-015.ecmwf.int' (using password: NO)") |
get_response | <bound method WSGIHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f2e710d5ed0>> |
request | <WSGIRequest: GET '/datasets/history/tigge-lam-prod/'> |
/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py
in _get_response
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)
except Exception as e:
response = self.process_exception_by_middleware(e, request)...
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
view_name = callback.__name__
else: # CBV
Variable | Value |
---|---|
callback | <function history at 0x7f2e6d339dd0> |
callback_args | () |
callback_kwargs | {'dataset_url': u'tigge-lam-prod'} |
e | OperationalError(2006, "Access denied for user 'ecmwf'@'k8s-bol-webapps-test-worker-015.ecmwf.int' (using password: NO)") |
middleware_method | <bound method TokenMiddleware.process_view of <common.auth.middleware.TokenMiddleware object at 0x7f2e6d5e8f10>> |
request | <WSGIRequest: GET '/datasets/history/tigge-lam-prod/'> |
resolver | <RegexURLResolver 'urls.webmars_api' (None:None) ^/> |
resolver_match | ResolverMatch(func=tigge.views.history, args=(), kwargs={'dataset_url': u'tigge-lam-prod'}, url_name=history, app_names=[], namespaces=['history']) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f2e710d5ed0> |
wrapped_callback | <function history at 0x7f2e6d339dd0> |
/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py
in _get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)...
except Exception as e:
response = self.process_exception_by_middleware(e, request)
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
Variable | Value |
---|---|
callback | <function history at 0x7f2e6d339dd0> |
callback_args | () |
callback_kwargs | {'dataset_url': u'tigge-lam-prod'} |
e | OperationalError(2006, "Access denied for user 'ecmwf'@'k8s-bol-webapps-test-worker-015.ecmwf.int' (using password: NO)") |
middleware_method | <bound method TokenMiddleware.process_view of <common.auth.middleware.TokenMiddleware object at 0x7f2e6d5e8f10>> |
request | <WSGIRequest: GET '/datasets/history/tigge-lam-prod/'> |
resolver | <RegexURLResolver 'urls.webmars_api' (None:None) ^/> |
resolver_match | ResolverMatch(func=tigge.views.history, args=(), kwargs={'dataset_url': u'tigge-lam-prod'}, url_name=history, app_names=[], namespaces=['history']) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f2e710d5ed0> |
wrapped_callback | <function history at 0x7f2e6d339dd0> |
./tigge/views.py
in history
compress = True
if request.method == 'POST':
if request.POST.get('sort'):
reverse_sort = True
if not(request.POST.get('compress')):
compress = False
origins, origin_period, events = get_events(dataset, fieldcounts)...
history_table, history_table_headers = prepare_events_for_display(
origins, origin_period, events, compress=compress, reverse_sort=reverse_sort)
# get all unique origins to show an origin legend to users
origin_list = sorted({header[0] for header in history_table_headers})
Variable | Value |
---|---|
compress | True |
dataset | <Dataset: tigge-lam-prod> |
dataset_url | u'tigge-lam-prod' |
fieldcount | <FieldCount: FieldCount object> |
fieldcounts | {u'aladinhuneps-omsz-eu:18': {datetime.date(2014, 2, 1): {'count': 2279, 'days': [], 'freq': u'd'}}, u'aladinlaef-zamg-eu:00': {datetime.date(2013, 6, 3): {'count': 3521, 'days': [], 'freq': u'd'}, datetime.date(2013, 7, 10): {'count': 4201, 'days': [], 'freq': u'd'}}, u'aladinlaef-zamg-eu:12': {datetime.date(2013, 6, 3): {'count': 3521, 'days': [], 'freq': u'd'}, datetime.date(2013, 7, 9): {'count': 4201, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:00': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:06': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:12': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:18': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmoleps-arpasimc-eu:00': {datetime.date(2013, 1, 1): {'count': 7184, 'days': [], 'freq': u'd'}, datetime.date(2018, 6, 1): {'count': 8980, 'days': [], 'freq': u'd'}}, u'cosmoleps-arpasimc-eu:12': {datetime.date(2013, 1, 1): {'count': 7184, 'days': [], 'freq': u'd'}, datetime.date(2018, 6, 1): {'count': 8980, 'days': [], 'freq': u'd'}}, u'glameps-hirlamcons-eu:00': {datetime.date(2014, 7, 2): {'count': 3696, 'days': [], 'freq': u'd'}, datetime.date(2014, 10, 2): {'count': 4228, 'days': [], 'freq': u'd'}}, u'glameps-hirlamcons-eu:06': {datetime.date(2013, 10, 15): {'count': 5361, 'days': [], 'freq': u'd'}, datetime.date(2014, 10, 2): {'count': 4228, 'days': [], 'freq': u'd'}}, u'glameps-hirlamcons-eu:12': {datetime.date(2014, 7, 1): {'count': 3696, 'days': [], 'freq': u'd'}, datetime.date(2014, 10, 2): {'count': 4228, 'days': [], 'freq': ... <trimmed 9112 bytes string> |
request | <WSGIRequest: GET '/datasets/history/tigge-lam-prod/'> |
reverse_sort | False |
./tigge/views.py
in get_events
date = None
date_p = None
start_date = None
count_ref = None
count_ref_p = None
event_name = None
for i, row in enumerate(get_data(dataset)):...
origin = row[0]
date = row[2]
count = int(row[3])
per_len += 1
Variable | Value |
---|---|
count_p | None |
count_ref | None |
count_ref_p | None |
dataset | <Dataset: tigge-lam-prod> |
date | None |
date_p | None |
event_name | None |
events | {} |
fieldcounts | {u'aladinhuneps-omsz-eu:18': {datetime.date(2014, 2, 1): {'count': 2279, 'days': [], 'freq': u'd'}}, u'aladinlaef-zamg-eu:00': {datetime.date(2013, 6, 3): {'count': 3521, 'days': [], 'freq': u'd'}, datetime.date(2013, 7, 10): {'count': 4201, 'days': [], 'freq': u'd'}}, u'aladinlaef-zamg-eu:12': {datetime.date(2013, 6, 3): {'count': 3521, 'days': [], 'freq': u'd'}, datetime.date(2013, 7, 9): {'count': 4201, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:00': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:06': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:12': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmodeeps-dwd-eu:18': {datetime.date(2014, 1, 1): {'count': 1762, 'days': [], 'freq': u'd'}}, u'cosmoleps-arpasimc-eu:00': {datetime.date(2013, 1, 1): {'count': 7184, 'days': [], 'freq': u'd'}, datetime.date(2018, 6, 1): {'count': 8980, 'days': [], 'freq': u'd'}}, u'cosmoleps-arpasimc-eu:12': {datetime.date(2013, 1, 1): {'count': 7184, 'days': [], 'freq': u'd'}, datetime.date(2018, 6, 1): {'count': 8980, 'days': [], 'freq': u'd'}}, u'glameps-hirlamcons-eu:00': {datetime.date(2014, 7, 2): {'count': 3696, 'days': [], 'freq': u'd'}, datetime.date(2014, 10, 2): {'count': 4228, 'days': [], 'freq': u'd'}}, u'glameps-hirlamcons-eu:06': {datetime.date(2013, 10, 15): {'count': 5361, 'days': [], 'freq': u'd'}, datetime.date(2014, 10, 2): {'count': 4228, 'days': [], 'freq': u'd'}}, u'glameps-hirlamcons-eu:12': {datetime.date(2014, 7, 1): {'count': 3696, 'days': [], 'freq': u'd'}, datetime.date(2014, 10, 2): {'count': 4228, 'days': [], 'freq': ... <trimmed 9112 bytes string> |
is_period | False |
origin_p | None |
origin_period | {} |
origins | [] |
per_len | 0 |
start_date | None |
./tigge/views.py
in get_data
Returns:
mysql field_count data for each model, date and processed dataset
"""
database_url = urlparse(conf.get('applications.tigge.database_url', exact=True))
dtb = MySQLdb.connect(host=database_url.hostname,
user=database_url.username,
passwd=database_url.password or '',
db=database_url.path[1:])...
stream = ''
if dataset.stream:
stream = ' AND stream="' + dataset.stream + '"'
sql = ('SELECT origin, expver, date, fields FROM ' + dataset.dbtable +
Variable | Value |
---|---|
database_url | ParseResult(scheme=u'mysql', netloc=u'ecmwf@webapps-db-test.ecmwf.int', path=u'/fdf', params='', query='', fragment='') |
dataset | <Dataset: tigge-lam-prod> |
/usr/local/lib/python2.7/site-packages/MySQLdb/__init__.py
in Connect
else:
def Binary(x):
return bytes(x)
def Connect(*args, **kwargs):
"""Factory function for connections.Connection."""
from MySQLdb.connections import Connection
return Connection(*args, **kwargs)...
connect = Connection = Connect
__all__ = [ 'BINARY', 'Binary', 'Connect', 'Connection', 'DATE',
'Date', 'Time', 'Timestamp', 'DateFromTicks', 'TimeFromTicks',
'TimestampFromTicks', 'DataError', 'DatabaseError', 'Error',
Variable | Value |
---|---|
Connection | <class 'MySQLdb.connections.Connection'> |
args | () |
kwargs | {'db': u'fdf', 'host': u'webapps-db-test.ecmwf.int', 'passwd': '', 'user': u'ecmwf'} |
/usr/local/lib/python2.7/site-packages/MySQLdb/connections.py
in __init__
autocommit = kwargs2.pop('autocommit', False)
self.waiter = kwargs2.pop('waiter', None)
if self.waiter:
from warnings import warn
warn("waiter is deprecated and will be removed in 1.4.",
DeprecationWarning, 2)
super(Connection, self).__init__(*args, **kwargs2)...
self.cursorclass = cursorclass
self.encoders = dict([ (k, v) for k, v in conv.items()
if type(k) is not int ])
self._server_version = tuple([ numeric_part(n) for n in self.get_server_info().split('.')[:2] ])
Variable | Value |
---|---|
CLIENT | <module 'MySQLdb.constants.CLIENT' from '/usr/local/lib/python2.7/site-packages/MySQLdb/constants/CLIENT.py'> |
FIELD_TYPE | <module 'MySQLdb.constants.FIELD_TYPE' from '/usr/local/lib/python2.7/site-packages/MySQLdb/constants/FIELD_TYPE.py'> |
args | () |
autocommit | False |
charset | '' |
client_flag | 196608 |
client_version | (10, 3) |
conv | {0: <class 'decimal.Decimal'>, 1: <type 'int'>, 2: <type 'int'>, 3: <type 'long'>, 4: <type 'float'>, 5: <type 'float'>, 7: <function mysql_timestamp_converter at 0x7f2e6dc253d0>, 8: <type 'long'>, 9: <type 'int'>, 10: <function Date_or_None at 0x7f2e6dc25250>, 11: <function TimeDelta_or_None at 0x7f2e6dc25150>, 12: <function DateTime_or_None at 0x7f2e6dc250d0>, 13: <type 'int'>, 15: [(128, <type 'str'>)], 246: <class 'decimal.Decimal'>, 248: <function Str2Set at 0x7f2e6cd7f2d0>, 249: [(128, <type 'str'>)], 250: [(128, <type 'str'>)], 251: [(128, <type 'str'>)], 252: [(128, <type 'str'>)], 253: [(128, <type 'str'>)], 254: [(128, <type 'str'>)], <class 'decimal.Decimal'>: <function Decimal2Literal at 0x7f2e6cd7f650>, <type 'array.array'>: <function array2Str at 0x7f2e6cd7f750>, <type 'datetime.date'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'datetime.datetime'>: <function DateTime2literal at 0x7f2e6dc252d0>, <type 'datetime.timedelta'>: <function DateTimeDelta2literal at 0x7f2e6dc25350>, <type 'bool'>: <function Bool2Str at 0x7f2e6cd7f250>, <type 'float'>: <function Float2Str at 0x7f2e6cd7f4d0>, <type 'int'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'long'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'NoneType'>: <function None2NULL at 0x7f2e6cd7f550>, <type 'set'>: <function Set2Str at 0x7f2e6cd7f350>, <type 'str'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'unicode'>: <function Unicode2Str at 0x7f2e6cd7f450>} |
conv2 | {0: <class 'decimal.Decimal'>, 1: <type 'int'>, 2: <type 'int'>, 3: <type 'long'>, 4: <type 'float'>, 5: <type 'float'>, 7: <function mysql_timestamp_converter at 0x7f2e6dc253d0>, 8: <type 'long'>, 9: <type 'int'>, 10: <function Date_or_None at 0x7f2e6dc25250>, 11: <function TimeDelta_or_None at 0x7f2e6dc25150>, 12: <function DateTime_or_None at 0x7f2e6dc250d0>, 13: <type 'int'>, 15: [(128, <type 'str'>)], 246: <class 'decimal.Decimal'>, 248: <function Str2Set at 0x7f2e6cd7f2d0>, 249: [(128, <type 'str'>)], 250: [(128, <type 'str'>)], 251: [(128, <type 'str'>)], 252: [(128, <type 'str'>)], 253: [(128, <type 'str'>)], 254: [(128, <type 'str'>)], <class 'decimal.Decimal'>: <function Decimal2Literal at 0x7f2e6cd7f650>, <type 'array.array'>: <function array2Str at 0x7f2e6cd7f750>, <type 'datetime.date'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'datetime.datetime'>: <function DateTime2literal at 0x7f2e6dc252d0>, <type 'datetime.timedelta'>: <function DateTimeDelta2literal at 0x7f2e6dc25350>, <type 'bool'>: <function Bool2Str at 0x7f2e6cd7f250>, <type 'float'>: <function Float2Str at 0x7f2e6cd7f4d0>, <type 'int'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'long'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'NoneType'>: <function None2NULL at 0x7f2e6cd7f550>, <type 'set'>: <function Set2Str at 0x7f2e6cd7f350>, <type 'str'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'unicode'>: <function Unicode2Str at 0x7f2e6cd7f450>} |
conversions | {0: <class 'decimal.Decimal'>, 1: <type 'int'>, 2: <type 'int'>, 3: <type 'long'>, 4: <type 'float'>, 5: <type 'float'>, 7: <function mysql_timestamp_converter at 0x7f2e6dc253d0>, 8: <type 'long'>, 9: <type 'int'>, 10: <function Date_or_None at 0x7f2e6dc25250>, 11: <function TimeDelta_or_None at 0x7f2e6dc25150>, 12: <function DateTime_or_None at 0x7f2e6dc250d0>, 13: <type 'int'>, 15: [(128, <type 'str'>)], 246: <class 'decimal.Decimal'>, 248: <function Str2Set at 0x7f2e6cd7f2d0>, 249: [(128, <type 'str'>)], 250: [(128, <type 'str'>)], 251: [(128, <type 'str'>)], 252: [(128, <type 'str'>)], 253: [(128, <type 'str'>)], 254: [(128, <type 'str'>)], <class 'decimal.Decimal'>: <function Decimal2Literal at 0x7f2e6cd7f650>, <type 'array.array'>: <function array2Str at 0x7f2e6cd7f750>, <type 'datetime.date'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'datetime.datetime'>: <function DateTime2literal at 0x7f2e6dc252d0>, <type 'datetime.timedelta'>: <function DateTimeDelta2literal at 0x7f2e6dc25350>, <type 'bool'>: <function Bool2Str at 0x7f2e6cd7f250>, <type 'float'>: <function Float2Str at 0x7f2e6cd7f4d0>, <type 'int'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'long'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'NoneType'>: <function None2NULL at 0x7f2e6cd7f550>, <type 'set'>: <function Set2Str at 0x7f2e6cd7f350>, <type 'str'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'unicode'>: <function Unicode2Str at 0x7f2e6cd7f450>} |
cursorclass | <class 'MySQLdb.cursors.Cursor'> |
k | 254 |
kwargs | {'db': u'fdf', 'host': u'webapps-db-test.ecmwf.int', 'passwd': '', 'user': u'ecmwf'} |
kwargs2 | {'client_flag': 196608, 'conv': {0: <class 'decimal.Decimal'>, 1: <type 'int'>, 2: <type 'int'>, 3: <type 'long'>, 4: <type 'float'>, 5: <type 'float'>, 7: <function mysql_timestamp_converter at 0x7f2e6dc253d0>, 8: <type 'long'>, 9: <type 'int'>, 10: <function Date_or_None at 0x7f2e6dc25250>, 11: <function TimeDelta_or_None at 0x7f2e6dc25150>, 12: <function DateTime_or_None at 0x7f2e6dc250d0>, 13: <type 'int'>, 15: [(128, <type 'str'>)], 246: <class 'decimal.Decimal'>, 248: <function Str2Set at 0x7f2e6cd7f2d0>, 249: [(128, <type 'str'>)], 250: [(128, <type 'str'>)], 251: [(128, <type 'str'>)], 252: [(128, <type 'str'>)], 253: [(128, <type 'str'>)], 254: [(128, <type 'str'>)], <class 'decimal.Decimal'>: <function Decimal2Literal at 0x7f2e6cd7f650>, <type 'array.array'>: <function array2Str at 0x7f2e6cd7f750>, <type 'datetime.date'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'datetime.datetime'>: <function DateTime2literal at 0x7f2e6dc252d0>, <type 'datetime.timedelta'>: <function DateTimeDelta2literal at 0x7f2e6dc25350>, <type 'bool'>: <function Bool2Str at 0x7f2e6cd7f250>, <type 'float'>: <function Float2Str at 0x7f2e6cd7f4d0>, <type 'int'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'long'>: <function Thing2Str at 0x7f2e6cd7f3d0>, <type 'NoneType'>: <function None2NULL at 0x7f2e6cd7f550>, <type 'set'>: <function Set2Str at 0x7f2e6cd7f350>, <type 'str'>: <function Thing2Literal at 0x7f2e6cd7f5d0>, <type 'unicode'>: <function Unicode2Str at 0x7f2e6cd7f450>}, 'db': u'fdf', 'host': u'webapps-db-test.ecmwf.int', 'passwd': '', 'user': u'ecmwf'} |
n | '3' |
proxy | <built-in function proxy> |
self | <_mysql.connection closed at 564333c14d10> |
sql_mode | '' |
use_unicode | False |
v | [(128, <type 'str'>)] |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
HTTP_ACCEPT | '*/*' |
HTTP_CONNECTION | 'close' |
HTTP_HOST | 'apps-dev.ecmwf.int' |
HTTP_REFERER | 'http://apps-dev.ecmwf.int/datasets/history/tigge-lam-prod/' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '3.239.208.72' |
HTTP_X_FORWARDED_HOST | 'apps-dev.ecmwf.int' |
HTTP_X_FORWARDED_PORT | '443' |
HTTP_X_FORWARDED_PROTO | 'https' |
HTTP_X_REAL_IP | '3.239.208.72' |
PATH_INFO | u'/datasets/history/tigge-lam-prod/' |
QUERY_STRING | '' |
REMOTE_ADDR | '3.239.208.72' |
REQUEST_METHOD | 'GET' |
REQUEST_URI | '/datasets/history/tigge-lam-prod/' |
SCRIPT_NAME | u'' |
SERVER_NAME | 'django-59b7855c75-9qwnc' |
SERVER_PORT | '8001' |
SERVER_PROTOCOL | 'HTTP/1.1' |
uwsgi.node | 'django-59b7855c75-9qwnc' |
uwsgi.version | '2.0.23' |
wsgi.errors | <open file 'wsgi_errors', mode 'w' at 0x7f2e71d49390> |
wsgi.file_wrapper | '' |
wsgi.input | <uwsgi._Input object at 0x7f2e6c5b51b0> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
settings.webmars_api
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | [u'.ecmwf.int'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ('common.auth.backends.KeycloakOpenIdConnect', 'common.auth.backends.TokenBackend') |
AUTH_PASSWORD_VALIDATORS | u'********************' |
AUTH_USER_MODEL | u'auth.User' |
CACHES | {u'default': {u'BACKEND': u'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | u'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | u'********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
COLLECT_STATISTICS | False |
COMPRESSORS | {'css': u'compressor.css.CssCompressor', 'js': u'compressor.js.JsCompressor'} |
COMPRESS_CACHEABLE_PRECOMPILERS | () |
COMPRESS_CACHE_BACKEND | u'default' |
COMPRESS_CACHE_KEY_FUNCTION | u'********************' |
COMPRESS_CLEAN_CSS_ARGUMENTS | u'' |
COMPRESS_CLEAN_CSS_BINARY | u'cleancss' |
COMPRESS_CLOSURE_COMPILER_ARGUMENTS | u'' |
COMPRESS_CLOSURE_COMPILER_BINARY | u'java -jar compiler.jar' |
COMPRESS_CSS_HASHING_METHOD | u'mtime' |
COMPRESS_DATA_URI_MAX_SIZE | 1024 |
COMPRESS_DEBUG_TOGGLE | None |
COMPRESS_ENABLED | False |
COMPRESS_FILTERS | {u'css': [u'compressor.filters.css_default.CssAbsoluteFilter'], u'js': [u'compressor.filters.jsmin.JSMinFilter']} |
COMPRESS_JINJA2_GET_ENVIRONMENT | <function JINJA2_GET_ENVIRONMENT at 0x7f2e6eb40e50> |
COMPRESS_MINT_DELAY | 30 |
COMPRESS_MTIME_DELAY | 10 |
COMPRESS_OFFLINE | False |
COMPRESS_OFFLINE_CONTEXT | {u'STATIC_URL': '/api/static/'} |
COMPRESS_OFFLINE_MANIFEST | u'manifest.json' |
COMPRESS_OFFLINE_TIMEOUT | 31536000 |
COMPRESS_OUTPUT_DIR | u'CACHE' |
COMPRESS_PARSER | u'compressor.parser.AutoSelectParser' |
COMPRESS_PRECOMPILERS | () |
COMPRESS_REBUILD_TIMEOUT | 2592000 |
COMPRESS_ROOT | u'/data/django/staticfiles' |
COMPRESS_STORAGE | u'compressor.storage.CompressorFileStorage' |
COMPRESS_TEMPLATE_FILTER_CONTEXT | {u'STATIC_URL': '/api/static/'} |
COMPRESS_URL | '/api/static/' |
COMPRESS_URL_PLACEHOLDER | u'/__compressor_url_placeholder__/' |
COMPRESS_VERBOSE | False |
COMPRESS_YUGLIFY_BINARY | u'yuglify' |
COMPRESS_YUGLIFY_CSS_ARGUMENTS | u'--terminal' |
COMPRESS_YUGLIFY_JS_ARGUMENTS | u'--terminal' |
COMPRESS_YUI_BINARY | u'java -jar yuicompressor.jar' |
COMPRESS_YUI_CSS_ARGUMENTS | u'' |
COMPRESS_YUI_JS_ARGUMENTS | u'' |
CONFIGURATION | 'settings.webmars_api.Default' |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | u'csrftoken' |
CSRF_COOKIE_PATH | u'/' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | u'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | u'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
DATABASES | {u'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, u'ENGINE': u'django.db.backends.postgresql_psycopg2', u'HOST': u'postgresql-0.postgresql', u'NAME': u'django', 'OPTIONS': {}, u'PASSWORD': u'********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, u'USER': u'django'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | u'N j, Y, P' |
DATETIME_INPUT_FORMATS | [u'%Y-%m-%d %H:%M:%S', u'%Y-%m-%d %H:%M:%S.%f', u'%Y-%m-%d %H:%M', u'%Y-%m-%d', u'%m/%d/%Y %H:%M:%S', u'%m/%d/%Y %H:%M:%S.%f', u'%m/%d/%Y %H:%M', u'%m/%d/%Y', u'%m/%d/%y %H:%M:%S', u'%m/%d/%y %H:%M:%S.%f', u'%m/%d/%y %H:%M', u'%m/%d/%y'] |
DATE_FORMAT | u'N j, Y' |
DATE_INPUT_FORMATS | [u'%Y-%m-%d', u'%m/%d/%Y', u'%m/%d/%y', u'%b %d %Y', u'%b %d, %Y', u'%d %b %Y', u'%d %b, %Y', u'%B %d %Y', u'%B %d, %Y', u'%d %B %Y', u'%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | u'.' |
DEFAULT_CHARSET | u'utf-8' |
DEFAULT_CONTENT_TYPE | u'text/html' |
DEFAULT_EXCEPTION_REPORTER_FILTER | u'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | u'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | u'webmaster@localhost' |
DEFAULT_INDEX_TABLESPACE | u'' |
DEFAULT_TABLESPACE | u'' |
DISALLOWED_USER_AGENTS | [] |
DOTENV_LOADED | None |
ECCHARTS_ACCESS_POLICIES | ['ecmwf', 'forecaster', 'wrep'] |
EMAIL_BACKEND | u'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | u'localhost' |
EMAIL_HOST_PASSWORD | u'********************' |
EMAIL_HOST_USER | u'' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | u'********************' |
EMAIL_SUBJECT_PREFIX | u'[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
EMS_ADMIN_POLICIES | [u'cd_applications_group', u'forecast_delivery_team', u'user_services_section', u'web2013', u'web_development', u'web_group', u'web_services_group'] |
FILE_CHARSET | u'utf-8' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | [u'django.core.files.uploadhandler.MemoryFileUploadHandler', u'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | None |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['django.contrib.admin', 'django.contrib.admindocs', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.humanize', 'django.contrib.messages', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.staticfiles', 'compressor', 'django_filters', 'django_nose', 'markup_deprecated', 'mptt', 'rest_framework', 'social_django', 'common.auth.apps.Config', 'common.profile.apps.Config', 'common.utils.apps.Config', 'frontend.apps.Config', 'api.apps.Config', 'api_activity.apps.Config', 'research_experiments.apps.Config', 'service_monitoring_api.apps.Config', 'tigge.apps.Config', 'webmars.activity.apps.Config', 'webmars.catalogue.apps.Config', 'webmars.datasets.apps.Config', 'webmars.webmars_common.apps.Config'] |
INTERNAL_IPS | [] |
LANGUAGES | [(u'af', u'Afrikaans'), (u'ar', u'Arabic'), (u'ast', u'Asturian'), (u'az', u'Azerbaijani'), (u'bg', u'Bulgarian'), (u'be', u'Belarusian'), (u'bn', u'Bengali'), (u'br', u'Breton'), (u'bs', u'Bosnian'), (u'ca', u'Catalan'), (u'cs', u'Czech'), (u'cy', u'Welsh'), (u'da', u'Danish'), (u'de', u'German'), (u'dsb', u'Lower Sorbian'), (u'el', u'Greek'), (u'en', u'English'), (u'en-au', u'Australian English'), (u'en-gb', u'British English'), (u'eo', u'Esperanto'), (u'es', u'Spanish'), (u'es-ar', u'Argentinian Spanish'), (u'es-co', u'Colombian Spanish'), (u'es-mx', u'Mexican Spanish'), (u'es-ni', u'Nicaraguan Spanish'), (u'es-ve', u'Venezuelan Spanish'), (u'et', u'Estonian'), (u'eu', u'Basque'), (u'fa', u'Persian'), (u'fi', u'Finnish'), (u'fr', u'French'), (u'fy', u'Frisian'), (u'ga', u'Irish'), (u'gd', u'Scottish Gaelic'), (u'gl', u'Galician'), (u'he', u'Hebrew'), (u'hi', u'Hindi'), (u'hr', u'Croatian'), (u'hsb', u'Upper Sorbian'), (u'hu', u'Hungarian'), (u'ia', u'Interlingua'), (u'id', u'Indonesian'), (u'io', u'Ido'), (u'is', u'Icelandic'), (u'it', u'Italian'), (u'ja', u'Japanese'), (u'ka', u'Georgian'), (u'kk', u'Kazakh'), (u'km', u'Khmer'), (u'kn', u'Kannada'), (u'ko', u'Korean'), (u'lb', u'Luxembourgish'), (u'lt', u'Lithuanian'), (u'lv', u'Latvian'), (u'mk', u'Macedonian'), (u'ml', u'Malayalam'), (u'mn', u'Mongolian'), (u'mr', u'Marathi'), (u'my', u'Burmese'), (u'nb', u'Norwegian Bokm\xe5l'), (u'ne', u'Nepali'), (u'nl', u'Dutch'), (u'nn', u'Norwegian Nynorsk'), (u'os', u'Ossetic'), (u'pa', u'Punjabi'), (u'pl', u'Polish'), (u'pt', u'Portuguese'), (u'pt-br', u'Brazilian Portuguese'), (u'ro', u'Romanian'), (u'ru', u'Russian'), (u'sk', u'Slovak'), (u'sl', u'Slovenian'), (u'sq', u'Albanian'), (u'sr', u'Serbian'), (u'sr-latn', u'Serbian Latin'), (u'sv', u'Swedish'), (u'sw', u'Swahili'), (u'ta', u'Tamil'), (u'te', u'Telugu'), (u'th', u'Thai'), (u'tr', u'Turkish'), (u'tt', u'Tatar'), (u'udm', u'Udmurt'), (u'uk', u'Ukrainian'), (u'ur', u'Urdu'), (u'vi', u'Vietnamese'), (u'zh-hans', u'Simplified Chinese'), (u'zh-hant', u'Traditional Chinese')] |
LANGUAGES_BIDI | [u'he', u'ar', u'fa', u'ur'] |
LANGUAGE_CODE | 'en-us' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | u'django_language' |
LANGUAGE_COOKIE_PATH | u'/' |
LOCALE_PATHS | [] |
LOGGING | {'disable_existing_loggers': False, 'formatters': {'default': {'()': 'pythonjsonlogger.jsonlogger.JsonFormatter', 'format': '%(asctime)s %(process)s %(processName)s %(threadName)s %(levelname)s %(name)s %(message)s'}}, 'handlers': {'console': {'class': 'logging.StreamHandler', 'formatter': 'default', 'level': 'DEBUG'}}, 'loggers': {'PIL': {'handlers': ['console'], 'level': 'WARN', 'propagate': False}, 'celery': {'handlers': ['console'], 'level': 'WARN', 'propagate': False}, 'chardet': {'handlers': ['console'], 'level': 'INFO', 'propagate': False}, 'django': {'handlers': ['console'], 'level': 'INFO', 'propagate': False}, 'kombu': {'handlers': ['console'], 'level': 'INFO', 'propagate': False}, 'matplotlib': {'handlers': ['console'], 'level': 'INFO', 'propagate': False}, 'newrelic': {'handlers': ['console'], 'level': 'WARN', 'propagate': False}, 'pika': {'handlers': ['console'], 'level': 'WARN', 'propagate': False}, 'requests': {'handlers': ['console'], 'level': 'WARN', 'propagate': False}, 'selenium': {'handlers': ['console'], 'level': 'WARN', 'propagate': False}, 'urllib3': {'handlers': ['console'], 'level': 'WARN', 'propagate': False}}, 'root': {'handlers': ['console'], 'level': 'DEBUG'}, 'version': 1} |
LOGGING_CONFIG | u'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | u'https://accounts-test.ecmwf.int/auth/realms/ecmwf/account' |
LOGIN_URL | '/api/sso/login/openid-connect/' |
LOGOUT_REDIRECT_URL | '/api/auth/logged-out/' |
MANAGERS | [] |
MEDIA_ROOT | '' |
MEDIA_URL | '' |
MESSAGE_STORAGE | u'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['common.auth.middleware.HandleCORSPreflightMiddleware', 'common.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'common.auth.middleware.RemoteAddressMiddleware', 'common.auth.middleware.TokenMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'common.soa.middleware.ServicesMiddleware', 'common.logging.middleware.LoggerMiddleware', 'common.utils.middleware.TraceMiddleware'] |
MIDDLEWARE_CLASSES | [u'django.middleware.common.CommonMiddleware', u'django.middleware.csrf.CsrfViewMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | u'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | u'********************' |
PASSWORD_RESET_TIMEOUT_DAYS | u'********************' |
PREPEND_WWW | False |
PROJECT_ROOT | '/code/apps/settings' |
REGISTRATION_URL | u'https://accounts-test.ecmwf.int/auth/realms/ecmwf/protocol/openid-connect/registrations?client_id=apps&response_type=code&scope=openid%20email&' |
ROOT_URLCONF | 'urls.webmars_api' |
SECRET_KEY | u'********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | ('HTTP_X_HTTPS', 'on') |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | u'root@localhost' |
SESSION_CACHE_ALIAS | u'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | u'.ecmwf.int' |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | u'django-webmars-api-dev-bol' |
SESSION_COOKIE_PATH | u'/' |
SESSION_COOKIE_SAMESITE | u'None' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | u'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | u'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'settings.webmars_api' |
SHORT_DATETIME_FORMAT | u'm/d/Y P' |
SHORT_DATE_FORMAT | u'm/d/Y' |
SIGNING_BACKEND | u'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_ID | 1 |
SOCIAL_AUTH_ADMIN_USER_SEARCH_FIELDS | ['username', 'first_name', 'email'] |
SOCIAL_AUTH_ALLOWED_REDIRECT_HOSTS | ['apps.ecmwf.local'] |
SOCIAL_AUTH_CLEAN_USERNAMES | False |
SOCIAL_AUTH_OPENID_CONNECT_KEY | u'********************' |
SOCIAL_AUTH_OPENID_CONNECT_OIDC_ENDPOINT | u'https://accounts-test.ecmwf.int/auth/realms/ecmwf' |
SOCIAL_AUTH_OPENID_CONNECT_SECRET | u'********************' |
SOCIAL_AUTH_PIPELINE | ('common.auth.pipeline.social_details', 'common.auth.pipeline.truncate_long_user_fields', 'common.auth.pipeline.social_uid', 'social_core.pipeline.social_auth.auth_allowed', 'common.auth.pipeline.social_user', 'common.auth.pipeline.create_user', 'social_core.pipeline.social_auth.associate_user', 'social_core.pipeline.social_auth.load_extra_data', 'common.auth.pipeline.update_django_user', 'common.auth.pipeline.session_state', 'common.auth.pipeline.debug') |
SOCIAL_AUTH_SANITIZE_REDIRECTS | False |
SOCIAL_AUTH_SESSION_EXPIRATION | True |
SOCIAL_AUTH_SLUGIFY_USERNAMES | False |
SOCIAL_AUTH_STORAGE | 'social_django.models.DjangoStorage' |
SOCIAL_AUTH_STRATEGY | 'common.auth.strategy.DjangoStrategy' |
SOCIAL_AUTH_UID_LENGTH | 150 |
SOCIAL_AUTH_URL_NAMESPACE | 'social' |
SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL | False |
SOCIAL_AUTH_USER_FIELDS | ['username'] |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'compressor.finders.CompressorFinder') |
STATICFILES_STORAGE | u'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/data/django/staticfiles' |
STATIC_URL | '/api/static/' |
TEMPLATES | [{'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/tmp/cache/django/templates', './settings/templates'], 'OPTIONS': {'context_processors': ('django.contrib.auth.context_processors.auth', 'django.template.context_processors.debug', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.request', 'django.contrib.messages.context_processors.messages', 'social_django.context_processors.backends', 'social_django.context_processors.login_redirect', 'common.auth.context.user', 'common.utils.context_processors.sitemenu_processor'), 'loaders': ('django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader')}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django_nose.NoseTestSuiteRunner' |
THOUSAND_SEPARATOR | u',' |
TIME_FORMAT | u'P' |
TIME_INPUT_FORMATS | [u'%H:%M:%S', u'%H:%M:%S.%f', u'%H:%M'] |
TIME_ZONE | 'UTC' |
USE_ETAGS | False |
USE_I18N | False |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | True |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'wsgi.application' |
X_FRAME_OPTIONS | u'SAMEORIGIN' |
YEAR_MONTH_FORMAT | u'F Y' |
You're seeing this error because you have DEBUG = True
in your
Django settings file. Change that to False
, and Django will
display a standard page generated by the handler for this status code.