[ZBXNEXT-2694] Multiple triggers on map icons (1) Created: 2015 Jan 31  Updated: 2024 Apr 10  Resolved: 2017 Jun 15

Status: Closed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.4.3
Fix Version/s: 3.4.0alpha1, 3.4 (plan)

Type: New Feature Request Priority: Critical
Reporter: Ebonweaver Assignee: Unassigned
Resolution: Fixed Votes: 2
Labels: maps
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Attachments: PNG File cannot_add_again.png     PNG File hostgroup_icons.png     PNG File lost_host_name.png     PNG File multi_select_and_popup.png     PNG File spaces.png     PNG File trigger_list_improvements.png     PNG File triggers.png     PNG File triggers_left.png    
Issue Links:
Causes
causes ZBX-12883 Incorrect ordering the list of trigge... Closed
causes ZBX-12754 Undefined index sysmapid, when import... Closed
causes ZBX-13506 Changing map trigger element's type, ... Closed
Sub-task
depends on ZBX-12083 Multiselect handles trigger data diff... Closed
Sub-Tasks:
Key
Summary
Type
Status
Assignee
ZBXNEXT-3775 Documentation for Multiple triggers o... Change Request (Sub-task) Closed  
Epic Link: DEV-561
Team: Team C
Sprint: Sprint 2, Sprint 3, Sprint 4, Sprint 5, Sprint 6, Sprint 7, Sprint 8, Sprint 9, Sprint 10
Story Points: 6

 Description   

I could save 50% of my time layering icons if I could have multiple triggers in a single map element, each with their own default and problem icon settings. This way instead of having 3 or 4 items on top of each other each being blank (transparent png) by default and then some colored circle for "problem" all on top of a green circle, I could have one item that by default was green, and if trigger A was problem the icon changes to a yellow one, if trigger B was problem it would change to a red one, etc.



 Comments   
Comment by richlv [ 2015 Feb 03 ]

icon highlighting could achieve something in that direction, but not exactly the described functionality

Comment by Vjaceslavs Bogdanovs [ 2017 Mar 15 ]

(1) [FIS] Database update patch is created in r66398. Please review.

s.paskevics Full patch has successfully tested. (svn://svn.zabbix.com/branches/dev/ZBXNEXT-2694-2). CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(2) Translation strings?

oleg.egorov

Strings added:

  • Display problems
  • Map element is missing parameters: %1$s
  • New triggers
  • Number of problems
  • Number of problems and expand most critical one
  • incorrect element count

Strings deleted:

  • Wrong fields for element.

RESOLVED

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(3) [F] Map has two trigger elements. Each element has one trigger. In editor open first trigger element and then close it. Now open second trigger element and notice how the list has now two triggers instead of one.

oleg.egorov RESOLVED in r66851

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(4) [F] Host/Template name is lost when trigger is added to list.

oleg.egorov As in specification, but I think it should be displayed

oleg.egorov and iivs RESOLVED in r67431

iivs Current solution works, but I created a new issue for this ZBX-12083.

CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(5) [F] Macroses are resolved on load, but not resolved when searching in multi-select and added to list.

oleg.egorov And in popup window resolved. This issue not so new, and should be discussed.
WON'T FIX

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(6) [F] Original trigger cannot be selected when removed from list.

iivs Related problem: Create two triggers with same name and different expressions on one host. Only one name is displayed in results with multi-select, but both are present in popup.

iivs Problem with two triggers with same name is moved to ZBX-12082. Original problem remains. We should only select triggers that are available in hosts, not templates. This relates to maps only. In actions it's different. We can select triggers from templates too. So what we need to fix here, is ability to choose only host level triggers. Other problems can be fixed under ZBX-12084.

oleg.egorov RESOLVED in r68044

iivs Found another scenario where tirggers cannot be selected from multiselect search. Moevd to existing issue ZBX-12084 (1)

iivs See my minor changes in r68143

oleg.egorov CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(7) [F] Possible to press "Apply" when no triggers are selected.

oleg.egorov RESOLVED in r66890

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(8) [F] Full clone:

Undefined index: elementid [sysmaps.php:218 → CFrontendApiWrapper->get() → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → call_user_func_array() → CMap->get() → CMap->addRelatedObjects() in include\classes\api\services\CMap.php:1839]
Undefined index: elementid [sysmaps.php:218 → CFrontendApiWrapper->get() → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → call_user_func_array() → CMap->get() → CMap->addRelatedObjects() in include\classes\api\services\CMap.php:1839]
Undefined index: elementid [sysmaps.php:218 → CFrontendApiWrapper->get() → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → call_user_func_array() → CMap->get() → CMap->addRelatedObjects() in include\classes\api\services\CMap.php:1839]
Incorrect value for field "hostid": cannot be empty.

oleg.egorov RESOLVED in r66944

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(9) [F] As we discussed, there is a bug in ordering the list of triggers after saving the map. The order of trigger is different than user last saw them.

oleg.egorov RESOLVED in r68111

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 28 ]

(10) [F] Multi-select returns mixed order of host/template names but are sorted by trigger name.

oleg.egorov Global issue, will be fixed under other issue. MOVED to ZBX-12166

CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 29 ]

(11) [F] Triggers can be selected without pressing "Add" for multi-select. That means pressing "Close" button, they will be added to list as well.

oleg.egorov RESOLVED in r66892

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 29 ]

(12) [F] Some minor visual improvements:

oleg.egorov RESOLVED in r68067

And as discussed with sasha should be refixed using CSS classes

iivs See (45) too for spaces between buttons.

oleg.egorov MOVED to DEV-610

CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 29 ]

(13) [F] I have several host groups and several hosts. Most triggers have similar names. I picked two from one group and two from another group via popup.
1) I can see that multi select shows 2 options. And both have already been added to the list. Either there should be no more selection, since triggers are added to the list, but I doubt it's possible to do so, or more options should be visible, since I have multiple groups. Only way to select them is using the button.
2) As for the popup, once I remove the two triggers and try to add them back again. I can no longer do that. Only one is added.

oleg.egorov RESOLVED in r68084

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 29 ]

(14) [F] I have added multiple severity triggers. The most critical one is "disaster". When I press "Go to problems", one of "warning" type is shown. Also if multiple triggers are under one element, going to problems view, they have to be added to multi-select.

oleg.egorov RESOLVED in r67817

iivs CLOSED

Comment by Ivo Kurzemnieks [ 2017 Mar 31 ]

(25) [A]

elementid is deprecated parameter. [... → CFrontendApiWrapper->update() → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → call_user_func_array() → CMap->update() → CMapElement->createSelements() → CMapElement->checkSelementInput() → CApiService->deprecated() → trigger_error() in include\classes\api\CApiService.php:847]
array_key_exists() expects parameter 2 to be array, integer given [... → CFrontendApiWrapper->update() → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → call_user_func_array() → CMap->update() → CMapElement->createSelements() → CMapElement->checkSelementInput() → array_key_exists() in include\classes\api\services\CMapElement.php:127]
Map element is missing parameters: triggerid

oleg.egorov RESOLVED in r67010

sasha CLOSED

Comment by Oleg Egorov (Inactive) [ 2017 Mar 31 ]

Released in:

  • 3.4.0alpha1 (trunk) r67013
Comment by Vjaceslavs Bogdanovs [ 2017 May 18 ]

(38) [A] elementid is returned even if it was not requested.

{
    "output": "name",
    "selectSelements": [
        "label"
    ]
}

Result:

{
    "sysmapid": "2",
    "selements": [
        {
            "label": "New element",
            "elementid": "0"
        },
        {
            "label": "New element",
            "elementid": "0"
        },
        {
            "label": "test {HOST.NAME}",
            "elementid": "10084"
        },
        {
            "label": "DEMO",
            "elementid": "4"
        }
    ]
}

oleg.egorov RESOLVED in r68287

iivs CLOSED

Comment by Natalja Romancaka [ 2017 May 25 ]

(40) [F] For non-trigger map element (host, host group) not displayed most critical trigger with most recent problem, only number of problems. “Number of problems and expand most critical one” in “Display problems” selected.

iivs RESOLVED in r68926

oleg.egorov CLOSED

Comment by Natalja Romancaka [ 2017 May 25 ]

(41) [F] For trigger map element not displayed most critical trigger
Steps to reproduce:
1. Create a map
2. Select “Number of problems and expand most critical one” in “Display problems”
3. Create trigger element on the map constructor
4. Add three triggers with different severity
5. Make triggers in problem state (start with highest severity)
Expected result: on map view displayed trigger with highest severity
Result: displayed last problem with lowest severity

iivs RESOLVED in r68924

oleg.egorov CLOSED

Comment by Natalja Romancaka [ 2017 May 26 ]

(42) [F] doesn't work label position
Steps to reproduce:
1. in map properties select Icon label location as Top
2. add element on the map constructor (element Label location as Default)
Expected result: label position - top
Actual Result: label position - bottom

vjaceslavs RESOLVED in r68933

iivs CLOSED with minor fix in r68939

Comment by Anna Kucenko (Inactive) [ 2017 May 26 ]

(43) [F] Change element type from trigger to host - host value has lost
Steps to reproduce:
1. Create element with type trigger, update it and return to maps list
2. Open map and change element type to host, save and return to maps list
3. Open map

Miks.Kronkalns RESOLVED in r68928

iivs CLOSED

Comment by Natalja Romancaka [ 2017 May 26 ]

(44) [F] Link colour between elements not changing, if trigger in problem state
Steps to reproduce:
1. Create map
2. Create two elements on the map constructor
3. Select two elements and add link
4. Add trigger to Link indicator (link problem colour - red, link ok colour - green)
5. Make trigger in problem state
Expected result: Link red colour
Actual Result: Link green colour

vmurzins RESOLVED in r68932

oleg.egorov CLOSED

Comment by Natalja Romancaka [ 2017 May 29 ]

(45) [F] needs more space between the button Add and before input, like in another places

oleg.egorov Related to (12). CLOSED

Comment by Natalja Romancaka [ 2017 Jun 01 ]

(46) [AF] after host group elements creation, in map constructor appears two icons instead one

        "name": "API map",
        "width": 800,
        "height": 600,
        "selements": [
            {
                "elements": [
                    {"groupid": "4"}
                ],
                "elementtype": 3,
                "iconid_off": 151,
            	"elementsubtype": 1
            }
        ]

Result:

Miks.Kronkalns RESOLVED in r68934
Proposed solution makes following changes: if selement with type 'host group' is created with 'areatype' set to 'fit to map' and size of selement is not set, then the size is inherited from map (since it fits to map).

Currently this is done only if user has no specified width and height. Probably this should be done always when areatype == 'fit to map'.

If proposed solution is good, here documentation must be changed: https://www.zabbix.com/documentation/3.4/manual/api/reference/map/object
Default selement width and height is not a 200 anymore. Now it depends on selement type.

vjaceslavs Problem with a proposed solution is that all maps created prior this fix will be still broken. I suggest to add extra check in JS and to leave API logic as it is now.

palivoda Please add check to JS.

vjaceslavs Reverted API changes, added JS check. RESOLVED in r68940

oleg.egorov] CLOSED with minor fix in r68943

Comment by Oleg Egorov (Inactive) [ 2017 Jun 08 ]

Available in pre-3.4.0alpha1 (trunk) r69036

Comment by Oleg Egorov (Inactive) [ 2017 Jun 15 ]

(47) [D] Updated API documentation:

Updated XML documentation:

iivs CLOSED

Generated at Sat Apr 27 02:17:21 EEST 2024 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.