)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"1b7d06ac0b5804d6476b4b4ad2715465603b4270","unresolved":false,"context_lines":[{"line_number":10,"context_line":"representing if the service is available or not."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I59c680ec26c614059b0ec2d2b269c7b233ee897e"},{"line_number":13,"context_line":"Blueprint: ceilometer-healthcheck-middleware"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"3acd31a7_a003b30c","line":13,"updated":"2015-05-04 06:56:39.000000000","message":"as Ildiko Vancsa suggested, I think DocImpact tag should be added since new meter is added, we should notify OSManual project about this change.","commit_id":"fd747937efda3ae23f8b99989aa4f39a9cda071b"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"e457b9f57c34d1e835d37e36122227a930694721","unresolved":false,"context_lines":[{"line_number":10,"context_line":"representing if the service is available or not."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I59c680ec26c614059b0ec2d2b269c7b233ee897e"},{"line_number":13,"context_line":"Blueprint: ceilometer-healthcheck-middleware"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"9a0c5dc1_c6dcd748","line":13,"in_reply_to":"3acd31a7_a003b30c","updated":"2015-05-12 08:39:51.000000000","message":"Done","commit_id":"fd747937efda3ae23f8b99989aa4f39a9cda071b"}],"ceilometer/agent/pollsters/oslo_middleware.py":[{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"c6a7b3ec7c5f32fe43d33297260c5218c8d14aef","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_samples(manager, cache, resources):"},{"line_number":28,"context_line":"        for endpoint in resources:"},{"line_number":29,"context_line":"            # TODO(jd) Add a way to support the final URL per endpoint"},{"line_number":30,"context_line":"            resp \u003d requests.get(endpoint + \"/healthcheck\")"},{"line_number":31,"context_line":"            yield sample.Sample("},{"line_number":32,"context_line":"                name\u003d\u0027http.healthcheck\u0027,"},{"line_number":33,"context_line":"                type\u003dsample.TYPE_GAUGE,"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_1b5ce6ec","line":30,"updated":"2015-02-04 04:29:35.000000000","message":"-1: I suggest to put this request.get() into a try...except block since some endpoints will be \"unhealth\", then it will break other endpoints\u0027 check\n\nnit: and it will be nice if timeout is specified here, we can use https://github.com/openstack/ceilometer/blob/a3a4e0e283b28ffa1e2c51a020d76596442402a8/ceilometer/service.py#L44  I think 10 minutes is enough for a health check...","commit_id":"799d90d1c867cbf352d9c68b48a99d7adac2f9f6"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"15171dc5afe4ed27547661f81c481677b3482226","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    def get_samples(manager, cache, resources):"},{"line_number":28,"context_line":"        for endpoint in resources:"},{"line_number":29,"context_line":"            # TODO(jd) Add a way to support the final URL per endpoint"},{"line_number":30,"context_line":"            resp \u003d requests.get(endpoint + \"/healthcheck\")"},{"line_number":31,"context_line":"            yield sample.Sample("},{"line_number":32,"context_line":"                name\u003d\u0027http.healthcheck\u0027,"},{"line_number":33,"context_line":"                type\u003dsample.TYPE_GAUGE,"}],"source_content_type":"text/x-python","patch_set":1,"id":"da86d52c_f1bc45bd","line":30,"in_reply_to":"da86d52c_1b5ce6ec","updated":"2015-02-05 19:44:09.000000000","message":"Done","commit_id":"799d90d1c867cbf352d9c68b48a99d7adac2f9f6"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"dbb3087cacd11fcd57cddf1b2cb8381b33d55b1f","unresolved":false,"context_lines":[{"line_number":46,"context_line":"                name\u003d\u0027http.healthcheck\u0027,"},{"line_number":47,"context_line":"                type\u003dsample.TYPE_GAUGE,"},{"line_number":48,"context_line":"                unit\u003d\u0027health\u0027,"},{"line_number":49,"context_line":"                volume\u003dint((resp.status_code // 100) \u003d\u003d 2),"},{"line_number":50,"context_line":"                user_id\u003dNone,"},{"line_number":51,"context_line":"                project_id\u003dNone,"},{"line_number":52,"context_line":"                resource_id\u003dendpoint,"}],"source_content_type":"text/x-python","patch_set":2,"id":"da86d52c_8f50a7d5","line":49,"updated":"2015-02-10 15:52:15.000000000","message":"i think this will fail if there\u0027s an exception.","commit_id":"30314f6b70251e8b469e7eaa3206f6e72a943c0a"},{"author":{"_account_id":4491,"name":"Lianhao Lu","email":"llh_misc@outlook.com","username":"lianhao-lu"},"change_message_id":"6e70cfe4123dce93c0432f86aec255325fb036e9","unresolved":false,"context_lines":[{"line_number":39,"context_line":"                                    timeout\u003dcfg.CONF.http_timeout)"},{"line_number":40,"context_line":"            except Exception:"},{"line_number":41,"context_line":"                LOG.error("},{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"},{"line_number":43,"context_line":"                    % endpoint,"},{"line_number":44,"context_line":"                    exc_info\u003dTrue)"},{"line_number":45,"context_line":"                continue"}],"source_content_type":"text/x-python","patch_set":3,"id":"da86d52c_e4a3bcaf","line":42,"updated":"2015-02-12 02:58:43.000000000","message":"Since this is a fresh new file, let\u0027s follow oslo.i18n convention and use _LE here","commit_id":"4544e55b6c9e7c2a7c4d1875747c969fc14bdbbe"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"ba6bba13694be61846fb06fb83f1e29d9edaa817","unresolved":false,"context_lines":[{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"},{"line_number":43,"context_line":"                    % endpoint,"},{"line_number":44,"context_line":"                    exc_info\u003dTrue)"},{"line_number":45,"context_line":"                continue"},{"line_number":46,"context_line":"            yield sample.Sample("},{"line_number":47,"context_line":"                name\u003d\u0027http.healthcheck\u0027,"},{"line_number":48,"context_line":"                type\u003dsample.TYPE_GAUGE,"}],"source_content_type":"text/x-python","patch_set":3,"id":"da86d52c_2883fa56","line":45,"updated":"2015-02-11 17:53:22.000000000","message":"BTW, as this is a health check pollster, then wouldn\u0027t it make sense to somehow show that it wasn\u0027t able to even retrieve any status as opposed to not create a sample?","commit_id":"4544e55b6c9e7c2a7c4d1875747c969fc14bdbbe"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"2d93a698c9a97c9703345b0ae52108da18a20f75","unresolved":false,"context_lines":[{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"},{"line_number":43,"context_line":"                    % endpoint,"},{"line_number":44,"context_line":"                    exc_info\u003dTrue)"},{"line_number":45,"context_line":"                continue"},{"line_number":46,"context_line":"            yield sample.Sample("},{"line_number":47,"context_line":"                name\u003d\u0027http.healthcheck\u0027,"},{"line_number":48,"context_line":"                type\u003dsample.TYPE_GAUGE,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3acd31a7_ba25895d","line":45,"in_reply_to":"da86d52c_2883fa56","updated":"2015-04-29 14:39:16.000000000","message":"Done","commit_id":"4544e55b6c9e7c2a7c4d1875747c969fc14bdbbe"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"1b7d06ac0b5804d6476b4b4ad2715465603b4270","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"class HealthcheckPollster(plugin_base.PollsterBase):"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    default_discovery \u003d \"endpoint:\""},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    @staticmethod"},{"line_number":34,"context_line":"    def get_samples(manager, cache, resources):"}],"source_content_type":"text/x-python","patch_set":6,"id":"3acd31a7_1d8650b9","line":31,"updated":"2015-05-04 06:56:39.000000000","message":"-1: actually, I cannot get all endpoints in my local devstack env (master branch), also please visit https://bugs.launchpad.net/ceilometer/+bug/1451336","commit_id":"fd747937efda3ae23f8b99989aa4f39a9cda071b"},{"author":{"_account_id":6676,"name":"zqfan","email":"aji.zqfan@gmail.com","username":"aji-zqfan"},"change_message_id":"1b7d06ac0b5804d6476b4b4ad2715465603b4270","unresolved":false,"context_lines":[{"line_number":36,"context_line":"            # TODO(jd) Add a way to support the final URL per endpoint"},{"line_number":37,"context_line":"            url \u003d endpoint + \"/healthcheck\""},{"line_number":38,"context_line":"            try:"},{"line_number":39,"context_line":"                resp \u003d requests.get(url, timeout\u003dcfg.CONF.http_timeout)"},{"line_number":40,"context_line":"            except Exception as e:"},{"line_number":41,"context_line":"                LOG.error("},{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"}],"source_content_type":"text/x-python","patch_set":6,"id":"3acd31a7_7d3c24e2","line":39,"updated":"2015-05-04 06:56:39.000000000","message":"after I fix the above issue, I find the resp.status_code set is (300, 400, 401, 404), so my question is that is healthcheck only provide information that this service is alive (no matter it returns), or healthcheck should return something meaningful such as 200?","commit_id":"fd747937efda3ae23f8b99989aa4f39a9cda071b"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"4ef47872604c5eafe07d8f899da0a1a20df94f82","unresolved":false,"context_lines":[{"line_number":39,"context_line":"                resp \u003d requests.get(url, timeout\u003dcfg.CONF.http_timeout)"},{"line_number":40,"context_line":"            except Exception as e:"},{"line_number":41,"context_line":"                LOG.error("},{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"},{"line_number":43,"context_line":"                    % endpoint,"},{"line_number":44,"context_line":"                    exc_info\u003dTrue)"},{"line_number":45,"context_line":"                status_code \u003d 0"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa32b979_e5fd7a6f","line":42,"updated":"2015-06-14 17:25:26.000000000","message":"Shouldn\u0027t _LE() marker be used here?","commit_id":"0bc213ee17a3fbb421667667bc1b938f1f55d5e5"},{"author":{"_account_id":9562,"name":"Ildiko Vancsa","email":"ildiko.vancsa@gmail.com","username":"ildikov"},"change_message_id":"814c7ce49754235da40bba5e7db320aff67b6e5d","unresolved":false,"context_lines":[{"line_number":39,"context_line":"                resp \u003d requests.get(url, timeout\u003dcfg.CONF.http_timeout)"},{"line_number":40,"context_line":"            except Exception as e:"},{"line_number":41,"context_line":"                LOG.error("},{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"},{"line_number":43,"context_line":"                    % endpoint,"},{"line_number":44,"context_line":"                    exc_info\u003dTrue)"},{"line_number":45,"context_line":"                status_code \u003d 0"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa32b979_087ab2f1","line":42,"in_reply_to":"fa32b979_3087edd8","updated":"2015-06-16 08:47:43.000000000","message":":)\n\nI\u0027m not an expert either, I saw some guidelines here: http://docs.openstack.org/developer/oslo.i18n/guidelines.html#adding-variables-to-log-messages","commit_id":"0bc213ee17a3fbb421667667bc1b938f1f55d5e5"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"c63db977fbef8680e2c678125820521aeb18a1e8","unresolved":false,"context_lines":[{"line_number":39,"context_line":"                resp \u003d requests.get(url, timeout\u003dcfg.CONF.http_timeout)"},{"line_number":40,"context_line":"            except Exception as e:"},{"line_number":41,"context_line":"                LOG.error("},{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"},{"line_number":43,"context_line":"                    % endpoint,"},{"line_number":44,"context_line":"                    exc_info\u003dTrue)"},{"line_number":45,"context_line":"                status_code \u003d 0"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa32b979_3087edd8","line":42,"in_reply_to":"fa32b979_4db001de","updated":"2015-06-16 00:15:21.000000000","message":"i believe she means you should.lol","commit_id":"0bc213ee17a3fbb421667667bc1b938f1f55d5e5"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"c1b63666c8937da6176615e3a893609a004e862d","unresolved":false,"context_lines":[{"line_number":39,"context_line":"                resp \u003d requests.get(url, timeout\u003dcfg.CONF.http_timeout)"},{"line_number":40,"context_line":"            except Exception as e:"},{"line_number":41,"context_line":"                LOG.error("},{"line_number":42,"context_line":"                    _(\"Unable to retrieve healthcheck status for %s\")"},{"line_number":43,"context_line":"                    % endpoint,"},{"line_number":44,"context_line":"                    exc_info\u003dTrue)"},{"line_number":45,"context_line":"                status_code \u003d 0"}],"source_content_type":"text/x-python","patch_set":7,"id":"fa32b979_4db001de","line":42,"in_reply_to":"fa32b979_e5fd7a6f","updated":"2015-06-15 08:41:54.000000000","message":"No idea. I\u0027m not a translation friend :(","commit_id":"0bc213ee17a3fbb421667667bc1b938f1f55d5e5"}]}
