)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"1665867ec407db7fac38a6ad59f906a94dc4ec69","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9a805425_548a1ee2","updated":"2022-06-13 09:41:40.000000000","message":"Thank you for doing this. I have a few nits inside.","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":30893,"name":"Chris Sibbitt","email":"csibbitt@redhat.com","username":"csibbitt"},"change_message_id":"d889108505acfbadc7532e011121f2e438249456","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"60f63ccc_07711fe0","updated":"2022-06-13 16:08:52.000000000","message":"This LGTM with the comments that Matthias has left","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":30893,"name":"Chris Sibbitt","email":"csibbitt@redhat.com","username":"csibbitt"},"change_message_id":"52dc8506af0220d5070b27b3d92ed672f76e785b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"0128f034_9f1a799f","updated":"2022-10-05 14:54:51.000000000","message":"I happen to be back on this review today and wondering if maybe it should be updated in light of the experiments Jaromir has done.","commit_id":"6d633d447b4cb64ffdbfb258ba940bd7cc3f17bc"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"849a99175b568198a1c5a29118ba863c4ddd1cbf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"ad10dedf_bef24621","updated":"2022-11-23 09:48:41.000000000","message":"Question is if this spec make sense now, when we know that we are not going to implement new exporter as part of Ceilometer and instead just add TCP publisher (for which I believe we don\u0027t need spec).\n\nDo we want to have SG as an iterim solution and have the proper ceilometer exporter in a bit farther future than we initially thought?\n\nIf not I would just abandon this.","commit_id":"6d633d447b4cb64ffdbfb258ba940bd7cc3f17bc"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"6ac1fb5184d087ccf8a3db95084d3d72ba4a8511","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a302b10b_64c365a5","updated":"2022-06-28 09:45:19.000000000","message":"This looks good to me. Thank you for working on this Martin!","commit_id":"6d633d447b4cb64ffdbfb258ba940bd7cc3f17bc"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"8e47e0a200f487f3965f4a7b4a26cc9590409a65","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a7bbcb87_fc54a4e6","in_reply_to":"0128f034_9f1a799f","updated":"2022-10-05 15:05:14.000000000","message":"Good suggestion. We have much more data now.","commit_id":"6d633d447b4cb64ffdbfb258ba940bd7cc3f17bc"}],"specs/zed/proper-prometheus-publisher.rst":[{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"1665867ec407db7fac38a6ad59f906a94dc4ec69","unresolved":true,"context_lines":[{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"As mentioned in previous paragraph usage of Pushgateway brings issues"},{"line_number":21,"context_line":"from which most problematic is a lack of support for multiple instances"},{"line_number":22,"context_line":"of single metric. That fact makes it impossible to reasonably collect"},{"line_number":23,"context_line":"same set of metrics from several VMs spawned in the stack fo example."}],"source_content_type":"text/x-rst","patch_set":2,"id":"0d5d5596_efbedbb8","line":20,"updated":"2022-06-13 09:41:40.000000000","message":"usage of the Pushgateway","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"9982c084d218ec2381a9079d5bd0a604206d764f","unresolved":true,"context_lines":[{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"As mentioned in previous paragraph usage of Pushgateway brings issues"},{"line_number":21,"context_line":"from which most problematic is a lack of support for multiple instances"},{"line_number":22,"context_line":"of single metric. That fact makes it impossible to reasonably collect"},{"line_number":23,"context_line":"same set of metrics from several VMs spawned in the stack fo example."}],"source_content_type":"text/x-rst","patch_set":2,"id":"e90b18db_92a0b4b1","line":20,"in_reply_to":"0d5d5596_efbedbb8","updated":"2022-06-13 11:18:46.000000000","message":"Ack","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"849a99175b568198a1c5a29118ba863c4ddd1cbf","unresolved":false,"context_lines":[{"line_number":17,"context_line":"Problem description"},{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"As mentioned in previous paragraph usage of Pushgateway brings issues"},{"line_number":21,"context_line":"from which most problematic is a lack of support for multiple instances"},{"line_number":22,"context_line":"of single metric. That fact makes it impossible to reasonably collect"},{"line_number":23,"context_line":"same set of metrics from several VMs spawned in the stack fo example."}],"source_content_type":"text/x-rst","patch_set":2,"id":"3d9e8979_55633e84","line":20,"in_reply_to":"e90b18db_92a0b4b1","updated":"2022-11-23 09:48:41.000000000","message":"Done","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"1665867ec407db7fac38a6ad59f906a94dc4ec69","unresolved":true,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"As mentioned in previous paragraph usage of Pushgateway brings issues"},{"line_number":21,"context_line":"from which most problematic is a lack of support for multiple instances"},{"line_number":22,"context_line":"of single metric. That fact makes it impossible to reasonably collect"},{"line_number":23,"context_line":"same set of metrics from several VMs spawned in the stack fo example."},{"line_number":24,"context_line":"Pushgateway rewrites the one metric with another with same name even though"},{"line_number":25,"context_line":"the label set differs."}],"source_content_type":"text/x-rst","patch_set":2,"id":"dd311892_8024a36f","line":22,"updated":"2022-06-13 09:41:40.000000000","message":"of a single metric.","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"849a99175b568198a1c5a29118ba863c4ddd1cbf","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"As mentioned in previous paragraph usage of Pushgateway brings issues"},{"line_number":21,"context_line":"from which most problematic is a lack of support for multiple instances"},{"line_number":22,"context_line":"of single metric. That fact makes it impossible to reasonably collect"},{"line_number":23,"context_line":"same set of metrics from several VMs spawned in the stack fo example."},{"line_number":24,"context_line":"Pushgateway rewrites the one metric with another with same name even though"},{"line_number":25,"context_line":"the label set differs."}],"source_content_type":"text/x-rst","patch_set":2,"id":"eb7a8bc3_7c93b129","line":22,"in_reply_to":"daae6531_123b3b5e","updated":"2022-11-23 09:48:41.000000000","message":"Done","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"9982c084d218ec2381a9079d5bd0a604206d764f","unresolved":true,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"As mentioned in previous paragraph usage of Pushgateway brings issues"},{"line_number":21,"context_line":"from which most problematic is a lack of support for multiple instances"},{"line_number":22,"context_line":"of single metric. That fact makes it impossible to reasonably collect"},{"line_number":23,"context_line":"same set of metrics from several VMs spawned in the stack fo example."},{"line_number":24,"context_line":"Pushgateway rewrites the one metric with another with same name even though"},{"line_number":25,"context_line":"the label set differs."}],"source_content_type":"text/x-rst","patch_set":2,"id":"daae6531_123b3b5e","line":22,"in_reply_to":"dd311892_8024a36f","updated":"2022-06-13 11:18:46.000000000","message":"Ack","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"1665867ec407db7fac38a6ad59f906a94dc4ec69","unresolved":true,"context_lines":[{"line_number":30,"context_line":"Proposed change"},{"line_number":31,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"The proposed solution is to implement a new service in Ceilometer umbrella"},{"line_number":34,"context_line":"using Prometheus Python Client [1] that will provide exporter interface"},{"line_number":35,"context_line":"scrapable by Prometheus. Ceilometer exporter will accept data on interface"},{"line_number":36,"context_line":"compatible with one of currently available publishers. In case it will turns"}],"source_content_type":"text/x-rst","patch_set":2,"id":"7b492eab_81815061","line":33,"updated":"2022-06-13 09:41:40.000000000","message":"a new service under the Ceilometer umbrella","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"9982c084d218ec2381a9079d5bd0a604206d764f","unresolved":true,"context_lines":[{"line_number":30,"context_line":"Proposed change"},{"line_number":31,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"The proposed solution is to implement a new service in Ceilometer umbrella"},{"line_number":34,"context_line":"using Prometheus Python Client [1] that will provide exporter interface"},{"line_number":35,"context_line":"scrapable by Prometheus. Ceilometer exporter will accept data on interface"},{"line_number":36,"context_line":"compatible with one of currently available publishers. In case it will turns"}],"source_content_type":"text/x-rst","patch_set":2,"id":"0d64ea49_593e549b","line":33,"in_reply_to":"7b492eab_81815061","updated":"2022-06-13 11:18:46.000000000","message":"Ack","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"1665867ec407db7fac38a6ad59f906a94dc4ec69","unresolved":true,"context_lines":[{"line_number":33,"context_line":"The proposed solution is to implement a new service in Ceilometer umbrella"},{"line_number":34,"context_line":"using Prometheus Python Client [1] that will provide exporter interface"},{"line_number":35,"context_line":"scrapable by Prometheus. Ceilometer exporter will accept data on interface"},{"line_number":36,"context_line":"compatible with one of currently available publishers. In case it will turns"},{"line_number":37,"context_line":"out none of the currently available publishers is suitable, new one will"},{"line_number":38,"context_line":"be implemented for such usage."},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"29dc11e1_2165b01b","line":36,"updated":"2022-06-13 09:41:40.000000000","message":"This whole spec is about adding a new publisher, no?","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"9982c084d218ec2381a9079d5bd0a604206d764f","unresolved":true,"context_lines":[{"line_number":33,"context_line":"The proposed solution is to implement a new service in Ceilometer umbrella"},{"line_number":34,"context_line":"using Prometheus Python Client [1] that will provide exporter interface"},{"line_number":35,"context_line":"scrapable by Prometheus. Ceilometer exporter will accept data on interface"},{"line_number":36,"context_line":"compatible with one of currently available publishers. In case it will turns"},{"line_number":37,"context_line":"out none of the currently available publishers is suitable, new one will"},{"line_number":38,"context_line":"be implemented for such usage."},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"f50d1464_98619b36","line":36,"in_reply_to":"29dc11e1_2165b01b","updated":"2022-06-13 11:18:46.000000000","message":"Not necessarily. We can use currently existing publishers to get data out of notification agent already. What we don\u0027t have is a component, which would provide those data to Prometheus. There is a chance that it will turns out that all current publishers will have some issues, though. In that case it will be necessary to either fix those issues or create publisher wrapping some other communication protocol. But IMO UDP publisher should be good enough.","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"1665867ec407db7fac38a6ad59f906a94dc4ec69","unresolved":true,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Exporter service will cache received metric data either in memory or using"},{"line_number":41,"context_line":"usually used caching services in OpenStack deployments, such as Redis,"},{"line_number":42,"context_line":"memcached or etcd. Once scraped by Prometheus (or TTL expires) the metric data"},{"line_number":43,"context_line":"will be cleared from cache."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"cd419e1b_e639d22d","line":42,"updated":"2022-06-13 09:41:40.000000000","message":"can you please make the cache cleanup configurable? You could have a healthcheck expire the cache accidentally, or could have two prometheis scrape the exporter.","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"849a99175b568198a1c5a29118ba863c4ddd1cbf","unresolved":false,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Exporter service will cache received metric data either in memory or using"},{"line_number":41,"context_line":"usually used caching services in OpenStack deployments, such as Redis,"},{"line_number":42,"context_line":"memcached or etcd. Once scraped by Prometheus (or TTL expires) the metric data"},{"line_number":43,"context_line":"will be cleared from cache."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"c2c592b3_92cae93a","line":42,"in_reply_to":"2200f1b9_a88e9ad9","updated":"2022-11-23 09:48:41.000000000","message":"Done","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"9982c084d218ec2381a9079d5bd0a604206d764f","unresolved":true,"context_lines":[{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Exporter service will cache received metric data either in memory or using"},{"line_number":41,"context_line":"usually used caching services in OpenStack deployments, such as Redis,"},{"line_number":42,"context_line":"memcached or etcd. Once scraped by Prometheus (or TTL expires) the metric data"},{"line_number":43,"context_line":"will be cleared from cache."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"2200f1b9_a88e9ad9","line":42,"in_reply_to":"cd419e1b_e639d22d","updated":"2022-06-13 11:18:46.000000000","message":"Ack","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":4264,"name":"Matthias Runge","email":"mrunge@redhat.com","username":"mrunge"},"change_message_id":"1665867ec407db7fac38a6ad59f906a94dc4ec69","unresolved":true,"context_lines":[{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Exposing logic can be tested by Tempest. End to end functionality needs working"},{"line_number":151,"context_line":"Prometheus instance and such is not easily testable in Ceilometer CI."},{"line_number":152,"context_line":""},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"e8d925f6_bfa6eb01","line":151,"updated":"2022-06-13 09:41:40.000000000","message":"we could test the exporter by using curl?","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"},{"author":{"_account_id":5241,"name":"Martin Magr","email":"mmagr@redhat.com","username":"mmagr"},"change_message_id":"9982c084d218ec2381a9079d5bd0a604206d764f","unresolved":true,"context_lines":[{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Exposing logic can be tested by Tempest. End to end functionality needs working"},{"line_number":151,"context_line":"Prometheus instance and such is not easily testable in Ceilometer CI."},{"line_number":152,"context_line":""},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"b238b0e9_fd44b971","line":151,"in_reply_to":"e8d925f6_bfa6eb01","updated":"2022-06-13 11:18:46.000000000","message":"Of course, but that would not be end-to-end test since one of the end is missing ... right? :)","commit_id":"ed5f0fc276bbb1a132d5b152e0ff96fe4d8d00a0"}]}
