Bug 1240532

Summary: ceilometer dependency issue
Product: Red Hat OpenStack Reporter: Amit Ugol <augol>
Component: openstack-ceilometerAssignee: Chris Dent <chdent>
Status: CLOSED ERRATA QA Contact: Yurii Prokulevych <yprokule>
Severity: medium Docs Contact:
Priority: high    
Version: 7.0 (Kilo)CC: augol, eglynn, jruzicka, jschluet, lbopf, mburns, pbrady, pkilambi, rhel-osp-director-maint, rrosa, yeylon
Target Milestone: ga   
Target Release: 7.0 (Kilo)   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: openstack-ceilometer-2015.1.0-7.el7ost Doc Type: Bug Fix
Doc Text:
Previously, when a ceilometer polling extension could not be loaded, an ERROR message was logged. This was misleading in cases where the failure to load a module was the expected outcome, such as when an extension was optional or its dependent modules were not available. Now, the log messages have been changed to WARN level to make it clear that there is no serious fault.
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-08-05 13:28:54 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:
Attachments:
Description Flags
log none

Description Amit Ugol 2015-07-07 08:09:41 UTC
Created attachment 1049137 [details]
log

Ceilmoeter complains about missing modules in the log (see attached log).
This is on a controller node.
The tripleo environment was not set to use Ceph, though there are some ceph packages installed.

# rpm -qa | grep ceph
ceph-mon-0.94.1-13.el7cp.x86_64
ceph-0.94.1-13.el7cp.x86_64
ceph-osd-0.94.1-13.el7cp.x86_64
ceph-common-0.94.1-13.el7cp.x86_64


# rpm -qa | grep ceilometer
openstack-ceilometer-notification-2015.1.0-6.el7ost.noarch
openstack-ceilometer-api-2015.1.0-6.el7ost.noarch
python-ceilometer-2015.1.0-6.el7ost.noarch
openstack-ceilometer-collector-2015.1.0-6.el7ost.noarch
openstack-ceilometer-compute-2015.1.0-6.el7ost.noarch
python-ceilometerclient-1.0.13-1.el7ost.noarch
openstack-ceilometer-common-2015.1.0-6.el7ost.noarch
openstack-ceilometer-alarm-2015.1.0-6.el7ost.noarch
openstack-ceilometer-central-2015.1.0-6.el7ost.noarch

If there is something missing but its OK, then the ERROR log level is confusing.

Comment 5 Chris Dent 2015-07-07 12:19:39 UTC
There are basically two things going on here, neither of which is ideal, but both of which are expected behaviors:

* The rgw support is configured as a polling extension in ceilometer's entry_points. When the polling agent starts up it will attempt to import the extension. If awsauth is not available in the python environment this will fail and the extension will not be used for the duration of the polling agent's life. This is expected behavior for optional extensions. It is, however, a bit weird: We configure entry_points that are optional and we know will fail.
* When that import failure happens, the exception is logged as ERROR which seems a bit severe for something that we expect to happen. WARNING might make more sense.

Short term options:

* Accept the ERROR as normal and ignore it.
* Include awsauth so that the rgw code can import. This might have some knock on effects: The rgw extension will try to run and may produce further warnings about resources not being available.

Medium term options:

* Consider registering an upstream bug that the ERROR should be a WARN

Longer term options:

* Change how polling agents configure their extensions so they only load the things they actually use. This is unlikely to be visible any time soon.

Comment 9 Yurii Prokulevych 2015-07-21 09:24:34 UTC
After restarting openstack-ceilometer-central service:
2015-07-21 05:19:29.726 2743 WARNING ceilometer.agent.base [-] Failed to import extension for rgw.usage: No module named awsauth
2015-07-21 05:19:29.731 2743 WARNING ceilometer.agent.base [-] Failed to import extension for rgw.containers.objects: No module named awsauth
2015-07-21 05:19:29.743 2743 WARNING ceilometer.agent.base [-] Failed to import extension for rgw.objects.size: No module named awsauth
2015-07-21 05:19:29.772 2743 WARNING ceilometer.agent.base [-] Failed to import extension for rgw.objects: No module named awsauth
2015-07-21 05:19:29.774 2743 WARNING ceilometer.agent.base [-] Failed to import extension for rgw.containers.objects.size: No module named awsauth
2015-07-21 05:19:29.781 2743 WARNING ceilometer.agent.base [-] Failed to import extension for rgw.objects.containers: No module named awsauth

Comment 11 errata-xmlrpc 2015-08-05 13:28:54 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://access.redhat.com/errata/RHEA-2015:1548