[ZBXNEXT-821] Allow to manage items and trigger (created by LLD) like for the templated ones. Created: 2011 Jun 18 Updated: 2016 Sep 19 Resolved: 2016 Aug 05 |
|
Status: | Closed |
Project: | ZABBIX FEATURE REQUESTS |
Component/s: | Frontend (F) |
Affects Version/s: | 1.9.5 (alpha) |
Fix Version/s: | 3.2.0alpha1 |
Type: | Change Request | Priority: | Major |
Reporter: | Oleksii Zagorskyi | Assignee: | Unassigned |
Resolution: | Fixed | Votes: | 84 |
Labels: | lld, usability | ||
Remaining Estimate: | Not Specified | ||
Time Spent: | Not Specified | ||
Original Estimate: | Not Specified |
Issue Links: |
|
Description |
Need to do the key part as link for allow to edit some item parameters (like for the templated item). The same for trigger. I can't find a reasons why it's disallowed (or it's not performed yet?). It's discrimination regarding how this allowed for the templated items and triggers !!! |
Comments |
Comment by Oleksii Zagorskyi [ 2012 Jun 13 ] |
|
Comment by Oleksii Zagorskyi [ 2012 Jun 13 ] |
Implementation of this feature would give green light to implement another one - ZBXNEXT-824 |
Comment by richlv [ 2012 Aug 01 ] |
ability to get that form with editable fields is a bug, though |
Comment by Oleksii Zagorskyi [ 2012 Sep 24 ] |
It turned out that editing or deleting LLD graphs possible by using API added: This is a true at least for 2.0.3 and 2.0.4rc1-r31147 added: |
Comment by Oleksii Zagorskyi [ 2013 Dec 26 ] |
ZBXNEXT-1601 asks almost the same but for limited operations. |
Comment by Oleksii Zagorskyi [ 2014 Mar 05 ] |
|
Comment by Gergely Czuczy [ 2014 Mar 24 ] |
Triggers generated by templates should be editable to some extent. Like being able to classify their severity on each host is essential. For an example, on a switch the LLD templates are unable to determine a given port's severity and the administrator should classify the ports' triggers after the device is discovered. |
Comment by Ivan Lezhnjov IV [ 2014 Jun 24 ] |
I agree with Gergely Czuzcy. The big problem is that I, as a user, cannot select in Zabbix front end LLD items and triggers to perform actions on them. E.g. to disable a dozen of items in one click. It makes working Zabbix extremely uncomfortable, and in some cases plain unbearable. The whole concept of "prototype thousands of items that you later cannot modify, until they're no longer discovered and removed at a set interval" is plain wrong. Better than nothing, sure.. but... is basically unmanageable. We're dealing often with hundreds of thousands of prototyped items and it is our luck we rarely needed to make massive modifications thus far.. but something tells me that is going to change soon as our monitoring gets more and more specific for each host that we monitor. A simple effort like raising a threshold a bit for a single type of a check (e.g. a duration of a SQL query in each database) can demand a disproportionate amount of time. So, we might have 10 databases in a cluster, that's going to be about 10 items and triggers pairs. If we need to either modify a threshold or disable/enable these triggers we need to process them one by one, manually. That is, this doesn't scale AT ALL. It all works well if you have a lot of hosts that are very similar in configuration, as soon as you need to make specific changes for selected hosts based off mainly templated set of items and triggers.. life becomes hell From a user's perspective it is a disaster. I have objects that I cannot manage.. all while in contrast to a pretty flexible UI that allows to go into a great detail of configuration. What's confusing me as a user even more is that I can pretty much do whatever I please with templated items. Which exacerbates the feeling that Zabbix is just stupid in this aspect. So, I naturally assume that LLD objects will be as easy to manipulate but in reality managing them becomes next to impossible unless all I need to do is prototype objects in bulk and don't need to modify them in any way. You see the problem is pretty insidious. If I disable a prototype of a trigger, the objects that were previously already created off of this prototype will never become disabled either. So, LLD at its current state is good only for bulk creation of items. Which is a great functionality, but all its positive value is destroyed by realization that one cannot do much with all those array of objects. I've just talked to people in #zabbix and LzrdKing and pidzero at least share this feeling of despair. It's incredible that Zabbix is at 2.4 these days and yet such a basic UI functionality hasn't been implemented it! We sure appreciate all the hard work community puts into development of Zabbix, but let's face it this particular aspect has been neglected for too long. I cannot stress enough how big of a problem it is from a user's perspective. It's an extremely limiting obstruction to managing objects in Zabbix. It turns the simplest of actions into drudgery and pushes people to commit suicides when they have to deal with hundreds of such prototyped items. Save some lives, fix it! Please! |
Comment by Marc [ 2014 Jun 24 ] |
As for individual overwriting of thresholds / user macros in triggers, |
Comment by Andrey Melnikov [ 2014 Jun 25 ] |
Dirty and easy fix - search in file include/views/configuration.item.list.php line
$checkBox->setEnabled(empty($item['discoveryRule']));
and comment/remove it. |
Comment by Marc [ 2014 Jul 17 ] |
|
Comment by Volker Fröhlich [ 2014 Oct 13 ] |
For SNMP, please allow to see the resolved SNMP OIDs too! Right now you can only see the item name, which is not necessarily related to the OID. |
Comment by Janne Korkkula [ 2014 Dec 16 ] |
I actually don't like the idea of editing discovered, volatile items, there are too many ways to lose the precious local modifications. For adjusting tresholds, there's no need to edit items (at least in 2.2.6). Define a macro (f.ex. {$TRIG_FS_WARN}=80) in the template with the discovery rule, override the value in the host's configuration when required and use it in trigger names and expressions. Instant happiness. Free space less than {$TRIG_FS_WARN}% on {#FSNAME} {Template OS Linux:vfs.fs.size[{#FSNAME},pfree].avg(#3)}<{$TRIG_FS_WARN} A way to set the trigger severity value with a macro could be a workable solution for the other half of this request and might even prove useful elsewhere. |
Comment by xanadu dm [ 2015 May 22 ] |
Using Zabbix 2.4.5 and struggle with this issue as well. |
Comment by Vincent Demers [ 2015 Jul 29 ] |
I think phoemix and iliv nailed it. I can't fathom why this issue has not been resolved since 2011. For anybody doing serious monitoring, LLD is useless if you cannot tweak the created triggers. Even using host-level macros does not provide the granularity required for advanced scenarios. This was flagged as a "Major" priority in 2011, so really this should be addressed ASAP. Thanks ! |
Comment by richlv [ 2015 Jul 29 ] |
note that your needs might also be satisfied by usermacro/uservariable context - |
Comment by Vincent Demers [ 2015 Jul 29 ] |
Unfortunately it does not. I guess we will have to keep disabling some LLD created triggers and manually create new ones with custom values until this get fixed. I might try to facilitate this by using the API to clone the LLD trigger. |
Comment by sulisu [ 2016 Apr 29 ] |
addition to Andrey Melnikov fix v2.5.0 and later $checkBox = (new CCheckBox('group_itemid['.$item['itemid'].']', $item['itemid'])) ->setEnabled(empty($item['discoveryRule'])); It seems that comment/remove will break the page. So i change the ['discoveryRule'] to ['discoveryRule_removecheck'] and it works. I recommended only to bulk enable/disable operation only with this fix, not to mass update the inner property of item. That maybe the reason why zabbix not implement it themselves. |
Comment by Andrey Melnikov [ 2016 Apr 29 ] |
Change ->setEnabled(empty($item['discoveryRule'])); to ->setEnabled(1); |
Comment by Oleksii Zagorskyi [ 2016 Apr 29 ] |
Guys, don't spend your "coding" time here too much. |
Comment by Ivo Kurzemnieks [ 2016 May 20 ] |
(1) Translation string changes: Strings added:
Strings deleted:
gunarspujats CLOSED |
Comment by Ivo Kurzemnieks [ 2016 May 20 ] |
RESOLVED in svn://svn.zabbix.com/branches/dev/ZBXNEXT-821 |
Comment by Alexander Vladishev [ 2016 May 23 ] |
(2) Cannot create/update graph prototype Cannot set "flags" for graph prototype "Traffic on interface {#IFNAME}". Cannot update "flags" for graph prototype "Traffic on interface {#IFNAME}". iivs RESOLVED in r60255 sasha CLOSED |
Comment by Alexander Vladishev [ 2016 May 23 ] |
(3) Take a look at my changes in r60243 and r60244 iivs Thanks! |
Comment by Gunars Pujats (Inactive) [ 2016 May 27 ] |
(4) Coding style 2. triggers.php: 3. include/classes/api/service/CTrigger.php 4. include/views/configuration.triggers.edit.php 5. items.php:728 - not optimal realizations, getting same data for each item gunarspujats 1., 2., 3. and 4. RESOLVED in r60378 sasha fixed update of items, triggers and trigger prototypes in r60492, r60493, r60494, r60495, r60499 and r60514. RESOLVED gunarspujats CLOSED |
Comment by Gunars Pujats (Inactive) [ 2016 Jun 06 ] |
Tested |
Comment by Alexander Vladishev [ 2016 Jun 06 ] |
Available in pre-3.1.0 (trunk) r60538. |
Comment by Alexander Vladishev [ 2016 Jun 06 ] |
(5) Documentation API documentation updated. martins-v Updated documentation sections:
RESOLVED sasha Old functionality was not changed! Information about it can be removed from Upgrade notes. REOPENED martins-v The specification, however, lists 'Upgrade notes', too. Should we ignore it? sasha I removed 'Upgrade notes' from specification. martins-v Thanks, RESOLVED sasha CLOSED |
Comment by Natalja Romancaka [ 2016 Jul 14 ] |
(6) [F] Cannot full clone template with graph prototype, for example "Template OS Linux" Cannot set "flags" for graph prototype "Network traffic on {#IFNAME}". [templates.php:313 → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → CDiscoveryRule->copy() → CDiscoveryRule->copyDiscoveryRule() → CDiscoveryRule->copyGraphPrototypes() → CGraphGeneral->create() → CGraphPrototype->validateCreate() → CGraphGeneral->validateCreate() → CApiService->checkNoParameters() → CApiService::exception() in include/classes/api/CApiService.php:790] iivs RESOLVED in r61051 gunarspujats CLOSED |
Comment by Ivo Kurzemnieks [ 2016 Jul 15 ] |
Fixed in pre-3.1.0 (trunk) r61061 |