)]}'
{"oslo_log/handlers.py":[{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"1547770dab232dd43e2ef93dda4536f4e402911e","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        return msg"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"_AUDIT \u003d logging.INFO + 1"},{"line_number":72,"context_line":"_TRACE \u003d int((logging.DEBUG + logging.NOTSET) / 2)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"if syslog is not None:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_a74b9358","line":72,"updated":"2015-07-27 16:35:53.000000000","message":"Wes should not redefine the level value here, if it\u0027s also defined in log.py.","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"},{"author":{"_account_id":10584,"name":"Min Pae","username":"sputnik13","inactive":true},"change_message_id":"473c3208c326428cf7730a17abffa23ab3d4a0ee","unresolved":false,"context_lines":[{"line_number":69,"context_line":"        return msg"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"_AUDIT \u003d logging.INFO + 1"},{"line_number":72,"context_line":"_TRACE \u003d int((logging.DEBUG + logging.NOTSET) / 2)"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"if syslog is not None:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_2741c30b","line":72,"in_reply_to":"3a50d1a3_a74b9358","updated":"2015-07-27 16:37:17.000000000","message":"Agreed","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"}],"oslo_log/log.py":[{"author":{"_account_id":8911,"name":"Sergey Vilgelm","email":"sergey@vilgelm.info","username":"sergey.vilgelm"},"change_message_id":"22b71ff97e90d7c1c1326dd3bc86e1a43f88f7ab","unresolved":false,"context_lines":[{"line_number":51,"context_line":"from oslo_log import formatters"},{"line_number":52,"context_line":"from oslo_log import handlers"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"CRITICAL \u003d logging.CRITICAL"},{"line_number":55,"context_line":"FATAL \u003d logging.FATAL"},{"line_number":56,"context_line":"ERROR \u003d logging.ERROR"},{"line_number":57,"context_line":"WARNING \u003d logging.WARNING"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_8ffc9e3f","line":54,"updated":"2015-07-26 04:40:39.000000000","message":"Please, describe this in the commit message. This step is really important, because in the several projects we import system logging module just for using these levels.","commit_id":"11a1056113f75dab6bc856926f04ca06b191d02e"},{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"65b8a4722806595630d7fc7cf4659ad212b18f9c","unresolved":false,"context_lines":[{"line_number":51,"context_line":"from oslo_log import formatters"},{"line_number":52,"context_line":"from oslo_log import handlers"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"CRITICAL \u003d logging.CRITICAL"},{"line_number":55,"context_line":"FATAL \u003d logging.FATAL"},{"line_number":56,"context_line":"ERROR \u003d logging.ERROR"},{"line_number":57,"context_line":"WARNING \u003d logging.WARNING"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a50d1a3_c0afd3e1","line":54,"in_reply_to":"3a50d1a3_8ffc9e3f","updated":"2015-07-26 11:52:36.000000000","message":"Done","commit_id":"11a1056113f75dab6bc856926f04ca06b191d02e"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"cf9291e5525f5bb173338deaa8d7f26a3436629d","unresolved":false,"context_lines":[{"line_number":58,"context_line":"WARN \u003d logging.WARNING"},{"line_number":59,"context_line":"INFO \u003d logging.INFO"},{"line_number":60,"context_line":"DEBUG \u003d logging.DEBUG"},{"line_number":61,"context_line":"TRACE \u003d int((logging.DEBUG + logging.NOTSET) / 2)"},{"line_number":62,"context_line":"NOTSET \u003d logging.NOTSET"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"logging.addLevelName(TRACE, \u0027TRACE\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_744a1785","line":61,"updated":"2015-07-27 16:30:12.000000000","message":"I\u0027d be fine with just 5, pretty sure these won\u0027t be changing ever.","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"1547770dab232dd43e2ef93dda4536f4e402911e","unresolved":false,"context_lines":[{"line_number":58,"context_line":"WARN \u003d logging.WARNING"},{"line_number":59,"context_line":"INFO \u003d logging.INFO"},{"line_number":60,"context_line":"DEBUG \u003d logging.DEBUG"},{"line_number":61,"context_line":"TRACE \u003d int((logging.DEBUG + logging.NOTSET) / 2)"},{"line_number":62,"context_line":"NOTSET \u003d logging.NOTSET"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"logging.addLevelName(TRACE, \u0027TRACE\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_8777779e","line":61,"in_reply_to":"3a50d1a3_1408732c","updated":"2015-07-27 16:35:53.000000000","message":"Agreed.","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"},{"author":{"_account_id":10584,"name":"Min Pae","username":"sputnik13","inactive":true},"change_message_id":"473c3208c326428cf7730a17abffa23ab3d4a0ee","unresolved":false,"context_lines":[{"line_number":58,"context_line":"WARN \u003d logging.WARNING"},{"line_number":59,"context_line":"INFO \u003d logging.INFO"},{"line_number":60,"context_line":"DEBUG \u003d logging.DEBUG"},{"line_number":61,"context_line":"TRACE \u003d int((logging.DEBUG + logging.NOTSET) / 2)"},{"line_number":62,"context_line":"NOTSET \u003d logging.NOTSET"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"logging.addLevelName(TRACE, \u0027TRACE\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_47f64ffa","line":61,"in_reply_to":"3a50d1a3_744a1785","updated":"2015-07-27 16:37:17.000000000","message":"Agreed","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"97aec1d86f74bb614cd5d996b79b694c5cb0a795","unresolved":false,"context_lines":[{"line_number":58,"context_line":"WARN \u003d logging.WARNING"},{"line_number":59,"context_line":"INFO \u003d logging.INFO"},{"line_number":60,"context_line":"DEBUG \u003d logging.DEBUG"},{"line_number":61,"context_line":"TRACE \u003d int((logging.DEBUG + logging.NOTSET) / 2)"},{"line_number":62,"context_line":"NOTSET \u003d logging.NOTSET"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"logging.addLevelName(TRACE, \u0027TRACE\u0027)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_1408732c","line":61,"in_reply_to":"3a50d1a3_744a1785","updated":"2015-07-27 16:32:31.000000000","message":"Agreed.","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"4f3f2b4935b0793a80b73a1d8754140db9d865b2","unresolved":false,"context_lines":[{"line_number":90,"context_line":"        return self.logger.handlers"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"    def trace(self, msg, *args, **kwargs):"},{"line_number":93,"context_line":"        if self.isEnabledFor(TRACE):"},{"line_number":94,"context_line":"            self.log(TRACE, msg, *args, **kwargs)"},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"    def isEnabledFor(self, level):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_6726ebbb","line":93,"updated":"2015-07-27 16:32:45.000000000","message":"Looking at the logging source code it does this same check in log() so maybe we can just skip doing this here?\n\nhttps://github.com/python/cpython/blob/master/Lib/logging/__init__.py#L1330","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"}],"oslo_log/tests/unit/test_log.py":[{"author":{"_account_id":10584,"name":"Min Pae","username":"sputnik13","inactive":true},"change_message_id":"473c3208c326428cf7730a17abffa23ab3d4a0ee","unresolved":false,"context_lines":[{"line_number":242,"context_line":"        levels \u003d self.CONF.default_log_levels"},{"line_number":243,"context_line":"        levels.append(\"nova-test\u003dINFO\")"},{"line_number":244,"context_line":"        levels.append(\"nova-not-debug\u003dWARN\")"},{"line_number":245,"context_line":"        levels.append(\"nova-below-debug\u003d5\")"},{"line_number":246,"context_line":"        levels.append(\"nova-trace\u003dTRACE\")"},{"line_number":247,"context_line":"        self.config(default_log_levels\u003dlevels,"},{"line_number":248,"context_line":"                    verbose\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a50d1a3_8761b7aa","line":245,"updated":"2015-07-27 16:37:17.000000000","message":"would this become TRACE?","commit_id":"b8c084f599f1134fc00a49f6e76e3c6c34e68b34"},{"author":{"_account_id":6601,"name":"James Carey","email":"jecarey@yerac.com","username":"jecarey"},"change_message_id":"63371c2d811c6bd4e6c32344f45bb49aeb774253","unresolved":false,"context_lines":[{"line_number":243,"context_line":"        levels.append(\"nova-test\u003dINFO\")"},{"line_number":244,"context_line":"        levels.append(\"nova-not-debug\u003dWARN\")"},{"line_number":245,"context_line":"        levels.append(\"nova-below-debug\u003d5\")"},{"line_number":246,"context_line":"        levels.append(\"nova-trace\u003dTRACE\")"},{"line_number":247,"context_line":"        self.config(default_log_levels\u003dlevels,"},{"line_number":248,"context_line":"                    verbose\u003dTrue)"},{"line_number":249,"context_line":"        log.setup(self.CONF, \u0027testing\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_0cdaa74b","line":246,"updated":"2015-07-27 18:44:01.000000000","message":"What\u0027s the benefit of testing both a hard coded \u00275\u0027 and getting 5 by using TRACE?","commit_id":"6e605a0245676530b3df653a34c94b93b42168ce"},{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"87a06eda985578cf05546aedbcda0340e3f741f3","unresolved":false,"context_lines":[{"line_number":243,"context_line":"        levels.append(\"nova-test\u003dINFO\")"},{"line_number":244,"context_line":"        levels.append(\"nova-not-debug\u003dWARN\")"},{"line_number":245,"context_line":"        levels.append(\"nova-below-debug\u003d5\")"},{"line_number":246,"context_line":"        levels.append(\"nova-trace\u003dTRACE\")"},{"line_number":247,"context_line":"        self.config(default_log_levels\u003dlevels,"},{"line_number":248,"context_line":"                    verbose\u003dTrue)"},{"line_number":249,"context_line":"        log.setup(self.CONF, \u0027testing\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_8fd8e91f","line":246,"in_reply_to":"3a50d1a3_0cdaa74b","updated":"2015-07-27 19:02:01.000000000","message":"i\u0027ll change it to some another number","commit_id":"6e605a0245676530b3df653a34c94b93b42168ce"},{"author":{"_account_id":6601,"name":"James Carey","email":"jecarey@yerac.com","username":"jecarey"},"change_message_id":"63371c2d811c6bd4e6c32344f45bb49aeb774253","unresolved":false,"context_lines":[{"line_number":257,"context_line":"        self.assertFalse(self.log_no_debug.isEnabledFor(logging.DEBUG))"},{"line_number":258,"context_line":"        self.assertTrue(self.log_below_debug.isEnabledFor(logging.DEBUG))"},{"line_number":259,"context_line":"        self.assertTrue(self.log_below_debug.isEnabledFor(5))"},{"line_number":260,"context_line":"        self.assertTrue(self.log_below_debug.isEnabledFor(log.TRACE))"},{"line_number":261,"context_line":""},{"line_number":262,"context_line":"    def test_has_level_from_flags(self):"},{"line_number":263,"context_line":"        self.assertEqual(logging.INFO, self.log.logger.getEffectiveLevel())"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_4cbbcfe5","line":260,"updated":"2015-07-27 18:44:01.000000000","message":"if 259 passes this will always pass","commit_id":"6e605a0245676530b3df653a34c94b93b42168ce"},{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"87a06eda985578cf05546aedbcda0340e3f741f3","unresolved":false,"context_lines":[{"line_number":257,"context_line":"        self.assertFalse(self.log_no_debug.isEnabledFor(logging.DEBUG))"},{"line_number":258,"context_line":"        self.assertTrue(self.log_below_debug.isEnabledFor(logging.DEBUG))"},{"line_number":259,"context_line":"        self.assertTrue(self.log_below_debug.isEnabledFor(5))"},{"line_number":260,"context_line":"        self.assertTrue(self.log_below_debug.isEnabledFor(log.TRACE))"},{"line_number":261,"context_line":""},{"line_number":262,"context_line":"    def test_has_level_from_flags(self):"},{"line_number":263,"context_line":"        self.assertEqual(logging.INFO, self.log.logger.getEffectiveLevel())"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a50d1a3_cff91182","line":260,"in_reply_to":"3a50d1a3_4cbbcfe5","updated":"2015-07-27 19:02:01.000000000","message":"changed it to another number","commit_id":"6e605a0245676530b3df653a34c94b93b42168ce"}]}
