Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

openstack_nova_security_groups metric unavailable #221

Open
icinga1312 opened this issue Feb 8, 2022 · 7 comments
Open

openstack_nova_security_groups metric unavailable #221

icinga1312 opened this issue Feb 8, 2022 · 7 comments

Comments

@icinga1312
Copy link

exporter errored with
ERRO[0036] Failed to collect metric for exporter: nova, error: failed to collect metric: security_groups, error: Resource not found: [GET https://my.domain.cloud:8774/v2.1/os-security-groups], error message: {"itemNotFound": {"code": 404, "message": "The resource could not be found."}} source="exporter.go:123"
nova droped '/os-security-group*' since 2.36 api microversion
https://docs.openstack.org/nova/wallaby/reference/api-microversion-history.html#id33

maybe openstack exporter should drop the metric too

nova: wallaby
openstack-exporter: 1.4.0, master

@Hybrid512
Copy link
Contributor

Not pretty sure that most of the Openstack clusters installed out there are all >=wallaby.
Would be better to return some null value (0, -1, ... anything else) in case of error from gophercloud instead of throwing an error of that kind.
Or maybe support Openstack versioning and deprecations in the API but it would mean a lot of work and this is useless since the exporter rely on gophercloud which should do it already.

@gtherond
Copy link

This endpoint was dropped with 2.36 microversion, even Victoria clusters are impacted.
I'm currently on victoria with some of ours.

@priteau
Copy link
Contributor

priteau commented Jun 16, 2022

Please note that you can set OS_COMPUTE_API_VERSION as an environment variable to get this metric to work again.

@gtherond
Copy link

gtherond commented Jun 30, 2022

Please note that you can set OS_COMPUTE_API_VERSION as an environment variable to get this metric to work again.

Yes, you're right, but I don't understand where it fit with this issue? We want the exporter to target the latest API for compute while still getting the security group (not the old os-security-group api endpoint which is deprecated) list, by using the env var we won't benefit from the latest data/information available with API.

Or did I missed something?

@mstinsky
Copy link

mstinsky commented Sep 28, 2022

I just ran into the same issue as this here, aswell as #249.

Are we really meant to pin the microversion for the exporter? If so I think the exporter should pin itself inside the api calls, shoulnd it?

EDIT:
I just had a look into the microversion releases, nova microversion 2.36 is newton release. So this is deprecated since a long time. I would argue that its not the worst idea to just remove those from the exporter.

@mstinsky
Copy link

Please note that you can set OS_COMPUTE_API_VERSION as an environment variable to get this metric to work again.

Another side node for this. Pinning the microversion is not possible in this case as the api was completely removed with openstack ussuri.

@gtherond
Copy link

I actually use ZED and put the microversion using the environment variable, but as openstack API gives a way to discover available and supported version, we shouldn't have to do that when looking to target the currently latest available version on the targeted cloud.

We should use that feature only when targeting either OLD/DEPRECATED or EDGE version that aren't yet considered as prod version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants