)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"a3537e6a3ca338f1ebb755d112d6ebc98928b368","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Zabbix Plugin for Application Monitoring in Tacker VNF Manager"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Develop a Zabbix plugin in Tacker VNF manager to monitor application level"},{"line_number":10,"context_line":"parameters that can\u0027t be supported by current Tacker monitoring driver"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I25e871b8e8ddfb49a1f3f22e78c1ea8ba9835d74"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":17,"id":"1f485f77_49702edd","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":10},"updated":"2017-11-14 09:41:03.000000000","message":"add \"Implements: blueprint xxx\"","commit_id":"6af5d015f9f7e446e75955d18e8b00492c9bdf5f"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"f79f5748ea56321fb9ed7d82656afc416efdde8c","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Zabbix Plugin for Application Monitoring in Tacker VNF Manager"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Develop a Zabbix plugin in Tacker VNF manager to monitor application level"},{"line_number":10,"context_line":"parameters that can\u0027t be supported by current Tacker monitoring driver"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I25e871b8e8ddfb49a1f3f22e78c1ea8ba9835d74"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":17,"id":"1f485f77_7a9e06b9","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":10},"in_reply_to":"1f485f77_49702edd","updated":"2017-11-14 11:30:06.000000000","message":"Done","commit_id":"6af5d015f9f7e446e75955d18e8b00492c9bdf5f"}],"doc/source/contributor/zabbix-plugin.rst":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":".. code-block:: console"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"  apt-get -y upgrade"},{"line_number":36,"context_line":"  apt-get -y update"},{"line_number":37,"context_line":"  apt-get -y install zabbix-agent"},{"line_number":38,"context_line":"  echo \u0027zabbix ALL\u003dNOPASSWD: ALL\u0027 \u003e\u003e /etc/sudoers"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Then open the /etc/zabbix/zabbix_agentd.conf file and write for Server,"},{"line_number":41,"context_line":"ServerActive Hostname, EnableRemoteCommands. However, this approach is"}],"source_content_type":"text/x-rst","patch_set":25,"id":"ff82abbf_d39f0f01","line":38,"range":{"start_line":35,"start_character":0,"end_line":38,"end_character":49},"updated":"2017-11-23 09:01:18.000000000","message":"will these things require sudo privilege?","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":".. code-block:: console"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"  apt-get -y upgrade"},{"line_number":36,"context_line":"  apt-get -y update"},{"line_number":37,"context_line":"  apt-get -y install zabbix-agent"},{"line_number":38,"context_line":"  echo \u0027zabbix ALL\u003dNOPASSWD: ALL\u0027 \u003e\u003e /etc/sudoers"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Then open the /etc/zabbix/zabbix_agentd.conf file and write for Server,"},{"line_number":41,"context_line":"ServerActive Hostname, EnableRemoteCommands. However, this approach is"}],"source_content_type":"text/x-rst","patch_set":25,"id":"ff82abbf_87bb7d0c","line":38,"range":{"start_line":35,"start_character":0,"end_line":38,"end_character":49},"in_reply_to":"ff82abbf_d39f0f01","updated":"2017-11-23 11:26:09.000000000","message":"It is not necessary since it is executed in the initialization phase of VNF.","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"6bf8d9e828dfd361de147c213e3939f238505216","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":".. code-block:: console"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"  apt-get -y upgrade"},{"line_number":36,"context_line":"  apt-get -y update"},{"line_number":37,"context_line":"  apt-get -y install zabbix-agent"},{"line_number":38,"context_line":"  echo \u0027zabbix ALL\u003dNOPASSWD: ALL\u0027 \u003e\u003e /etc/sudoers"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Then open the /etc/zabbix/zabbix_agentd.conf file and write for Server,"},{"line_number":41,"context_line":"ServerActive Hostname, EnableRemoteCommands. However, this approach is"}],"source_content_type":"text/x-rst","patch_set":25,"id":"ff82abbf_6d1df7bb","line":38,"range":{"start_line":35,"start_character":0,"end_line":38,"end_character":49},"in_reply_to":"ff82abbf_d39f0f01","updated":"2017-11-23 15:12:32.000000000","message":"Oops, I\u0027m sorry. I was mistaken.\nsudo privilege are required.","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":19644,"name":"Yan Xing\u0027an","email":"yanxingan@cmss.chinamobile.com","username":"yanxingan"},"change_message_id":"297952712b986fc18eb4d746ac5190e392110a24","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"  user_data: |"},{"line_number":53,"context_line":"  #!/bin/bash"},{"line_number":54,"context_line":"  apt-get -y upgrade"},{"line_number":55,"context_line":"  apt-get -y update"},{"line_number":56,"context_line":"  apt-get -y install zabbix-agent"},{"line_number":57,"context_line":"  sudo sed -i \"2s/.*/`ifconfig ens3 | grep \"\"\\\"inet addr:\\\"\"\"| cut -d: -f2 | awk \"\"\\\"{ print $1 }\\\"\"\"`/g\" \"/etc/hosts\""},{"line_number":58,"context_line":"  sudo sed -i \"s/Bcast/`cat /etc/hostname`/g\" \"/etc/hosts\""}],"source_content_type":"text/x-rst","patch_set":28,"id":"df87a7cf_f9c49f61","line":55,"range":{"start_line":54,"start_character":0,"end_line":55,"end_character":19},"updated":"2017-12-05 02:41:07.000000000","message":"we should update first, and then upgrade?","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"91b710182fc7ba8963a5f54c28040e5a5521a2d4","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"  user_data: |"},{"line_number":53,"context_line":"  #!/bin/bash"},{"line_number":54,"context_line":"  apt-get -y upgrade"},{"line_number":55,"context_line":"  apt-get -y update"},{"line_number":56,"context_line":"  apt-get -y install zabbix-agent"},{"line_number":57,"context_line":"  sudo sed -i \"2s/.*/`ifconfig ens3 | grep \"\"\\\"inet addr:\\\"\"\"| cut -d: -f2 | awk \"\"\\\"{ print $1 }\\\"\"\"`/g\" \"/etc/hosts\""},{"line_number":58,"context_line":"  sudo sed -i \"s/Bcast/`cat /etc/hostname`/g\" \"/etc/hosts\""}],"source_content_type":"text/x-rst","patch_set":28,"id":"df87a7cf_ff71df0d","line":55,"range":{"start_line":54,"start_character":0,"end_line":55,"end_character":19},"in_reply_to":"df87a7cf_f9c49f61","updated":"2017-12-05 04:20:55.000000000","message":"Done","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":19644,"name":"Yan Xing\u0027an","email":"yanxingan@cmss.chinamobile.com","username":"yanxingan"},"change_message_id":"297952712b986fc18eb4d746ac5190e392110a24","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  apt-get -y upgrade"},{"line_number":55,"context_line":"  apt-get -y update"},{"line_number":56,"context_line":"  apt-get -y install zabbix-agent"},{"line_number":57,"context_line":"  sudo sed -i \"2s/.*/`ifconfig ens3 | grep \"\"\\\"inet addr:\\\"\"\"| cut -d: -f2 | awk \"\"\\\"{ print $1 }\\\"\"\"`/g\" \"/etc/hosts\""},{"line_number":58,"context_line":"  sudo sed -i \"s/Bcast/`cat /etc/hostname`/g\" \"/etc/hosts\""},{"line_number":59,"context_line":"  sudo sed -i \"3s/.*/192.168.11.53\\tmonitor/g\" \"/etc/hosts\""},{"line_number":60,"context_line":"  sudo /etc/init.d/networking restart"},{"line_number":61,"context_line":"  sudo echo \u0027zabbix ALL\u003dNOPASSWD: ALL\u0027 \u003e\u003e /etc/sudoers"},{"line_number":62,"context_line":"  sed -i \"s/# EnableRemoteCommands\u003d0/EnableRemoteCommands\u003d1/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":63,"context_line":"  sed -i \"s/Server\u003d127.0.0.1/Server\u003d192.168.11.53/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":64,"context_line":"  sed -i \"s/ServerActive\u003d127.0.0.1/ServerActive\u003d192.168.11.53:10051/\" \"/etc/zabbix/zabbix_agentd.conf\""}],"source_content_type":"text/x-rst","patch_set":28,"id":"df87a7cf_197e2319","line":61,"range":{"start_line":57,"start_character":2,"end_line":61,"end_character":11},"updated":"2017-12-05 02:41:07.000000000","message":"if these commands need the prefix \"sudo\", then the \"apt-get\" and \"service\" commands also need \"sudo\". So please check whether \"sudo\" is needed.","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"91b710182fc7ba8963a5f54c28040e5a5521a2d4","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  apt-get -y upgrade"},{"line_number":55,"context_line":"  apt-get -y update"},{"line_number":56,"context_line":"  apt-get -y install zabbix-agent"},{"line_number":57,"context_line":"  sudo sed -i \"2s/.*/`ifconfig ens3 | grep \"\"\\\"inet addr:\\\"\"\"| cut -d: -f2 | awk \"\"\\\"{ print $1 }\\\"\"\"`/g\" \"/etc/hosts\""},{"line_number":58,"context_line":"  sudo sed -i \"s/Bcast/`cat /etc/hostname`/g\" \"/etc/hosts\""},{"line_number":59,"context_line":"  sudo sed -i \"3s/.*/192.168.11.53\\tmonitor/g\" \"/etc/hosts\""},{"line_number":60,"context_line":"  sudo /etc/init.d/networking restart"},{"line_number":61,"context_line":"  sudo echo \u0027zabbix ALL\u003dNOPASSWD: ALL\u0027 \u003e\u003e /etc/sudoers"},{"line_number":62,"context_line":"  sed -i \"s/# EnableRemoteCommands\u003d0/EnableRemoteCommands\u003d1/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":63,"context_line":"  sed -i \"s/Server\u003d127.0.0.1/Server\u003d192.168.11.53/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":64,"context_line":"  sed -i \"s/ServerActive\u003d127.0.0.1/ServerActive\u003d192.168.11.53:10051/\" \"/etc/zabbix/zabbix_agentd.conf\""}],"source_content_type":"text/x-rst","patch_set":28,"id":"df87a7cf_1fdb63ed","line":61,"range":{"start_line":57,"start_character":2,"end_line":61,"end_character":11},"in_reply_to":"df87a7cf_197e2319","updated":"2017-12-05 04:20:55.000000000","message":"Thanks, I changed it :)","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":19644,"name":"Yan Xing\u0027an","email":"yanxingan@cmss.chinamobile.com","username":"yanxingan"},"change_message_id":"297952712b986fc18eb4d746ac5190e392110a24","unresolved":false,"context_lines":[{"line_number":60,"context_line":"  sudo /etc/init.d/networking restart"},{"line_number":61,"context_line":"  sudo echo \u0027zabbix ALL\u003dNOPASSWD: ALL\u0027 \u003e\u003e /etc/sudoers"},{"line_number":62,"context_line":"  sed -i \"s/# EnableRemoteCommands\u003d0/EnableRemoteCommands\u003d1/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":63,"context_line":"  sed -i \"s/Server\u003d127.0.0.1/Server\u003d192.168.11.53/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":64,"context_line":"  sed -i \"s/ServerActive\u003d127.0.0.1/ServerActive\u003d192.168.11.53:10051/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":65,"context_line":"  sed -i \"s/Hostname\u003dZabbix server/Hostname\u003d`cat /etc/hostname`/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":66,"context_line":"  service zabbix-agent restart"}],"source_content_type":"text/x-rst","patch_set":28,"id":"df87a7cf_b9bb77c2","line":63,"range":{"start_line":63,"start_character":36,"end_line":63,"end_character":49},"updated":"2017-12-05 02:41:07.000000000","message":"it\u0027s better to explain that 192.168.11.53 means the zabbix server\u0027s IP Address.","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"91b710182fc7ba8963a5f54c28040e5a5521a2d4","unresolved":false,"context_lines":[{"line_number":60,"context_line":"  sudo /etc/init.d/networking restart"},{"line_number":61,"context_line":"  sudo echo \u0027zabbix ALL\u003dNOPASSWD: ALL\u0027 \u003e\u003e /etc/sudoers"},{"line_number":62,"context_line":"  sed -i \"s/# EnableRemoteCommands\u003d0/EnableRemoteCommands\u003d1/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":63,"context_line":"  sed -i \"s/Server\u003d127.0.0.1/Server\u003d192.168.11.53/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":64,"context_line":"  sed -i \"s/ServerActive\u003d127.0.0.1/ServerActive\u003d192.168.11.53:10051/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":65,"context_line":"  sed -i \"s/Hostname\u003dZabbix server/Hostname\u003d`cat /etc/hostname`/\" \"/etc/zabbix/zabbix_agentd.conf\""},{"line_number":66,"context_line":"  service zabbix-agent restart"}],"source_content_type":"text/x-rst","patch_set":28,"id":"df87a7cf_3fd667c5","line":63,"range":{"start_line":63,"start_character":36,"end_line":63,"end_character":49},"in_reply_to":"df87a7cf_b9bb77c2","updated":"2017-12-05 04:20:55.000000000","message":"Much better. Changed:)","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"}],"samples/tosca-templates/vnfd/tosca-vnfd-zabbix-monitor.yaml":[{"author":{"_account_id":19644,"name":"Yan Xing\u0027an","email":"yanxingan@cmss.chinamobile.com","username":"yanxingan"},"change_message_id":"297952712b986fc18eb4d746ac5190e392110a24","unresolved":false,"context_lines":[{"line_number":26,"context_line":"        user_data_format: RAW"},{"line_number":27,"context_line":"        user_data: |"},{"line_number":28,"context_line":"             #!/bin/bash"},{"line_number":29,"context_line":"             apt-get -y upgrade"},{"line_number":30,"context_line":"             apt-get -y update"},{"line_number":31,"context_line":"             apt-get -y install zabbix-agent"},{"line_number":32,"context_line":"             apt-get -y install apache2"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":28,"id":"df87a7cf_f9d57fe6","line":30,"range":{"start_line":29,"start_character":0,"end_line":30,"end_character":30},"updated":"2017-12-05 02:41:07.000000000","message":"also here","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"91b710182fc7ba8963a5f54c28040e5a5521a2d4","unresolved":false,"context_lines":[{"line_number":26,"context_line":"        user_data_format: RAW"},{"line_number":27,"context_line":"        user_data: |"},{"line_number":28,"context_line":"             #!/bin/bash"},{"line_number":29,"context_line":"             apt-get -y upgrade"},{"line_number":30,"context_line":"             apt-get -y update"},{"line_number":31,"context_line":"             apt-get -y install zabbix-agent"},{"line_number":32,"context_line":"             apt-get -y install apache2"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":28,"id":"df87a7cf_ffdf9fd3","line":30,"range":{"start_line":29,"start_character":0,"end_line":30,"end_character":30},"in_reply_to":"df87a7cf_f9d57fe6","updated":"2017-12-05 04:20:55.000000000","message":"Done","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"}],"setup.cfg":[{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":58,"context_line":"tacker.tacker.monitor.drivers \u003d"},{"line_number":59,"context_line":"    ping \u003d tacker.vnfm.monitor_drivers.ping.ping:VNFMonitorPing"},{"line_number":60,"context_line":"    http_ping \u003d tacker.vnfm.monitor_drivers.http_ping.http_ping:VNFMonitorHTTPPing"},{"line_number":61,"context_line":"tacker.tacker.app_monitor.drivers \u003d "},{"line_number":62,"context_line":"    zabbix \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix:VNFMonitorZabbix"},{"line_number":63,"context_line":"#tacker.tacker.app_monitor_api.drivers \u003d "},{"line_number":64,"context_line":"#    zabbix_api \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix_api:zabbix_api"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"ff82abbf_a1b9f5e9","line":61,"range":{"start_line":61,"start_character":35,"end_line":61,"end_character":36},"updated":"2017-11-22 08:47:00.000000000","message":"trailing space","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":58,"context_line":"tacker.tacker.monitor.drivers \u003d"},{"line_number":59,"context_line":"    ping \u003d tacker.vnfm.monitor_drivers.ping.ping:VNFMonitorPing"},{"line_number":60,"context_line":"    http_ping \u003d tacker.vnfm.monitor_drivers.http_ping.http_ping:VNFMonitorHTTPPing"},{"line_number":61,"context_line":"tacker.tacker.app_monitor.drivers \u003d "},{"line_number":62,"context_line":"    zabbix \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix:VNFMonitorZabbix"},{"line_number":63,"context_line":"#tacker.tacker.app_monitor_api.drivers \u003d "},{"line_number":64,"context_line":"#    zabbix_api \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix_api:zabbix_api"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"ff82abbf_9a0c5a3c","line":61,"range":{"start_line":61,"start_character":35,"end_line":61,"end_character":36},"in_reply_to":"ff82abbf_a1b9f5e9","updated":"2017-11-22 09:47:54.000000000","message":"Done","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    http_ping \u003d tacker.vnfm.monitor_drivers.http_ping.http_ping:VNFMonitorHTTPPing"},{"line_number":61,"context_line":"tacker.tacker.app_monitor.drivers \u003d "},{"line_number":62,"context_line":"    zabbix \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix:VNFMonitorZabbix"},{"line_number":63,"context_line":"#tacker.tacker.app_monitor_api.drivers \u003d "},{"line_number":64,"context_line":"#    zabbix_api \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix_api:zabbix_api"},{"line_number":65,"context_line":"tacker.tacker.alarm_monitor.drivers \u003d"},{"line_number":66,"context_line":"    ceilometer \u003d tacker.vnfm.monitor_drivers.ceilometer.ceilometer:VNFMonitorCeilometer"},{"line_number":67,"context_line":"tacker.tacker.policy.actions \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"ff82abbf_21c5e55b","line":64,"range":{"start_line":63,"start_character":0,"end_line":64,"end_character":74},"updated":"2017-11-22 08:47:00.000000000","message":"if don\u0027t use this, please remove it","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":60,"context_line":"    http_ping \u003d tacker.vnfm.monitor_drivers.http_ping.http_ping:VNFMonitorHTTPPing"},{"line_number":61,"context_line":"tacker.tacker.app_monitor.drivers \u003d "},{"line_number":62,"context_line":"    zabbix \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix:VNFMonitorZabbix"},{"line_number":63,"context_line":"#tacker.tacker.app_monitor_api.drivers \u003d "},{"line_number":64,"context_line":"#    zabbix_api \u003d tacker.vnfm.monitor_drivers.zabbix.zabbix_api:zabbix_api"},{"line_number":65,"context_line":"tacker.tacker.alarm_monitor.drivers \u003d"},{"line_number":66,"context_line":"    ceilometer \u003d tacker.vnfm.monitor_drivers.ceilometer.ceilometer:VNFMonitorCeilometer"},{"line_number":67,"context_line":"tacker.tacker.policy.actions \u003d"}],"source_content_type":"text/x-ttcn-cfg","patch_set":22,"id":"ff82abbf_7a09562a","line":64,"range":{"start_line":63,"start_character":0,"end_line":64,"end_character":74},"in_reply_to":"ff82abbf_21c5e55b","updated":"2017-11-22 09:47:54.000000000","message":"Done","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"}],"tacker/tosca/utils.py":[{"author":{"_account_id":19853,"name":"Nguyen Hung Phuong","email":"phuongnh@vn.fujitsu.com","username":"phuongnh"},"change_message_id":"3f020cae6c28057597f8906f8ceb126812df098b","unresolved":false,"context_lines":[{"line_number":177,"context_line":"                mon_policy \u003d template[\u0027topology_template\u0027][\u0027node_templates\u0027][vdu][\u0027properties\u0027][\u0027app_monitoring_policy\u0027]"},{"line_number":178,"context_line":"                # if \u0027parameters\u0027 in mon_policy:"},{"line_number":179,"context_line":"                #     mon_policy[\u0027monitoring_params\u0027] \u003d mon_policy[\u0027parameters\u0027]"},{"line_number":180,"context_line":"                policy_dict[\u0027vdus\u0027][vdu]\u003d{}"},{"line_number":181,"context_line":"                policy_dict[\u0027vdus\u0027][vdu]\u003dmon_policy"},{"line_number":182,"context_line":"                del template[\u0027topology_template\u0027][\u0027node_templates\u0027][vdu][\u0027properties\u0027][\u0027app_monitoring_policy\u0027]"},{"line_number":183,"context_line":"    if policy_dict.get(\u0027vdus\u0027):"},{"line_number":184,"context_line":"            monitoring_dict \u003d policy_dict"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4b6375_aa6d4799","line":181,"range":{"start_line":180,"start_character":16,"end_line":181,"end_character":51},"updated":"2017-11-01 09:29:35.000000000","message":"policy_dict[\u0027vdus\u0027][vdu] \u003d {}\npolicy_dict[\u0027vdus\u0027][vdu] \u003d mon_policy","commit_id":"23610e2e92ab46b997dc6b5300cfc39744751601"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"df44e072d53a242a8b36fb65db3360b2fce37860","unresolved":false,"context_lines":[{"line_number":177,"context_line":"                mon_policy \u003d template[\u0027topology_template\u0027][\u0027node_templates\u0027][vdu][\u0027properties\u0027][\u0027app_monitoring_policy\u0027]"},{"line_number":178,"context_line":"                # if \u0027parameters\u0027 in mon_policy:"},{"line_number":179,"context_line":"                #     mon_policy[\u0027monitoring_params\u0027] \u003d mon_policy[\u0027parameters\u0027]"},{"line_number":180,"context_line":"                policy_dict[\u0027vdus\u0027][vdu]\u003d{}"},{"line_number":181,"context_line":"                policy_dict[\u0027vdus\u0027][vdu]\u003dmon_policy"},{"line_number":182,"context_line":"                del template[\u0027topology_template\u0027][\u0027node_templates\u0027][vdu][\u0027properties\u0027][\u0027app_monitoring_policy\u0027]"},{"line_number":183,"context_line":"    if policy_dict.get(\u0027vdus\u0027):"},{"line_number":184,"context_line":"            monitoring_dict \u003d policy_dict"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f4b6375_37289b84","line":181,"range":{"start_line":180,"start_character":16,"end_line":181,"end_character":51},"in_reply_to":"3f4b6375_aa6d4799","updated":"2017-11-01 10:34:34.000000000","message":"Done","commit_id":"23610e2e92ab46b997dc6b5300cfc39744751601"},{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":161,"context_line":""},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"def get_vdu_applicationmonitoring(template):"},{"line_number":164,"context_line":"    tname1 \u003d \"topology_template\""},{"line_number":165,"context_line":"    tname2 \u003d \"node_templates\""},{"line_number":166,"context_line":"    tname3 \u003d \"app_monitoring_policy\""},{"line_number":167,"context_line":"    monitoring_dict \u003d dict()"},{"line_number":168,"context_line":"    policy_dict \u003d dict()"},{"line_number":169,"context_line":"    policy_dict[\u0027vdus\u0027] \u003d collections.OrderedDict()"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_84b2bfe5","line":166,"range":{"start_line":164,"start_character":4,"end_line":166,"end_character":36},"updated":"2017-11-22 08:47:00.000000000","message":"please change tname1, tname2, tname3 to meaningful names","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":161,"context_line":""},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"def get_vdu_applicationmonitoring(template):"},{"line_number":164,"context_line":"    tname1 \u003d \"topology_template\""},{"line_number":165,"context_line":"    tname2 \u003d \"node_templates\""},{"line_number":166,"context_line":"    tname3 \u003d \"app_monitoring_policy\""},{"line_number":167,"context_line":"    monitoring_dict \u003d dict()"},{"line_number":168,"context_line":"    policy_dict \u003d dict()"},{"line_number":169,"context_line":"    policy_dict[\u0027vdus\u0027] \u003d collections.OrderedDict()"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_7a22b6a6","line":166,"range":{"start_line":164,"start_character":4,"end_line":166,"end_character":36},"in_reply_to":"ff82abbf_84b2bfe5","updated":"2017-11-22 09:47:54.000000000","message":"Done","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":167,"context_line":"    monitoring_dict \u003d dict()"},{"line_number":168,"context_line":"    policy_dict \u003d dict()"},{"line_number":169,"context_line":"    policy_dict[\u0027vdus\u0027] \u003d collections.OrderedDict()"},{"line_number":170,"context_line":"    vdunode \u003d [node for node in template[tname1][tname2]"},{"line_number":171,"context_line":"               if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    for vdu in vdunode:"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"        if \u0027app_monitoring_policy\u0027 in\\"},{"line_number":176,"context_line":"                template[tname1][tname2][vdu][\u0027properties\u0027]:"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_44d117fb","line":173,"range":{"start_line":170,"start_character":0,"end_line":173,"end_character":23},"updated":"2017-11-22 08:47:00.000000000","message":"change it with something like bellow:\n\nfor nt in template.nodetemplates:\n    ...","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":167,"context_line":"    monitoring_dict \u003d dict()"},{"line_number":168,"context_line":"    policy_dict \u003d dict()"},{"line_number":169,"context_line":"    policy_dict[\u0027vdus\u0027] \u003d collections.OrderedDict()"},{"line_number":170,"context_line":"    vdunode \u003d [node for node in template[tname1][tname2]"},{"line_number":171,"context_line":"               if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    for vdu in vdunode:"},{"line_number":174,"context_line":""},{"line_number":175,"context_line":"        if \u0027app_monitoring_policy\u0027 in\\"},{"line_number":176,"context_line":"                template[tname1][tname2][vdu][\u0027properties\u0027]:"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_9a253aae","line":173,"range":{"start_line":170,"start_character":0,"end_line":173,"end_character":23},"in_reply_to":"ff82abbf_44d117fb","updated":"2017-11-22 09:47:54.000000000","message":"Done","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"81978bf15e11b1f41184e537f73c80ae0ad7756c","unresolved":false,"context_lines":[{"line_number":168,"context_line":"    policy_dict \u003d dict()"},{"line_number":169,"context_line":"    policy_dict[\u0027vdus\u0027] \u003d collections.OrderedDict()"},{"line_number":170,"context_line":"    vdulist \u003d [node for node in template[tpl_temp][n_temp]"},{"line_number":171,"context_line":"               if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    for vduname in vdulist:"},{"line_number":174,"context_line":""}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_3c5563fa","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":41},"updated":"2017-12-12 10:29:10.000000000","message":"Can we avoid this hard-coded regex match.","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"4bafeb65a172a2010c14432cf09b89fcde632990","unresolved":false,"context_lines":[{"line_number":168,"context_line":"    policy_dict \u003d dict()"},{"line_number":169,"context_line":"    policy_dict[\u0027vdus\u0027] \u003d collections.OrderedDict()"},{"line_number":170,"context_line":"    vdulist \u003d [node for node in template[tpl_temp][n_temp]"},{"line_number":171,"context_line":"               if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    for vduname in vdulist:"},{"line_number":174,"context_line":""}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_506283af","line":171,"range":{"start_line":171,"start_character":37,"end_line":171,"end_character":41},"in_reply_to":"df87a7cf_3c5563fa","updated":"2017-12-12 16:19:03.000000000","message":"I changed the part according to your comment.\n\nThanks for the good comments. :)","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"}],"tacker/vnfm/infra_drivers/openstack/translate_template.py":[{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            self.vnf[\u0027attributes\u0027][\u0027monitoring_policy\u0027] \u003d jsonutils.dumps("},{"line_number":80,"context_line":"                self.monitoring_dict)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    @log.log"},{"line_number":83,"context_line":"    def _get_vnfd(self):"},{"line_number":84,"context_line":"        self.attributes \u003d self.vnf[\u0027vnfd\u0027][\u0027attributes\u0027].copy()"},{"line_number":85,"context_line":"        self.vnfd_yaml \u003d self.attributes.pop(\u0027vnfd\u0027, None)"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_c4068787","side":"PARENT","line":82,"range":{"start_line":82,"start_character":4,"end_line":82,"end_character":12},"updated":"2017-11-22 08:47:00.000000000","message":"don\u0027t remove @log.log","commit_id":"58130b54b8c166726dfbaaf0f16d90724530de91"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":79,"context_line":"            self.vnf[\u0027attributes\u0027][\u0027monitoring_policy\u0027] \u003d jsonutils.dumps("},{"line_number":80,"context_line":"                self.monitoring_dict)"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"    @log.log"},{"line_number":83,"context_line":"    def _get_vnfd(self):"},{"line_number":84,"context_line":"        self.attributes \u003d self.vnf[\u0027vnfd\u0027][\u0027attributes\u0027].copy()"},{"line_number":85,"context_line":"        self.vnfd_yaml \u003d self.attributes.pop(\u0027vnfd\u0027, None)"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_da798293","side":"PARENT","line":82,"range":{"start_line":82,"start_character":4,"end_line":82,"end_character":12},"in_reply_to":"ff82abbf_c4068787","updated":"2017-11-22 09:47:54.000000000","message":"Done","commit_id":"58130b54b8c166726dfbaaf0f16d90724530de91"},{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":256,"context_line":"        appmonitoring_dict, vnfd_dicttemp \u003d \\"},{"line_number":257,"context_line":"            toscautils.get_vdu_applicationmonitoring(vnfd_dict)"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"        block_storage_details \u003d toscautils.get_block_storage_details("},{"line_number":260,"context_line":"            vnfd_dicttemp"},{"line_number":261,"context_line":"        )"},{"line_number":262,"context_line":"        toscautils.updateimports(vnfd_dicttemp)"},{"line_number":263,"context_line":"        if \u0027substitution_mappings\u0027 in str(vnfd_dicttemp):"},{"line_number":264,"context_line":"            toscautils.check_for_substitution_mappings("},{"line_number":265,"context_line":"                vnfd_dicttemp,"},{"line_number":266,"context_line":"                parsed_params"},{"line_number":267,"context_line":"            )"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"        try:"},{"line_number":270,"context_line":"            tosca \u003d tosca_template.ToscaTemplate(parsed_params\u003dparsed_params,"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_241df3bc","line":267,"range":{"start_line":259,"start_character":0,"end_line":267,"end_character":13},"updated":"2017-11-22 08:47:00.000000000","message":"please don\u0027t change the old code","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":256,"context_line":"        appmonitoring_dict, vnfd_dicttemp \u003d \\"},{"line_number":257,"context_line":"            toscautils.get_vdu_applicationmonitoring(vnfd_dict)"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"        block_storage_details \u003d toscautils.get_block_storage_details("},{"line_number":260,"context_line":"            vnfd_dicttemp"},{"line_number":261,"context_line":"        )"},{"line_number":262,"context_line":"        toscautils.updateimports(vnfd_dicttemp)"},{"line_number":263,"context_line":"        if \u0027substitution_mappings\u0027 in str(vnfd_dicttemp):"},{"line_number":264,"context_line":"            toscautils.check_for_substitution_mappings("},{"line_number":265,"context_line":"                vnfd_dicttemp,"},{"line_number":266,"context_line":"                parsed_params"},{"line_number":267,"context_line":"            )"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"        try:"},{"line_number":270,"context_line":"            tosca \u003d tosca_template.ToscaTemplate(parsed_params\u003dparsed_params,"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_fabfa6f8","line":267,"range":{"start_line":259,"start_character":0,"end_line":267,"end_character":13},"in_reply_to":"ff82abbf_241df3bc","updated":"2017-11-22 09:47:54.000000000","message":"Changes due to overline and indent errors. :)\nAnyway, we changed it again.","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"}],"tacker/vnfm/monitor.py":[{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":220,"context_line":"        LOG.info(\u0027dev_attrs %s\u0027, dev_attrs[tname])"},{"line_number":221,"context_line":"        LOG.info(\u0027mgmt_url %s\u0027, mgmt_url)"},{"line_number":222,"context_line":"        appmonitoring_dict \u003d ast.literal_eval(dev_attrs[tname])"},{"line_number":223,"context_line":"        vdunode \u003d [node for node in appmonitoring_dict[\u0027vdus\u0027]"},{"line_number":224,"context_line":"                   if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":225,"context_line":""},{"line_number":226,"context_line":"        for vdu in vdunode:"},{"line_number":227,"context_line":"            temp \u003d ast.literal_eval(mgmt_url)"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_6468db20","line":224,"range":{"start_line":223,"start_character":8,"end_line":224,"end_character":48},"updated":"2017-11-22 08:47:00.000000000","message":"ditto","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":220,"context_line":"        LOG.info(\u0027dev_attrs %s\u0027, dev_attrs[tname])"},{"line_number":221,"context_line":"        LOG.info(\u0027mgmt_url %s\u0027, mgmt_url)"},{"line_number":222,"context_line":"        appmonitoring_dict \u003d ast.literal_eval(dev_attrs[tname])"},{"line_number":223,"context_line":"        vdunode \u003d [node for node in appmonitoring_dict[\u0027vdus\u0027]"},{"line_number":224,"context_line":"                   if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":225,"context_line":""},{"line_number":226,"context_line":"        for vdu in vdunode:"},{"line_number":227,"context_line":"            temp \u003d ast.literal_eval(mgmt_url)"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_5a46d223","line":224,"range":{"start_line":223,"start_character":8,"end_line":224,"end_character":48},"in_reply_to":"ff82abbf_6468db20","updated":"2017-11-22 09:47:54.000000000","message":"Done","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":30,"context_line":"from tacker import context as t_context"},{"line_number":31,"context_line":"from tacker.db.common_services import common_services_db_plugin"},{"line_number":32,"context_line":"from tacker.plugins.common import constants"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":36,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_d3d14fcf","line":33,"updated":"2017-11-23 09:01:18.000000000","message":"why?","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":30,"context_line":"from tacker import context as t_context"},{"line_number":31,"context_line":"from tacker.db.common_services import common_services_db_plugin"},{"line_number":32,"context_line":"from tacker.plugins.common import constants"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":36,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_473b359b","line":33,"in_reply_to":"ff82abbf_d3d14fcf","updated":"2017-11-23 11:26:09.000000000","message":"I\u0027m sorry, my mistake","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":19644,"name":"Yan Xing\u0027an","email":"yanxingan@cmss.chinamobile.com","username":"yanxingan"},"change_message_id":"297952712b986fc18eb4d746ac5190e392110a24","unresolved":false,"context_lines":[{"line_number":213,"context_line":"            cfg.CONF.tacker.app_monitor_driver)"},{"line_number":214,"context_line":"        LOG.info(\u0027monitor_manager %s\u0027, driver_manager.DriverManager)"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"    def _create_app_monitoring_dict(self, dev_attrs, mgmt_url):"},{"line_number":217,"context_line":"        tname \u003d \u0027app_monitoring_policy\u0027"},{"line_number":218,"context_line":"        LOG.info(\u0027dev_attrs %s\u0027, dev_attrs[tname])"},{"line_number":219,"context_line":"        LOG.info(\u0027mgmt_url %s\u0027, mgmt_url)"},{"line_number":220,"context_line":"        appmonitoring_dict \u003d ast.literal_eval(dev_attrs[tname])"},{"line_number":221,"context_line":"        vdulist \u003d [node for node in appmonitoring_dict[\u0027vdus\u0027]"},{"line_number":222,"context_line":"                   if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"        for vduname in vdulist:"},{"line_number":225,"context_line":"            temp \u003d ast.literal_eval(mgmt_url)"},{"line_number":226,"context_line":"            appmonitoring_dict[\u0027vdus\u0027][vduname][\u0027mgmt_ip\u0027] \u003d temp[vduname]"},{"line_number":227,"context_line":"        return appmonitoring_dict"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"    def create_app_dict(self, context, vnf_dict):"},{"line_number":230,"context_line":"        dev_attrs \u003d vnf_dict[\u0027attributes\u0027]"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"        LOG.info(\u0027vnf_dict\u0027, vnf_dict)"},{"line_number":233,"context_line":"        mgmt_url \u003d vnf_dict[\u0027mgmt_url\u0027]"},{"line_number":234,"context_line":"        return self._create_app_monitoring_dict(dev_attrs, mgmt_url)"},{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    def _invoke(self, driver, **kwargs):"},{"line_number":237,"context_line":"        method \u003d inspect.stack()[1][3]"},{"line_number":238,"context_line":"        LOG.info(\u0027_invoke monitor method : %s\u0027, method)"},{"line_number":239,"context_line":"        LOG.info(\u0027driver %s\u0027, driver)"},{"line_number":240,"context_line":"        LOG.info(\u0027self._application %s \u0027, self._application_monitor_manager)"},{"line_number":241,"context_line":"        return self._application_monitor_manager.\\"},{"line_number":242,"context_line":"            invoke(driver, method, **kwargs)"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"    def add_to_appmonitor(self, applicationvnfdict, vnf_dict):"}],"source_content_type":"text/x-python","patch_set":28,"id":"df87a7cf_d9fd1b3b","line":241,"range":{"start_line":216,"start_character":0,"end_line":241,"end_character":50},"updated":"2017-12-05 02:41:07.000000000","message":"Too many LOG.info here, we can put some messages into DEBUG level.","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"91b710182fc7ba8963a5f54c28040e5a5521a2d4","unresolved":false,"context_lines":[{"line_number":213,"context_line":"            cfg.CONF.tacker.app_monitor_driver)"},{"line_number":214,"context_line":"        LOG.info(\u0027monitor_manager %s\u0027, driver_manager.DriverManager)"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"    def _create_app_monitoring_dict(self, dev_attrs, mgmt_url):"},{"line_number":217,"context_line":"        tname \u003d \u0027app_monitoring_policy\u0027"},{"line_number":218,"context_line":"        LOG.info(\u0027dev_attrs %s\u0027, dev_attrs[tname])"},{"line_number":219,"context_line":"        LOG.info(\u0027mgmt_url %s\u0027, mgmt_url)"},{"line_number":220,"context_line":"        appmonitoring_dict \u003d ast.literal_eval(dev_attrs[tname])"},{"line_number":221,"context_line":"        vdulist \u003d [node for node in appmonitoring_dict[\u0027vdus\u0027]"},{"line_number":222,"context_line":"                   if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"        for vduname in vdulist:"},{"line_number":225,"context_line":"            temp \u003d ast.literal_eval(mgmt_url)"},{"line_number":226,"context_line":"            appmonitoring_dict[\u0027vdus\u0027][vduname][\u0027mgmt_ip\u0027] \u003d temp[vduname]"},{"line_number":227,"context_line":"        return appmonitoring_dict"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"    def create_app_dict(self, context, vnf_dict):"},{"line_number":230,"context_line":"        dev_attrs \u003d vnf_dict[\u0027attributes\u0027]"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"        LOG.info(\u0027vnf_dict\u0027, vnf_dict)"},{"line_number":233,"context_line":"        mgmt_url \u003d vnf_dict[\u0027mgmt_url\u0027]"},{"line_number":234,"context_line":"        return self._create_app_monitoring_dict(dev_attrs, mgmt_url)"},{"line_number":235,"context_line":""},{"line_number":236,"context_line":"    def _invoke(self, driver, **kwargs):"},{"line_number":237,"context_line":"        method \u003d inspect.stack()[1][3]"},{"line_number":238,"context_line":"        LOG.info(\u0027_invoke monitor method : %s\u0027, method)"},{"line_number":239,"context_line":"        LOG.info(\u0027driver %s\u0027, driver)"},{"line_number":240,"context_line":"        LOG.info(\u0027self._application %s \u0027, self._application_monitor_manager)"},{"line_number":241,"context_line":"        return self._application_monitor_manager.\\"},{"line_number":242,"context_line":"            invoke(driver, method, **kwargs)"},{"line_number":243,"context_line":""},{"line_number":244,"context_line":"    def add_to_appmonitor(self, applicationvnfdict, vnf_dict):"}],"source_content_type":"text/x-python","patch_set":28,"id":"df87a7cf_7fedcf89","line":241,"range":{"start_line":216,"start_character":0,"end_line":241,"end_character":50},"in_reply_to":"df87a7cf_d9fd1b3b","updated":"2017-12-05 04:20:55.000000000","message":"It seems to be an unnecessary line. Removed.\nThank you.","commit_id":"22677d28ffe42ab388f861b6ac4671fa81f8f45c"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"81978bf15e11b1f41184e537f73c80ae0ad7756c","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        app_policy \u003d \u0027app_monitoring_policy\u0027"},{"line_number":217,"context_line":"        appmonitoring_dict \u003d ast.literal_eval(dev_attrs[app_policy])"},{"line_number":218,"context_line":"        vdulist \u003d [node for node in appmonitoring_dict[\u0027vdus\u0027]"},{"line_number":219,"context_line":"                   if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"        for vduname in vdulist:"},{"line_number":222,"context_line":"            temp \u003d ast.literal_eval(mgmt_url)"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_dcdf9763","line":219,"range":{"start_line":219,"start_character":40,"end_line":219,"end_character":45},"updated":"2017-12-12 10:29:10.000000000","message":"same","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"4bafeb65a172a2010c14432cf09b89fcde632990","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        app_policy \u003d \u0027app_monitoring_policy\u0027"},{"line_number":217,"context_line":"        appmonitoring_dict \u003d ast.literal_eval(dev_attrs[app_policy])"},{"line_number":218,"context_line":"        vdulist \u003d [node for node in appmonitoring_dict[\u0027vdus\u0027]"},{"line_number":219,"context_line":"                   if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"        for vduname in vdulist:"},{"line_number":222,"context_line":"            temp \u003d ast.literal_eval(mgmt_url)"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_70d7874c","line":219,"range":{"start_line":219,"start_character":40,"end_line":219,"end_character":45},"in_reply_to":"df87a7cf_dcdf9763","updated":"2017-12-12 16:19:03.000000000","message":"Done","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"}],"tacker/vnfm/monitor_drivers/zabbix/zabbix.py":[{"author":{"_account_id":19853,"name":"Nguyen Hung Phuong","email":"phuongnh@vn.fujitsu.com","username":"phuongnh"},"change_message_id":"f3ca9749813b5b25dacf5454e07678df337a064b","unresolved":false,"context_lines":[{"line_number":23,"context_line":"from oslo_log import log as logging"},{"line_number":24,"context_line":"from tacker.api import extensions"},{"line_number":25,"context_line":"from tacker.vnfm.monitor_drivers.zabbix import zabbix_api as zapi"},{"line_number":26,"context_line":"from tacker.vnfm.monitor_drivers.token import Token"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f4b6375_098b291f","line":26,"range":{"start_line":26,"start_character":0,"end_line":26,"end_character":51},"updated":"2017-11-02 08:41:03.000000000","message":"Please move up 1 row","commit_id":"c29eb62ef0a7c20975642e39cb48682fd0e809ab"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"7a180a8d7c89b069a305ac0c0c898b816966ce99","unresolved":false,"context_lines":[{"line_number":23,"context_line":"from oslo_log import log as logging"},{"line_number":24,"context_line":"from tacker.api import extensions"},{"line_number":25,"context_line":"from tacker.vnfm.monitor_drivers.zabbix import zabbix_api as zapi"},{"line_number":26,"context_line":"from tacker.vnfm.monitor_drivers.token import Token"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":"CONF \u003d cfg.CONF"}],"source_content_type":"text/x-python","patch_set":6,"id":"3f4b6375_49736117","line":26,"range":{"start_line":26,"start_character":0,"end_line":26,"end_character":51},"in_reply_to":"3f4b6375_098b291f","updated":"2017-11-02 08:46:24.000000000","message":"Thanks :) I fixed it.","commit_id":"c29eb62ef0a7c20975642e39cb48682fd0e809ab"},{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":166,"context_line":"                tempname_api[\u0027opcommand_hst\u0027][0][\u0027hostid\u0027] \u003d \\"},{"line_number":167,"context_line":"                    self.hostinfo[vdu][\u0027hostid\u0027]"},{"line_number":168,"context_line":"                LOG.info(\u0027info %s \u0027, info)"},{"line_number":169,"context_line":"                now \u003d time.localtime()"},{"line_number":170,"context_line":"                rtime \u003d str(now.tm_hour) + str(now.tm_min) + str(now.tm_sec)"},{"line_number":171,"context_line":"                temp_name \u003d \"Trigger Action \" + \\"},{"line_number":172,"context_line":"                            str("},{"line_number":173,"context_line":"                                vdu + rtime + \" \" +"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_248e53d0","line":170,"range":{"start_line":169,"start_character":16,"end_line":170,"end_character":76},"updated":"2017-11-22 08:47:00.000000000","message":"why you need to create time, consider uuid if it is fine","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":166,"context_line":"                tempname_api[\u0027opcommand_hst\u0027][0][\u0027hostid\u0027] \u003d \\"},{"line_number":167,"context_line":"                    self.hostinfo[vdu][\u0027hostid\u0027]"},{"line_number":168,"context_line":"                LOG.info(\u0027info %s \u0027, info)"},{"line_number":169,"context_line":"                now \u003d time.localtime()"},{"line_number":170,"context_line":"                rtime \u003d str(now.tm_hour) + str(now.tm_min) + str(now.tm_sec)"},{"line_number":171,"context_line":"                temp_name \u003d \"Trigger Action \" + \\"},{"line_number":172,"context_line":"                            str("},{"line_number":173,"context_line":"                                vdu + rtime + \" \" +"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_9a121a09","line":170,"range":{"start_line":169,"start_character":16,"end_line":170,"end_character":76},"in_reply_to":"ff82abbf_248e53d0","updated":"2017-11-22 09:47:54.000000000","message":"This is a part of preventing error from duplication of VDU name in zabbix.\nUsing uuid does not make much difference :)","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":"                else:"},{"line_number":202,"context_line":"                    # Currently TEST delete last \u0027/\u0027"},{"line_number":203,"context_line":"                    tempname_api[\u0027opcommand\u0027][\u0027command\u0027] \u003d \"export OS_TOKEN\u003d\" + \\"},{"line_number":204,"context_line":"                        self.tacker_token + \"\\n\" \"curl -X POST -s -H\" \\"},{"line_number":205,"context_line":"                        \" \\\"X-AUTH-TOKEN: $OS_TOKEN\\\" \" \\"},{"line_number":206,"context_line":"                        \"-d \u0027{\\\"zabbix_trigger\\\":{\\\"monitor_name\\\"\" \\"},{"line_number":207,"context_line":"                        \":\\\"zabbix_trigger\\\",\\\"action_name\\\":\" +\\"},{"line_number":208,"context_line":"                        \"\\\"\" + info[\u0027action\u0027] + \"\\\",\\\"tenant_id\\\":\\\" \" +\\"},{"line_number":209,"context_line":"                        self.tenant_id + \"\\\"\" + \"}}\\\u0027 \" + self.alarm_url + \\"},{"line_number":210,"context_line":"                        self.hostinfo[vdu][\u0027vdu_id\u0027] + \"/\"\\"},{"line_number":211,"context_line":"                        + \"zabbix_triggers\" + \"/\""},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"                    tempname_api[\u0027opcommand\u0027][\u0027execute_on\u0027] \u003d 1"},{"line_number":214,"context_line":""}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_04ac6f32","line":211,"range":{"start_line":203,"start_character":20,"end_line":211,"end_character":49},"updated":"2017-11-22 08:47:00.000000000","message":"please make it more clear","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":200,"context_line":""},{"line_number":201,"context_line":"                else:"},{"line_number":202,"context_line":"                    # Currently TEST delete last \u0027/\u0027"},{"line_number":203,"context_line":"                    tempname_api[\u0027opcommand\u0027][\u0027command\u0027] \u003d \"export OS_TOKEN\u003d\" + \\"},{"line_number":204,"context_line":"                        self.tacker_token + \"\\n\" \"curl -X POST -s -H\" \\"},{"line_number":205,"context_line":"                        \" \\\"X-AUTH-TOKEN: $OS_TOKEN\\\" \" \\"},{"line_number":206,"context_line":"                        \"-d \u0027{\\\"zabbix_trigger\\\":{\\\"monitor_name\\\"\" \\"},{"line_number":207,"context_line":"                        \":\\\"zabbix_trigger\\\",\\\"action_name\\\":\" +\\"},{"line_number":208,"context_line":"                        \"\\\"\" + info[\u0027action\u0027] + \"\\\",\\\"tenant_id\\\":\\\" \" +\\"},{"line_number":209,"context_line":"                        self.tenant_id + \"\\\"\" + \"}}\\\u0027 \" + self.alarm_url + \\"},{"line_number":210,"context_line":"                        self.hostinfo[vdu][\u0027vdu_id\u0027] + \"/\"\\"},{"line_number":211,"context_line":"                        + \"zabbix_triggers\" + \"/\""},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"                    tempname_api[\u0027opcommand\u0027][\u0027execute_on\u0027] \u003d 1"},{"line_number":214,"context_line":""}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_9ae0dafc","line":211,"range":{"start_line":203,"start_character":20,"end_line":211,"end_character":49},"in_reply_to":"ff82abbf_04ac6f32","updated":"2017-11-22 09:47:54.000000000","message":"Considering the number of lines, it is hard to modify.\nThis is a sentence into curl that runs within zabbix.\nIf there is a difference in the sentence, the action command will not be executed.\nIf there\u0027s a better way, we\u0027ll update it later. :)","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":17,"context_line":"import requests"},{"line_number":18,"context_line":"import time"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from copy import deepcopy"},{"line_number":21,"context_line":"from fnmatch import fnmatchcase"},{"line_number":22,"context_line":"from oslo_config import cfg"},{"line_number":23,"context_line":"from oslo_log import log as logging"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_5349bfcd","line":20,"range":{"start_line":20,"start_character":0,"end_line":20,"end_character":25},"updated":"2017-11-23 09:01:18.000000000","message":"we won\u0027t import like this\nuse\n\n\n  import copy\n\ninstead","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":17,"context_line":"import requests"},{"line_number":18,"context_line":"import time"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"from copy import deepcopy"},{"line_number":21,"context_line":"from fnmatch import fnmatchcase"},{"line_number":22,"context_line":"from oslo_config import cfg"},{"line_number":23,"context_line":"from oslo_log import log as logging"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_07268db8","line":20,"range":{"start_line":20,"start_character":0,"end_line":20,"end_character":25},"in_reply_to":"ff82abbf_5349bfcd","updated":"2017-11-23 11:26:09.000000000","message":"Done","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def get_type(self):"},{"line_number":92,"context_line":"        \"\"\"Return one of predefined type of the hosting vnf drivers.\"\"\""},{"line_number":93,"context_line":"        return \u0027zabbix\u0027"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def get_name(self):"},{"line_number":96,"context_line":"        \"\"\"Return a symbolic name for the VNF Monitor plugin.\"\"\""}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_137a57f0","line":93,"range":{"start_line":93,"start_character":15,"end_line":93,"end_character":23},"updated":"2017-11-23 09:01:18.000000000","message":"let\u0027s avoid magic string as much as possible","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def get_type(self):"},{"line_number":92,"context_line":"        \"\"\"Return one of predefined type of the hosting vnf drivers.\"\"\""},{"line_number":93,"context_line":"        return \u0027zabbix\u0027"},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    def get_name(self):"},{"line_number":96,"context_line":"        \"\"\"Return a symbolic name for the VNF Monitor plugin.\"\"\""}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_87313def","line":93,"range":{"start_line":93,"start_character":15,"end_line":93,"end_character":23},"in_reply_to":"ff82abbf_137a57f0","updated":"2017-11-23 11:26:09.000000000","message":"Done","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    @staticmethod"},{"line_number":136,"context_line":"    def check_error(response):"},{"line_number":137,"context_line":"        try:"},{"line_number":138,"context_line":"            if \u0027result\u0027 not in response:"},{"line_number":139,"context_line":"                raise ValueError"},{"line_number":140,"context_line":"        except ValueError:"},{"line_number":141,"context_line":"            LOG.info(\u0027cannot request error : %s\u0027, response[\u0027error\u0027][\u0027data\u0027])"},{"line_number":142,"context_line":"        LOG.info(\u0027Clear Check Error Response\u0027)"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"    def create_graph(self, itemid, name):"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_13633744","line":141,"range":{"start_line":137,"start_character":0,"end_line":141,"end_character":76},"updated":"2017-11-23 09:01:18.000000000","message":"wow, so over-complicated for a very simple thing","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    @staticmethod"},{"line_number":136,"context_line":"    def check_error(response):"},{"line_number":137,"context_line":"        try:"},{"line_number":138,"context_line":"            if \u0027result\u0027 not in response:"},{"line_number":139,"context_line":"                raise ValueError"},{"line_number":140,"context_line":"        except ValueError:"},{"line_number":141,"context_line":"            LOG.info(\u0027cannot request error : %s\u0027, response[\u0027error\u0027][\u0027data\u0027])"},{"line_number":142,"context_line":"        LOG.info(\u0027Clear Check Error Response\u0027)"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"    def create_graph(self, itemid, name):"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_e757e901","line":141,"range":{"start_line":137,"start_character":0,"end_line":141,"end_character":76},"in_reply_to":"ff82abbf_13633744","updated":"2017-11-23 11:26:09.000000000","message":"Zabbix does not have a separate python client.\n\nTherefore, we have a flow of making and requesting APIs and receiving the results.\n\nIf there is no error check on the returned result, it is very likely that the server will have problems.\n\nI think it will not be too bad to use it as it will require repeated error checks on the returned results.\n\nAddition, the try statement should only write the minimum required.\n\nI\u0027ll keep thinking about this part.\n\nThanks a lot","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":271,"context_line":"                    action_list \u003d deepcopy(zapi.dACTION_LIST)"},{"line_number":272,"context_line":"                    temp_item \u003d self.hostinfo[vdu][\u0027parameters\u0027][para][item]"},{"line_number":273,"context_line":""},{"line_number":274,"context_line":"                    if \u0027app_name\u0027 !\u003d item \\"},{"line_number":275,"context_line":"                            and \u0027app_port\u0027 !\u003d item \\"},{"line_number":276,"context_line":"                            and \u0027ssh_username\u0027 !\u003d item \\"},{"line_number":277,"context_line":"                            and \u0027ssh_password\u0027 !\u003d item:"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_b3792b30","line":274,"range":{"start_line":274,"start_character":42,"end_line":274,"end_character":43},"updated":"2017-11-23 09:01:18.000000000","message":"please use parenthesis instead\nall other places should be used parenthesis too","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":271,"context_line":"                    action_list \u003d deepcopy(zapi.dACTION_LIST)"},{"line_number":272,"context_line":"                    temp_item \u003d self.hostinfo[vdu][\u0027parameters\u0027][para][item]"},{"line_number":273,"context_line":""},{"line_number":274,"context_line":"                    if \u0027app_name\u0027 !\u003d item \\"},{"line_number":275,"context_line":"                            and \u0027app_port\u0027 !\u003d item \\"},{"line_number":276,"context_line":"                            and \u0027ssh_username\u0027 !\u003d item \\"},{"line_number":277,"context_line":"                            and \u0027ssh_password\u0027 !\u003d item:"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_674bd958","line":274,"range":{"start_line":274,"start_character":42,"end_line":274,"end_character":43},"in_reply_to":"ff82abbf_b3792b30","updated":"2017-11-23 11:26:09.000000000","message":"Do you mean to say the following?\n\n if (\u0027app_name\u0027 !\u003d item) and (\u0027app_port\u0027 !\u003d item) \\\n                            and (\u0027ssh_username\u0027 !\u003d item) \\\n                            and (\u0027ssh_password\u0027 !\u003d item):\n\n\nIf it is correct, the whole has been modified.\n\nIf not, please tell me.\n\nThanks :)","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":413,"context_line":"            response \u003d self.send_post(temp_template_api)"},{"line_number":414,"context_line":"            LOG.info(\u0027create template return results %s \u0027, response)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"            if \u0027error\u0027 in response.keys():"},{"line_number":417,"context_line":"                if \"already exists.\" in response[\u0027error\u0027][\u0027data\u0027]:"},{"line_number":418,"context_line":"                    now \u003d time.localtime()"},{"line_number":419,"context_line":"                    rtime \u003d str(now.tm_hour) + str(now.tm_min) + str("}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_b3cccb61","line":416,"range":{"start_line":416,"start_character":34,"end_line":416,"end_character":41},"updated":"2017-11-23 09:01:18.000000000","message":"redundant","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":413,"context_line":"            response \u003d self.send_post(temp_template_api)"},{"line_number":414,"context_line":"            LOG.info(\u0027create template return results %s \u0027, response)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"            if \u0027error\u0027 in response.keys():"},{"line_number":417,"context_line":"                if \"already exists.\" in response[\u0027error\u0027][\u0027data\u0027]:"},{"line_number":418,"context_line":"                    now \u003d time.localtime()"},{"line_number":419,"context_line":"                    rtime \u003d str(now.tm_hour) + str(now.tm_min) + str("}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_4709f5da","line":416,"range":{"start_line":416,"start_character":34,"end_line":416,"end_character":41},"in_reply_to":"ff82abbf_b3cccb61","updated":"2017-11-23 11:26:09.000000000","message":"Done","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":476,"context_line":""},{"line_number":477,"context_line":"    def set_vdu_info(self):"},{"line_number":478,"context_line":""},{"line_number":479,"context_line":"        # get vduname in kwargs"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        temp_vduname \u003d ["},{"line_number":482,"context_line":"            node for node in self.kwargs[\u0027vdus\u0027]"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_53ad3f86","line":479,"range":{"start_line":479,"start_character":8,"end_line":479,"end_character":31},"updated":"2017-11-23 09:01:18.000000000","message":"totally redundant \u0026 non-sense comment","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":476,"context_line":""},{"line_number":477,"context_line":"    def set_vdu_info(self):"},{"line_number":478,"context_line":""},{"line_number":479,"context_line":"        # get vduname in kwargs"},{"line_number":480,"context_line":""},{"line_number":481,"context_line":"        temp_vduname \u003d ["},{"line_number":482,"context_line":"            node for node in self.kwargs[\u0027vdus\u0027]"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_a79801c0","line":479,"range":{"start_line":479,"start_character":8,"end_line":479,"end_character":31},"in_reply_to":"ff82abbf_53ad3f86","updated":"2017-11-23 11:26:09.000000000","message":"Done","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"8b710766381e054ac81488e4ed632c75f68d3efa","unresolved":false,"context_lines":[{"line_number":513,"context_line":"        except ValueError:"},{"line_number":514,"context_line":"            LOG.info(\u0027#cannot get the Zabbix-token#\u0027)"},{"line_number":515,"context_line":""},{"line_number":516,"context_line":"        # create addhost"},{"line_number":517,"context_line":"        self.add_host_to_zabbix()"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"    def monitor_call(self, vnf, kwargs):"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_93cc276b","line":516,"range":{"start_line":516,"start_character":8,"end_line":516,"end_character":24},"updated":"2017-11-23 09:01:18.000000000","message":"this one too","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"ef30c9a8bd025146538998c2df0d72f460a3ac7f","unresolved":false,"context_lines":[{"line_number":513,"context_line":"        except ValueError:"},{"line_number":514,"context_line":"            LOG.info(\u0027#cannot get the Zabbix-token#\u0027)"},{"line_number":515,"context_line":""},{"line_number":516,"context_line":"        # create addhost"},{"line_number":517,"context_line":"        self.add_host_to_zabbix()"},{"line_number":518,"context_line":""},{"line_number":519,"context_line":"    def monitor_call(self, vnf, kwargs):"}],"source_content_type":"text/x-python","patch_set":25,"id":"ff82abbf_c793c5a2","line":516,"range":{"start_line":516,"start_character":8,"end_line":516,"end_character":24},"in_reply_to":"ff82abbf_93cc276b","updated":"2017-11-23 11:26:09.000000000","message":"Done","commit_id":"cf23ee1eb2ed650d77bb5b2951397c75877df7d6"},{"author":{"_account_id":19853,"name":"Nguyen Hung Phuong","email":"phuongnh@vn.fujitsu.com","username":"phuongnh"},"change_message_id":"9498b44d61a3f0fc362b1b1fdc07413c4f2fdaa6","unresolved":false,"context_lines":[{"line_number":173,"context_line":"                            )"},{"line_number":174,"context_line":"                temp_action_api[\u0027params\u0027][\u0027name\u0027] \u003d temp_name"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"                if (info[\u0027action\u0027] \u003d\u003d \u0027cmd\u0027) and (info[\u0027item\u0027] !\u003d \u0027os_agent_info\u0027):"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"                    tempname_api[\u0027opcommand\u0027][\u0027command\u0027] \u003d info[\u0027cmd-action\u0027]"},{"line_number":179,"context_line":""}],"source_content_type":"text/x-python","patch_set":27,"id":"ff82abbf_c21df30f","line":176,"range":{"start_line":176,"start_character":7,"end_line":176,"end_character":83},"updated":"2017-11-23 12:18:53.000000000","message":"line is too long.","commit_id":"6231633e75eecb26d5041e30b30eddb9b9ed3844"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"298ff0f2500c9b275614d61e6deb69fed6fb72b8","unresolved":false,"context_lines":[{"line_number":173,"context_line":"                            )"},{"line_number":174,"context_line":"                temp_action_api[\u0027params\u0027][\u0027name\u0027] \u003d temp_name"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"                if (info[\u0027action\u0027] \u003d\u003d \u0027cmd\u0027) and (info[\u0027item\u0027] !\u003d \u0027os_agent_info\u0027):"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"                    tempname_api[\u0027opcommand\u0027][\u0027command\u0027] \u003d info[\u0027cmd-action\u0027]"},{"line_number":179,"context_line":""}],"source_content_type":"text/x-python","patch_set":27,"id":"ff82abbf_8dccfb6a","line":176,"range":{"start_line":176,"start_character":7,"end_line":176,"end_character":83},"in_reply_to":"ff82abbf_c21df30f","updated":"2017-11-23 15:07:07.000000000","message":"Thanks:)\nI fixed it","commit_id":"6231633e75eecb26d5041e30b30eddb9b9ed3844"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"5703407214aad0910a166c9be585e16783f7d6f6","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    @classmethod"},{"line_number":80,"context_line":"    def set_tacker_token(cls):"},{"line_number":81,"context_line":"        if cls.tacker_token is None:"},{"line_number":82,"context_line":"            cls.tacker_token \u003d Token("},{"line_number":83,"context_line":"                username\u003dcfg.CONF.zabbix_auth.tacker_token_username,"},{"line_number":84,"context_line":"                password\u003dcfg.CONF.zabbix_auth.tacker_token_password,"},{"line_number":85,"context_line":"                project_name\u003dcfg.CONF.zabbix_auth.tacker_token_project_name,"},{"line_number":86,"context_line":"                auth_url\u003dcfg.CONF.zabbix_auth.keystone_auth_url,"},{"line_number":87,"context_line":"                user_domain_name\u003dcfg.CONF.zabbix_auth.user_domain_name,"},{"line_number":88,"context_line":"                project_domain_name\u003dcfg.CONF.zabbix_auth.project_domain_name"},{"line_number":89,"context_line":"            ).create_token()"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def get_type(self):"},{"line_number":92,"context_line":"        \"\"\"Return one of predefined type of the hosting vnf drivers.\"\"\""}],"source_content_type":"text/x-python","patch_set":29,"id":"df87a7cf_b8d111fe","line":89,"range":{"start_line":81,"start_character":7,"end_line":89,"end_character":28},"updated":"2017-12-06 02:49:53.000000000","message":"token will expire, I don\u0027t know how long this token can be valid.\nand the token is not the vnf owner\u0027s token either.","commit_id":"f8a52bcacf01287dbdb0794551ec67ba05f7a93c"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"81978bf15e11b1f41184e537f73c80ae0ad7756c","unresolved":false,"context_lines":[{"line_number":41,"context_line":"cfg.CONF.register_opts(OPTS, group\u003d\u0027zabbix_auth\u0027)"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"class VNFMonitorZabbix(extensions.PluginInterface):"},{"line_number":45,"context_line":"    params \u003d [\u0027application\u0027, \u0027OS\u0027]"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def __init__(self):"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_7cbe8bd5","line":44,"range":{"start_line":44,"start_character":23,"end_line":44,"end_character":49},"updated":"2017-12-12 10:29:10.000000000","message":"shouldn\u0027t be abstract_driver.VNFMonitorAbstractDriver ?","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"4bafeb65a172a2010c14432cf09b89fcde632990","unresolved":false,"context_lines":[{"line_number":41,"context_line":"cfg.CONF.register_opts(OPTS, group\u003d\u0027zabbix_auth\u0027)"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"class VNFMonitorZabbix(extensions.PluginInterface):"},{"line_number":45,"context_line":"    params \u003d [\u0027application\u0027, \u0027OS\u0027]"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def __init__(self):"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_908fab73","line":44,"range":{"start_line":44,"start_character":23,"end_line":44,"end_character":49},"in_reply_to":"df87a7cf_7cbe8bd5","updated":"2017-12-12 16:19:03.000000000","message":"I fixed it :)","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"81978bf15e11b1f41184e537f73c80ae0ad7756c","unresolved":false,"context_lines":[{"line_number":386,"context_line":"            return response_dict[\u0027result\u0027]"},{"line_number":387,"context_line":""},{"line_number":388,"context_line":"        except ValueError:"},{"line_number":389,"context_line":"            LOG.info(\u0027Please write ip and address\u0027)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"    def set_vdu_info(self):"},{"line_number":392,"context_line":""}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_dca557a0","line":389,"range":{"start_line":389,"start_character":12,"end_line":389,"end_character":20},"updated":"2017-12-12 10:29:10.000000000","message":"LOG.error","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"4bafeb65a172a2010c14432cf09b89fcde632990","unresolved":false,"context_lines":[{"line_number":386,"context_line":"            return response_dict[\u0027result\u0027]"},{"line_number":387,"context_line":""},{"line_number":388,"context_line":"        except ValueError:"},{"line_number":389,"context_line":"            LOG.info(\u0027Please write ip and address\u0027)"},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"    def set_vdu_info(self):"},{"line_number":392,"context_line":""}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_50eb6311","line":389,"range":{"start_line":389,"start_character":12,"end_line":389,"end_character":20},"in_reply_to":"df87a7cf_dca557a0","updated":"2017-12-12 16:19:03.000000000","message":"Done","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"81978bf15e11b1f41184e537f73c80ae0ad7756c","unresolved":false,"context_lines":[{"line_number":392,"context_line":""},{"line_number":393,"context_line":"        temp_vduname \u003d ["},{"line_number":394,"context_line":"            node for node in self.kwargs[\u0027vdus\u0027]"},{"line_number":395,"context_line":"            if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"        for node in temp_vduname:"},{"line_number":398,"context_line":"            if \u0027application\u0027 in \\"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_7c168baa","line":395,"range":{"start_line":395,"start_character":33,"end_line":395,"end_character":38},"updated":"2017-12-12 10:29:10.000000000","message":"Instead of hard-coded regex here, we can refer the approach as in [1] for VDU list.\n\n[1]: https://github.com/openstack/tacker/blob/835df190a819e5e5319e0734fc9c9acb73b5d8b5/tacker/tosca/utils.py#L146","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"4bafeb65a172a2010c14432cf09b89fcde632990","unresolved":false,"context_lines":[{"line_number":392,"context_line":""},{"line_number":393,"context_line":"        temp_vduname \u003d ["},{"line_number":394,"context_line":"            node for node in self.kwargs[\u0027vdus\u0027]"},{"line_number":395,"context_line":"            if fnmatchcase(node, \u0027VDU*\u0027)]"},{"line_number":396,"context_line":""},{"line_number":397,"context_line":"        for node in temp_vduname:"},{"line_number":398,"context_line":"            if \u0027application\u0027 in \\"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_10f15b01","line":395,"range":{"start_line":395,"start_character":33,"end_line":395,"end_character":38},"in_reply_to":"df87a7cf_7c168baa","updated":"2017-12-12 16:19:03.000000000","message":"Done","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":18955,"name":"dharmendra","email":"dharmendra.kushwaha@gmail.com","username":"dharmendra"},"change_message_id":"81978bf15e11b1f41184e537f73c80ae0ad7756c","unresolved":false,"context_lines":[{"line_number":419,"context_line":"            if self.zabbix_token is None:"},{"line_number":420,"context_line":"                raise ValueError"},{"line_number":421,"context_line":"        except ValueError:"},{"line_number":422,"context_line":"            LOG.info(\u0027Cannot get the Zabbix-token\u0027)"},{"line_number":423,"context_line":"        self.add_host_to_zabbix()"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"    def monitor_call(self, vnf, kwargs):"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_bc1f33b5","line":422,"range":{"start_line":422,"start_character":12,"end_line":422,"end_character":20},"updated":"2017-12-12 10:29:10.000000000","message":"Please mention appropriate log levels.","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"4bafeb65a172a2010c14432cf09b89fcde632990","unresolved":false,"context_lines":[{"line_number":419,"context_line":"            if self.zabbix_token is None:"},{"line_number":420,"context_line":"                raise ValueError"},{"line_number":421,"context_line":"        except ValueError:"},{"line_number":422,"context_line":"            LOG.info(\u0027Cannot get the Zabbix-token\u0027)"},{"line_number":423,"context_line":"        self.add_host_to_zabbix()"},{"line_number":424,"context_line":""},{"line_number":425,"context_line":"    def monitor_call(self, vnf, kwargs):"}],"source_content_type":"text/x-python","patch_set":34,"id":"df87a7cf_30f49ff0","line":422,"range":{"start_line":422,"start_character":12,"end_line":422,"end_character":20},"in_reply_to":"df87a7cf_bc1f33b5","updated":"2017-12-12 16:19:03.000000000","message":"Done","commit_id":"0dcb543cbda7f6bb34d864db7848fc8f9f394776"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"558d67d4fc29d4b00528b05400a9f105fba6f02f","unresolved":false,"context_lines":[{"line_number":28,"context_line":"CONF \u003d cfg.CONF"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"OPTS \u003d ["},{"line_number":31,"context_line":"    cfg.StrOpt(\u0027zabbix_username\u0027, default\u003d\u0027Admin\u0027,"},{"line_number":32,"context_line":"               help\u003d_(\u0027Zabbix User Name\u0027)),"},{"line_number":33,"context_line":"    cfg.StrOpt(\u0027zabbix_password\u0027, default\u003d\u0027zabbix\u0027,"},{"line_number":34,"context_line":"               help\u003d_(\u0027Zabbix User password\u0027)),"},{"line_number":35,"context_line":"    cfg.StrOpt(\u0027zabbix_server_ip\u0027, default\u003d\u0027127.0.0.1\u0027,"},{"line_number":36,"context_line":"               help\u003d_(\u0027Zabbix Server IP\u0027)),"},{"line_number":37,"context_line":"    cfg.StrOpt(\u0027zabbix_server_port\u0027, default\u003d\u002780\u0027,"},{"line_number":38,"context_line":"               help\u003d_(\u0027Zabbix Server PORT\u0027))"},{"line_number":39,"context_line":"]"},{"line_number":40,"context_line":"cfg.CONF.register_opts(OPTS, group\u003d\u0027zabbix_auth\u0027)"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":38,"id":"df87a7cf_a39ff063","line":38,"range":{"start_line":31,"start_character":0,"end_line":38,"end_character":44},"updated":"2017-12-13 11:38:30.000000000","message":"this should not be a configure options. I thought each user can have its own zabbix server for a certain vnf.\n\nmaybe we should have a zabbix server register process, and let the app monitor to choose which zabbix server to use.","commit_id":"00eb525e4ba5c57ee52775fb4823b18162f61a57"},{"author":{"_account_id":2874,"name":"yong sheng gong","email":"gong.yongsheng@99cloud.net","username":"gongysh"},"change_message_id":"e442e382064dda3ce55687d9819d62d3e2adbd02","unresolved":false,"context_lines":[{"line_number":370,"context_line":"        LOG.info(\u0027Success Connect Zabbix Server\u0027)"},{"line_number":371,"context_line":"        return response_dict[\u0027result\u0027]"},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"    def set_zbx_info(self, node):"},{"line_number":374,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027] \u003d \\"},{"line_number":375,"context_line":"            copy.deepcopy(zapi.dZBX_INFO)"},{"line_number":376,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_user\u0027] \u003d \\"},{"line_number":377,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_username\u0027]"},{"line_number":378,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_pass\u0027] \u003d \\"},{"line_number":379,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_password\u0027]"},{"line_number":380,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_ip\u0027] \u003d \\"},{"line_number":381,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_server_ip\u0027]"},{"line_number":382,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_port\u0027] \u003d \\"},{"line_number":383,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_server_port\u0027]"},{"line_number":384,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_token\u0027] \u003d \\"},{"line_number":385,"context_line":"            self.get_token_from_zbxserver(node)"},{"line_number":386,"context_line":""},{"line_number":387,"context_line":"    def set_vdu_info(self):"},{"line_number":388,"context_line":"        temp_vduname \u003d self.kwargs[\u0027vdus\u0027].keys()"}],"source_content_type":"text/x-python","patch_set":41,"id":"df87a7cf_cc30ea0a","line":385,"range":{"start_line":373,"start_character":0,"end_line":385,"end_character":47},"updated":"2017-12-15 10:16:40.000000000","message":"is it explained in spec and rst doc?","commit_id":"e5432227047df9d2cb2b91a728e3f6f36a738224"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"7e112b530933c4a0ffa3b888e9dbca256621b4f5","unresolved":false,"context_lines":[{"line_number":370,"context_line":"        LOG.info(\u0027Success Connect Zabbix Server\u0027)"},{"line_number":371,"context_line":"        return response_dict[\u0027result\u0027]"},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"    def set_zbx_info(self, node):"},{"line_number":374,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027] \u003d \\"},{"line_number":375,"context_line":"            copy.deepcopy(zapi.dZBX_INFO)"},{"line_number":376,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_user\u0027] \u003d \\"},{"line_number":377,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_username\u0027]"},{"line_number":378,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_pass\u0027] \u003d \\"},{"line_number":379,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_password\u0027]"},{"line_number":380,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_ip\u0027] \u003d \\"},{"line_number":381,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_server_ip\u0027]"},{"line_number":382,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_port\u0027] \u003d \\"},{"line_number":383,"context_line":"            self.kwargs[\u0027vdus\u0027][node][\u0027zabbix_server_port\u0027]"},{"line_number":384,"context_line":"        self.hostinfo[node][\u0027zbx_info\u0027][\u0027zabbix_token\u0027] \u003d \\"},{"line_number":385,"context_line":"            self.get_token_from_zbxserver(node)"},{"line_number":386,"context_line":""},{"line_number":387,"context_line":"    def set_vdu_info(self):"},{"line_number":388,"context_line":"        temp_vduname \u003d self.kwargs[\u0027vdus\u0027].keys()"}],"source_content_type":"text/x-python","patch_set":41,"id":"df87a7cf_679d3956","line":385,"range":{"start_line":373,"start_character":0,"end_line":385,"end_character":47},"in_reply_to":"df87a7cf_cc30ea0a","updated":"2017-12-15 10:34:06.000000000","message":"A description of the necessary information for interworking with zabbix server has been added to .rst and spec.","commit_id":"e5432227047df9d2cb2b91a728e3f6f36a738224"}],"tacker/vnfm/plugin.py":[{"author":{"_account_id":26222,"name":"Cong Phuoc Hoang","email":"hoangphuocbk2.07@gmail.com","username":"hoangphuoc"},"change_message_id":"47c6dfef00df97dc5296f88374c65945055497e6","unresolved":false,"context_lines":[{"line_number":804,"context_line":""},{"line_number":805,"context_line":"    def create_vnf_zabbix_trigger(self, context, vnf_id, zabbix_trigger):"},{"line_number":806,"context_line":"        # for Zabbix Alarm"},{"line_number":807,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":808,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":809,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":810,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":811,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":812,"context_line":"        return"},{"line_number":813,"context_line":""},{"line_number":814,"context_line":"    def _handle_vnf_monitoring(self, context, trigger):"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_e434ebfd","line":811,"range":{"start_line":807,"start_character":0,"end_line":811,"end_character":40},"updated":"2017-11-22 08:47:00.000000000","message":"why there are only LOGs","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"},{"author":{"_account_id":26171,"name":"MinWookKim","email":"delightwook@dcn.ssu.ac.kr","username":"MinWookKim"},"change_message_id":"25aa90bcb7ab7b00c097494ac1e2d2dc5beb5781","unresolved":false,"context_lines":[{"line_number":804,"context_line":""},{"line_number":805,"context_line":"    def create_vnf_zabbix_trigger(self, context, vnf_id, zabbix_trigger):"},{"line_number":806,"context_line":"        # for Zabbix Alarm"},{"line_number":807,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":808,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":809,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":810,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":811,"context_line":"        LOG.info(\"Zabbix Trigger Alarm\")"},{"line_number":812,"context_line":"        return"},{"line_number":813,"context_line":""},{"line_number":814,"context_line":"    def _handle_vnf_monitoring(self, context, trigger):"}],"source_content_type":"text/x-python","patch_set":22,"id":"ff82abbf_7ab636fd","line":811,"range":{"start_line":807,"start_character":0,"end_line":811,"end_character":40},"in_reply_to":"ff82abbf_e434ebfd","updated":"2017-11-22 09:47:54.000000000","message":"A method created to implement the functionality of an upcoming alarm.\nIt has been modified.","commit_id":"975bb19e7acf744b76e4a4a57daa99e1b33af74a"}]}
