summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Add 'check_requirements' job to CI"HEADmasterZuul2023-05-102-1/+2
|\
| * Add 'check_requirements' job to CIErno Kuvaja2023-05-052-1/+2
| | | | | | | | | | | | Drops tenacity cap to align with global requirements. Change-Id: Id3fbbc1844c0c94042c89544c10070176798263a
* | Imported Translations from ZanataOpenStack Proposal Bot2023-05-093-28/+44
|/ | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I41671793e5c3249c8e5fd222bf37f83392c7c92a
* Merge "Make TCP publisher log warning instead of failing."Zuul2023-04-241-3/+7
|\
| * Make TCP publisher log warning instead of failing.Jaromír Wysoglad2023-04-241-3/+7
| | | | | | | | Change-Id: I56ca759c2d43830f4e342130f27b75bdba65c469
* | Add vanity names to notification samplesYadnesh Kulkarni2023-04-045-32/+74
|/ | | | | | | | | | This change adds "project_name" and "user_name" fields to the polling samples created from notifications of "event_type". Also move caching helper functions into "ceilometer/cache_utils.py" to make them accessible throughout the project. Change-Id: I68bd4ee096b28a2fd952e749d56a6b3eed9bfb94
* Merge "Add vanity names to telemetry polling notifications"Zuul2023-03-241-0/+2
|\
| * Add vanity names to telemetry polling notificationsYadnesh Kulkarni2023-03-021-0/+2
| | | | | | | | | | | | | | | | This change adds "project_name" and "user_name" fields to polling samples which is related to the identification of vanity names change 79454d6b22787627ae6239aa7b2707101ba30212 Change-Id: I5fbe97439e7fadbdd8fd2641c49f1c88fbc416fc
* | Merge "[coordination] backend_url should be secret"Zuul2023-03-221-0/+1
|\ \
| * | [coordination] backend_url should be secretTakashi Kajinami2023-03-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The backend_url option can sometimes contain secrets. For example when redis coordination backend is used and authentication is enabled in redis, the plain redis password is put as an URL element. [coordination] backend_url=redis://:password@127.0.0.1:6379 Closes-Bug: #2012246 Change-Id: I9b61dd459445e0d32a305835fb05a072c32848a4
* | | Merge "Imported Translations from Zanata"Zuul2023-03-212-6/+24
|\ \ \ | |/ / |/| |
| * | Imported Translations from ZanataOpenStack Proposal Bot2023-03-062-6/+24
| | | | | | | | | | | | | | | | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I53744da2c278c78eb43681254ec5fe619aa65fd0
* | | Merge "Update master for stable/2023.1"Zuul2023-03-062-0/+7
|\ \ \ | |/ / |/| |
| * | Update master for stable/2023.1OpenStack Release Bot2023-03-032-0/+7
| |/ | | | | | | | | | | | | | | | | | | | | | | Add file to the reno documentation build to show release notes for stable/2023.1. Use pbr instruction to increment the minor version number automatically so that master versions are higher than the versions on stable/2023.1. Sem-Ver: feature Change-Id: Icb9c936d96a63fde45bb2a9b32291932b9df3381
* | Merge "Enable volume metrics by default"Zuul2023-03-032-0/+8
|\ \ | |/ |/|
| * Enable volume metrics by defaultTakashi Kajinami2023-02-212-0/+8
| | | | | | | | | | | | | | | | Now cinder is quite commonly used thus enabling volume meters would help users to gather metrics from it easily, without modifying the default file. Change-Id: Ibdeffd65053fb55f3925590f7c1f9afa6f4383af
* | Merge "Remove SNMP metrics from default polling"20.0.0.0rc120.0.0Zuul2023-02-212-18/+6
|\ \ | |/
| * Remove SNMP metrics from default pollingTakashi Kajinami2023-02-132-18/+6
| | | | | | | | | | | | | | | | | | | | These metrics are no longer supported since we removed GenericHardwareDeclarativePollster by [1]. [1] a28cef7036edc2ecb0f60b5d27a97735482e7f98 Closes-Bug: #2007108 Change-Id: I2437f311ae0f975570c7b01bfa0f045af7cfeab4
* | Merge "Post individual JSONs instead of the whole list"Zuul2023-02-211-1/+1
|\ \
| * | Post individual JSONs instead of the whole listMariusz Karpiarz2022-10-281-1/+1
| | | | | | | | | | | | Change-Id: I5114222c1ead7858c0ed9ddafe7c23496608a6c6
* | | Merge "Fix gnocchi install from git"Zuul2023-02-145-4/+59
|\ \ \
| * | | Fix gnocchi install from gitSean Mooney2023-02-035-4/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent changes to git prevent git repos from being parsed if they are not owned by the current user as part of a CVE fix. Some project use stevedore to load plugins and this is broken if gnocchi is installed from git via "sudo pip install". This change uses devstacks git_clone to ensure that the gnocchi repos is clonned under $DEST aka /opt/stack as the current user not root. It then uses pip install -e to install the precloned repo. To enable this GNOCCHI_REPO and GNOCCHI_BRANCH are intoduced and the non standard GNOCCHI_GIT_PATH is removed. A long standing comment to stop installing from git after Gnocchi 4.0 is adressed by only installing from git if gnocchi is listed in LIBS_FROM_GIT. However since 4.4.2 is currently incompatible with openstacks upper-constraits file the ci will continue to git however the git repo will now be prepared by zuul using required-projects. This will have the side effect of allowing Depends on to work for PRs to gnocchi however testing that is out of scope of this patch. This patch adds a sample local.conf that can be used to deploy locally for devopment. Depends-On: https://review.opendev.org/c/openstack/telemetry-tempest-plugin/+/872350 Change-Id: I833ea3bffb18bec063423450be0f3b8ff92f9a5a
* | | | Imported Translations from ZanataOpenStack Proposal Bot2023-02-101-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I7ce6405ac5438812c46d266f6c2ca85c8bfbe8dd
* | | | Imported Translations from ZanataOpenStack Proposal Bot2023-02-041-4/+4
|/ / / | | | | | | | | | | | | | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: Ia6a167184adbb879017f3b75b6c229a7411a6694
* | | Imported Translations from ZanataOpenStack Proposal Bot2023-01-272-8/+21
| |/ |/| | | | | | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I811d00ac0995980b4f6ab17b580f164d956d0bfe
* | Merge "Add TCP publisher"Zuul2023-01-204-1/+321
|\ \
| * | Add TCP publisherjwysogla2023-01-134-1/+321
| | | | | | | | | | | | | | | | | | | | | This commit adds a TCP publisher. The publisher works similarly to the UDP publisher. Change-Id: Iac662018039e74ad59ac9c7fa4db994da540ef2f
* | | Make tox.ini tox 4.0 compatibleEmma Foley2023-01-041-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | * passenv fixed as space separated list is not allowed any more * doc target uses requirements from requirements.txt as well as doc/requirements * skipsdist is not supported Change-Id: Ib60d63499fd021d9ec25357d20685573b18ade3e
* | | Merge "NoUniqueMatch: ClientException on Gnocchi publisher"Zuul2022-12-212-12/+42
|\ \ \
| * | | NoUniqueMatch: ClientException on Gnocchi publisherRafael Weingärtner2022-12-082-12/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ceilometer can ignore/discard measurements that come from possible VMs that can be used to host Gnocchi. The assumption is that one can use OpenStack itself to host the VMs that are used to run Gnocchi. The configuration is called `filter_project`. This configuration can be used in `event_pipeline.yaml` and `pipeline.yaml` configuration files. However, when this config is not used, it has a default project name for Gnocchi as `service`, as we can see in the following code snippet: ``` def __init__(self, conf, parsed_url): super(GnocchiPublisher, self).__init__(conf, parsed_url) # TODO(jd) allow to override Gnocchi endpoint via the host in the URL options = urlparse.parse_qs(parsed_url.query) self.filter_project = options.get('filter_project', ['service'])[-1] ``` Which means that if somebody creates a project called `service`, this project would not push measurements to Gnocchi. This configuration is then used by the following code: ``` def gnocchi_project_id(self): if self._gnocchi_project_id is not None: return self._gnocchi_project_id with self._gnocchi_project_id_lock: if self._gnocchi_project_id is None: try: project = self._ks_client.projects.find( name=self.filter_project, domain=self.filter_domain) except ka_exceptions.NotFound: LOG.warning('filtered project not found in keystone,' ' ignoring the filter_project ' 'option') self.filter_project = None return None except Exception: LOG.exception('fail to retrieve filtered project ') raise self._gnocchi_project_id = project.id LOG.debug("filtered project found: %s", self._gnocchi_project_id) return self._gnocchi_project_id ``` Basically, this method will look for the project ID of the project name that is configured in `filter_project` option. If it does not find any project, it returns None, and it changes the value of `filter_project` to None as well. Before this `gnocchi_project_id` method/property is called, there is a verification if `filter_project` is None. Therefore, it is assumed that when we set the value of `filter_project` to None, this method (`gnocchi_project_id`) would not be called anymore. However, that is not taking into account concurrency parallel executions. In the code, we can see `with self._gnocchi_project_id_lock:` statement, which seems to execute locking in the execution flow. However, that will not always be the case because multiple concurrent calls can be queued in that part of the code, and when the first one finishes setting the `filter_project` to None, the others will execute with this variable as None, which will cause Keystone command `self._ks_client.projects.find` to find/list all projects. That command was designed to list/find only one project; therefore, when it finds more than one project, it throws an error. That is the cause for the exception we were seeing from time to time in the log files. Change-Id: I3b4ac918015b2fd3fbe24047c3eb13419f580b27
* | | | Merge "Change oslo_cache implementation"Zuul2022-12-214-49/+117
|\ \ \ \
| * | | | Change oslo_cache implementationYadnesh Kulkarni2022-11-214-49/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As of now to leverage caching, oslo_cache library has to be imported and configured everytime it's needed. This change migrates such implementatio to use `cache_utils.py` which returns a cache client to perform caching operations. This eliminates the purpose of importing oslo_cache everytime when needed. To get a cache client: ``` from ceilometer import cache_utils . cache_client = cache_utils.get_client(conf) ``` Signed-off-by: Yadnesh Kulkarni <ykulkarn@redhat.com> Change-Id: I14f9e1cbe84a953b092c3a88345d5faa9bcc9fb2
* | | | | Merge "Update the installation guide for RHEL8/CentOS8"Zuul2022-12-203-7/+7
|\ \ \ \ \
| * | | | | Update the installation guide for RHEL8/CentOS8Taketani Ryo2022-10-283-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The openstack Ussuri and Victoria versions no longer support the RHEL7/CentOS7 and python2 environment packages. Correct the problems in the latest installation document for RDO. Change-Id: Ie03815f25d3a9ec99506a9dc14810a6800d3c42c
* | | | | | Merge "Fix barbican credentials retrieval"Zuul2022-12-202-5/+7
|\ \ \ \ \ \
| * | | | | | Fix barbican credentials retrievalRafael Weingärtner2022-12-062-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Iec0d885e1fdd42edb2da37d4a71a80168c690c98
* | | | | | | Imported Translations from ZanataOpenStack Proposal Bot2022-12-111-4/+4
| |_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I97160f027a9b69870f3a2b34fcbaa00373dd8f34
* | | | | | Merge "Exclude metrics from "service" project"Zuul2022-12-083-5/+5
|\ \ \ \ \ \
| * | | | | | Exclude metrics from "service" projectYadnesh Kulkarni2022-09-073-5/+5
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upon installing ceilometer and gnocchi using devstack, "filter_project" in "pipeline.yaml" is set to "gnocchi_swift" project. However, no such project exists in keystone. ``` publishers: - gnocchi://?archive_policy=ceilometer-low&filter_project=gnocchi_swift ``` This change, will set "filter_project" to "service" project which will exclude all metrics from it. Also add the name of the project to the logs which couldn't be found in keystone. Closes-Bug: #1988923 Signed-off-by: Yadnesh Kulkarni <ykulkarn@redhat.com> Change-Id: Ifc215f86134729665c142bb9bf64f66ca8de2a29
* | | | | | Tests the sample nameArnaud Morin2022-11-291-4/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patching the unit test to verify the name of the samples. Change-Id: Ifcea7a5d346e9b736b93b1a76677a0f3730541a2 Signed-off-by: Arnaud Morin <arnaud.morin@ovhcloud.com>
* | | | | | Fix OutgoingBytesDeltaPollster sample nameArnaud Morin2022-11-291-1/+1
| |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The good name is network.outgoing.bytes.delta. Change-Id: I78e9fbe9d60b3e83761f6490d25e85ad54fcc7c4 Signed-off-by: Arnaud Morin <arnaud.morin@ovhcloud.com>
* | | | | Merge "Improve logging for Gnocchi publisher"Zuul2022-11-102-8/+46
|\ \ \ \ \ | |_|_|/ / |/| | | |
| * | | | Improve logging for Gnocchi publisherRafael Weingärtner2022-11-062-8/+46
| | |_|/ | |/| | | | | | | | | | Change-Id: I2f26746225a76df66e999490c0055101d325b114
* | | | Imported Translations from ZanataOpenStack Proposal Bot2022-11-051-2/+5
|/ / / | | | | | | | | | | | | | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I7bea0473b34acf84151f6163f93c19324127963f
* | | Merge "Fix the handle of plain text outputs"Zuul2022-10-261-2/+4
|\ \ \
| * | | Fix the handle of plain text outputsRafael Weingärtner2022-10-121-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | The handler of Plaintext output was using the wrong data structure to store the output in plaintext. The output needs to be enclosed as a dictionary in a list. Change-Id: Ib134a5a0de135eb1e00073c4dfc6654ad2d93709
* | | | Imported Translations from ZanataOpenStack Proposal Bot2022-10-191-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For more information about this automatic import see: https://docs.openstack.org/i18n/latest/reviewing-translation-import.html Change-Id: I9f69bc2c315925ed7068b549f92c8cfe40b470fc
* | | | Merge "Properly handle 'resource_id' as None for Gnocchi publisher"Zuul2022-10-182-13/+36
|\ \ \ \ | |/ / / |/| | |
| * | | Properly handle 'resource_id' as None for Gnocchi publisherRafael Weingärtner2022-09-212-13/+36
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This issue is related to [1]. In Python 3 (I did not check exactly in which version), the following code was throwing an error `data.sort(key=operator.attrgetter('resource_id'))`. Therefore, this patch is proposing a solution for such situations to properly handle samples where the `resource_id` is None. Of course, `resource_id` cannot be None in Gnocchi. However, that can be properly handled by removing the metric to be pushed from the `gnocchi_resource.yml` file. Which is what we were doing when we proposed [1]. The problem is that the sort is happening before that part of the code is executed, to decide if the sample should be ignored or not. [1] https://review.opendev.org/c/openstack/ceilometer/+/746717 Change-Id: Ie8eb42df3d5b9505160c9e9d6b86bdaa9a02d16a
* | | Merge "Add extra metadata fields skip"Zuul2022-10-113-0/+264
|\ \ \