.../vsm/storage jquery returning 500 internal server error

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

.../vsm/storage jquery returning 500 internal server error

jcalcote
Hi Yaguang,

Here's an error dump of a 500 internal server error that's coming up regularly in the chrome browser console.

This issue occurs on two endpoints .../vsm/storage and .../vsm/monitor while parked on the VSM | Dashboard | Cluster Status screen:

ClientException at /vsm/storage/
An unexpected error prevented the server from fulfilling your request. (HTTP 500)

Request Method: GET
Request URL: https://parkcity/dashboard/vsm/storage/
Django Version: 1.6.1
Python Executable: /usr/bin/python
Python Version: 2.7.6
Python Path: ['/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../..', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/pymodules/python2.7', '/usr/share/vsm-dashboard/vsm_dashboard']
Server time: Thu, 14 Jan 2016 18:11:30 +0000
Installed Applications:
['vsm_dashboard',
 'django.contrib.contenttypes',
 'django.contrib.auth',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django.contrib.humanize',
 'compressor',
 'horizon',
 'vsm_dashboard.dashboards.vsm',
 'openstack_auth',
 'vsm_dashboard.dashboards.ifdash']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'horizon.middleware.HorizonMiddleware',
 'django.middleware.doc.XViewMiddleware',
 'django.middleware.locale.LocaleMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware')

Traceback:
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
  112.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  36.         return view_func(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  52.             return view_func(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  36.         return view_func(request, *args, **kwargs)
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/dashboards/vsm/overview/views.py" in storage
  101.     return HttpResponse(get_storage())
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/dashboards/vsm/overview/views.py" in get_storage
  276.     settings = vsmapi.get_setting_dict(None)
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/api/vsm.py" in get_setting_dict
  268.     setting_list = vsmclient(request).vsm_settings.list()
File "/usr/local/lib/python2.7/dist-packages/vsmclient/v1/vsm_settings.py" in list
  74.                          "settings")
File "/usr/local/lib/python2.7/dist-packages/vsmclient/base.py" in _list
  61.             resp, body = self.api.client.get(url)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in get
  213.         ret = self._cs_request(url, 'GET', **kwargs)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _cs_request
  173.                 self.authenticate()
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in authenticate
  314.                     auth_url = self._v2_auth(auth_url)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _v2_auth
  371.         self._authenticate(url, body)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _authenticate
  392.             allow_redirects=True)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in request
  159.             raise exceptions.from_response(resp, body)

Exception Type: ClientException at /vsm/storage/
Exception Value: An unexpected error prevented the server from fulfilling your request. (HTTP 500)
Request information:
GET: No GET data

POST: No POST data

FILES: No FILES data

COOKIES:
csrftoken = 'qmycfQONZ3KghrI47NXZIkRJgi1IzoXC'
sessionid = '.eJylU81u20YQdmTZSuRYTuM0f21SN21TummpJbnkkkFOaU9tkQJGtuBFEJbLYZa1RGrEpVAfCLSXvEKeJO8T9Em6pOTALRAkQE67OzP7zcw33_zVa_CSxUd1UclyAelUl6dQxEdbW1si8KXvMeZKklGRsZAGMkmzQAJQSaKID-oKltM8XUdT1wki3wU3ITQQNAFGWEZ9J_PBDViEPb63hBd5WUwLMQc--gkyUc_00Uln5PtTUWs13UCqHj_YREORLsq80PE9k0VpvXg8HjvE9n07cmwn8h_7hJDxyrUJbvMD832VS6im69_xFfNpneG3ArDPr19Ikwhpek35Q9N4UWnz6pz2xm7_AmeVLgt4uonbn4lKT4XU-SrXZ7jz8-t_Xv3OdzrG5P8w2gTD561niLvHf-OgwcsW303LucgLvNLg0OK9PMW9Z7zf8oFXn9V8tKn-R6HFrHyB-xMcWQ0eWF0b50RUeG2CnzR43Yovt8Sn87zgJ7_iYfzkHQyFjIXjlTPOwGFhCAG4jFIH0ghA0iRywiTzI-aQeNcArInDG6of98zT1PhpN-BQegFkSWRGSillIKSZNqPCZa4XGnnEe210oWFZiFlbz82Pr6dte1Ens1y2gLc-GrAW8cFFJqezvDit8PYk7huzPlsA3om3zXVVzTtTN5q756a6wc8sZdj_vMF7ljqM77-jHs_3fNZpUt34rwTVmkwR-TQkoSB-6lDPE1GSSAHSI4ErUyKYuvkh2LfUdi3U7Ym60ykhT6HQRpnqbvc83ci3Br6zLGdQ4f0JftHgkfHvnAunEmb322VYK9OsHn7JB-l6N_EBv3bR2bHxFR9sVhe_5gP4c5EvDfQ3MhUadD6H4dsLPuTDwZtLo8Neu7oyr8owII69OYdcyyF-e3yC1ssTPOaDxbL8A6TG7xp8ZKm9jqf3DRS_V1e7QaUwL_GHmvfbetFucGwgVM9437aKpO5WzumQPUZdAX4UpKGgLPRDLySZyDJIQs_zIsZ3NRSi0OiqR3VS2_8CDs5-dQ:1aJmEA:ruwhGFIaXb20XcfZAa_XBmfcCr0'

META:
mod_wsgi.listener_port = '443'
HTTP_REFERER = 'https://parkcity/dashboard/vsm/'
mod_wsgi.listener_host = ''
CONTEXT_DOCUMENT_ROOT = '/var/www/html'
SERVER_SOFTWARE = 'Apache/2.4.7 (Ubuntu)'
SCRIPT_NAME = u'/dashboard'
mod_wsgi.enable_sendfile = '0'
mod_wsgi.handler_script = ''
SERVER_SIGNATURE = '<address>Apache/2.4.7 (Ubuntu) Server at parkcity Port 443</address>\n'
REQUEST_METHOD = 'GET'
PATH_INFO = u'/vsm/storage/'
SERVER_PROTOCOL = 'HTTP/1.1'
QUERY_STRING = ''
SSL_TLS_SNI = 'parkcity'
HTTP_USER_AGENT = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.106 Safari/537.36'
HTTP_CONNECTION = 'keep-alive'
HTTP_COOKIE = 'csrftoken=qmycfQONZ3KghrI47NXZIkRJgi1IzoXC; sessionid=".eJylU81u20YQdmTZSuRYTuM0f21SN21TummpJbnkkkFOaU9tkQJGtuBFEJbLYZa1RGrEpVAfCLSXvEKeJO8T9Em6pOTALRAkQE67OzP7zcw33_zVa_CSxUd1UclyAelUl6dQxEdbW1si8KXvMeZKklGRsZAGMkmzQAJQSaKID-oKltM8XUdT1wki3wU3ITQQNAFGWEZ9J_PBDViEPb63hBd5WUwLMQc--gkyUc_00Uln5PtTUWs13UCqHj_YREORLsq80PE9k0VpvXg8HjvE9n07cmwn8h_7hJDxyrUJbvMD832VS6im69_xFfNpneG3ArDPr19Ikwhpek35Q9N4UWnz6pz2xm7_AmeVLgt4uonbn4lKT4XU-SrXZ7jz8-t_Xv3OdzrG5P8w2gTD561niLvHf-OgwcsW303LucgLvNLg0OK9PMW9Z7zf8oFXn9V8tKn-R6HFrHyB-xMcWQ0eWF0b50RUeG2CnzR43Yovt8Sn87zgJ7_iYfzkHQyFjIXjlTPOwGFhCAG4jFIH0ghA0iRywiTzI-aQeNcArInDG6of98zT1PhpN-BQegFkSWRGSillIKSZNqPCZa4XGnnEe210oWFZiFlbz82Pr6dte1Ens1y2gLc-GrAW8cFFJqezvDit8PYk7huzPlsA3om3zXVVzTtTN5q756a6wc8sZdj_vMF7ljqM77-jHs_3fNZpUt34rwTVmkwR-TQkoSB-6lDPE1GSSAHSI4ErUyKYuvkh2LfUdi3U7Ym60ykhT6HQRpnqbvc83ci3Br6zLGdQ4f0JftHgkfHvnAunEmb322VYK9OsHn7JB-l6N_EBv3bR2bHxFR9sVhe_5gP4c5EvDfQ3MhUadD6H4dsLPuTDwZtLo8Neu7oyr8owII69OYdcyyF-e3yC1ssTPOaDxbL8A6TG7xp8ZKm9jqf3DRS_V1e7QaUwL_GHmvfbetFucGwgVM9437aKpO5WzumQPUZdAX4UpKGgLPRDLySZyDJIQs_zIsZ3NRSi0OiqR3VS2_8CDs5-dQ:1aJmEA:ruwhGFIaXb20XcfZAa_XBmfcCr0"'
SERVER_NAME = 'parkcity'
REMOTE_ADDR = '10.50.33.52'
mod_wsgi.queue_start = '1452795090646125'
mod_wsgi.request_handler = 'wsgi-script'
wsgi.url_scheme = 'https'
PATH_TRANSLATED = '/var/www/html/vsm/storage/'
SERVER_PORT = '443'
wsgi.multiprocess = False
mod_wsgi.input_chunked = '0'
SERVER_ADDR = '10.55.91.195'
DOCUMENT_ROOT = '/var/www/html'
mod_wsgi.process_group = 'dashboard'
HTTP_X_REQUESTED_WITH = 'XMLHttpRequest'
SCRIPT_FILENAME = '/usr/share/vsm-dashboard/vsm_dashboard/wsgi/django.wsgi'
SERVER_ADMIN = 'webmaster@localhost'
wsgi.input = <mod_wsgi.Input object at 0x7f20989c82f0>
HTTP_HOST = 'parkcity'
CONTEXT_PREFIX = ''
wsgi.multithread = True
mod_wsgi.callable_object = 'application'
REQUEST_URI = '/dashboard/vsm/storage/'
HTTP_ACCEPT = 'application/json, text/javascript, */*; q=0.01'
wsgi.version = 
GATEWAY_INTERFACE = 'CGI/1.1'
wsgi.run_once = False
wsgi.errors = <mod_wsgi.Log object at 0x7f20989c8ef0>
REMOTE_PORT = '17174'
HTTP_ACCEPT_LANGUAGE = 'en-US,en;q=0.8'
REQUEST_SCHEME = 'https'
mod_wsgi.version = 
mod_wsgi.application_group = 'parkcity|/dashboard'
mod_wsgi.script_reloading = '1'
wsgi.file_wrapper = ''
CSRF_COOKIE = u'qmycfQONZ3KghrI47NXZIkRJgi1IzoXC'
HTTP_ACCEPT_ENCODING = 'gzip, deflate, sdch'

Settings:
Using settings module vsm_dashboard.settings
COMPRESS_URL = '/static/'
COMPRESS_OUTPUT_DIR = 'dashboard'
COMPRESS_TEMPLATE_FILTER_CONTEXT = {'STATIC_URL': '/static/'}
USE_L10N = True
COMPRESS_DATA_URI_MAX_SIZE = 1024
CSRF_COOKIE_SECURE = False
LANGUAGE_CODE = 'en'
ROOT_URLCONF = 'vsm_dashboard.urls'
MANAGERS = 
COMPRESS_CSS_HASHING_METHOD = 'hash'
DEFAULT_CHARSET = 'utf-8'
IGNORABLE_404_URLS = 
SESSION_SERIALIZER = 'django.contrib.sessions.serializers.PickleSerializer'
STATIC_ROOT = '/usr/share/vsm-dashboard/static'
COMPRESS_CLOSURE_COMPILER_ARGUMENTS = ''
USE_THOUSAND_SEPARATOR = False
COMPRESS_OFFLINE_MANIFEST = 'manifest.json'
ALLOWED_HOSTS = ['*']
MESSAGE_STORAGE = 'django.contrib.messages.storage.cookie.CookieStorage'
EMAIL_SUBJECT_PREFIX = '[Django] '
SEND_BROKEN_LINK_EMAILS = False
STATICFILES_FINDERS = 
SESSION_CACHE_ALIAS = 'default'
COMPRESS_CSSTIDY_ARGUMENTS = '--template=highest'
SESSION_COOKIE_DOMAIN = None
SESSION_COOKIE_NAME = 'sessionid'
ADMIN_FOR = 
TIME_INPUT_FORMATS = 
DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql', 'AUTOCOMMIT': True, 'ATOMIC_REQUESTS': False, 'NAME': 'dashboard', 'TEST_MIRROR': None, 'OPTIONS': {}, 'CONN_MAX_AGE': 0, 'TIME_ZONE': 'UTC', 'TEST_COLLATION': None, 'default-character-set': 'utf8', 'TEST_CHARSET': None, 'HOST': '10.55.91.195', 'USER': 'dashboard', 'TEST_NAME': None, 'PASSWORD': u'********************', 'PORT': ''}}
SITE_BRANDING = 'VSM Dashboard'
COMPRESS_YUI_BINARY = 'java -jar yuicompressor.jar'
FILE_UPLOAD_PERMISSIONS = None
FILE_UPLOAD_HANDLERS = 
DEFAULT_CONTENT_TYPE = 'text/html'
COMPRESS_CSS_COMPRESSOR = 'compressor.css.CssCompressor'
APPEND_SLASH = True
FIRST_DAY_OF_WEEK = 0
DATABASE_ROUTERS = []
YEAR_MONTH_FORMAT = 'F Y'
COMPRESS_OFFLINE_TIMEOUT = 31536000
STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage'
CACHES = {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
SERVER_EMAIL = 'root@localhost'
SESSION_COOKIE_PATH = '/'
HORIZON_IMAGES_ALLOW_UPLOAD = True
COMPRESS_PARSER = 'compressor.parser.HtmlParser'
COMPRESS_OFFLINE_CONTEXT = {'HORIZON_CONFIG': {'user_home': None, 'dashboards': ['vsm'], 'default_dashboard': 'vsm', 'auto_fade_alerts': {'delay': 3000, 'fade_duration': 1500, 'types': ['alert-success', 'alert-info']}, 'help_url': 'dashboard/vsm', 'exceptions': {'not_found': (<class 'keystoneclient.openstack.common.apiclient.exceptions.NotFound'>, <class 'vsmclient.exceptions.NotFound'>), 'unauthorized': (<class 'keystoneclient.openstack.common.apiclient.exceptions.Unauthorized'>, <class 'keystoneclient.openstack.common.apiclient.exceptions.Forbidden'>, <class 'vsmclient.exceptions.Unauthorized'>, <class 'vsmclient.exceptions.Forbidden'>), 'recoverable': (<class 'keystoneclient.openstack.common.apiclient.exceptions.ClientException'>, <class 'keystoneclient.openstack.common.apiclient.exceptions.AuthorizationFailure'>, <class 'vsmclient.exceptions.ClientException'>)}, 'ajax_queue_limit': 10}, 'STATIC_URL': '/static/'}
COMPRESS_CACHE_BACKEND = 'default'
MIDDLEWARE_CLASSES = 
USE_I18N = True
THOUSAND_SEPARATOR = ','
SECRET_KEY = u'********************'
LANGUAGE_COOKIE_NAME = 'django_language'
DEFAULT_INDEX_TABLESPACE = ''
BIN_DIR = '/usr/bin'
TRANSACTIONS_MANAGED = False
LOGGING_CONFIG = 'django.utils.log.dictConfig'
SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
TEMPLATE_LOADERS = 
WSGI_APPLICATION = None
TEMPLATE_DEBUG = True
X_FRAME_OPTIONS = 'SAMEORIGIN'
CSRF_COOKIE_NAME = 'csrftoken'
FORCE_SCRIPT_NAME = None
USE_X_FORWARDED_HOST = False
COMPRESS_CSSTIDY_BINARY = 'csstidy'
SHELL_IN_A_BOX_URL = 'https://10.239.44.50/dashboard/vsm_controller/'
SESSION_COOKIE_SECURE = False
COMPRESS_DEBUG_TOGGLE = 'None'
WEBROOT = '/dashboard'
COMPRESS_VERBOSE = False
CSRF_COOKIE_DOMAIN = None
FILE_CHARSET = 'utf-8'
DEBUG = True
SESSION_FILE_PATH = None
COMPRESS_JS_FILTERS = ['compressor.filters.jsmin.JSMinFilter']
DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
INSTALLED_APPS = ['vsm_dashboard', 'django.contrib.contenttypes', 'django.contrib.auth', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.humanize', 'compressor', 'horizon', 'vsm_dashboard.dashboards.vsm', 'openstack_auth', 'vsm_dashboard.dashboards.ifdash']
LANGUAGES_BIDI = 
COMMENTS_ALLOW_PROFANITIES = False
COMPRESS_YUI_CSS_ARGUMENTS = ''
STATICFILES_DIRS = 
PREPEND_WWW = False
SECURE_PROXY_SSL_HEADER = None
LOCAL_PATH = '/usr/share/vsm-dashboard/vsm_dashboard/local'
SESSION_COOKIE_HTTPONLY = True
DEBUG_PROPAGATE_EXCEPTIONS = False
MONTH_DAY_FORMAT = 'F j'
LOGIN_URL = '/dashboard/auth/login/'
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
OPENSTACK_KEYSTONE_URL = u'********************'
TIME_FORMAT = 'P'
COMPRESS_STORAGE = 'compressor.storage.CompressorFileStorage'
HORIZON_CONFIG = {'user_home': None, 'dashboards': ['vsm'], 'default_dashboard': 'vsm', 'auto_fade_alerts': {'delay': 3000, 'fade_duration': 1500, 'types': ['alert-success', 'alert-info']}, 'help_url': 'dashboard/vsm', 'exceptions': {'not_found': (<class 'keystoneclient.openstack.common.apiclient.exceptions.NotFound'>, <class 'vsmclient.exceptions.NotFound'>), 'unauthorized': (<class 'keystoneclient.openstack.common.apiclient.exceptions.Unauthorized'>, <class 'keystoneclient.openstack.common.apiclient.exceptions.Forbidden'>, <class 'vsmclient.exceptions.Unauthorized'>, <class 'vsmclient.exceptions.Forbidden'>), 'recoverable': (<class 'keystoneclient.openstack.common.apiclient.exceptions.ClientException'>, <class 'keystoneclient.openstack.common.apiclient.exceptions.AuthorizationFailure'>, <class 'vsmclient.exceptions.ClientException'>)}, 'ajax_queue_limit': 10}
AUTH_USER_MODEL = 'auth.User'
DATE_INPUT_FORMATS = 
COMPRESS_CSS_FILTERS = 'compressor.filters.css_default.CssAbsoluteFilter'
AUTHENTICATION_BACKENDS = 'openstack_auth.backend.KeystoneBackend'
EMAIL_HOST_PASSWORD = u'********************'
COMPRESS_REBUILD_TIMEOUT = 2592000
PASSWORD_RESET_TIMEOUT_DAYS = u'********************'
CACHE_MIDDLEWARE_ALIAS = 'default'
ROOT_PATH = '/usr/share/vsm-dashboard/vsm_dashboard'
SESSION_SAVE_EVERY_REQUEST = False
ADMIN_MEDIA_PREFIX = '/static/admin/'
NUMBER_GROUPING = 0
SESSION_ENGINE = 'django.contrib.sessions.backends.signed_cookies'
CSRF_FAILURE_VIEW = 'django.views.csrf.csrf_failure'
CSRF_COOKIE_PATH = '/'
COMPRESS_CACHE_KEY_FUNCTION = u'********************'
LOGIN_REDIRECT_URL = '/dashboard'
DECIMAL_SEPARATOR = '.'
COMPRESS_PRECOMPILERS = 
COMPRESS_MTIME_DELAY = 10
LOCALE_PATHS = 
TEMPLATE_STRING_IF_INVALID = ''
LOGOUT_URL = '/dashboard/auth/logout/'
EMAIL_USE_TLS = False
TEMPLATE_DIRS = '/usr/share/vsm-dashboard/vsm_dashboard/templates'
FIXTURE_DIRS = 
EMAIL_HOST = 'localhost'
DATE_FORMAT = 'N j, Y'
MEDIA_ROOT = '/usr/share/vsm-dashboard/media'
OPENSTACK_QUANTUM_NETWORK = {'enable_lb': False}
DEFAULT_EXCEPTION_REPORTER_FILTER = 'horizon.exceptions.HorizonReporterFilter'
ADMINS = 
FORMAT_MODULE_PATH = None
DEFAULT_FROM_EMAIL = 'webmaster@localhost'
COMPRESS_ROOT = '/usr/share/vsm-dashboard/static'
MEDIA_URL = '/media/'
DATETIME_FORMAT = 'N j, Y, P'
COMPRESS_YUI_JS_ARGUMENTS = ''
OPENSTACK_KEYSTONE_BACKEND = u'********************'
API_RESULT_PAGE_SIZE = u'********************'
OPENSTACK_KEYSTONE_DEFAULT_ROLE = u'********************'
COMPRESS_JS_COMPRESSOR = 'compressor.js.JsCompressor'
DISALLOWED_USER_AGENTS = 
ALLOWED_INCLUDE_ROOTS = 
COMPRESS_MINT_DELAY = 30
LOGGING = {'loggers': {'vsm_dashboard': {'propagate': False, 'handlers': ['console']}, 'horizon': {'propagate': False, 'handlers': ['console']}, 'requests': {'propagate': False, 'handlers': ['null']}, 'nose.plugins.manager': {'propagate': False, 'handlers': ['console']}, 'django.db.backends': {'propagate': False, 'handlers': ['null']}, 'keystoneclient': {'propagate': False, 'handlers': ['console']}}, 'version': 1, 'disable_existing_loggers': False, 'handlers': {'null': {'class': 'django.utils.log.NullHandler', 'level': 'DEBUG'}, 'console': {'class': 'logging.StreamHandler', 'level': 'INFO'}}}
SHORT_DATE_FORMAT = 'm/d/Y'
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
COMPRESS_ENABLED = True
OPENSTACK_HYPERVISOR_FEATURES = {'can_set_mount_point': False, 'can_encrypt_volumes': False}
CACHE_MIDDLEWARE_KEY_PREFIX = u'********************'
COMPRESS_OFFLINE = True
TIME_ZONE = 'UTC'
FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
DEFAULT_TABLESPACE = ''
TEMPLATE_CONTEXT_PROCESSORS = 
OPENSTACK_HOST = '10.55.91.195'
SESSION_COOKIE_AGE = 1209600
SETTINGS_MODULE = 'vsm_dashboard.settings'
USE_ETAGS = False
LANGUAGES = 
COMPRESS_CLOSURE_COMPILER_BINARY = 'java -jar compiler.jar'
FILE_UPLOAD_TEMP_DIR = None
INTERNAL_IPS = 
STATIC_URL = '/static/'
EMAIL_PORT = 25
USE_TZ = True
SHORT_DATETIME_FORMAT = 'm/d/Y P'
PASSWORD_HASHERS = u'********************'
KEYSTONE_VSM_SERVICE_PASSWORD = u'********************'
ABSOLUTE_URL_OVERRIDES = {}
CACHE_MIDDLEWARE_SECONDS = 600
CSRF_COOKIE_HTTPONLY = False
DATETIME_INPUT_FORMATS = 
API_RESULT_LIMIT = u'********************'
EMAIL_HOST_USER = ''
PROFANITIES_LIST = u'********************'

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 500 page.

Thanks,
John
Reply | Threaded
Open this post in threaded view
|

Re: .../vsm/storage jquery returning 500 internal server error

jcalcote
Yaguang,

This error is occurring on many backend API calls - I do not think it is related to the api call that is being made, but rather to authentication failure on the api call. I've seen this issue occur on the following api calls in the browser console:

dashboard/vsm/bandwidth/
dashboard/vsm/cluster/
dashboard/vsm/osd/
dashboard/vsm/latency/
dashboard/vsm/IOPS/
dashboard/vsm/PG/
dashboard/vsm/storage/
dashboard/vsm/monitor/
dashboard/vsm/capacity/
dashboard/vsm/CPU/

The error (according to the stack trace) is coming from the vsm service, not the dashboard code:

Traceback:
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
  112.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  36.         return view_func(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  52.             return view_func(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  36.         return view_func(request, *args, **kwargs)
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/dashboards/vsm/overview/views.py" in OSD
  89.     return HttpResponse(get_OSD())
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/dashboards/vsm/overview/views.py" in get_OSD
  177.     settings = vsmapi.get_setting_dict(None)
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/api/vsm.py" in get_setting_dict
  268.     setting_list = vsmclient(request).vsm_settings.list()
...
...and now it switches to the client...
...
File "/usr/local/lib/python2.7/dist-packages/vsmclient/v1/vsm_settings.py" in list
  74.                          "settings")
File "/usr/local/lib/python2.7/dist-packages/vsmclient/base.py" in _list
  61.             resp, body = self.api.client.get(url)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in get
  213.         ret = self._cs_request(url, 'GET', **kwargs)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _cs_request
  173.                 self.authenticate()
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in authenticate
  314.                     auth_url = self._v2_auth(auth_url)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _v2_auth
  371.         self._authenticate(url, body)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _authenticate
  392.             allow_redirects=True)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in request
  159.             raise exceptions.from_response(resp, body)

Unfortunately, I cannot trace the problem - I just don't have enough background in the system to understand where it's coming from beneath the vsmclient api.

Any thoughts?

John
Reply | Threaded
Open this post in threaded view
|

RE: .../vsm/storage jquery returning 500 internal server error

ywang19
Administrator

Could you tell me how to reproduce them?

 

 

From: jcalcote [via vsm-discuss] [mailto:ml-node+[hidden email]]
Sent: Tuesday, January 19, 2016 4:45 AM
To: Wang, Yaguang
Subject: Re: .../vsm/storage jquery returning 500 internal server error

 

Yaguang,

This error is occurring on many backend API calls - I do not think it is related to the api call that is being made, but rather to authentication failure on the api call. I've seen this issue occur on the following api calls in the browser console:

dashboard/vsm/bandwidth/
dashboard/vsm/cluster/
dashboard/vsm/osd/
dashboard/vsm/latency/
dashboard/vsm/IOPS/
dashboard/vsm/PG/
dashboard/vsm/storage/
dashboard/vsm/monitor/
dashboard/vsm/capacity/
dashboard/vsm/CPU/

The error (according to the stack trace) is coming from the vsm service, not the dashboard code:

 
Traceback:
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response
  112.                     response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  36.         return view_func(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  52.             return view_func(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/horizon/decorators.py" in dec
  36.         return view_func(request, *args, **kwargs)
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/dashboards/vsm/overview/views.py" in OSD
  89.     return HttpResponse(get_OSD())
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/dashboards/vsm/overview/views.py" in get_OSD
  177.     settings = vsmapi.get_setting_dict(None)
File "/usr/share/vsm-dashboard/vsm_dashboard/wsgi/../../vsm_dashboard/api/vsm.py" in get_setting_dict
  268.     setting_list = vsmclient(request).vsm_settings.list()
File "/usr/local/lib/python2.7/dist-packages/vsmclient/v1/vsm_settings.py" in list
  74.                          "settings")
...

...and now it switches to the client...

 
...
File "/usr/local/lib/python2.7/dist-packages/vsmclient/base.py" in _list
  61.             resp, body = self.api.client.get(url)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in get
  213.         ret = self._cs_request(url, 'GET', **kwargs)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _cs_request
  173.                 self.authenticate()
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in authenticate
  314.                     auth_url = self._v2_auth(auth_url)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _v2_auth
  371.         self._authenticate(url, body)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in _authenticate
  392.             allow_redirects=True)
File "/usr/local/lib/python2.7/dist-packages/vsmclient/client.py" in request
  159.             raise exceptions.from_response(resp, body)


Unfortunately, I cannot trace the problem - I just don't have enough background in the system to understand where it's coming from beneath the vsmclient api.

Any thoughts?

John


If you reply to this email, your message will be added to the discussion below:

http://vsm-discuss.33411.n7.nabble.com/vsm-storage-jquery-returning-500-internal-server-error-tp374p388.html

To start a new topic under vsm-discuss, email [hidden email]
To unsubscribe from vsm-discuss, click here.
NAML

Reply | Threaded
Open this post in threaded view
|

RE: .../vsm/storage jquery returning 500 internal server error

jcalcote
Reproduction is trivial - just deploy VSM (we deploy with a private copy of keystone by not specifying an external keystone server in the manifest and allowing VSM to create one for us). We usually deploy on the controller node. Our general configuration is 2 OSD nodes with at least 4 OSDs each (though I can't imagine how this would matter). We have three monitors - the two OSD nodes and the controller node serve as the three monitors in our test configuration.

Then just open the chrome browser and login, change the 'admin' password, press F12 and open the browser debug console. Just watch the console - after a few minutes some of these 500 internal server errors will start appearing. They'll appear on a semi-regular interval between 1 and 5 minutes apart on random screen update endpoints (xhrd requests).

As I describe this setup to you, I realize also that I may be looking at a system that's been running for several days before I notice these 500 errors. Not sure if this is relevant or not.

John
Reply | Threaded
Open this post in threaded view
|

RE: .../vsm/storage jquery returning 500 internal server error

jcalcote
These errors may be being caused by an endless loop in vsm-controller. We found the issue in the vsm-discuss list where someone points out that the diamond_collect_interval is zero and that's causing an endless loop. We noticed that the fix you applied only fixed one of the three places in that file (vsm/db/sqlalchemy/api.py). Ryan's sending a patch later today.

John
Reply | Threaded
Open this post in threaded view
|

RE: .../vsm/storage jquery returning 500 internal server error

ywang19
Administrator
In reply to this post by jcalcote

I’m suspecting possible mysql access overloading due to regular performance metrics updates.

 

 

From: jcalcote [via vsm-discuss] [mailto:ml-node+[hidden email]]
Sent: Tuesday, January 19, 2016 11:57 PM
To: Wang, Yaguang
Subject: RE: .../vsm/storage jquery returning 500 internal server error

 

Reproduction is trivial - just deploy VSM (we deploy with a private copy of keystone by not specifying an external keystone server in the manifest and allowing VSM to create one for us). We usually deploy on the controller node. Our general configuration is 2 OSD nodes with at least 4 OSDs each (though I can't imagine how this would matter). We have three monitors - the two OSD nodes and the controller node serve as the three monitors in our test configuration.

Then just open the chrome browser and login, change the 'admin' password, press F12 and open the browser debug console. Just watch the console - after a few minutes some of these 500 internal server errors will start appearing. They'll appear on a semi-regular interval between 1 and 5 minutes apart on random screen update endpoints (xhrd requests).

As I describe this setup to you, I realize also that I may be looking at a system that's been running for several days before I notice these 500 errors. Not sure if this is relevant or not.

John


If you reply to this email, your message will be added to the discussion below:

http://vsm-discuss.33411.n7.nabble.com/vsm-storage-jquery-returning-500-internal-server-error-tp374p392.html

To start a new topic under vsm-discuss, email [hidden email]
To unsubscribe from vsm-discuss, click here.
NAML