invalid syntax (redis.py, line 22)
Request Method: | GET |
---|---|
Request URL: | https://nuestropresupuesto.org/contrataciones/nacinales/adjudged/descargar-datos/?year=2018 |
Django Version: | 1.10.3 |
Exception Type: | SyntaxError |
Exception Value: | invalid syntax (redis.py, line 22) |
Exception Location: | /usr/lib/python3.7/importlib/__init__.py in import_module, line 127 |
Python Executable: | /usr/local/bin/uwsgi |
Python Version: | 3.7.3 |
Python Path: | ['.', '', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages', '/home/fitoria/observatorio'] |
Server time: | Vie, 29 Mar 2024 05:37:28 +0000 |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/kombu/utils/objects.py
in __get__
self.__name__ = fget.__name__
self.__module__ = fget.__module__
def __get__(self, obj, type=None):
if obj is None:
return self
try:
return obj.__dict__[self.__name__]...
except KeyError:
value = obj.__dict__[self.__name__] = self.__get(obj)
return value
def __set__(self, obj, value):
if obj is None:
Variable | Value |
---|---|
obj | <Celery celery_presupuesto at 0x7f8220061eb8> |
self | <kombu.utils.objects.cached_property object at 0x7f8220061cc0> |
type | <class 'celery.app.base.Celery'> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.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 | SyntaxError('invalid syntax', ('/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/backends/redis.py', 22, 19, 'from . import async, base\n')) |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f821ffbc5f8>> |
request | <WSGIRequest: GET '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018'> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.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 RenderAdjudgedNationalExcel at 0x7f821ea4a2f0> |
callback_args | () |
callback_kwargs | {} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f821eac0550>> |
request | <WSGIRequest: GET '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018'> |
resolver | <RegexURLResolver 'config.urls' (None:None) ^/> |
resolver_match | ResolverMatch(func=observatorio.contract.views.RenderAdjudgedNationalExcel, args=(), kwargs={}, url_name=make_adjudged_national_excel, app_names=[], namespaces=[]) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f821ffbc5f8> |
wrapped_callback | <function RenderAdjudgedNationalExcel at 0x7f821ea4a2f0> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.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 RenderAdjudgedNationalExcel at 0x7f821ea4a2f0> |
callback_args | () |
callback_kwargs | {} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f821eac0550>> |
request | <WSGIRequest: GET '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018'> |
resolver | <RegexURLResolver 'config.urls' (None:None) ^/> |
resolver_match | ResolverMatch(func=observatorio.contract.views.RenderAdjudgedNationalExcel, args=(), kwargs={}, url_name=make_adjudged_national_excel, app_names=[], namespaces=[]) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f821ffbc5f8> |
wrapped_callback | <function RenderAdjudgedNationalExcel at 0x7f821ea4a2f0> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/django/views/generic/base.py
in view
def view(request, *args, **kwargs):
self = cls(**initkwargs)
if hasattr(self, 'get') and not hasattr(self, 'head'):
self.head = self.get
self.request = request
self.args = args
self.kwargs = kwargs
return self.dispatch(request, *args, **kwargs)...
view.view_class = cls
view.view_initkwargs = initkwargs
# take name and docstring from class
update_wrapper(view, cls, updated=())
Variable | Value |
---|---|
args | () |
cls | <class 'observatorio.contract.views.RenderAdjudgedNationalExcel'> |
initkwargs | {} |
kwargs | {} |
request | <WSGIRequest: GET '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018'> |
self | <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0> |
./observatorio/contract/views.py
in dispatch
class RenderAdjudgedNationalExcel(TemplateView):
year = ''
def dispatch(self, request, *args, **kwargs):
self.year = request.GET.get('year')
return super(RenderAdjudgedNationalExcel, self).dispatch(request, *args, **kwargs)...
def render_to_response(self, context, **kwargs):
task = generate_adjudged_national_excel_file.delay(self.year)
return render_to_response("contracts/municipal/excel_download.html", {"task_id": task.id})
Variable | Value |
---|---|
__class__ | <class 'observatorio.contract.views.RenderAdjudgedNationalExcel'> |
args | () |
kwargs | {} |
request | <WSGIRequest: GET '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018'> |
self | <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/django/views/generic/base.py
in dispatch
# Try to dispatch to the right method; if a method doesn't exist,
# defer to the error handler. Also defer to the error handler if the
# request method isn't on the approved list.
if request.method.lower() in self.http_method_names:
handler = getattr(self, request.method.lower(), self.http_method_not_allowed)
else:
handler = self.http_method_not_allowed
return handler(request, *args, **kwargs)...
def http_method_not_allowed(self, request, *args, **kwargs):
logger.warning(
'Method Not Allowed (%s): %s', request.method, request.path,
extra={'status_code': 405, 'request': request}
)
Variable | Value |
---|---|
args | () |
handler | <bound method TemplateView.get of <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0>> |
kwargs | {} |
request | <WSGIRequest: GET '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018'> |
self | <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/django/views/generic/base.py
in get
class TemplateView(TemplateResponseMixin, ContextMixin, View):
"""
A view that renders a template. This view will also pass into the context
any keyword arguments passed by the URLconf.
"""
def get(self, request, *args, **kwargs):
context = self.get_context_data(**kwargs)
return self.render_to_response(context)...
class RedirectView(View):
"""
A view that provides a redirect on any GET request.
"""
Variable | Value |
---|---|
args | () |
context | {'view': <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0>} |
kwargs | {} |
request | <WSGIRequest: GET '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018'> |
self | <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0> |
./observatorio/contract/views.py
in render_to_response
year = ''
def dispatch(self, request, *args, **kwargs):
self.year = request.GET.get('year')
return super(RenderAdjudgedNationalExcel, self).dispatch(request, *args, **kwargs)
def render_to_response(self, context, **kwargs):
task = generate_adjudged_national_excel_file.delay(self.year)...
return render_to_response("contracts/municipal/excel_download.html", {"task_id": task.id})
class RenderAdjudgedMunicipalExcel(TemplateView):
year = ''
Variable | Value |
---|---|
context | {'view': <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0>} |
kwargs | {} |
self | <observatorio.contract.views.RenderAdjudgedNationalExcel object at 0x7f821e637be0> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/app/task.py
in delay
Arguments:
*args (Any): Positional arguments passed on to the task.
**kwargs (Any): Keyword arguments passed on to the task.
Returns:
celery.result.AsyncResult: Future promise.
"""
return self.apply_async(args, kwargs)...
def apply_async(self, args=None, kwargs=None, task_id=None, producer=None,
link=None, link_error=None, shadow=None, **options):
"""Apply tasks asynchronously by sending a message.
Arguments:
Variable | Value |
---|---|
args | ('2018',) |
kwargs | {} |
self | <@task: observatorio.contract.tasks.generate_adjudged_national_excel_file of celery_presupuesto at 0x7f8220061eb8> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/app/task.py
in apply_async
options.setdefault('ignore_result', self.ignore_result)
return app.send_task(
self.name, args, kwargs, task_id=task_id, producer=producer,
link=link, link_error=link_error, result_cls=self.AsyncResult,
shadow=shadow, task_type=self,
**options...
)
def shadow_name(self, args, kwargs, options):
"""Override for custom task name in worker logs/monitoring.
Example:
Variable | Value |
---|---|
app | <Celery celery_presupuesto at 0x7f8220061eb8> |
args | ('2018',) |
check_arguments | <function generate_adjudged_national_excel_file at 0x7f821e438620> |
kwargs | {} |
link | None |
link_error | None |
options | {'compression': None, 'delivery_mode': None, 'exchange': None, 'expires': None, 'ignore_result': False, 'immediate': None, 'mandatory': None, 'priority': None, 'queue': None, 'routing_key': None, 'serializer': 'json', 'soft_time_limit': None, 'time_limit': None} |
preopts | {'compression': None, 'delivery_mode': None, 'exchange': None, 'expires': None, 'ignore_result': False, 'immediate': None, 'mandatory': None, 'priority': None, 'queue': None, 'routing_key': None, 'serializer': 'json', 'soft_time_limit': None, 'time_limit': None} |
producer | None |
self | <@task: observatorio.contract.tasks.generate_adjudged_national_excel_file of celery_presupuesto at 0x7f8220061eb8> |
shadow | None |
task_id | None |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/app/base.py
in send_task
if connection:
producer = amqp.Producer(connection, auto_declare=False)
with self.producer_or_acquire(producer) as P:
with P.connection._reraise_as_library_errors():
if not ignored_result:
self.backend.on_task_call(P, task_id)...
amqp.send_task_message(P, name, message, **options)
result = (result_cls or self.AsyncResult)(task_id)
# We avoid using the constructor since a custom result class
# can be used, in which case the constructor may still use
# the old signature.
result.ignored = ignored_result
Variable | Value |
---|---|
P | <Producer: None> |
add_to_parent | True |
amqp | <celery.app.amqp.AMQP object at 0x7f821e6764a8> |
args | ('2018',) |
chain | None |
chord | None |
conf | Settings({}, <celery.utils.collections.DictAttribute object at 0x7f821e3eaf60>, {'accept_content': ['json'], 'enable_utc': True, 'imports': (), 'include': (), 'timezone': None, 'beat_max_loop_interval': 0, 'beat_schedule': {}, 'beat_scheduler': 'celery.beat:PersistentScheduler', 'beat_schedule_filename': 'celerybeat-schedule', 'beat_sync_every': 0, 'broker_url': None, 'broker_read_url': None, 'broker_write_url': None, 'broker_transport': None, 'broker_transport_options': {}, 'broker_connection_timeout': 4, 'broker_connection_retry': True, 'broker_connection_max_retries': 100, 'broker_failover_strategy': None, 'broker_heartbeat': 120, 'broker_heartbeat_checkrate': 3.0, 'broker_login_method': None, 'broker_pool_limit': 10, 'broker_use_ssl': False, 'broker_host': None, 'broker_port': None, 'broker_user': None, 'broker_password': None, 'broker_vhost': None, 'cache_backend': None, 'cache_backend_options': {}, 'cassandra_entry_ttl': None, 'cassandra_keyspace': None, 'cassandra_port': None, 'cassandra_read_consistency': None, 'cassandra_servers': None, 'cassandra_table': None, 'cassandra_write_consistency': None, 'cassandra_auth_provider': None, 'cassandra_auth_kwargs': None, 'cassandra_options': {}, 'control_queue_ttl': 300.0, 'control_queue_expires': 10.0, 'couchbase_backend_settings': None, 'mongodb_backend_settings': None, 'event_queue_expires': 60.0, 'event_queue_ttl': 5.0, 'event_queue_prefix': 'celeryev', 'event_serializer': 'json', 'redis_backend_use_ssl': None, 'redis_db': None, 'redis_host': None, 'redis_max_connections': None, 'redis_password': None, 'redis_port': None, 'redis_socket_timeout': 120.0, 'redis_socket_connect_timeout': None, 'result_backend': None, 'result_cache_max': -1, 'result_compression': None, 'result_exchange': 'celeryresults', 'result_exchange_type': 'direct', 'result_expires': datetime.timedelta(days=1), 'result_persistent': None, 'result_serializer': 'json', 'result_backend_transport_options': {}, 'elasticsearch_retry_on_timeout': None, 'elasticsearch_max_retries': None, 'elasticsearch_timeout': None, 'riak_backend_settings': None, 'security_certificate': None, 'security_cert_store': None, 'security_key': None, 'database_url': None, 'database_engine_options': None, 'database_short_lived_sessions': False, 'database_table_names': None, 'task_acks_late': False, 'task_always_eager': False, 'task_annotations': None, 'task_compression': None, 'task_create_missing_queues': True, 'task_default_delivery_mode': 2, 'task_default_queue': 'celery', 'task_default_exchange': None, 'task_default_exchange_type': 'direct', 'task_default_routing_key': None, 'task_default_rate_limit': None, 'task_eager_propagates': False, 'task_ignore_result': False, 'task_protocol': 2, 'task_publish_retry': True, 'task_publish_retry_policy': {'max_retries': 3, 'interval_start': 0, 'interval_max': 1, 'interval_step': 0.2}, 'task_queues': None, 'task_queue_ha_policy': None, 'task_queue_max_priority': None, 'task_reject_on_worker_lost': None, 'task_remote_tracebacks': False, 'task_routes': None, 'task_send_sent_event': False, 'task_serializer': 'json', 'task_soft_time_limit': None, 'task_time_limit': None, 'task_store_errors_even_if_ignored': False, 'task_track_started': False, 'worker_agent': None, 'worker_autoscaler': 'celery.worker.autoscale:Autoscaler', 'worker_concurrency': 0, 'worker_consumer': 'celery.worker.consumer:Consumer', 'worker_direct': False, 'worker_disable_rate_limits': False, 'worker_enable_remote_control': True, 'worker_hijack_root_logger': True, 'worker_log_color': None, 'worker_log_format': '[%(asctime)s: %(levelname)s/%(processName)s] %(message)s', 'worker_lost_wait': 10.0, 'worker_max_memory_per_child': None, 'worker_max_tasks_per_child': None, 'worker_pool': 'prefork', 'worker_pool_putlocks': True, 'worker_pool_restarts': False, 'worker_prefetch_multiplier': 4, 'worker_redirect_stdouts': True, 'worker_redirect_stdouts_level': 'WARNING', 'worker_send_task_events': False, 'worker_state_db': None, 'worker_task_log_format': '[%(asctime)s: %(levelname)s/%(processName)s] %(task_name)s[%(task_id)s]: %(message)s', '... <trimmed 4148 bytes string> |
connection | None |
countdown | None |
eta | None |
expires | None |
group_id | None |
have_parent | None |
ignored_result | False |
kwargs | {} |
link | None |
link_error | None |
message | task_message(headers={'lang': 'py', 'task': 'observatorio.contract.tasks.generate_adjudged_national_excel_file', 'id': 'be4a2945-633c-4ad5-a35a-c2b6650a1176', 'shadow': None, 'eta': None, 'expires': None, 'group': None, 'retries': 0, 'timelimit': [None, None], 'root_id': 'be4a2945-633c-4ad5-a35a-c2b6650a1176', 'parent_id': None, 'argsrepr': "('2018',)", 'kwargsrepr': '{}', 'origin': 'gen26746@bourne'}, properties={'correlation_id': 'be4a2945-633c-4ad5-a35a-c2b6650a1176', 'reply_to': '43489e15-40b9-3ad2-b221-bb926868cb8a'}, body=(('2018',), {}, {'callbacks': None, 'errbacks': None, 'chain': None, 'chord': None}), sent_event=None) |
name | 'observatorio.contract.tasks.generate_adjudged_national_excel_file' |
options | {'queue': <unbound Queue celery -> <unbound Exchange celery(direct)> -> celery>, 'serializer': 'json'} |
parent | None |
parent_id | None |
producer | None |
publisher | None |
reply_to | None |
result_cls | <bound method Task.AsyncResult of <@task: observatorio.contract.tasks.generate_adjudged_national_excel_file of celery_presupuesto at 0x7f8220061eb8>> |
retries | 0 |
root_id | None |
route_name | None |
router | <celery.app.routes.Router object at 0x7f821e6b1748> |
self | <Celery celery_presupuesto at 0x7f8220061eb8> |
shadow | None |
soft_time_limit | None |
task_id | 'be4a2945-633c-4ad5-a35a-c2b6650a1176' |
task_type | <@task: observatorio.contract.tasks.generate_adjudged_national_excel_file of celery_presupuesto at 0x7f8220061eb8> |
time_limit | None |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/kombu/utils/objects.py
in __get__
def __get__(self, obj, type=None):
if obj is None:
return self
try:
return obj.__dict__[self.__name__]
except KeyError:
value = obj.__dict__[self.__name__] = self.__get(obj)...
return value
def __set__(self, obj, value):
if obj is None:
return self
if self.__set is not None:
Variable | Value |
---|---|
obj | <Celery celery_presupuesto at 0x7f8220061eb8> |
self | <kombu.utils.objects.cached_property object at 0x7f8220061cc0> |
type | <class 'celery.app.base.Celery'> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/app/base.py
in backend
def amqp(self):
"""AMQP related functionality: :class:`~@amqp`."""
return instantiate(self.amqp_cls, app=self)
@cached_property
def backend(self):
"""Current backend instance."""
return self._get_backend()...
@property
def conf(self):
"""Current configuration."""
if self._conf is None:
self._conf = self._load_config()
Variable | Value |
---|---|
self | <Celery celery_presupuesto at 0x7f8220061eb8> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/app/base.py
in _get_backend
def bugreport(self):
"""Return information useful in bug reports."""
return bugreport(self)
def _get_backend(self):
backend, url = backends.by_url(
self.backend_cls or self.conf.result_backend,
self.loader)...
return backend(app=self, url=url)
def _finalize_pending_conf(self):
"""Get config value by key and finalize loading the configuration.
Note:
Variable | Value |
---|---|
self | <Celery celery_presupuesto at 0x7f8220061eb8> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/app/backends.py
in by_url
if backend and '://' in backend:
url = backend
scheme, _, _ = url.partition('://')
if '+' in scheme:
backend, url = url.split('+', 1)
else:
backend = scheme
return by_name(backend, loader), url...
Variable | Value |
---|---|
_ | 'localhost:6379/0' |
backend | 'redis' |
loader | <celery.loaders.app.AppLoader object at 0x7f821fffbd30> |
scheme | 'redis' |
url | 'redis://localhost:6379/0' |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/celery/app/backends.py
in by_name
"""Get backend class by name/alias."""
backend = backend or 'disabled'
loader = loader or current_app.loader
aliases = dict(BACKEND_ALIASES, **loader.override_backends)
aliases.update(
load_extension_class_names(extension_namespace) or {})
try:
cls = symbol_by_name(backend, aliases)...
except ValueError as exc:
reraise(ImproperlyConfigured, ImproperlyConfigured(
UNKNOWN_BACKEND.strip().format(backend, exc)), sys.exc_info()[2])
if isinstance(cls, types.ModuleType):
raise ImproperlyConfigured(UNKNOWN_BACKEND.strip().format(
backend, 'is a Python module, not a backend class.'))
Variable | Value |
---|---|
aliases | {'amqp': 'celery.backends.amqp:AMQPBackend', 'cache': 'celery.backends.cache:CacheBackend', 'cassandra': 'celery.backends.cassandra:CassandraBackend', 'consul': 'celery.backends.consul:ConsulBackend', 'couchbase': 'celery.backends.couchbase:CouchbaseBackend', 'couchdb': 'celery.backends.couchdb:CouchBackend', 'database': 'celery.backends.database:DatabaseBackend', 'db': 'celery.backends.database:DatabaseBackend', 'disabled': 'celery.backends.base:DisabledBackend', 'dynamodb': 'celery.backends.dynamodb:DynamoDBBackend', 'elasticsearch': 'celery.backends.elasticsearch:ElasticsearchBackend', 'file': 'celery.backends.filesystem:FilesystemBackend', 'mongodb': 'celery.backends.mongodb:MongoBackend', 'redis': 'celery.backends.redis:RedisBackend', 'rediss': 'celery.backends.redis:RedisBackend', 'riak': 'celery.backends.riak:RiakBackend', 'rpc': 'celery.backends.rpc.RPCBackend', 'sentinel': 'celery.backends.redis:SentinelBackend'} |
backend | 'redis' |
extension_namespace | 'celery.result_backends' |
loader | <celery.loaders.app.AppLoader object at 0x7f821fffbd30> |
/home/fitoria/.virtualenvs/observatorio/lib/python3.7/site-packages/kombu/utils/imports.py
in symbol_by_name
name = aliases.get(name) or name
sep = ':' if ':' in name else sep
module_name, _, cls_name = name.rpartition(sep)
if not module_name:
cls_name, module_name = None, package if package else cls_name
try:
try:
module = imp(module_name, package=package, **kwargs)...
except ValueError as exc:
reraise(ValueError,
ValueError("Couldn't import {0!r}: {1}".format(name, exc)),
sys.exc_info()[2])
return getattr(module, cls_name) if cls_name else module
except (ImportError, AttributeError):
Variable | Value |
---|---|
_ | ':' |
aliases | {'amqp': 'celery.backends.amqp:AMQPBackend', 'cache': 'celery.backends.cache:CacheBackend', 'cassandra': 'celery.backends.cassandra:CassandraBackend', 'consul': 'celery.backends.consul:ConsulBackend', 'couchbase': 'celery.backends.couchbase:CouchbaseBackend', 'couchdb': 'celery.backends.couchdb:CouchBackend', 'database': 'celery.backends.database:DatabaseBackend', 'db': 'celery.backends.database:DatabaseBackend', 'disabled': 'celery.backends.base:DisabledBackend', 'dynamodb': 'celery.backends.dynamodb:DynamoDBBackend', 'elasticsearch': 'celery.backends.elasticsearch:ElasticsearchBackend', 'file': 'celery.backends.filesystem:FilesystemBackend', 'mongodb': 'celery.backends.mongodb:MongoBackend', 'redis': 'celery.backends.redis:RedisBackend', 'rediss': 'celery.backends.redis:RedisBackend', 'riak': 'celery.backends.riak:RiakBackend', 'rpc': 'celery.backends.rpc.RPCBackend', 'sentinel': 'celery.backends.redis:SentinelBackend'} |
cls_name | 'RedisBackend' |
default | None |
imp | <function import_module at 0x7f82211b3048> |
kwargs | {} |
module_name | 'celery.backends.redis' |
name | 'celery.backends.redis:RedisBackend' |
package | None |
sep | ':' |
/usr/lib/python3.7/importlib/__init__.py
in import_module
msg = ("the 'package' argument is required to perform a relative "
"import for {!r}")
raise TypeError(msg.format(name))
for character in name:
if character != '.':
break
level += 1
return _bootstrap._gcd_import(name[level:], package, level)...
_RELOADING = {}
def reload(module):
Variable | Value |
---|---|
level | 0 |
name | 'celery.backends.redis' |
package | None |
AnonymousUser
Variable | Value |
---|---|
year | '2018' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | '' |
DOCUMENT_ROOT | '/usr/share/nginx/html' |
HTTPS | 'on' |
HTTP_ACCEPT | '*/*' |
HTTP_HOST | 'nuestropresupuesto.org' |
HTTP_USER_AGENT | 'claudebot' |
PATH_INFO | '/contrataciones/nacinales/adjudged/descargar-datos/' |
QUERY_STRING | 'year=2018' |
REMOTE_ADDR | '3.235.140.73' |
REMOTE_PORT | '49896' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'https' |
REQUEST_URI | '/contrataciones/nacinales/adjudged/descargar-datos/?year=2018' |
SCRIPT_NAME | '' |
SERVER_NAME | 'nuestropresupuesto.org' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/1.1' |
uwsgi.node | b'bourne' |
uwsgi.version | b'2.0.19.1' |
wsgi.errors | <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'> |
wsgi.file_wrapper | '' |
wsgi.input | <uwsgi._Input object at 0x7f821e516f30> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
config.settings.production
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | (('Kronoscode', 'lead@kronoscode.com'),) |
ADMIN_URL | '^admin/' |
ALLOWED_HOSTS | ['.nuestropresupuesto.org'] |
APPEND_SLASH | True |
APPS_DIR | <Path:/home/fitoria/observatorio/observatorio> |
AUTHENTICATION_BACKENDS | ('django.contrib.auth.backends.ModelBackend',) |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
AUTOSLUG_SLUGIFY_FUNCTION | 'slugify.slugify' |
CACHES | {'default': {'BACKEND': 'django_redis.cache.RedisCache', 'LOCATION': 'redis://127.0.0.1:6379/0', 'OPTIONS': {'CLIENT_CLASS': 'django_redis.client.DefaultClient', 'IGNORE_EXCEPTIONS': True}}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CELERY_APP_NAME | 'celery_presupuesto' |
CELERY_BROKER_URL | 'redis://localhost:6379/0' |
CELERY_IGNORE_RESULT | False |
CELERY_RESULT_BACKEND | 'redis://localhost:6379/0' |
CRISPY_TEMPLATE_PACK | 'bootstrap4' |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'HOST': 'localhost', 'NAME': 'observatorio', 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': 5432, 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'observatorio'}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_CONTENT_TYPE | 'text/html' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'observatorio <noreply@example.com>' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
DJANGO_APPS | ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'django.contrib.admin') |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[observatorio] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
FILE_CHARSET | 'utf-8' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', '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 | ('/home/fitoria/observatorio/observatorio/fixtures',) |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'django.contrib.admin', 'nested_admin', 'django_select2', 'xlsxwriter', 'import_export', 'ckeditor', 'mptt', 'observatorio.budgets', 'observatorio.internal', 'observatorio.contract', 'observatorio.projects', 'observatorio.revenue') |
INTERNAL_IPS | [] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'es-NI' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | ('/home/fitoria/observatorio/observatorio/locale',) |
LOCAL_APPS | ('observatorio.budgets', 'observatorio.internal', 'observatorio.contract', 'observatorio.projects', 'observatorio.revenue') |
LOGGING | {'disable_existing_loggers': False, 'filters': {'require_debug_false': {'()': 'django.utils.log.RequireDebugFalse'}}, 'formatters': {'verbose': {'format': '%(levelname)s %(asctime)s %(module)s ' '%(process)d %(thread)d %(message)s'}}, 'handlers': {'console': {'class': 'logging.StreamHandler', 'formatter': 'verbose', 'level': 'DEBUG'}, 'mail_admins': {'class': 'django.utils.log.AdminEmailHandler', 'filters': ['require_debug_false'], 'level': 'ERROR'}}, 'loggers': {'django.request': {'handlers': ['mail_admins'], 'level': 'ERROR', 'propagate': True}, 'django.security.DisallowedHost': {'handlers': ['console', 'mail_admins'], 'level': 'ERROR', 'propagate': True}}, 'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | (('Kronoscode', 'lead@kronoscode.com'),) |
MEDIA_ROOT | '/home/fitoria/observatorio/observatorio/media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ('django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.locale.LocaleMiddleware') |
MIDDLEWARE_CLASSES | ['django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware'] |
MIGRATION_MODULES | {'sites': 'observatorio.contrib.sites.migrations'} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
REDIS_LOCATION | 'redis://127.0.0.1:6379/0' |
ROOT_DIR | <Path:/home/fitoria/observatorio> |
ROOT_URLCONF | 'config.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SELECT2_CACHE_BACKEND | 'default' |
SELECT2_CACHE_PREFIX | 'select2_' |
SELECT2_CSS | '//cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min.css' |
SELECT2_JS | '//cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js' |
SERVER_EMAIL | 'observatorio <noreply@example.com>' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'config.settings.production' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_ID | 1 |
STATICFILES_DIRS | ('/home/fitoria/observatorio/observatorio/static',) |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/home/fitoria/observatorio/staticfiles' |
STATIC_URL | '/static/' |
TEMPLATES | [{'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/home/fitoria/observatorio/observatorio/templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.template.context_processors.i18n', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.tz', 'django.contrib.messages.context_processors.messages'], 'debug': True, 'loaders': [('django.template.loaders.cached.Loader', ['django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader'])]}}] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THIRD_PARTY_APPS | ('nested_admin', 'django_select2', 'xlsxwriter', 'import_export', 'ckeditor', 'mptt') |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'UTC' |
USE_ETAGS | False |
USE_I18N | True |
USE_L10N | False |
USE_THOUSAND_SEPARATOR | True |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'config.wsgi.application' |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
YEAR_MONTH_FORMAT | '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.