)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"ccb453b003dc4adc2353cbd4bf806d73948cf8ef","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Firewall L3 logging extension"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-On: I5372fa4d93f51692cebc9dc4df5b4fe79b1ef554"},{"line_number":10,"context_line":"Prtial-Bug: #1720727"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"5f7c97a3_71a13395","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":10},"updated":"2018-06-21 09:01:09.000000000","message":"Partial-Bug","commit_id":"bb916300987f18a8878c275bc05f5e83a37cdc1b"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"bc2139ae9d8da1d32634f9da8b60fa8411cf3ddb","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Firewall L3 logging extension"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-On: I5372fa4d93f51692cebc9dc4df5b4fe79b1ef554"},{"line_number":10,"context_line":"Prtial-Bug: #1720727"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"5f7c97a3_a43b0799","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":10},"in_reply_to":"5f7c97a3_71a13395","updated":"2018-06-21 09:26:58.000000000","message":"Done","commit_id":"bb916300987f18a8878c275bc05f5e83a37cdc1b"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"ccb453b003dc4adc2353cbd4bf806d73948cf8ef","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-On: I5372fa4d93f51692cebc9dc4df5b4fe79b1ef554"},{"line_number":10,"context_line":"Prtial-Bug: #1720727"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"5f7c97a3_31a73bab","line":11,"updated":"2018-06-21 09:01:09.000000000","message":"Is this blank necessary?","commit_id":"bb916300987f18a8878c275bc05f5e83a37cdc1b"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"bc2139ae9d8da1d32634f9da8b60fa8411cf3ddb","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Depends-On: I5372fa4d93f51692cebc9dc4df5b4fe79b1ef554"},{"line_number":10,"context_line":"Prtial-Bug: #1720727"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"5f7c97a3_c4408309","line":11,"in_reply_to":"5f7c97a3_31a73bab","updated":"2018-06-21 09:26:58.000000000","message":"Done","commit_id":"bb916300987f18a8878c275bc05f5e83a37cdc1b"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"da933fc5afc22ab7d60dd6937738d4a9b710db39","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Nguyen Phuong An \u003cAnNP@vn.fujitsu.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-07-10 11:14:40 +0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Firewall L3 logging extension"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch introduces L3 logging extension for firewall group."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"5f7c97a3_c94d9899","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":9},"updated":"2018-07-10 09:49:10.000000000","message":"FWaaS v2","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"b22445c9ba1471bf9ab61a6702fa22811cdc36a5","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This patch introduces L3 logging extension for firewall group."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Co-Authored-By: Kim Bao Long \u003clongkb@vn.fujitsu.com\u003e"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Depends-On: https://review.openstack.org/#/c/574683/"},{"line_number":14,"context_line":"Partial-Bug: #1720727"},{"line_number":15,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"5f7c97a3_c65cacf1","line":12,"updated":"2018-08-01 15:14:07.000000000","message":"Unnecessary blank.","commit_id":"9e38cc7d0d48b275935d79408bf1418e77a6f917"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"996736a7a0d3da8ac7467f551613293cdf7080f7","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This patch introduces L3 logging extension for firewall group."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Co-Authored-By: Kim Bao Long \u003clongkb@vn.fujitsu.com\u003e"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Depends-On: https://review.openstack.org/#/c/574683/"},{"line_number":14,"context_line":"Partial-Bug: #1720727"},{"line_number":15,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"5f7c97a3_416873f1","line":12,"in_reply_to":"5f7c97a3_c65cacf1","updated":"2018-08-02 11:44:15.000000000","message":"Done","commit_id":"9e38cc7d0d48b275935d79408bf1418e77a6f917"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"b22445c9ba1471bf9ab61a6702fa22811cdc36a5","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Co-Authored-By: Kim Bao Long \u003clongkb@vn.fujitsu.com\u003e"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Depends-On: https://review.openstack.org/#/c/574683/"},{"line_number":14,"context_line":"Partial-Bug: #1720727"},{"line_number":15,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"5f7c97a3_26480029","line":13,"updated":"2018-08-01 15:14:07.000000000","message":"Is there any reason to specify URL instead of changeID?","commit_id":"9e38cc7d0d48b275935d79408bf1418e77a6f917"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"996736a7a0d3da8ac7467f551613293cdf7080f7","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Co-Authored-By: Kim Bao Long \u003clongkb@vn.fujitsu.com\u003e"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Depends-On: https://review.openstack.org/#/c/574683/"},{"line_number":14,"context_line":"Partial-Bug: #1720727"},{"line_number":15,"context_line":"Change-Id: I4d9af5325f157fbb35ea6fdb25723268856a0db4"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"5f7c97a3_e172dfe3","line":13,"in_reply_to":"5f7c97a3_26480029","updated":"2018-08-02 11:44:15.000000000","message":"Please refer to this link: https://docs.openstack.org/infra/manual/developers.html#cross-repository-dependencies","commit_id":"9e38cc7d0d48b275935d79408bf1418e77a6f917"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"d28f2ad33fe5333c11aa26c5c77a1eb901f88f45","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kim Bao Long \u003clongkb@vn.fujitsu.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-08-02 18:03:35 +0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"FWaaS v2: L3 logging extension"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch introduces L3 logging extension for firewall group."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":21,"id":"5f7c97a3_d5bd1c05","line":7,"range":{"start_line":7,"start_character":13,"end_line":7,"end_character":21},"updated":"2018-08-02 20:26:56.000000000","message":"logging agent","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"f14a7835bfd935c3f76d067d8381340b9167dd14","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kim Bao Long \u003clongkb@vn.fujitsu.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2018-08-02 18:03:35 +0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"FWaaS v2: L3 logging extension"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch introduces L3 logging extension for firewall group."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":21,"id":"5f7c97a3_293987cf","line":7,"range":{"start_line":7,"start_character":13,"end_line":7,"end_character":21},"in_reply_to":"5f7c97a3_d5bd1c05","updated":"2018-08-03 05:04:48.000000000","message":"Done","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"d28f2ad33fe5333c11aa26c5c77a1eb901f88f45","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"FWaaS v2: L3 logging extension"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch introduces L3 logging extension for firewall group."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Co-Authored-By: Kim Bao Long \u003clongkb@vn.fujitsu.com\u003e"},{"line_number":12,"context_line":"Depends-On: https://review.openstack.org/#/c/574683/"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":21,"id":"5f7c97a3_f5ba980a","line":9,"range":{"start_line":9,"start_character":25,"end_line":9,"end_character":32},"updated":"2018-08-02 20:26:56.000000000","message":"ditto","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"}],"lower-constraints.txt":[{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"71100a350ec50e4f9debe103c1eb07f691240d06","unresolved":false,"context_lines":[{"line_number":52,"context_line":"netaddr\u003d\u003d0.7.18"},{"line_number":53,"context_line":"netifaces\u003d\u003d0.10.4"},{"line_number":54,"context_line":"neutron-lib\u003d\u003d1.18.0"},{"line_number":55,"context_line":"neutron\u003d\u003d13.0.0.0b3"},{"line_number":56,"context_line":"openstackdocstheme\u003d\u003d1.18.1"},{"line_number":57,"context_line":"openstacksdk\u003d\u003d0.11.2"},{"line_number":58,"context_line":"os-client-config\u003d\u003d1.28.0"}],"source_content_type":"text/plain","patch_set":20,"id":"5f7c97a3_5e9db269","line":55,"updated":"2018-08-02 09:45:14.000000000","message":"Please revert it.","commit_id":"9e38cc7d0d48b275935d79408bf1418e77a6f917"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"996736a7a0d3da8ac7467f551613293cdf7080f7","unresolved":false,"context_lines":[{"line_number":52,"context_line":"netaddr\u003d\u003d0.7.18"},{"line_number":53,"context_line":"netifaces\u003d\u003d0.10.4"},{"line_number":54,"context_line":"neutron-lib\u003d\u003d1.18.0"},{"line_number":55,"context_line":"neutron\u003d\u003d13.0.0.0b3"},{"line_number":56,"context_line":"openstackdocstheme\u003d\u003d1.18.1"},{"line_number":57,"context_line":"openstacksdk\u003d\u003d0.11.2"},{"line_number":58,"context_line":"os-client-config\u003d\u003d1.28.0"}],"source_content_type":"text/plain","patch_set":20,"id":"5f7c97a3_016efbfc","line":55,"in_reply_to":"5f7c97a3_5e9db269","updated":"2018-08-02 11:44:15.000000000","message":"Done","commit_id":"9e38cc7d0d48b275935d79408bf1418e77a6f917"}],"neutron_fwaas/services/logapi/agent/fw_l3_log_agent.py":[{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"128f5e169c8dba14c30627e61c5121f5dd7a506a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2018 Fujitsu Limited"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_51143741","line":1,"updated":"2018-06-21 08:35:58.000000000","message":"I think a name of this file is a little redundant. This file handles only L3 agent extension and firewall group, right?  If so, it should be like \u0027fwg_log.py\u0027.  In addition, it\u0027s better to align with directory structure like\n\n* services/firewall/service_drivers/agent/l2/fwaas_v2.py (fwg L2 agent extension)\n* services/logapi/agent/l3/fwg_log.py","commit_id":"4e2dc794587bcbdd03921cc17c90a1ae10aa854f"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"e1a25ae27ee711f5e49c38db21035f117f279049","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright (c) 2018 Fujitsu Limited"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":3,"id":"5f7c97a3_1109dfdb","line":1,"in_reply_to":"5f7c97a3_51143741","updated":"2018-06-21 08:46:03.000000000","message":"Hi Yushiro,\n\nThank you for your suggestion. Done.","commit_id":"4e2dc794587bcbdd03921cc17c90a1ae10aa854f"}],"neutron_fwaas/services/logapi/agents/l3/fwg_log.py":[{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"da933fc5afc22ab7d60dd6937738d4a9b710db39","unresolved":false,"context_lines":[{"line_number":12,"context_line":"#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the"},{"line_number":13,"context_line":"#    License for the specific language governing permissions and limitations"},{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"from neutron_lib.agent import l3_extension"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"from neutron.services.logapi.agent.l3 import base"},{"line_number":19,"context_line":"from neutron.services.logapi.agent import log_extension as log_ext"},{"line_number":20,"context_line":"from neutron.services.logapi.rpc import agent as agent_rpc"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"class FWaaSV2LogExtension(base.L3LoggingExtensionBase,"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f7c97a3_2923ecbf","line":20,"range":{"start_line":15,"start_character":0,"end_line":20,"end_character":58},"updated":"2018-07-10 09:49:10.000000000","message":"From neutron-fwaas perspective,  neutron and neutron-lib are third-party libs.\nhttps://docs.openstack.org/hacking/latest/user/hacking.html#imports","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"da933fc5afc22ab7d60dd6937738d4a9b710db39","unresolved":false,"context_lines":[{"line_number":24,"context_line":"                          l3_extension.L3AgentExtension):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    def initialize(self, connection, driver_type):"},{"line_number":27,"context_line":"        \"\"\"Init agent extension\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"        fw_log_cls \u003d self._load_driver_cls("},{"line_number":30,"context_line":"            log_ext.LOGGING_DRIVERS_NAMESPACE, \u0027fwaas_v2_log\u0027)"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f7c97a3_1f4f41be","line":27,"range":{"start_line":27,"start_character":11,"end_line":27,"end_character":30},"updated":"2018-07-10 09:49:10.000000000","message":"Initialize L3 agent extension","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"93b5ed0e0936381d77d32c1cf9695396ead7ca7f","unresolved":false,"context_lines":[{"line_number":24,"context_line":"                          l3_extension.L3AgentExtension):"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"    def initialize(self, connection, driver_type):"},{"line_number":27,"context_line":"        \"\"\"Init agent extension\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"        fw_log_cls \u003d self._load_driver_cls("},{"line_number":30,"context_line":"            log_ext.LOGGING_DRIVERS_NAMESPACE, \u0027fwaas_v2_log\u0027)"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f7c97a3_ea35cbdd","line":27,"range":{"start_line":27,"start_character":11,"end_line":27,"end_character":30},"in_reply_to":"5f7c97a3_1f4f41be","updated":"2018-07-11 03:10:40.000000000","message":"Done","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"da933fc5afc22ab7d60dd6937738d4a9b710db39","unresolved":false,"context_lines":[{"line_number":27,"context_line":"        \"\"\"Init agent extension\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"        fw_log_cls \u003d self._load_driver_cls("},{"line_number":30,"context_line":"            log_ext.LOGGING_DRIVERS_NAMESPACE, \u0027fwaas_v2_log\u0027)"},{"line_number":31,"context_line":"        self.log_driver \u003d fw_log_cls(self.agent_api)"},{"line_number":32,"context_line":"        self.resource_rpc \u003d agent_rpc.LoggingApiStub()"},{"line_number":33,"context_line":"        self._register_rpc_consumers()"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f7c97a3_e9017408","line":30,"range":{"start_line":30,"start_character":48,"end_line":30,"end_character":60},"updated":"2018-07-10 09:49:10.000000000","message":"Please use constant value.  And please add TODO that this constant value will move into neutron-lib.","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"0d2c43d9bb148296cf1777ba54c65a8659bfbbf5","unresolved":false,"context_lines":[{"line_number":27,"context_line":"        \"\"\"Init agent extension\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"        fw_log_cls \u003d self._load_driver_cls("},{"line_number":30,"context_line":"            log_ext.LOGGING_DRIVERS_NAMESPACE, \u0027fwaas_v2_log\u0027)"},{"line_number":31,"context_line":"        self.log_driver \u003d fw_log_cls(self.agent_api)"},{"line_number":32,"context_line":"        self.resource_rpc \u003d agent_rpc.LoggingApiStub()"},{"line_number":33,"context_line":"        self._register_rpc_consumers()"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f7c97a3_5ea4c407","line":30,"range":{"start_line":30,"start_character":48,"end_line":30,"end_character":60},"in_reply_to":"5f7c97a3_4a6f1fc4","updated":"2018-07-11 04:29:11.000000000","message":"There are constants definition for agent side at neutron-lib.  If we move to FWaaS agent extension into neutron-lib,  it\u0027s better to move them as well.  Currently, it\u0027s OK for PS13 but plz also consider it.\n\nhttps://github.com/openstack/neutron-lib/blob/master/neutron_lib/agent/constants.py","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"a6255a5d10425723d55be1647d05945e1f82fb98","unresolved":false,"context_lines":[{"line_number":27,"context_line":"        \"\"\"Init agent extension\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"        fw_log_cls \u003d self._load_driver_cls("},{"line_number":30,"context_line":"            log_ext.LOGGING_DRIVERS_NAMESPACE, \u0027fwaas_v2_log\u0027)"},{"line_number":31,"context_line":"        self.log_driver \u003d fw_log_cls(self.agent_api)"},{"line_number":32,"context_line":"        self.resource_rpc \u003d agent_rpc.LoggingApiStub()"},{"line_number":33,"context_line":"        self._register_rpc_consumers()"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f7c97a3_1ec88c4b","line":30,"range":{"start_line":30,"start_character":48,"end_line":30,"end_character":60},"in_reply_to":"5f7c97a3_5ea4c407","updated":"2018-07-11 05:14:38.000000000","message":"I got it. Thanks.","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"93b5ed0e0936381d77d32c1cf9695396ead7ca7f","unresolved":false,"context_lines":[{"line_number":27,"context_line":"        \"\"\"Init agent extension\"\"\""},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"        fw_log_cls \u003d self._load_driver_cls("},{"line_number":30,"context_line":"            log_ext.LOGGING_DRIVERS_NAMESPACE, \u0027fwaas_v2_log\u0027)"},{"line_number":31,"context_line":"        self.log_driver \u003d fw_log_cls(self.agent_api)"},{"line_number":32,"context_line":"        self.resource_rpc \u003d agent_rpc.LoggingApiStub()"},{"line_number":33,"context_line":"        self._register_rpc_consumers()"}],"source_content_type":"text/x-python","patch_set":12,"id":"5f7c97a3_4a6f1fc4","line":30,"range":{"start_line":30,"start_character":48,"end_line":30,"end_character":60},"in_reply_to":"5f7c97a3_e9017408","updated":"2018-07-11 03:10:40.000000000","message":"Basically, We shouldn\u0027t move constants value into neutron-lib, especially in agent side. Moreover, the constant only use for FWaaSV2LogExtension. So let\u0027s keep it there.","commit_id":"b0c079c2b4b1194abdaed054d6fb4a057bad7aca"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"d28f2ad33fe5333c11aa26c5c77a1eb901f88f45","unresolved":false,"context_lines":[{"line_number":22,"context_line":"FIREWALL_LOG_DRIVER_NAME \u003d \u0027fwaas_v2_log\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class FWaaSV2LogExtension(base.L3LoggingExtensionBase,"},{"line_number":26,"context_line":"                          l3_extension.L3AgentExtension):"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"    def initialize(self, connection, driver_type):"}],"source_content_type":"text/x-python","patch_set":21,"id":"5f7c97a3_d219a5d2","line":25,"range":{"start_line":25,"start_character":6,"end_line":25,"end_character":25},"updated":"2018-08-02 20:26:56.000000000","message":"In the future, we should support L2 port for logging. So, it should rename L3 specific class like FWaaSL3LogExtension.  Anyway, \"V2\" is not necessary.","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"},{"author":{"_account_id":10850,"name":"German Eichberger","email":"german.eichberger@gmail.com","username":"german"},"change_message_id":"10c106fbf349a6b9d7bd77a046daa358459ed43c","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from neutron_lib.agent import l3_extension"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"#TODO(annp) move to neutron-lib"},{"line_number":22,"context_line":"FIREWALL_LOG_DRIVER_NAME \u003d \u0027fwaas_v2_log\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class FWaaSL3LoggingExtension(base.L3LoggingExtensionBase,"}],"source_content_type":"text/x-python","patch_set":23,"id":"3f79a3b5_38c5453d","line":22,"updated":"2018-08-06 16:21:33.000000000","message":"shouldn\u0027t that be a config option. It looks like you are loading the log driver with Steve d\u0027ore?","commit_id":"b99a499bb704b72ba461d2fd5eac07dc47dda52d"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"c106fbcc82af3a77d44b0fe142369f9173028e07","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from neutron_lib.agent import l3_extension"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"#TODO(annp) move to neutron-lib"},{"line_number":22,"context_line":"FIREWALL_LOG_DRIVER_NAME \u003d \u0027fwaas_v2_log\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class FWaaSL3LoggingExtension(base.L3LoggingExtensionBase,"}],"source_content_type":"text/x-python","patch_set":23,"id":"3f79a3b5_8d2455c8","line":22,"in_reply_to":"3f79a3b5_38c5453d","updated":"2018-08-07 01:38:18.000000000","message":"Yes, you\u0027re right :). log_driver is loading with stevedore. In my opinion, less config is better for operator, so neutron packet logging framework haven\u0027t has \u0027log_driver\u0027 configuration option. But if there is any usecase for this, then we can consider it. How do you think?","commit_id":"b99a499bb704b72ba461d2fd5eac07dc47dda52d"},{"author":{"_account_id":10850,"name":"German Eichberger","email":"german.eichberger@gmail.com","username":"german"},"change_message_id":"388eb57d3fc8813853937e2d229965ba5b4a641f","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from neutron_lib.agent import l3_extension"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"#TODO(annp) move to neutron-lib"},{"line_number":22,"context_line":"FIREWALL_LOG_DRIVER_NAME \u003d \u0027fwaas_v2_log\u0027"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"class FWaaSL3LoggingExtension(base.L3LoggingExtensionBase,"}],"source_content_type":"text/x-python","patch_set":23,"id":"3f79a3b5_aef26405","line":22,"in_reply_to":"3f79a3b5_8d2455c8","updated":"2018-08-07 08:34:13.000000000","message":"If we don\u0027t intend to configure it on the fly we can just use a simple import ;-). Usually we have noop drivers for testing we can load in...","commit_id":"b99a499bb704b72ba461d2fd5eac07dc47dda52d"}],"neutron_fwaas/tests/unit/services/logapi/agents/l3/test_fwg_log.py":[{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"d28f2ad33fe5333c11aa26c5c77a1eb901f88f45","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import mock"},{"line_number":17,"context_line":"from neutron_lib import constants as lib_const"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from neutron.api.rpc.callbacks.consumer import registry"},{"line_number":20,"context_line":"from neutron.api.rpc.callbacks import resources"},{"line_number":21,"context_line":"from neutron.api.rpc.handlers import resources_rpc"},{"line_number":22,"context_line":"from neutron.tests.unit.services.logapi.agent.l3 import test_base as base"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from neutron_fwaas.services.logapi.agents.l3 import fwg_log"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":21,"id":"5f7c97a3_3557b0cc","line":22,"range":{"start_line":17,"start_character":0,"end_line":22,"end_character":73},"updated":"2018-08-02 20:26:56.000000000","message":"It should be 1 block.","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"f14a7835bfd935c3f76d067d8381340b9167dd14","unresolved":false,"context_lines":[{"line_number":14,"context_line":"#    under the License."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"import mock"},{"line_number":17,"context_line":"from neutron_lib import constants as lib_const"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"from neutron.api.rpc.callbacks.consumer import registry"},{"line_number":20,"context_line":"from neutron.api.rpc.callbacks import resources"},{"line_number":21,"context_line":"from neutron.api.rpc.handlers import resources_rpc"},{"line_number":22,"context_line":"from neutron.tests.unit.services.logapi.agent.l3 import test_base as base"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"from neutron_fwaas.services.logapi.agents.l3 import fwg_log"},{"line_number":25,"context_line":""}],"source_content_type":"text/x-python","patch_set":21,"id":"5f7c97a3_c99253fc","line":22,"range":{"start_line":17,"start_character":0,"end_line":22,"end_character":73},"in_reply_to":"5f7c97a3_3557b0cc","updated":"2018-08-03 05:04:48.000000000","message":"Done","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"d28f2ad33fe5333c11aa26c5c77a1eb901f88f45","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @mock.patch.object(registry, \u0027register\u0027)"},{"line_number":35,"context_line":"    @mock.patch.object(resources_rpc, \u0027ResourcesPushRpcCallback\u0027)"},{"line_number":36,"context_line":"    def test_initialize_subscribed_to_rpc(self, rpc_mock, subscribe_mock):"},{"line_number":37,"context_line":"        call_to_patch \u003d \u0027neutron.common.rpc.Connection\u0027"},{"line_number":38,"context_line":"        with mock.patch(call_to_patch,"},{"line_number":39,"context_line":"                        return_value\u003dself.connection) as create_connection:"},{"line_number":40,"context_line":"            self.fw_l3_log_ext.initialize("}],"source_content_type":"text/x-python","patch_set":21,"id":"5f7c97a3_95fa44b9","line":37,"range":{"start_line":37,"start_character":24,"end_line":37,"end_character":55},"updated":"2018-08-02 20:26:56.000000000","message":"If there is a constant value, please use it.","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"f14a7835bfd935c3f76d067d8381340b9167dd14","unresolved":false,"context_lines":[{"line_number":34,"context_line":"    @mock.patch.object(registry, \u0027register\u0027)"},{"line_number":35,"context_line":"    @mock.patch.object(resources_rpc, \u0027ResourcesPushRpcCallback\u0027)"},{"line_number":36,"context_line":"    def test_initialize_subscribed_to_rpc(self, rpc_mock, subscribe_mock):"},{"line_number":37,"context_line":"        call_to_patch \u003d \u0027neutron.common.rpc.Connection\u0027"},{"line_number":38,"context_line":"        with mock.patch(call_to_patch,"},{"line_number":39,"context_line":"                        return_value\u003dself.connection) as create_connection:"},{"line_number":40,"context_line":"            self.fw_l3_log_ext.initialize("}],"source_content_type":"text/x-python","patch_set":21,"id":"5f7c97a3_497e43c1","line":37,"range":{"start_line":37,"start_character":24,"end_line":37,"end_character":55},"in_reply_to":"5f7c97a3_95fa44b9","updated":"2018-08-03 05:04:48.000000000","message":"There is no constant for this string. So I will keep it.","commit_id":"f558e80680263c087c3aa655d1fb715eab3b8a09"}],"setup.cfg":[{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"ccb453b003dc4adc2353cbd4bf806d73948cf8ef","unresolved":false,"context_lines":[{"line_number":57,"context_line":"neutron.agent.l3.extensions \u003d"},{"line_number":58,"context_line":"    fwaas \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent:L3WithFWaaS"},{"line_number":59,"context_line":"    fwaas_v2 \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent_v2:L3WithFWaaS"},{"line_number":60,"context_line":"    fwaas_log \u003d neutron_fwaas.services.logapi.agent.firewall_l3_log_agent:FWaaSV2LogExtension"},{"line_number":61,"context_line":"neutron.agent.l3.firewall_drivers \u003d"},{"line_number":62,"context_line":"    conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.legacy_conntrack:ConntrackLegacy"},{"line_number":63,"context_line":"    netlink_conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.netlink_conntrack:ConntrackNetlink"}],"source_content_type":"text/x-ttcn-cfg","patch_set":4,"id":"5f7c97a3_f1b6a3dc","line":60,"range":{"start_line":60,"start_character":4,"end_line":60,"end_character":13},"updated":"2018-06-21 09:01:09.000000000","message":"I think this name confuses whether this extension is for v1 or v2.  I think it\u0027s simple to align with neutron\u0027s definition here(https://github.com/openstack/neutron/blob/master/setup.cfg#L107)","commit_id":"bb916300987f18a8878c275bc05f5e83a37cdc1b"},{"author":{"_account_id":13702,"name":"yushiro","username":"yushiro","inactive":true},"change_message_id":"02a30c39c67fd03c56d060154a11c4c9c0ae2b9f","unresolved":false,"context_lines":[{"line_number":57,"context_line":"neutron.agent.l3.extensions \u003d"},{"line_number":58,"context_line":"    fwaas \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent:L3WithFWaaS"},{"line_number":59,"context_line":"    fwaas_v2 \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent_v2:L3WithFWaaS"},{"line_number":60,"context_line":"    fwaas_log \u003d neutron_fwaas.services.logapi.agent.firewall_l3_log_agent:FWaaSV2LogExtension"},{"line_number":61,"context_line":"neutron.agent.l3.firewall_drivers \u003d"},{"line_number":62,"context_line":"    conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.legacy_conntrack:ConntrackLegacy"},{"line_number":63,"context_line":"    netlink_conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.netlink_conntrack:ConntrackNetlink"}],"source_content_type":"text/x-ttcn-cfg","patch_set":4,"id":"5f7c97a3_c49e4305","line":60,"range":{"start_line":60,"start_character":4,"end_line":60,"end_character":13},"in_reply_to":"5f7c97a3_a478e77d","updated":"2018-06-21 09:46:16.000000000","message":"OK, I understood.  It\u0027s OK \u0027fwaas_v2_log\u0027","commit_id":"bb916300987f18a8878c275bc05f5e83a37cdc1b"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"baa26854b3217c7fa82e3c024042b34d5da826d4","unresolved":false,"context_lines":[{"line_number":57,"context_line":"neutron.agent.l3.extensions \u003d"},{"line_number":58,"context_line":"    fwaas \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent:L3WithFWaaS"},{"line_number":59,"context_line":"    fwaas_v2 \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent_v2:L3WithFWaaS"},{"line_number":60,"context_line":"    fwaas_log \u003d neutron_fwaas.services.logapi.agent.firewall_l3_log_agent:FWaaSV2LogExtension"},{"line_number":61,"context_line":"neutron.agent.l3.firewall_drivers \u003d"},{"line_number":62,"context_line":"    conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.legacy_conntrack:ConntrackLegacy"},{"line_number":63,"context_line":"    netlink_conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.netlink_conntrack:ConntrackNetlink"}],"source_content_type":"text/x-ttcn-cfg","patch_set":4,"id":"5f7c97a3_a478e77d","line":60,"range":{"start_line":60,"start_character":4,"end_line":60,"end_character":13},"in_reply_to":"5f7c97a3_f1b6a3dc","updated":"2018-06-21 09:26:36.000000000","message":"Done. Because we will introduce SNAT log. So I think the name should be fwaas_v2_log. Do you think so?","commit_id":"bb916300987f18a8878c275bc05f5e83a37cdc1b"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"9110c91350d2498d36e7232474ca4c5fab15331a","unresolved":false,"context_lines":[{"line_number":57,"context_line":"neutron.agent.l3.extensions \u003d"},{"line_number":58,"context_line":"    fwaas \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent:L3WithFWaaS"},{"line_number":59,"context_line":"    fwaas_v2 \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent_v2:L3WithFWaaS"},{"line_number":60,"context_line":"    fwaas_v2_log \u003d neutron_fwaas.services.logapi.agent.firewall_l3_log_agent:FWaaSV2LogExtension"},{"line_number":61,"context_line":"neutron.agent.l3.firewall_drivers \u003d"},{"line_number":62,"context_line":"    conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.legacy_conntrack:ConntrackLegacy"},{"line_number":63,"context_line":"    netlink_conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.netlink_conntrack:ConntrackNetlink"}],"source_content_type":"text/x-ttcn-cfg","patch_set":8,"id":"5f7c97a3_1de23702","line":60,"range":{"start_line":60,"start_character":55,"end_line":60,"end_character":76},"updated":"2018-06-22 10:48:19.000000000","message":"Please update to l3.fwg_log","commit_id":"9eb52eb061c74b3b8594280b705861f9a811b207"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"777e5c23fb40a038f6f81345268cc79813b8b0a6","unresolved":false,"context_lines":[{"line_number":57,"context_line":"neutron.agent.l3.extensions \u003d"},{"line_number":58,"context_line":"    fwaas \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent:L3WithFWaaS"},{"line_number":59,"context_line":"    fwaas_v2 \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent_v2:L3WithFWaaS"},{"line_number":60,"context_line":"    fwaas_v2_log \u003d neutron_fwaas.services.logapi.agent.firewall_l3_log_agent:FWaaSV2LogExtension"},{"line_number":61,"context_line":"neutron.agent.l3.firewall_drivers \u003d"},{"line_number":62,"context_line":"    conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.legacy_conntrack:ConntrackLegacy"},{"line_number":63,"context_line":"    netlink_conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.netlink_conntrack:ConntrackNetlink"}],"source_content_type":"text/x-ttcn-cfg","patch_set":8,"id":"5f7c97a3_d4a6c3ac","line":60,"range":{"start_line":60,"start_character":55,"end_line":60,"end_character":76},"in_reply_to":"5f7c97a3_1de23702","updated":"2018-06-25 04:21:20.000000000","message":"Thanks.Done","commit_id":"9eb52eb061c74b3b8594280b705861f9a811b207"},{"author":{"_account_id":28174,"name":"Kim Bao Long","email":"longkb@vn.fujitsu.com","username":"longkb.fvl"},"change_message_id":"0ad5975a164c16050a6130f089e241f978400fae","unresolved":false,"context_lines":[{"line_number":57,"context_line":"neutron.agent.l3.extensions \u003d"},{"line_number":58,"context_line":"    fwaas \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent:L3WithFWaaS"},{"line_number":59,"context_line":"    fwaas_v2 \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent_v2:L3WithFWaaS"},{"line_number":60,"context_line":"    fwaas_v2_log \u003d neutron_fwaas.services.logapi.agent.fwg_log:FWaaSV2LogExtension"},{"line_number":61,"context_line":"neutron.agent.l3.firewall_drivers \u003d"},{"line_number":62,"context_line":"    conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.legacy_conntrack:ConntrackLegacy"},{"line_number":63,"context_line":"    netlink_conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.netlink_conntrack:ConntrackNetlink"}],"source_content_type":"text/x-ttcn-cfg","patch_set":9,"id":"5f7c97a3_f63f3e83","line":60,"range":{"start_line":60,"start_character":55,"end_line":60,"end_character":62},"updated":"2018-06-26 03:47:48.000000000","message":"Recheck. It should be l3.fwg_log","commit_id":"e090dfe3a4695f3d4fab89eacc15308f0e8e5273"},{"author":{"_account_id":15471,"name":"Nguyen Phuong An","email":"annp.cs51@gmail.com","username":"An-FVL"},"change_message_id":"e26668cbfeb9f0b9bab6e153ac1ac2732d2b91db","unresolved":false,"context_lines":[{"line_number":57,"context_line":"neutron.agent.l3.extensions \u003d"},{"line_number":58,"context_line":"    fwaas \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent:L3WithFWaaS"},{"line_number":59,"context_line":"    fwaas_v2 \u003d neutron_fwaas.services.firewall.service_drivers.agents.l3reference.firewall_l3_agent_v2:L3WithFWaaS"},{"line_number":60,"context_line":"    fwaas_v2_log \u003d neutron_fwaas.services.logapi.agent.fwg_log:FWaaSV2LogExtension"},{"line_number":61,"context_line":"neutron.agent.l3.firewall_drivers \u003d"},{"line_number":62,"context_line":"    conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.legacy_conntrack:ConntrackLegacy"},{"line_number":63,"context_line":"    netlink_conntrack \u003d neutron_fwaas.services.firewall.service_drivers.agents.drivers.linux.netlink_conntrack:ConntrackNetlink"}],"source_content_type":"text/x-ttcn-cfg","patch_set":9,"id":"5f7c97a3_90c7dc98","line":60,"range":{"start_line":60,"start_character":55,"end_line":60,"end_character":62},"in_reply_to":"5f7c97a3_f63f3e83","updated":"2018-06-26 03:57:55.000000000","message":"Yeah! Thank you, Long-san!","commit_id":"e090dfe3a4695f3d4fab89eacc15308f0e8e5273"}]}
