)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"4a43ef00cf2644f01b6fe9e9260dcc4a499def71","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"84927b8c_8def8129","updated":"2025-11-24 06:46:10.000000000","message":"Thank you for your review. I am working on the changes.","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"5a43d5dd8c23b44e5bf3eeb70b0915d5f28e74ab","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"ec126953_ed4365f4","updated":"2025-11-25 14:09:36.000000000","message":"Aha!\n\n/home/zuul/src/opendev.org/openstack/ceilometer/doc/source/admin/telemetry-measurements.rst:534: ERROR: Malformed table.","commit_id":"bd5dc26eca4fce6d43882d734559d8c2e232ace9"},{"author":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"change_message_id":"9993c2b4c06842fdd33a00cf926c02470cecc250","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"02659ff6_1fe74a32","updated":"2025-12-16 07:30:50.000000000","message":"I think this sets up the path for some other metrics that might be used for chargeback.","commit_id":"4a3c8272080834f6987c0923335b78a61d5ca9f4"},{"author":{"_account_id":32968,"name":"Juan Larriba","email":"jlarriba@redhat.com","username":"jlarriba"},"change_message_id":"925e8328c4b3d65e89a8509704e272d764d18517","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"06a061db_bdc353bd","updated":"2025-12-19 10:50:42.000000000","message":"We have decided to make a turn and start using openstacksdk client instead of the services clients to retrieve this kind of data from now on. See https://review.opendev.org/c/openstack/ceilometer/+/963632 for Glance.","commit_id":"4a3c8272080834f6987c0923335b78a61d5ca9f4"}],"ceilometer/identity/discovery.py":[{"author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"change_message_id":"0b9c111b445319e1d3d641069134d3fb092e805b","unresolved":true,"context_lines":[{"line_number":17,"context_line":"from ceilometer.polling import plugin_base"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"SERVICE_OPTS \u003d ["},{"line_number":20,"context_line":"    cfg.StrOpt(\u0027keystone\u0027,"},{"line_number":21,"context_line":"               default\u003d\u0027identity\u0027,"},{"line_number":22,"context_line":"               help\u003d\u0027Keystone service type.\u0027),"},{"line_number":23,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":2,"id":"32c8d019_3d489d33","line":20,"updated":"2025-11-20 08:48:13.000000000","message":"I don\u0027t see this config value being used anywhere. Is this needed?","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"}],"ceilometer/identity/keystone.py":[{"author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"change_message_id":"f3ec348d3ef69444dbef61ed74cccccc50250add","unresolved":true,"context_lines":[{"line_number":16,"context_line":"from ceilometer import sample"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class UserCountPollster(plugin_base.PollsterBase):"},{"line_number":20,"context_line":"    \"\"\"Pollster for total user count.\"\"\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":2,"id":"e1ab4eae_e24e7992","line":19,"updated":"2025-11-20 10:10:09.000000000","message":"The UserCountPollster and UserEnabledCountPollster classes seem to break the pattern shown in ProjectCountPollster and DomainCountPollster. Maybe the UserCountPollster and UserEnabledCountPollster could be merged together into one class? Or is there a reason to keep them separate?","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"4a43ef00cf2644f01b6fe9e9260dcc4a499def71","unresolved":false,"context_lines":[{"line_number":16,"context_line":"from ceilometer import sample"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"class UserCountPollster(plugin_base.PollsterBase):"},{"line_number":20,"context_line":"    \"\"\"Pollster for total user count.\"\"\""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    @property"}],"source_content_type":"text/x-python","patch_set":2,"id":"b30fd990_2440b71e","line":19,"in_reply_to":"e1ab4eae_e24e7992","updated":"2025-11-24 06:46:10.000000000","message":"Acknowledged","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"change_message_id":"0b9c111b445319e1d3d641069134d3fb092e805b","unresolved":true,"context_lines":[{"line_number":266,"context_line":"                resource_id\u003df\u0027registered-limit-{resource_name}\u0027,"},{"line_number":267,"context_line":"                resource_metadata\u003d{"},{"line_number":268,"context_line":"                    \u0027resource_name\u0027: resource_name,"},{"line_number":269,"context_line":"                    \u0027total_default_limit\u0027: data[\u0027total_limit\u0027]"},{"line_number":270,"context_line":"                },"},{"line_number":271,"context_line":"            )"},{"line_number":272,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"b6cb6359_b845a3dc","line":269,"updated":"2025-11-20 08:48:13.000000000","message":"I\u0027m not sure about this metadata (same goes for the LimitCountPollster below). I haven\u0027t really interacted with the keystone limits yet, so it\u0027s a bit hard for me to imagine what this value will look like. So I have a few questions\n\n- Is a aggregated total limit value even useful to know for anything? (Does it make sense to collect it?)\n- You mentioned to me you tested with sg-core and Prometheus. Does this value even get saved into Prometheus? I\u0027m unsure at the moment if we store all the metadata into Prometheus or whether we\u0027d need another update elsewhere.\n- If it gets into Prometheus, then this will become a label. Each new key-value label pair will create a new time series - meaning we\u0027d get a \"completely new metric\" from Prometheus\u0027s pov whenever a default_limit for a particular resource changes, which would be bad - see the caution in https://prometheus.io/docs/practices/naming/#labels . If it\u0027s expected for the total_limit value to change regularly and at the same time it\u0027s a potentially useful value to store, then maybe we should yield it separately as its own identity.registered_limit.total_limit? In addition to the caution in prometheus docs, it\u0027d be a bit easier to access the value in queries / dashboards if it\u0027s a separate metric than when it\u0027s a label value.","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"change_message_id":"0b9c111b445319e1d3d641069134d3fb092e805b","unresolved":true,"context_lines":[{"line_number":308,"context_line":"                resource_id\u003df\u0027project-limit-{resource_name}\u0027,"},{"line_number":309,"context_line":"                resource_metadata\u003d{"},{"line_number":310,"context_line":"                    \u0027resource_name\u0027: resource_name,"},{"line_number":311,"context_line":"                    \u0027total_resource_limit\u0027: data[\u0027total_limit\u0027]"},{"line_number":312,"context_line":"                },"},{"line_number":313,"context_line":"            )"}],"source_content_type":"text/x-python","patch_set":2,"id":"83cccd7c_d14546ee","line":311,"updated":"2025-11-20 08:48:13.000000000","message":"Same comment as in RegisteredLimitCountPollster","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"}],"doc/source/admin/telemetry-measurements.rst":[{"author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"change_message_id":"0b9c111b445319e1d3d641069134d3fb092e805b","unresolved":true,"context_lines":[{"line_number":545,"context_line":"| identity.authent\\ | Delta| user   | user ID   | Notifica\\ | User failed to  |"},{"line_number":546,"context_line":"| icate.failure     |      |        |           | tion      | authenticate    |"},{"line_number":547,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":548,"context_line":"| **Meters added in the 2025.2 release**                                      |"},{"line_number":549,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":550,"context_line":"| identity.user.\\   | Gauge| user   | identity\\ | Pollster  | Total count of  |"},{"line_number":551,"context_line":"| count             |      |        | -users    |           | all users       |"}],"source_content_type":"text/x-rst","patch_set":2,"id":"34e7e802_040c8a94","line":548,"updated":"2025-11-20 08:48:13.000000000","message":"The current cycle (which is when this would get released) is 2026.1, so shouldn\u0027t this say 2026.1 instead?","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"4a43ef00cf2644f01b6fe9e9260dcc4a499def71","unresolved":true,"context_lines":[{"line_number":545,"context_line":"| identity.authent\\ | Delta| user   | user ID   | Notifica\\ | User failed to  |"},{"line_number":546,"context_line":"| icate.failure     |      |        |           | tion      | authenticate    |"},{"line_number":547,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":548,"context_line":"| **Meters added in the 2025.2 release**                                      |"},{"line_number":549,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":550,"context_line":"| identity.user.\\   | Gauge| user   | identity\\ | Pollster  | Total count of  |"},{"line_number":551,"context_line":"| count             |      |        | -users    |           | all users       |"}],"source_content_type":"text/x-rst","patch_set":2,"id":"5fe88341_e3e61760","line":548,"in_reply_to":"34e7e802_040c8a94","updated":"2025-11-24 06:46:10.000000000","message":"good catch, yes!","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"change_message_id":"0b9c111b445319e1d3d641069134d3fb092e805b","unresolved":true,"context_lines":[{"line_number":596,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":597,"context_line":"| identity.limit.\\  | Gauge| limit  | project-\\ | Pollster  | Count of projec\\|"},{"line_number":598,"context_line":"| count             |      |        | limit-{r\\ |           | t-specific limi\\|"},{"line_number":599,"context_line":"|                   |      |        | esource_\\ |           | ts per resource |"},{"line_number":600,"context_line":"|                   |      |        | name}     |           | type            |"},{"line_number":601,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":602,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"b2fc52e0_8801ace9","line":599,"updated":"2025-11-20 08:48:13.000000000","message":"the docs job fails with: `telemetry-measurements.rst:597: ERROR: Unknown target name: \"esource\".` (at least that\u0027s what I got when running it locally).\n\nAFAIK a trailing _ is used for denoting links in rst. So I guess you\u0027ll need to move the characters in this cell around, so that you don\u0027t end up with trailing _ anywhere. Or maybe \\_ could be enough to escape the special meaning here.","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"34344d4af3171658f339edacef0b83c22179096a","unresolved":true,"context_lines":[{"line_number":596,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":597,"context_line":"| identity.limit.\\  | Gauge| limit  | project-\\ | Pollster  | Count of projec\\|"},{"line_number":598,"context_line":"| count             |      |        | limit-{r\\ |           | t-specific limi\\|"},{"line_number":599,"context_line":"|                   |      |        | esource_\\ |           | ts per resource |"},{"line_number":600,"context_line":"|                   |      |        | name}     |           | type            |"},{"line_number":601,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":602,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"b6897c20_cffc34a4","line":599,"in_reply_to":"72785d72_cd8145cb","updated":"2025-11-25 09:26:32.000000000","message":"I completely agree, \"esource\" looks fishy.\nLet\u0027s see if it works this way.","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":34975,"name":"Jaromír Wysoglad","email":"jwysogla@redhat.com","username":"jwysogla"},"change_message_id":"3dce243140bac0f459d7f91b0511ffb9f95c3427","unresolved":true,"context_lines":[{"line_number":596,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":597,"context_line":"| identity.limit.\\  | Gauge| limit  | project-\\ | Pollster  | Count of projec\\|"},{"line_number":598,"context_line":"| count             |      |        | limit-{r\\ |           | t-specific limi\\|"},{"line_number":599,"context_line":"|                   |      |        | esource_\\ |           | ts per resource |"},{"line_number":600,"context_line":"|                   |      |        | name}     |           | type            |"},{"line_number":601,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":602,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"72785d72_cd8145cb","line":599,"in_reply_to":"7faad4e8_74468ef5","updated":"2025-11-24 07:44:45.000000000","message":"I was referring to the issue showing up it the openstack-tox-docs here. And I don\u0027t think it\u0027s caused by curly braces, but by having `_` as the last character of a line in `esource_`.","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"4a43ef00cf2644f01b6fe9e9260dcc4a499def71","unresolved":true,"context_lines":[{"line_number":596,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":597,"context_line":"| identity.limit.\\  | Gauge| limit  | project-\\ | Pollster  | Count of projec\\|"},{"line_number":598,"context_line":"| count             |      |        | limit-{r\\ |           | t-specific limi\\|"},{"line_number":599,"context_line":"|                   |      |        | esource_\\ |           | ts per resource |"},{"line_number":600,"context_line":"|                   |      |        | name}     |           | type            |"},{"line_number":601,"context_line":"+-------------------+------+--------+-----------+-----------+-----------------+"},{"line_number":602,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"7faad4e8_74468ef5","line":599,"in_reply_to":"b2fc52e0_8801ace9","updated":"2025-11-24 06:46:10.000000000","message":"Interesting, it works on my machine (tm). I am looking into this. \nIt both works for me with and without the curly braces :/","commit_id":"6c72bd2e20e2dcff70d11b70be0a2df3e9db4588"}]}
