Bug 1393457

Summary: OPS Tools | Availability Monitoring | OS Checks | Getting Critical Traceback on neutron_api check when the check fails. Should be an appropriate error message.
Product: Red Hat OpenStack Reporter: Leonid Natapov <lnatapov>
Component: sensuAssignee: Martin Magr <mmagr>
Status: CLOSED ERRATA QA Contact: Leonid Natapov <lnatapov>
Severity: high Docs Contact:
Priority: unspecified    
Version: 10.0 (Newton)CC: mlopes, mrunge, oblaut
Target Milestone: gaKeywords: Triaged
Target Release: 10.0 (Newton)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: osops-tools-monitoring-oschecks-0.1-0.8.9f8354bgit.el7ost Doc Type: Bug Fix
Doc Text:
Previously, during connection problems, the neutron_api check would display a traceback instead of a clear message. With this update, the check now shows a clear message when there is a connection problem.
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-12-14 16:36:27 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Leonid Natapov 2016-11-09 15:25:10 UTC
OS Checks | Getting Critical Traceback on neutron_api check when the check fails. Should be an appropriate error message.

----


    NEUTRON_API
    ------------
     
    output
    No handlers could be found for logger "keystoneauth.identity.generic.base"
    CRITICAL: Traceback (most recent call last):
      File "/usr/lib/python2.7/site-packages/oschecks/utils.py", line 110, in safe_run
        method()
      File "/usr/lib/python2.7/site-packages/oschecks/neutron.py", line 40, in _check_neutron_api
        options, args, client = neutron.setup()
      File "/usr/lib/python2.7/site-packages/oschecks/utils.py", line 241, in setup
        return options, args, self.neutron.client_manager.neutron
      File "/usr/lib/python2.7/site-packages/neutronclient/common/clientmanager.py", line 41, in __get__
        self._handle = self.factory(instance)
      File "/usr/lib/python2.7/site-packages/neutronclient/neutron/client.py", line 34, in make_client
        instance.initialize()
      File "/usr/lib/python2.7/site-packages/neutronclient/common/clientmanager.py", line 122, in initialize
        httpclient.authenticate()
      File "/usr/lib/python2.7/site-packages/neutronclient/client.py", line 328, in authenticate
        self.get_token()
      File "/usr/lib/python2.7/site-packages/keystoneauth1/adapter.py", line 127, in get_token
        return self.session.get_token(auth or self.auth)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 755, in get_token
        return (self.get_auth_headers(auth) or {}).get('X-Auth-Token')
      File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 733, in get_auth_headers
        return auth.get_headers(self, **kwargs)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/plugin.py", line 90, in get_headers
        token = self.get_token(session)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 90, in get_token
        return self.get_access(session).auth_token
      File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 136, in get_access
        self.auth_ref = self.get_auth_ref(session)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/generic/base.py", line 181, in get_auth_ref
        return self._plugin.get_auth_ref(session, **kwargs)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/v2.py", line 65, in get_auth_ref
        authenticated=False, log=False)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 681, in post
        return self.request(url, 'POST', **kwargs)
      File "/usr/lib/python2.7/site-packages/positional/__init__.py", line 101, in inner
        return wrapped(*args, **kwargs)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 555, in request
        resp = send(**kwargs)
      File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 605, in _send_request
        raise exceptions.ConnectFailure(msg)
    ConnectFailure: Unable to establish connection to http://10.35.169.17:5000/v2.0/tokens: HTTPConnectionPool(host='10.35.169.17', port=5000): Max retries exceeded with url: /v2.0/tokens (Caused by NewConnectionError('<requests.packages.urllib3.connection.HTTPConnection object at 0x3a29590>: Failed to establish a new connection: [Errno 113] No route to host',))

Comment 2 Leonid Natapov 2016-11-23 14:43:04 UTC
Fixed.
tested with osops-tools-monitoring-oschecks-0.1-0.8.9f8354bgit.el7ost

Comment 4 errata-xmlrpc 2016-12-14 16:36:27 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-2950.html