)]}'
{"doc/source/contributor/entity_equivalence_use_cases.rst":[{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Expected behavior: Vitrage API returns a single host with state ERROR"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"\u003d\u003d\u003e Is this the wanted behavior? or do we trust the last report?"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"1.5. Conflict in other resource properties"},{"line_number":105,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_a9690926","line":102,"range":{"start_line":102,"start_character":36,"end_line":102,"end_character":64},"updated":"2018-03-08 08:38:07.000000000","message":"Maybe we can let users choose the merge rule, like monitor credibility, state severity, time or a comprehensive consider of them.\nIf users choose state severity, the host will be represented as the behavior above.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Expected behavior: Vitrage API returns a single host with state ERROR"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"\u003d\u003d\u003e Is this the wanted behavior? or do we trust the last report?"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"1.5. Conflict in other resource properties"},{"line_number":105,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_e98701d7","line":102,"range":{"start_line":102,"start_character":3,"end_line":102,"end_character":32},"updated":"2018-03-08 08:38:07.000000000","message":"Yes, vitrage api should return a single host.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"c1e7cc9e1ff71d6600363e767f1b90a644355518","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Expected behavior: Vitrage API returns a single host with state ERROR"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"\u003d\u003d\u003e Is this the wanted behavior? or do we trust the last report?"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"1.5. Conflict in other resource properties"},{"line_number":105,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_4053f23f","line":102,"range":{"start_line":102,"start_character":36,"end_line":102,"end_character":64},"in_reply_to":"df7087c5_20befed4","updated":"2018-03-13 12:42:42.000000000","message":"OK","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"b27b413aef34d1f474aaafa53d6d3a21505c1a8d","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Expected behavior: Vitrage API returns a single host with state ERROR"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"\u003d\u003d\u003e Is this the wanted behavior? or do we trust the last report?"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"1.5. Conflict in other resource properties"},{"line_number":105,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_abc77345","line":102,"range":{"start_line":102,"start_character":36,"end_line":102,"end_character":64},"in_reply_to":"df7087c5_426d6d02","updated":"2018-03-12 13:39:02.000000000","message":"Thinking about it again, I think we could let the user choose the merge rule as you suggested. The merge rule should only affect the status that the user sees at the end, but it should not affect the overall behavior or the evaluator logic. So I think it\u0027s ok.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"886128fda82368cc82ad2f15a4fb7514a55ccc34","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Expected behavior: Vitrage API returns a single host with state ERROR"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"\u003d\u003d\u003e Is this the wanted behavior? or do we trust the last report?"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"1.5. Conflict in other resource properties"},{"line_number":105,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_426d6d02","line":102,"range":{"start_line":102,"start_character":36,"end_line":102,"end_character":64},"in_reply_to":"df7087c5_a9690926","updated":"2018-03-11 08:00:22.000000000","message":"This might be problematic. \n\nFirst, it will make Vitrage code extremely complex, with too many if/else conditions and possible code behaviors. And second, it will also make the end-user configuration more complex and unclear. I think that one comment that we got from ZTE was that our templates are complex and we should think of ways to make them more simple ;-) \n\nLet\u0027s agree on the behavior that makes sense in most use cases and implement it.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"bda592b8b9aa89192256eecef1f43fa84f2fe283","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":"Expected behavior: Vitrage API returns a single host with state ERROR"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"\u003d\u003d\u003e Is this the wanted behavior? or do we trust the last report?"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"1.5. Conflict in other resource properties"},{"line_number":105,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_20befed4","line":102,"range":{"start_line":102,"start_character":36,"end_line":102,"end_character":64},"in_reply_to":"df7087c5_abc77345","updated":"2018-03-13 12:30:46.000000000","message":"Yes, I think merge rule will not affect evaluate behavior. I would like to make merge rule affect Vitrage internal properties like \u0027is_deleted\u0027; and for datasource properties, we can reach an agreement on whether to pretend them.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":131,"context_line":""},{"line_number":132,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":"\u003d\u003d\u003e Is this the wanted behavior? or do we trust the last report?"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"2.2. Zabbix reports CRITICAL, Nagios reports WARNING, Zabbix reports OK"},{"line_number":137,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_6973f116","line":134,"range":{"start_line":134,"start_character":4,"end_line":134,"end_character":64},"updated":"2018-03-08 08:38:07.000000000","message":"Same as line 102.\nIf users choose alarm severity and the severity of alarms is the same, we can merge alarms according to timestamp(this means that we can have a default priority for the rules we support.)","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":140,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":141,"context_line":"#. Zabbix datasource changes the severity to OK"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Expected behavior:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* The alarm is not deleted (will be deleted only when Nagios reports OK)"},{"line_number":146,"context_line":"* The alarm contains all Nagios properties"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_49070d1e","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":17},"updated":"2018-03-08 08:38:07.000000000","message":"Does it mean that the alarm is deleted only when all monitors report OK?\n1) How to delete the alarm if one of the monitors is down?\n2) What if one of the monitor can only report active alarms and can\u0027t report it as recovered?\nI suggest that we can also let users to choose the rule. If \u0027severity\u0027 is chosen, the alarm is still CRITICAL; and if \u0027time\u0027 is chosen, the alarm can be deleted.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"cfc43bce6743f6dd768fad00c492c7c220ee25da","unresolved":false,"context_lines":[{"line_number":140,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":141,"context_line":"#. Zabbix datasource changes the severity to OK"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Expected behavior:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* The alarm is not deleted (will be deleted only when Nagios reports OK)"},{"line_number":146,"context_line":"* The alarm contains all Nagios properties"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_841ee7b8","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":17},"in_reply_to":"df7087c5_20659e1e","updated":"2018-03-14 06:03:26.000000000","message":"Ok.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"886128fda82368cc82ad2f15a4fb7514a55ccc34","unresolved":false,"context_lines":[{"line_number":140,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":141,"context_line":"#. Zabbix datasource changes the severity to OK"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Expected behavior:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* The alarm is not deleted (will be deleted only when Nagios reports OK)"},{"line_number":146,"context_line":"* The alarm contains all Nagios properties"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_a24fa990","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":17},"in_reply_to":"df7087c5_49070d1e","updated":"2018-03-11 08:00:22.000000000","message":"1) That\u0027s a good question. I think that the current behavior, for a single monitor, is that if it is down then we keep its state as-is. The assumption is that most alarms remain in the same condition, so we shouldn\u0027t make unwanted change. In case of multiple monitors, we should reconsider this behavior.\n\n2) Do you have an example of such a monitor? it sounds strange. In order to support it we need to introduce an alarm-expiry method, which is a whole new task... I prefer not to do this unless we have to. And BTW, if the monitor does not report recovered alarms, you will have a problem even when it is a single monitor, right?","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"c1e7cc9e1ff71d6600363e767f1b90a644355518","unresolved":false,"context_lines":[{"line_number":140,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":141,"context_line":"#. Zabbix datasource changes the severity to OK"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Expected behavior:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* The alarm is not deleted (will be deleted only when Nagios reports OK)"},{"line_number":146,"context_line":"* The alarm contains all Nagios properties"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_20659e1e","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":17},"in_reply_to":"df7087c5_60aab671","updated":"2018-03-13 12:42:42.000000000","message":"I think that there are two issues here:\n\na. Should the alarm be deleted when one monitor reports OK or only when all monitors report OK? I think that here we can agree that it depends on the merge rule.\n\nb. What happens if a monitor is down and stops reporting alarms? The current behavior is that all alarms remain. This is not related at all to the merge alarms issue, since it can happen even for a single monitor. \n\nI understand that you think that the behavior should be changed. The thing is that we currently don\u0027t have a way to identify or handle a datasource that stops reporting. Even if we agree on the wanted behavior, I suggest that the implementation will be done in a separate and independent blueprint.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"bda592b8b9aa89192256eecef1f43fa84f2fe283","unresolved":false,"context_lines":[{"line_number":140,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":141,"context_line":"#. Zabbix datasource changes the severity to OK"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Expected behavior:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"* The alarm is not deleted (will be deleted only when Nagios reports OK)"},{"line_number":146,"context_line":"* The alarm contains all Nagios properties"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_60aab671","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":17},"in_reply_to":"df7087c5_a24fa990","updated":"2018-03-13 12:30:46.000000000","message":"Yes, so the main problem for deleting alarm only when all monitors report OK is 1).\nAnd if we agree on merge rules, will the alarm deleted or not depend on the chosen rule?","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":160,"context_line":"#. Nagios datasource asks to create a Nagios \"high CPU\" alarm"},{"line_number":161,"context_line":"#. Zabbix datasource asks to create a Zabbix \"extremely high CPU\" alarm"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"Expected behavior: Vitrage API returns two alarms"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"4. A monitors reports the same alarm as a Vitrage deduced alarm"},{"line_number":166,"context_line":"---------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_c456a407","line":163,"range":{"start_line":163,"start_character":18,"end_line":163,"end_character":49},"updated":"2018-03-08 08:38:07.000000000","message":"If users define Nagios \"high CPU\" alarm and Zabbix \"extremely high CPU\" alarm are the same thing, Vitrage API should return a single alarm, right?","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"bda592b8b9aa89192256eecef1f43fa84f2fe283","unresolved":false,"context_lines":[{"line_number":160,"context_line":"#. Nagios datasource asks to create a Nagios \"high CPU\" alarm"},{"line_number":161,"context_line":"#. Zabbix datasource asks to create a Zabbix \"extremely high CPU\" alarm"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"Expected behavior: Vitrage API returns two alarms"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"4. A monitors reports the same alarm as a Vitrage deduced alarm"},{"line_number":166,"context_line":"---------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_80c02a2c","line":163,"range":{"start_line":163,"start_character":18,"end_line":163,"end_character":49},"in_reply_to":"df7087c5_8231450e","updated":"2018-03-13 12:30:46.000000000","message":"Ok :)","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"886128fda82368cc82ad2f15a4fb7514a55ccc34","unresolved":false,"context_lines":[{"line_number":160,"context_line":"#. Nagios datasource asks to create a Nagios \"high CPU\" alarm"},{"line_number":161,"context_line":"#. Zabbix datasource asks to create a Zabbix \"extremely high CPU\" alarm"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"Expected behavior: Vitrage API returns two alarms"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"4. A monitors reports the same alarm as a Vitrage deduced alarm"},{"line_number":166,"context_line":"---------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_8231450e","line":163,"range":{"start_line":163,"start_character":18,"end_line":163,"end_character":49},"in_reply_to":"df7087c5_c456a407","updated":"2018-03-11 08:00:22.000000000","message":"Yes, but I wanted to give an example of two alarms that the user decided they are not the same, although they are similar. Just so we remember that such a case exists.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":174,"context_line":"#. Vitrage evaluator asks to create a deduced alarm with severity CRITICAL"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"Expected behavior: Vitrage API returns a single alarm with properties from both"},{"line_number":177,"context_line":"Nagios and Vitrage and severity CRITICAL"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"\u003d\u003d\u003e Is this the expected behavior? If the user goes to Zabbix, he will see the"},{"line_number":180,"context_line":"alarm as WARNING. However, Vitrage thinks there is a CRITICAL problem so let\u0027s"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_e413a80c","line":177,"range":{"start_line":177,"start_character":23,"end_line":177,"end_character":40},"updated":"2018-03-08 08:38:07.000000000","message":"If properties from both Nagios and Vitrage conflict, how about we also let users choose used rules? And if they don\u0027t choose, we can decide the severity according to our default rule.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"c1e7cc9e1ff71d6600363e767f1b90a644355518","unresolved":false,"context_lines":[{"line_number":174,"context_line":"#. Vitrage evaluator asks to create a deduced alarm with severity CRITICAL"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"Expected behavior: Vitrage API returns a single alarm with properties from both"},{"line_number":177,"context_line":"Nagios and Vitrage and severity CRITICAL"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"\u003d\u003d\u003e Is this the expected behavior? If the user goes to Zabbix, he will see the"},{"line_number":180,"context_line":"alarm as WARNING. However, Vitrage thinks there is a CRITICAL problem so let\u0027s"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_00709adb","line":177,"range":{"start_line":177,"start_character":23,"end_line":177,"end_character":40},"in_reply_to":"df7087c5_00865adc","updated":"2018-03-13 12:42:42.000000000","message":"Sounds good to me","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"bda592b8b9aa89192256eecef1f43fa84f2fe283","unresolved":false,"context_lines":[{"line_number":174,"context_line":"#. Vitrage evaluator asks to create a deduced alarm with severity CRITICAL"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"Expected behavior: Vitrage API returns a single alarm with properties from both"},{"line_number":177,"context_line":"Nagios and Vitrage and severity CRITICAL"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"\u003d\u003d\u003e Is this the expected behavior? If the user goes to Zabbix, he will see the"},{"line_number":180,"context_line":"alarm as WARNING. However, Vitrage thinks there is a CRITICAL problem so let\u0027s"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_00865adc","line":177,"range":{"start_line":177,"start_character":23,"end_line":177,"end_character":40},"in_reply_to":"df7087c5_423b2dea","updated":"2018-03-13 12:30:46.000000000","message":"How about having \u0027nagios_severity\u0027 and \u0027vitrage_severity\u0027 like you suggest?","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"886128fda82368cc82ad2f15a4fb7514a55ccc34","unresolved":false,"context_lines":[{"line_number":174,"context_line":"#. Vitrage evaluator asks to create a deduced alarm with severity CRITICAL"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"Expected behavior: Vitrage API returns a single alarm with properties from both"},{"line_number":177,"context_line":"Nagios and Vitrage and severity CRITICAL"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"\u003d\u003d\u003e Is this the expected behavior? If the user goes to Zabbix, he will see the"},{"line_number":180,"context_line":"alarm as WARNING. However, Vitrage thinks there is a CRITICAL problem so let\u0027s"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_423b2dea","line":177,"range":{"start_line":177,"start_character":23,"end_line":177,"end_character":40},"in_reply_to":"df7087c5_e413a80c","updated":"2018-03-11 08:00:22.000000000","message":"We can, but it would make the alarm equivalence definition even more complex. Do you think it is worth it?","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":177,"context_line":"Nagios and Vitrage and severity CRITICAL"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"\u003d\u003d\u003e Is this the expected behavior? If the user goes to Zabbix, he will see the"},{"line_number":180,"context_line":"alarm as WARNING. However, Vitrage thinks there is a CRITICAL problem so let\u0027s"},{"line_number":181,"context_line":"not ignore it."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"4.2. Nagios reports alarm, Vitrage deduced alarm, Nagios reports OK"},{"line_number":184,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_e42c0849","line":181,"range":{"start_line":180,"start_character":70,"end_line":181,"end_character":14},"updated":"2018-03-08 08:38:07.000000000","message":"Should we have a new property to store the conflict and discarded value?","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"886128fda82368cc82ad2f15a4fb7514a55ccc34","unresolved":false,"context_lines":[{"line_number":177,"context_line":"Nagios and Vitrage and severity CRITICAL"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"\u003d\u003d\u003e Is this the expected behavior? If the user goes to Zabbix, he will see the"},{"line_number":180,"context_line":"alarm as WARNING. However, Vitrage thinks there is a CRITICAL problem so let\u0027s"},{"line_number":181,"context_line":"not ignore it."},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"4.2. Nagios reports alarm, Vitrage deduced alarm, Nagios reports OK"},{"line_number":184,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_022535c2","line":181,"range":{"start_line":180,"start_character":70,"end_line":181,"end_character":14},"in_reply_to":"df7087c5_e42c0849","updated":"2018-03-11 08:00:22.000000000","message":"That\u0027s a design issue. My purpose was to first agree on the wanted behavior so we can then make sure that the selected design answers all the needed use cases.","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":189,"context_line":""},{"line_number":190,"context_line":"Expected behavior:"},{"line_number":191,"context_line":""},{"line_number":192,"context_line":"* The alarm is not deleted (Vitrage still identifies a problem, let\u0027s not"},{"line_number":193,"context_line":"  ignore it)"},{"line_number":194,"context_line":"* The alarm contains all Vitrage properties"},{"line_number":195,"context_line":"* A diagnose action is executed, if such an action is defined"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_64ed58ee","line":192,"range":{"start_line":192,"start_character":2,"end_line":192,"end_character":25},"updated":"2018-03-08 08:38:07.000000000","message":"Same as 2.2","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"a78f6160bb8130f3d0d645390838d75f64231a26","unresolved":false,"context_lines":[{"line_number":194,"context_line":"* The alarm contains all Vitrage properties"},{"line_number":195,"context_line":"* A diagnose action is executed, if such an action is defined"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"4.1. Nagios, Zabbix and Vitrage report an alarm"},{"line_number":198,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity WARNING"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_e4d08853","line":197,"range":{"start_line":197,"start_character":0,"end_line":197,"end_character":3},"updated":"2018-03-08 08:38:07.000000000","message":"4.3","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"886128fda82368cc82ad2f15a4fb7514a55ccc34","unresolved":false,"context_lines":[{"line_number":194,"context_line":"* The alarm contains all Vitrage properties"},{"line_number":195,"context_line":"* A diagnose action is executed, if such an action is defined"},{"line_number":196,"context_line":""},{"line_number":197,"context_line":"4.1. Nagios, Zabbix and Vitrage report an alarm"},{"line_number":198,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":199,"context_line":""},{"line_number":200,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity WARNING"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_42148d4e","line":197,"range":{"start_line":197,"start_character":0,"end_line":197,"end_character":3},"in_reply_to":"df7087c5_e4d08853","updated":"2018-03-11 08:00:22.000000000","message":"Thanks, I\u0027ll fix it in the next patch set","commit_id":"fefc1a8e25afe010d4b15c2b747eea41db3a1e13"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"9f7eb1397c20804880efd8c1378d3f5f8142d9ca","unresolved":false,"context_lines":[{"line_number":96,"context_line":"#. Nova host datasource asks to create nova.host entity"},{"line_number":97,"context_line":"#. Vitrage discovery agent datasource asks to create host (nova.host?) entity"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Expected behavior: Vitrage API returns a single host with properties from both"},{"line_number":100,"context_line":"datasources"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"1.2. Vitrage discovery agent reports first"},{"line_number":103,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_9d1b7ec8","line":100,"range":{"start_line":99,"start_character":19,"end_line":100,"end_character":11},"updated":"2018-03-15 08:13:49.000000000","message":"Why record all properties from both datasources(like k8s.vm_state, nova.instance_state..), for what use? Is that for merge/unmerge when merge rule changes?","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"3165a845aac606cfd66c4dc18ab797ad3095656a","unresolved":false,"context_lines":[{"line_number":96,"context_line":"#. Nova host datasource asks to create nova.host entity"},{"line_number":97,"context_line":"#. Vitrage discovery agent datasource asks to create host (nova.host?) entity"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"Expected behavior: Vitrage API returns a single host with properties from both"},{"line_number":100,"context_line":"datasources"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"1.2. Vitrage discovery agent reports first"},{"line_number":103,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_458c24d6","line":100,"range":{"start_line":99,"start_character":19,"end_line":100,"end_character":11},"in_reply_to":"df7087c5_9d1b7ec8","updated":"2018-03-15 11:59:38.000000000","message":"First, this is my suggested design, so it actually should not be part of this (requirement) document. I\u0027ll remove it.\n\nBut since you asked - the idea is that if one datasource stops reporting, then we will be able to restore the definitions of the other datasource","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"9f7eb1397c20804880efd8c1378d3f5f8142d9ca","unresolved":false,"context_lines":[{"line_number":133,"context_line":"| worst_state   | ERROR            |"},{"line_number":134,"context_line":"+---------------+------------------+"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"1.5. Conflict in other resource properties"},{"line_number":137,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"\u003d\u003d\u003e Do we have a concrete example?"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_d0c9dd58","line":136,"range":{"start_line":136,"start_character":5,"end_line":136,"end_character":42},"updated":"2018-03-15 08:13:49.000000000","message":"In the use case that k8s reports vm with name \u0027vm-01\u0027, and nova.instance reports vm with name \u0027vm-1\u0027, Vitrage API returns a single vm:\nIs name properties in the vm vertex \u0027k8s.vm_name\u0027 and \u0027nova.instance_name\u0027 like you suggest? Will there be an aggregated name? If not, I think multiple names will make users confused.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"3165a845aac606cfd66c4dc18ab797ad3095656a","unresolved":false,"context_lines":[{"line_number":133,"context_line":"| worst_state   | ERROR            |"},{"line_number":134,"context_line":"+---------------+------------------+"},{"line_number":135,"context_line":""},{"line_number":136,"context_line":"1.5. Conflict in other resource properties"},{"line_number":137,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"\u003d\u003d\u003e Do we have a concrete example?"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_686c9dcd","line":136,"range":{"start_line":136,"start_character":5,"end_line":136,"end_character":42},"in_reply_to":"df7087c5_d0c9dd58","updated":"2018-03-15 11:59:38.000000000","message":"I don\u0027t know if a conflict is possible for vm name, but even if not then it can probably happen for other properties.\n\nThat\u0027s a good question. At first I thought that we should use the same merge strategy for all properties. But if we select \u0027last_update\u0027 or \u0027worst_state\u0027 we might have the vm name change over and over again.\nMaybe we should use \u0027most_credible\u0027, and in case both datasources have the same credibility then Vitrage will arbitrary select one of them as \"a-bit-more\" credible. This decision should be done at startup and should not be changed later on.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"9f7eb1397c20804880efd8c1378d3f5f8142d9ca","unresolved":false,"context_lines":[{"line_number":201,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":202,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity CRITICAL"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"3. Two monitors report similar yet different alarms"},{"line_number":207,"context_line":"---------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_d3100751","line":204,"range":{"start_line":204,"start_character":19,"end_line":204,"end_character":76},"updated":"2018-03-15 08:13:49.000000000","message":"What if Prometheus datasource has a higher credibility, and users choose \u0027most_credible\u0027 rule? Does \u0027worst_state\u0027 always works?","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"e7ba7c520ac43c3850b1fc809f59e004c0152d3d","unresolved":false,"context_lines":[{"line_number":201,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":202,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity CRITICAL"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"3. Two monitors report similar yet different alarms"},{"line_number":207,"context_line":"---------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_8fba40be","line":204,"range":{"start_line":204,"start_character":19,"end_line":204,"end_character":76},"in_reply_to":"df7087c5_48e0b926","updated":"2018-03-16 06:26:59.000000000","message":"OK","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"3165a845aac606cfd66c4dc18ab797ad3095656a","unresolved":false,"context_lines":[{"line_number":201,"context_line":"#. Zabbix datasource asks to create a Zabbix alarm with severity CRITICAL"},{"line_number":202,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity CRITICAL"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"3. Two monitors report similar yet different alarms"},{"line_number":207,"context_line":"---------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_48e0b926","line":204,"range":{"start_line":204,"start_character":19,"end_line":204,"end_character":76},"in_reply_to":"df7087c5_d3100751","updated":"2018-03-15 11:59:38.000000000","message":"This example is for \u0027worst_state\u0027 strategy. I will write it to the doc. You are right, for \u0027most_credible\u0027 the severity should be WARNING.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"9f7eb1397c20804880efd8c1378d3f5f8142d9ca","unresolved":false,"context_lines":[{"line_number":222,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity WARNING"},{"line_number":223,"context_line":"#. Vitrage evaluator asks to create a deduced alarm with severity CRITICAL"},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Expected behavior: Vitrage API returns a single alarm with properties from both"},{"line_number":226,"context_line":"Nagios and Vitrage and severity that depends on the merge rule."},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"+---------------+---------------------+"},{"line_number":229,"context_line":"| Merge Rule    | Aggregated severity |"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_ee10be50","line":226,"range":{"start_line":225,"start_character":31,"end_line":226,"end_character":18},"updated":"2018-03-15 08:13:49.000000000","message":"Same as above. I am not sure about whether all other properties will be prepended by datasource type? Vitrage internal properties like \u0027vitrage_is_deleted\u0027, \u0027vitrage_type\u0027 will be also pretended?","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"e7ba7c520ac43c3850b1fc809f59e004c0152d3d","unresolved":false,"context_lines":[{"line_number":222,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity WARNING"},{"line_number":223,"context_line":"#. Vitrage evaluator asks to create a deduced alarm with severity CRITICAL"},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Expected behavior: Vitrage API returns a single alarm with properties from both"},{"line_number":226,"context_line":"Nagios and Vitrage and severity that depends on the merge rule."},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"+---------------+---------------------+"},{"line_number":229,"context_line":"| Merge Rule    | Aggregated severity |"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_6f01ec69","line":226,"range":{"start_line":225,"start_character":31,"end_line":226,"end_character":18},"in_reply_to":"df7087c5_e8be6dd3","updated":"2018-03-16 06:26:59.000000000","message":"Ok. And you are right, they truly are.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"3165a845aac606cfd66c4dc18ab797ad3095656a","unresolved":false,"context_lines":[{"line_number":222,"context_line":"#. Nagios datasource asks to create a Nagios alarm with severity WARNING"},{"line_number":223,"context_line":"#. Vitrage evaluator asks to create a deduced alarm with severity CRITICAL"},{"line_number":224,"context_line":""},{"line_number":225,"context_line":"Expected behavior: Vitrage API returns a single alarm with properties from both"},{"line_number":226,"context_line":"Nagios and Vitrage and severity that depends on the merge rule."},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"+---------------+---------------------+"},{"line_number":229,"context_line":"| Merge Rule    | Aggregated severity |"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_e8be6dd3","line":226,"range":{"start_line":225,"start_character":31,"end_line":226,"end_character":18},"in_reply_to":"df7087c5_ee10be50","updated":"2018-03-15 11:59:38.000000000","message":"Again, this should be part of the design (if we agree on it) and not part of this document. \n\nAnd regarding your question - Vitrage properties are already prepended with \u0027vitrage_\u0027 :-) no need to change it.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"9f7eb1397c20804880efd8c1378d3f5f8142d9ca","unresolved":false,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"* The alarm is not deleted (Vitrage still identifies a problem, let\u0027s not"},{"line_number":260,"context_line":"  ignore it)"},{"line_number":261,"context_line":"* The alarm contains all Vitrage properties"},{"line_number":262,"context_line":"* A diagnose action is executed, if such an action is defined"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_2e431615","line":261,"range":{"start_line":261,"start_character":1,"end_line":261,"end_character":43},"updated":"2018-03-15 08:13:49.000000000","message":"I can understand here because Nagios reports to delete the alarm.\nAccording to above, if Nagios report as WARNING, and Vitrage as CRITICAL, alarm will contains properties from both sides, right?","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"3165a845aac606cfd66c4dc18ab797ad3095656a","unresolved":false,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"* The alarm is not deleted (Vitrage still identifies a problem, let\u0027s not"},{"line_number":260,"context_line":"  ignore it)"},{"line_number":261,"context_line":"* The alarm contains all Vitrage properties"},{"line_number":262,"context_line":"* A diagnose action is executed, if such an action is defined"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_48c3d957","line":261,"range":{"start_line":261,"start_character":1,"end_line":261,"end_character":43},"in_reply_to":"df7087c5_2e431615","updated":"2018-03-15 11:59:38.000000000","message":"Yes","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"9f7eb1397c20804880efd8c1378d3f5f8142d9ca","unresolved":false,"context_lines":[{"line_number":305,"context_line":"the database, there is no real difference if the user restarts the graph after"},{"line_number":306,"context_line":"he changes the equivalence definition or not."},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"5.1. Zabbix and Vitrage are equivalent, then the makes Nagios equivalent too"},{"line_number":309,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":310,"context_line":"Assume that the merge rule is last_update."},{"line_number":311,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_8eefc2e7","line":308,"range":{"start_line":308,"start_character":0,"end_line":308,"end_character":3},"updated":"2018-03-15 08:13:49.000000000","message":"5.2","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"3165a845aac606cfd66c4dc18ab797ad3095656a","unresolved":false,"context_lines":[{"line_number":305,"context_line":"the database, there is no real difference if the user restarts the graph after"},{"line_number":306,"context_line":"he changes the equivalence definition or not."},{"line_number":307,"context_line":""},{"line_number":308,"context_line":"5.1. Zabbix and Vitrage are equivalent, then the makes Nagios equivalent too"},{"line_number":309,"context_line":"^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"},{"line_number":310,"context_line":"Assume that the merge rule is last_update."},{"line_number":311,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_a8a95590","line":308,"range":{"start_line":308,"start_character":0,"end_line":308,"end_character":3},"in_reply_to":"df7087c5_8eefc2e7","updated":"2018-03-15 11:59:38.000000000","message":"Thanks, I\u0027ll fix it","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"9f7eb1397c20804880efd8c1378d3f5f8142d9ca","unresolved":false,"context_lines":[{"line_number":319,"context_line":"#. The user changes the equivalence definition so Vitrage, Zabbix and Nagios"},{"line_number":320,"context_line":"   are equivalent to each other"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"6. Template on one datasource should apply to another datasource"},{"line_number":325,"context_line":"----------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_ceddbae0","line":322,"range":{"start_line":322,"start_character":0,"end_line":322,"end_character":76},"updated":"2018-03-15 08:13:49.000000000","message":"Re-equivalence when users change alarm equivalence definition is complex, especially unmerge.. We have not thought an effective solution yet...\nBesides, why users can\u0027t change resource equivalence definition? Is that because it\u0027ll be hard coded?","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"879285efca9a0dfa32bf3d868e447dfce29f101f","unresolved":false,"context_lines":[{"line_number":319,"context_line":"#. The user changes the equivalence definition so Vitrage, Zabbix and Nagios"},{"line_number":320,"context_line":"   are equivalent to each other"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"6. Template on one datasource should apply to another datasource"},{"line_number":325,"context_line":"----------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_13ade430","line":322,"range":{"start_line":322,"start_character":0,"end_line":322,"end_character":76},"in_reply_to":"df7087c5_0895e132","updated":"2018-03-17 05:51:35.000000000","message":"As for hard-coded option, I think that maybe we can also make the credibility level of \u0027vitrage\u0027 type alarm lowest since it\u0027s deduced.\nBesides, where and how do you plan to do hard-coded option?","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"e7ba7c520ac43c3850b1fc809f59e004c0152d3d","unresolved":false,"context_lines":[{"line_number":319,"context_line":"#. The user changes the equivalence definition so Vitrage, Zabbix and Nagios"},{"line_number":320,"context_line":"   are equivalent to each other"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"6. Template on one datasource should apply to another datasource"},{"line_number":325,"context_line":"----------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_eabdea01","line":322,"range":{"start_line":322,"start_character":0,"end_line":322,"end_character":76},"in_reply_to":"df7087c5_0895e132","updated":"2018-03-16 06:26:59.000000000","message":"Ok, and I don\u0027t have examples beyond the range of use cases above for now.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"d7b8da894950f1067a5c7c8eadf4befb4928b6e9","unresolved":false,"context_lines":[{"line_number":319,"context_line":"#. The user changes the equivalence definition so Vitrage, Zabbix and Nagios"},{"line_number":320,"context_line":"   are equivalent to each other"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"6. Template on one datasource should apply to another datasource"},{"line_number":325,"context_line":"----------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_f1df03d4","line":322,"range":{"start_line":322,"start_character":0,"end_line":322,"end_character":76},"in_reply_to":"df7087c5_13ade430","updated":"2018-03-18 08:03:33.000000000","message":"I don\u0027t know yet :-) this belongs in the detailed design\n\nWhat I have in mind is that the datasource, at initialization phase, will set its equivalences somewhere. The user should not be able to modify these equivalences. \n\nRegarding hard-coded credibility of Vitrage - I think we should set the default of Vitrage to the lowest credibility, and set the default of all other datasources to the medium/highest credibility, and the user will be able to change it if he wants.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"3165a845aac606cfd66c4dc18ab797ad3095656a","unresolved":false,"context_lines":[{"line_number":319,"context_line":"#. The user changes the equivalence definition so Vitrage, Zabbix and Nagios"},{"line_number":320,"context_line":"   are equivalent to each other"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":323,"context_line":""},{"line_number":324,"context_line":"6. Template on one datasource should apply to another datasource"},{"line_number":325,"context_line":"----------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_0895e132","line":322,"range":{"start_line":322,"start_character":0,"end_line":322,"end_character":76},"in_reply_to":"df7087c5_ceddbae0","updated":"2018-03-15 11:59:38.000000000","message":"I think the users should be able to change both resource and alarm equivalence. It\u0027s a very trivial requirement, to let the user change his mind after looking at some alarms. The implementation is complex, but I think we must find a solution and support it. \n\nRegarding the hard-coded option, I think that it is needed for *some* resource types. K8s instances should always be mapped to Nova instances. It doesn\u0027t make sense to let the user change this behavior. And it doesn\u0027t make sense to let the user map k8s instances to Neutron networks for example... \n\nIf you have other examples we can add them to the document.","commit_id":"7902e66c162baf0f3c5b5a52f422e98f53ec9888"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":41,"context_line":"   (meaning the alarms are similar but not the same)"},{"line_number":42,"context_line":"#. Equivalence between a monitored alarm and a Vitrage deduced alarm"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Equivalence Definition"},{"line_number":45,"context_line":"----------------------"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"In order to support these use cases, we **must** define a way for the user to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_157db0e6","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":22},"updated":"2018-03-19 14:02:49.000000000","message":"this definitions should be also transitive, i.e. if user defined Zabbix equivalent to Nagios, and Nagios equivalent to Vitrage, so Zabbix and Vitrage are also equivalent.","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e486a63a992a509e3444a2cb9c9595affad0fb8","unresolved":false,"context_lines":[{"line_number":41,"context_line":"   (meaning the alarms are similar but not the same)"},{"line_number":42,"context_line":"#. Equivalence between a monitored alarm and a Vitrage deduced alarm"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Equivalence Definition"},{"line_number":45,"context_line":"----------------------"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"In order to support these use cases, we **must** define a way for the user to"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_a93a6931","line":44,"range":{"start_line":44,"start_character":0,"end_line":44,"end_character":22},"in_reply_to":"df7087c5_157db0e6","updated":"2018-03-19 16:08:54.000000000","message":"Done","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* Which properties determine the equivalence. E.g. Nova instance UUID equals"},{"line_number":53,"context_line":"  k8s vm externalID"},{"line_number":54,"context_line":"* Optional: what property should be used in case of conflict (could it be done"},{"line_number":55,"context_line":"  arbitrarily or hard-coded?"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"For alarms we should define:"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_d58658dc","line":54,"range":{"start_line":54,"start_character":61,"end_line":54,"end_character":62},"updated":"2018-03-19 14:02:49.000000000","message":"\")\" is missing","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e486a63a992a509e3444a2cb9c9595affad0fb8","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"* Which properties determine the equivalence. E.g. Nova instance UUID equals"},{"line_number":53,"context_line":"  k8s vm externalID"},{"line_number":54,"context_line":"* Optional: what property should be used in case of conflict (could it be done"},{"line_number":55,"context_line":"  arbitrarily or hard-coded?"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"For alarms we should define:"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_694451b8","line":54,"range":{"start_line":54,"start_character":61,"end_line":54,"end_character":62},"in_reply_to":"df7087c5_d58658dc","updated":"2018-03-19 16:08:54.000000000","message":"Done","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":"* Hard-coded equivalence: k8s vms always map to Nova vms by the same strategy."},{"line_number":67,"context_line":"  We can\u0027t let the user change it."},{"line_number":68,"context_line":"* User-defined equivalence: the end user may decide that two alarms are, or are"},{"line_number":69,"context_line":"  not, equivalent. The user should be able to change this definition at any"},{"line_number":70,"context_line":"  time."},{"line_number":71,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_756bcc1e","line":68,"range":{"start_line":68,"start_character":28,"end_line":68,"end_character":51},"updated":"2018-03-19 14:02:49.000000000","message":"what about multi tenancy?","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e486a63a992a509e3444a2cb9c9595affad0fb8","unresolved":false,"context_lines":[{"line_number":65,"context_line":""},{"line_number":66,"context_line":"* Hard-coded equivalence: k8s vms always map to Nova vms by the same strategy."},{"line_number":67,"context_line":"  We can\u0027t let the user change it."},{"line_number":68,"context_line":"* User-defined equivalence: the end user may decide that two alarms are, or are"},{"line_number":69,"context_line":"  not, equivalent. The user should be able to change this definition at any"},{"line_number":70,"context_line":"  time."},{"line_number":71,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_091355ba","line":68,"range":{"start_line":68,"start_character":28,"end_line":68,"end_character":51},"in_reply_to":"df7087c5_756bcc1e","updated":"2018-03-19 16:08:54.000000000","message":"Done","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":77,"context_line":"the wanted \"merge strategy\" out of the following options:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"#. last_update: Use the properties from the last update"},{"line_number":80,"context_line":"#. most_credible: Use the properties from the most credible datasource. If all"},{"line_number":81,"context_line":"   datasources have the same credibility, use the last udpated"},{"line_number":82,"context_line":"#. worst_state: In case of state/severity calculation: Use the worst state of"},{"line_number":83,"context_line":"   all"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_357554fb","line":80,"range":{"start_line":80,"start_character":18,"end_line":80,"end_character":59},"updated":"2018-03-19 14:02:49.000000000","message":"maybe elaborate more about defining credibility","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e486a63a992a509e3444a2cb9c9595affad0fb8","unresolved":false,"context_lines":[{"line_number":77,"context_line":"the wanted \"merge strategy\" out of the following options:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"#. last_update: Use the properties from the last update"},{"line_number":80,"context_line":"#. most_credible: Use the properties from the most credible datasource. If all"},{"line_number":81,"context_line":"   datasources have the same credibility, use the last udpated"},{"line_number":82,"context_line":"#. worst_state: In case of state/severity calculation: Use the worst state of"},{"line_number":83,"context_line":"   all"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_291899d1","line":80,"range":{"start_line":80,"start_character":18,"end_line":80,"end_character":59},"in_reply_to":"df7087c5_357554fb","updated":"2018-03-19 16:08:54.000000000","message":"Done","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":210,"context_line":""},{"line_number":211,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"3. Two monitors report similar yet different alarms"},{"line_number":214,"context_line":"---------------------------------------------------"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"#. Nagios datasource asks to create a Nagios \"high CPU\" alarm"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_55724813","line":213,"range":{"start_line":213,"start_character":0,"end_line":213,"end_character":51},"updated":"2018-03-19 14:02:49.000000000","message":"I\u0027m not sure that use-case description is needed, what is the difference between this use-case and the use-case of two alarms with completely different names?\nit depends on the decision on properties that defines equivalence, as described in line 59, ans also on use decision regarding those specific alarms","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e486a63a992a509e3444a2cb9c9595affad0fb8","unresolved":false,"context_lines":[{"line_number":210,"context_line":""},{"line_number":211,"context_line":"Expected behavior: Vitrage API returns a single alarm with severity CRITICAL"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":"3. Two monitors report similar yet different alarms"},{"line_number":214,"context_line":"---------------------------------------------------"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":"#. Nagios datasource asks to create a Nagios \"high CPU\" alarm"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_c9331d62","line":213,"range":{"start_line":213,"start_character":0,"end_line":213,"end_character":51},"in_reply_to":"df7087c5_55724813","updated":"2018-03-19 16:08:54.000000000","message":"The idea is to show that there could be cases where the user choses not to define two alarms as equivalent","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":216,"context_line":"#. Nagios datasource asks to create a Nagios \"high CPU\" alarm"},{"line_number":217,"context_line":"#. Zabbix datasource asks to create a Zabbix \"extremely high CPU\" alarm"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"Expected behavior: Vitrage API returns two alarms"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"4. A monitors reports the same alarm as a Vitrage deduced alarm"},{"line_number":222,"context_line":"---------------------------------------------------------------"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_f5603c38","line":219,"range":{"start_line":219,"start_character":19,"end_line":219,"end_character":49},"updated":"2018-03-19 14:02:49.000000000","message":"the user might define those two alarms as equivalent, then the expected behavior is that Vitrage API returns one alarm","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":218,"context_line":""},{"line_number":219,"context_line":"Expected behavior: Vitrage API returns two alarms"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"4. A monitors reports the same alarm as a Vitrage deduced alarm"},{"line_number":222,"context_line":"---------------------------------------------------------------"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"This use case is detailed also in https://review.openstack.org/#/c/547931/"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_15661053","line":221,"range":{"start_line":221,"start_character":5,"end_line":221,"end_character":13},"updated":"2018-03-19 14:02:49.000000000","message":"monitor","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e486a63a992a509e3444a2cb9c9595affad0fb8","unresolved":false,"context_lines":[{"line_number":218,"context_line":""},{"line_number":219,"context_line":"Expected behavior: Vitrage API returns two alarms"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":"4. A monitors reports the same alarm as a Vitrage deduced alarm"},{"line_number":222,"context_line":"---------------------------------------------------------------"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":"This use case is detailed also in https://review.openstack.org/#/c/547931/"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_c90c7d96","line":221,"range":{"start_line":221,"start_character":5,"end_line":221,"end_character":13},"in_reply_to":"df7087c5_15661053","updated":"2018-03-19 16:08:54.000000000","message":"Done","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":24635,"name":"Anna Reznikov","email":"annarez82@gmail.com","username":"annarez"},"change_message_id":"3c73d932837f75fe6ce41f6ea67aebe6287d4b42","unresolved":false,"context_lines":[{"line_number":261,"context_line":"| worst_state    | WARNING                   |"},{"line_number":262,"context_line":"+----------------+---------------------------+"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"The behavior for worst_state strategy:"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"* The alarm is not deleted (Vitrage still identifies a problem, let\u0027s not"},{"line_number":267,"context_line":"  ignore it)"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_b55ac480","line":264,"range":{"start_line":264,"start_character":0,"end_line":264,"end_character":38},"updated":"2018-03-19 14:02:49.000000000","message":"also relevant for section 2.2. (except the last part of diagnose action)","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"7e486a63a992a509e3444a2cb9c9595affad0fb8","unresolved":false,"context_lines":[{"line_number":261,"context_line":"| worst_state    | WARNING                   |"},{"line_number":262,"context_line":"+----------------+---------------------------+"},{"line_number":263,"context_line":""},{"line_number":264,"context_line":"The behavior for worst_state strategy:"},{"line_number":265,"context_line":""},{"line_number":266,"context_line":"* The alarm is not deleted (Vitrage still identifies a problem, let\u0027s not"},{"line_number":267,"context_line":"  ignore it)"}],"source_content_type":"text/x-rst","patch_set":6,"id":"df7087c5_69e0d197","line":264,"range":{"start_line":264,"start_character":0,"end_line":264,"end_character":38},"in_reply_to":"df7087c5_b55ac480","updated":"2018-03-19 16:08:54.000000000","message":"You are right, but I think it suits more here since it is Nagios vs. Vitrage and not Nagios vs. another monitor. I wanted to emphasize that although Nagios is more credible than Vitrage, Vitrage alarm is considered and not ignored (for worst_state strategy).","commit_id":"4ac80010e285767fb40572dac2f13d057688aeea"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"892c16c2823ea49074c1a39f1d35ff0801a8ef7d","unresolved":false,"context_lines":[{"line_number":192,"context_line":"+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+"},{"line_number":193,"context_line":"| last_update    | WARNING             |"},{"line_number":194,"context_line":"+----------------+---------------------+"},{"line_number":195,"context_line":"| most_credible  | CRITICAL            |"},{"line_number":196,"context_line":"+----------------+---------------------+"},{"line_number":197,"context_line":"| worst_state    | CRITICAL            |"},{"line_number":198,"context_line":"+----------------+---------------------+"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_89d99723","line":195,"range":{"start_line":195,"start_character":2,"end_line":195,"end_character":28},"updated":"2018-03-20 10:35:54.000000000","message":"Does Zabbix datasource have a higher credibility here?","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"4f51678dc59f3175daa7032b6bc3df7b4cf1fed9","unresolved":false,"context_lines":[{"line_number":192,"context_line":"+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+"},{"line_number":193,"context_line":"| last_update    | WARNING             |"},{"line_number":194,"context_line":"+----------------+---------------------+"},{"line_number":195,"context_line":"| most_credible  | CRITICAL            |"},{"line_number":196,"context_line":"+----------------+---------------------+"},{"line_number":197,"context_line":"| worst_state    | CRITICAL            |"},{"line_number":198,"context_line":"+----------------+---------------------+"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_a020254b","line":195,"range":{"start_line":195,"start_character":2,"end_line":195,"end_character":28},"in_reply_to":"df7087c5_89d99723","updated":"2018-03-20 10:52:46.000000000","message":"Your comment is correct.\n\nI actually assumed that Nagios and Zabbix have the same credibility, and then used worst_state as a second-priority aggregation option.\nBut actually, I think we should let the user decide what happens if both datasources are equally credible.\n\nI think this question is only relevant for most_credible, right? last_update will never be the same, and worst_state is well defined.\n\nWhat do you think?","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"475b47f72d28c1d01b3d158971da0155c333c6cf","unresolved":false,"context_lines":[{"line_number":192,"context_line":"+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+"},{"line_number":193,"context_line":"| last_update    | WARNING             |"},{"line_number":194,"context_line":"+----------------+---------------------+"},{"line_number":195,"context_line":"| most_credible  | CRITICAL            |"},{"line_number":196,"context_line":"+----------------+---------------------+"},{"line_number":197,"context_line":"| worst_state    | CRITICAL            |"},{"line_number":198,"context_line":"+----------------+---------------------+"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_ece03829","line":195,"range":{"start_line":195,"start_character":2,"end_line":195,"end_character":28},"in_reply_to":"df7087c5_9878e38f","updated":"2018-03-21 10:05:53.000000000","message":"I\u0027m sorry, I didn\u0027t understand your suggestion about default priority of strategies. Can you please explain?","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"1297307e3b9b26735442405c0f28a07fb95d81bf","unresolved":false,"context_lines":[{"line_number":192,"context_line":"+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+"},{"line_number":193,"context_line":"| last_update    | WARNING             |"},{"line_number":194,"context_line":"+----------------+---------------------+"},{"line_number":195,"context_line":"| most_credible  | CRITICAL            |"},{"line_number":196,"context_line":"+----------------+---------------------+"},{"line_number":197,"context_line":"| worst_state    | CRITICAL            |"},{"line_number":198,"context_line":"+----------------+---------------------+"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_9878e38f","line":195,"range":{"start_line":195,"start_character":2,"end_line":195,"end_character":28},"in_reply_to":"df7087c5_a020254b","updated":"2018-03-21 02:14:34.000000000","message":"Yes, this question is only for most_credible. I agree with you that it should be users who decide the priority of merge strategy.\nI can understand that Nagios and Zabbix may have the same credibility in the true world. I think that maybe it will be clearer if we refer to the default priority of strategies before this use case, or assume a dummy credibility level here.","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"892c16c2823ea49074c1a39f1d35ff0801a8ef7d","unresolved":false,"context_lines":[{"line_number":212,"context_line":"+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+"},{"line_number":213,"context_line":"| last_update    | OK (the alarm is deleted) |"},{"line_number":214,"context_line":"+----------------+---------------------------+"},{"line_number":215,"context_line":"| most_credible  | WARNING                   |"},{"line_number":216,"context_line":"+----------------+---------------------------+"},{"line_number":217,"context_line":"| worst_state    | WARNING                   |"},{"line_number":218,"context_line":"+----------------+---------------------------+"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_b7b0768d","line":215,"range":{"start_line":215,"start_character":1,"end_line":215,"end_character":32},"updated":"2018-03-20 10:35:54.000000000","message":"And Nagios datasource has a high credibility in this use case?","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"4f51678dc59f3175daa7032b6bc3df7b4cf1fed9","unresolved":false,"context_lines":[{"line_number":212,"context_line":"+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d+"},{"line_number":213,"context_line":"| last_update    | OK (the alarm is deleted) |"},{"line_number":214,"context_line":"+----------------+---------------------------+"},{"line_number":215,"context_line":"| most_credible  | WARNING                   |"},{"line_number":216,"context_line":"+----------------+---------------------------+"},{"line_number":217,"context_line":"| worst_state    | WARNING                   |"},{"line_number":218,"context_line":"+----------------+---------------------------+"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_40d7c924","line":215,"range":{"start_line":215,"start_character":1,"end_line":215,"end_character":32},"in_reply_to":"df7087c5_b7b0768d","updated":"2018-03-20 10:52:46.000000000","message":"Same here","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"892c16c2823ea49074c1a39f1d35ff0801a8ef7d","unresolved":false,"context_lines":[{"line_number":467,"context_line":"       - ..."},{"line_number":468,"context_line":""},{"line_number":469,"context_line":"This use case is the same as 5.1, with one exception: the template entity"},{"line_number":470,"context_line":"zabbix_alarm is defined only for the case that the severity is warning. What"},{"line_number":471,"context_line":"will happen if a Nagios alarm is raised with severity warning? and what if it"},{"line_number":472,"context_line":"is raised with a different severity?"},{"line_number":473,"context_line":""},{"line_number":474,"context_line":"8. Overlapping templates"},{"line_number":475,"context_line":"------------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_0f9d8258","line":472,"range":{"start_line":470,"start_character":71,"end_line":472,"end_character":36},"updated":"2018-03-20 10:35:54.000000000","message":"I am not sure about the expected behavior. In this use case, should scenario nerver work if a Nagios alarm is raised, since this case is in \u0027not apply\u0027?\nIf merged/aggregated severity is \u0027warning\u0027 after nagios alarm is raised, actions in condition zabbix_alarm_on_host should be executed as I understand.\nBesides, Nagios alarm entity defined here has no related scenarios, right?","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"4f51678dc59f3175daa7032b6bc3df7b4cf1fed9","unresolved":false,"context_lines":[{"line_number":467,"context_line":"       - ..."},{"line_number":468,"context_line":""},{"line_number":469,"context_line":"This use case is the same as 5.1, with one exception: the template entity"},{"line_number":470,"context_line":"zabbix_alarm is defined only for the case that the severity is warning. What"},{"line_number":471,"context_line":"will happen if a Nagios alarm is raised with severity warning? and what if it"},{"line_number":472,"context_line":"is raised with a different severity?"},{"line_number":473,"context_line":""},{"line_number":474,"context_line":"8. Overlapping templates"},{"line_number":475,"context_line":"------------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_2005f57a","line":472,"range":{"start_line":470,"start_character":71,"end_line":472,"end_character":36},"in_reply_to":"df7087c5_0f9d8258","updated":"2018-03-20 10:52:46.000000000","message":"I think I gave a wrong example in this section.\n\nMy intention was to show a case where there is a specific property to one datasource, so if an alarm is raised by another datasource it won\u0027t be matched by the evaluator.\n\nA better example could be the \u0027plugin\u0027 property of Collectd datasource. If we define that Collectd and Nagios high cpu alarms are equivalent, but then define a scenario with Collectd alarm that has plugin\u003dovs_events, then the scenario will not be executed for a Nagios alarm.\n\nDoes it make sense?","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"1297307e3b9b26735442405c0f28a07fb95d81bf","unresolved":false,"context_lines":[{"line_number":467,"context_line":"       - ..."},{"line_number":468,"context_line":""},{"line_number":469,"context_line":"This use case is the same as 5.1, with one exception: the template entity"},{"line_number":470,"context_line":"zabbix_alarm is defined only for the case that the severity is warning. What"},{"line_number":471,"context_line":"will happen if a Nagios alarm is raised with severity warning? and what if it"},{"line_number":472,"context_line":"is raised with a different severity?"},{"line_number":473,"context_line":""},{"line_number":474,"context_line":"8. Overlapping templates"},{"line_number":475,"context_line":"------------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_5811eb03","line":472,"range":{"start_line":470,"start_character":71,"end_line":472,"end_character":36},"in_reply_to":"df7087c5_2005f57a","updated":"2018-03-21 02:14:34.000000000","message":"Ok, I think this use case can explain **template not apply to another datasource** better.","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":25301,"name":"xupeipei","email":"xu.peipei1@zte.com.cn","username":"xupeipei"},"change_message_id":"892c16c2823ea49074c1a39f1d35ff0801a8ef7d","unresolved":false,"context_lines":[{"line_number":496,"context_line":"#. k8s datasource asks to create instance (nova.instance?) with the same UUID"},{"line_number":497,"context_line":"   for tenant_2"},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"What do we do in such a case?"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_40d6e951","line":499,"range":{"start_line":499,"start_character":0,"end_line":499,"end_character":29},"updated":"2018-03-20 10:35:54.000000000","message":"Are the instances created for tenant_1 and tenant_2 the same instance?","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"4f51678dc59f3175daa7032b6bc3df7b4cf1fed9","unresolved":false,"context_lines":[{"line_number":496,"context_line":"#. k8s datasource asks to create instance (nova.instance?) with the same UUID"},{"line_number":497,"context_line":"   for tenant_2"},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"What do we do in such a case?"}],"source_content_type":"text/x-rst","patch_set":7,"id":"df7087c5_80ef21af","line":499,"range":{"start_line":499,"start_character":0,"end_line":499,"end_character":29},"in_reply_to":"df7087c5_40d6e951","updated":"2018-03-20 10:52:46.000000000","message":"I\u0027m not sure. I don\u0027t know if we will ever have such a use case, just wondering if it\u0027s something we should consider.","commit_id":"3a4344deeb3f111b4ea9cae7e404d72a21adbc72"}]}
