[ZBXNEXT-8599] Need enable/disable host/triiger/item/action permissions only with SUPER ADMIN user, dropdown in items tags based on data mandory field Created: 2023 Jul 26  Updated: 2023 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.4.4
Fix Version/s: None

Type: New Feature Request Priority: Blocker
Reporter: krishan Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

centos 8



 Description   

Require trigger/host/item/action enable-disable functionality limited to super admin only Require to create mandatory fields in actions Require part of action to be controlled by Super Admins Require Horizontal scalling






[ZBXNEXT-8875] Load Javascript modules in Javascript item Created: 2023 Dec 05  Updated: 2023 Dec 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 7.0 (plan)
Fix Version/s: None

Type: Change Request Priority: Blocker
Reporter: Anas Al-Jassem Assignee: Andris Zeila
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

 

Please i would like to use JavaScript module @Azure/identity

This cant be load as i understood. Zabbix server is using Duktape 2 which is very limited Javascript engine.

Can you please add this to next release?

I need this to monitor Azure resource authenticating to Azure through Virtual machine identity instead of Service Principal.

 

Kind regards,

Anas



 Comments   
Comment by Anton N. [ 2023 Dec 05 ]

Yes, it will very useful feature, indeed

Comment by Ben Langers [ 2023 Dec 05 ]

Oooh, sounds good! +1!





[ZBXNEXT-8698] Frontend to Server communication encryption Created: 2023 Sep 12  Updated: 2023 Dec 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.21, 6.4.6, 7.0.0alpha4
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Frontend communicates with Server without encryption (tasks, history.push, etc...), this makes installation with dedicated Frontend/Server insecure and non-compliant to such things like PCI-DSS.

Provide the way to configure encryption between Frontend and Server.






[ZBXNEXT-8720] Trigger Prototype: Add mass update for the current status ,apply on all hosts Created: 2023 Sep 21  Updated: 2024 Feb 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.5
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Cesar Inacio Martins Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: template, triggerprototypes
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File trigger prototype.feature request.png    

 Description   

We have a ton of hosts with a template, where we have made a lot of adjustments, disabling few triggers on the template, where these triggers already have been created on the hosts.
These hosts already used this template for months, with considerable historical data.

However, there is no way to force on one command to mass update all hosts which use this template to enable/disable one or more trigger.

This behavior isn't compatible with the "template" idea, where you should have a unique point of maintenance and which is they propose, write on the documentation : 
"The job of templates is to speed up the deployment of monitoring tasks on a host; also to make it easier to apply mass changes to monitoring tasks. Templates are linked directly to individual hosts."

Request of new feature : 
On trigger prototypes screen , at bottom of the list where we have the buttons "Create Enabled" "Create disabled" "Mass update" "Delete"  .

Two options for implementation: 

1) add two more buttons: "Enable current" , "Disable current" , which will enable or disable all the status of the triggers selected on all hosts where theses prototypes were used.

2) do the same, but into with the option into the "mass update" screen.

 

 






[ZBXNEXT-9009] Automatic monitoring of discovered hosts Created: 2024 Feb 12  Updated: 2024 Feb 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Roman Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It is necessary to add to the templates the ability to add host discovery rules, which will allow LD rules to detect components that zabbix knows how to monitor.

For example: uname -a > answer: Linux Zabbix-Prom-Debian 6.1.0-17-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.69-1 (2023-12-30) x86_64 GNU/Linux, so zabbix knows that this is a link and can add Linux monitoring to this host itself. 
Either: SNMP 1.3.6.1.2.1.1.1. will respond: Cisco Router, so you need to monitor it as a Cisco Router.

another example:
root@Zabbix-Prom-Debian:~# service --status-all
 [ + ]  apache-htcacheclean
 [ + ]  apache2
 [ + ]  apparmor
 [ - ]  console-setup.sh
 [ + ]  cron
 [ + ]  dbus
 [ - ]  hwclock.sh
 [ - ]  keyboard-setup.sh
 [ + ]  kmod
 [ + ]  mariadb
 [ + ]  networking
 [ + ]  procps
 [ - ]  rsync
 [ + ]  snmpd
 [ + ]  ssh
 [ + ]  udev
 [ + ]  zabbix-agent
 [ + ] zabbix-server
zabbix knows that apache is installed and starts monitoring apache, cron, ariadb, etc.






[ZBXNEXT-9017] upgrade SO rhel7 - zabbix server no levanta Created: 2024 Feb 14  Updated: 2024 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.0.26
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: lucas anibal di pietro Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: crash
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

rhel7


Attachments: Text File parches de SO 09012024.txt    

 Description   

el zabbix server da este error cuando se atualizan parches del SO y se cae y luego no levanta.

adjunto lista de parches que se aplicaron y salida de errores.

 

362188:20240109:132141.192 ================================
362188:20240109:132141.192 Please consider attaching a disassembly listing to your bug report.
362188:20240109:132141.192 This listing can be produced with, e.g., objdump -DSswx zabbix_server.
362188:20240109:132141.192 ================================
362074:20240109:132141.208 HA manager has been stopped
362073:20240109:132141.241 syncing trend data...
362073:20240109:132141.242 syncing trend data done
362073:20240109:132141.266 Zabbix Server stopped. Zabbix 6.0.4 (revision 3d787ff402e).






[ZBXNEXT-6843] Zabbix integration with Prometheus Alertmanager Created: 2021 Aug 20  Updated: 2023 Sep 11

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F), Server (S), Templates (T)
Affects Version/s: 6.0 (plan)
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Aleksandre Sebiskveradze
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Kubernetes/Prometheus


Issue Links:
Causes
Duplicate

 Description   

Please provide official integration out of the box for Prometheus AlertManager: alerts/items//triggers/hosts/groups.






[ZBXNEXT-7490] Configuration file error DB type is not set. Created: 2022 Feb 14  Updated: 2022 Mar 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: 5.0.19
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: zaky afham nugraha Assignee: dimir
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot_2.png    

 Description   

i'm using ubuntu 20.04 when i install it then it appears like this "Configuration file error DB type is not set." I need your help!!! how to solve it so I can install zabbix. thank you






[ZBXNEXT-6498] Provide Frontend option to reload Zabbix Server configuration cache and show last cache update time Created: 2021 Feb 09  Updated: 2023 May 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 4.0.28, 5.0.8, 5.2.4, 5.4.0alpha1
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBX-18954 config_cache_reload not working when ... Open
caused by ZBX-18893 Make config files with db password un... Closed
Sub-task
part of ZBXNEXT-3448 Configuration Cache last update time ... Open

 Description   

ZBX-18893/ZBX-18954 - use of the runtime control broken due to the inability to read Zabbix server configuration.



 Comments   
Comment by dimir [ 2021 Feb 09 ]

Would be very useful in addition to show timestamp of last config cache reload: ZBXNEXT-3448.

<asitals> This could be added as an internal check.

Comment by Alexei Vladishev [ 2023 May 17 ]

I do not think that this functionality is needed after introduction of the instant configuration cache update. edgar.akhmetshin, would you mind if we close it?





[ZBXNEXT-7986] Compose trigger URL for popup using data when event created Created: 2022 Sep 21  Updated: 2022 Sep 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.8
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Roman Rajniak Assignee: Valdis Murzins
Resolution: Unresolved Votes: 5
Labels: triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

On Dashboard or on Problems page we using popup on problem.name link to redirect on proper URL composed from item , when event was created.
If we have trigger with PROBLEM event generation mode= Multiple and trigger have more than one event in PROBLEM state then on dashboard are displayed all PROBLEM occurences.

We need compose trigger URL with values when the event was created, like it is prepared in Trigger.name or in Operational.data fields or TAG values.

Till now for popup link Trigger URL can use only last item value and not original value. If Trigger URL can use TAG value from prolem/event , we can prepare that value using regsub before popup is builded in GUI, Or zabbix need to create new field like opdata in evens but for URL in problems.






[ZBXNEXT-8336] Add additional Host Groups to dependent hosts (e.g. VMs) Created: 2023 Mar 08  Updated: 2023 Oct 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.2.7, 6.4.0
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Norbert Püschel Assignee: Andris Zeila
Resolution: Unresolved Votes: 7
Labels: host, hostgroup, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Server; Host Groups; dependent host



 Description   

It is currently still not possible to add more Host Groups to dependent hosts derived from LLD; e.g. VMware Hypervisors and VMs. Unfortunately, that is a rather big restriction to using VMware LLD as main discovery method; these dependent host will only have those Host Groups specified in the template. As user access rights are tied to host groups, this makes dependent host useless in environments where different access rights are crucial.



 Comments   
Comment by Shane Arnold [ 2023 Oct 26 ]

+1 for this. Due to design I have an implementation that needs both granular RBAC, custom host groups and also discovery of the majority of their hosts via VMware.





[ZBXNEXT-7817] How to set multiple macros HOSTS in Nginx by http template Created: 2022 Jun 21  Updated: 2022 Jun 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Vinod Gole Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello Team,

We want to setup multiple HOST Servers in Nginx by http template.

Purpose:-

We don't want to install agent on remote servers.

Manually we want to set the Macros HOST value in templates Or Host Macros.

In the Nginx by HTTP template – Items – Nginx: Get stub status page

We want to change the "URL" -.
{$NGINX.STUB_STATUS.SCHEME}://{$HOST.LIST<1-10>}:{$NGINX.STUB_STATUS.PORT}/{$NGINX.STUB_STATUS.PATH}

We already set the Macros template.

$HOST.LIST1   = dev0

$HOST.LIST2   = stag0

$HOST.LIST3   = UAT0

Single URL to execute multiple HOSTS.

Anyone please help me for this scenarios.

 

 






[ZBXNEXT-7744] Redis SSL Support for Zabbix Agent 2 Created: 2022 May 26  Updated: 2023 Dec 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent2 plugin (N)
Affects Version/s: 6.0.4
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Parva Assignee: Aleksandre Sebiskveradze
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File Redis_zabbix_error-1.jpg    

 Description   

Hi,

I am unable to get Redis data for Redis parameters after SSL.
For Non-SSL, all the data are being fetched.
Can you help me with the parameter to define for fetching data after Redis SSL?
The installed Redis version is 6.2.3 and in Redis, TLS authentication is enabled with certificates.



 Comments   
Comment by James Howe [ 2023 Dec 14 ]

As a workaround, you could configure redis to also listen on a local unix socket, and have zabbix connect via that.





[ZBXNEXT-7655] Provide HANodeName with dynamic value like UID (ISO/IEC 9834-8 and as ITU-T X.667) and automatic node cleanup Created: 2022 Apr 28  Updated: 2024 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.4rc1, 6.2.0alpha2
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: Zabbix7.2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

HA implementation requires HANodeName to be set manually, such behaviour requires additional handlers/steps to use in cloud/container environments.

Also current HA is mostly stateless, if node is gone it should be removed until appeared once again.






[ZBXNEXT-7538] Add submacro {HOST.DNS.*} Created: 2022 Mar 07  Updated: 2022 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 5.0.22rc1, 6.0.2rc1, 6.2.0alpha1
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be helpful reuse some parts of

{HOST.DNS} macro with some sub macro
For example:

{HOST.DNS}

 == host.domain.local


{HOST.DNS.SHORT}

 == host


{HOST.DNS.DOMAIN}

 == domain.local






[ZBXNEXT-4293] Set trigger for the end date field of the HW warranty in the inventory Created: 2017 Dec 22  Updated: 2018 May 27

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.0alpha1
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Carlos Eduardo do Nascimento Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: frontend, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Capturar.PNG     PNG File HW expiry item.PNG     PNG File HW expiry trigger.PNG    

 Description   

Set trigger for the end date field of the HW warranty in the inventory.
This will allow as the end of an equipment warranty is approached, an alert can be generated about the problem.



 Comments   
Comment by Ingus Vilnis [ 2018 Jan 02 ]

This can be done already with the existing functionality.
You need a trapper item and a trigger. No manual entries in the HW inventory field though.

  1. Create a trapper item.
  2. Make sure you send the item value as UNIX timestamp and display the unit as unixtime
  3. Create a trigger for this item which takes the unixtime value of the trapper item and compare it to the current time. Then alert if the change is less than your desired time period in seconds. As example 14 days.
    {Template ZBX Test:hw.warranty.last()} - {Template ZBX Test:hw.warranty.now()} < 1209600
    

Comment by Valdis Murzins [ 2018 Feb 19 ]

Closing, as solution to the problem is proposed.

If the problem is still present, please, reopen the issue.

Comment by Carlos Eduardo do Nascimento [ 2018 May 27 ]

Ok, porém de onde você está coletando o vencimento da garantia do Hardware?

Não seria mais fácil, coletar esta informação do inventário?

Em vez de popular o inventário automáticamente, esta informação é populada manualmente, e usa esta informação para gerar alertas no próprio zabbix.

 
Okay, but where are you collecting the warranty expiration from Hardware?

Is not it easier to collect this inventory information?

Instead of populating the inventory automatically, this information is populated manually, and uses this information to generate alerts in zabbix itself.





[ZBXNEXT-3998] Web Scenarios Utilizing NTLM Authentiction --- Unmasked passwords Created: 2017 Jul 26  Updated: 2017 Jul 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 3.2.6
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Brad Turnbough Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos 7 / Zabbix 3.2.6


Attachments: PNG File Screenshot from 2017-07-26 10-25-06.png    

 Description   

Whenever I create a web based scenario and that scenario utilizes a NTLM username and password, the password is not obfuscated with "*'s" and is also not encrypted in the database in any way. This is a HUGE security concern / vulnerability.



 Comments   
Comment by Marc [ 2017 Jul 26 ]

See ZBXNEXT-2461, ZBXNEXT-2957. resp. ZBXNEXT-1660
Well, I'd opt for the latter, in fact as described in this comment .





[ZBXNEXT-5189] Better logging capabilities for loadable modules Created: 2019 Apr 23  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 4.4.0alpha1
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Glebs Ivanovskis Assignee: Michael Veksler
Resolution: Unresolved Votes: 6
Labels: loadablemodule, troubleshooting
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Imagine you are a loadable module developer.
  2. Imagine your module does some complex logic. You want to log a few messages to make decisions made by your module visible and help your users to troubleshoot problems. Obviously, you don't want to log these messages every time code of your module is executed.

Available solutions:

  1. (Ab)use zabbix_log().
    Pros Cons
    No need to implement module-specific logging mechanism. Zabbix does not encourage use of internal Zabbix functions in modules.
    Zabbix synchronizes writes from different processes. Potential API and ABI compatibility issues.
    Log messages have the same format as Zabbix messages (e.g. time stamp, etc.).
    Module is aware of logging level configured for Zabbix including runtime control.
  2. Write to stdout and stderr (Zabbix redirects them to the log file).
    Pros Cons
    Simple as printf(). Need to synchronize writing from different processes.
    Legal. No API or ABI concerns. Need to implement module's own logging level configuration.
      No way to control logging level in runtime (or too difficult to implement it).
      No time stamps (or need to implement them).
  3. Module's own log file.
    Pros&Cons are similar to previous option with even more burden for module developer. Life is simply too short to go this way. And the end user will have two log files to look at and correlate, which isn't good.

Proposed solution:
When module provides optional zbx_module_set_log_level() function, Zabbix should tell the module on startup which DebugLevel was set in the configuration file. Whenever user changes logging level using runtime control options, Zabbix will notify module about that. This will allow modules to implement runtime control of logging level even if module uses simplistic printf()-like logging.

In addition to that Zabbix should set a callback which will be used by the module to put messages into Zabbix log file. This callback should take care of time stamps and log file mutex. Callback should be provided to the module if the latter provides optional zbx_module_set_log_callback() function.






[ZBXNEXT-5159] Do we have any monitoring template for BigSwitch Cloud Fabric Monitoring? Created: 2019 Apr 02  Updated: 2019 Apr 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.5
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Jai P Sharma Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Do we have any monitoring template for BigSwitch Cloud Fabric Monitoring? Unable to find any... so help.






[ZBXNEXT-5035] BMC Ticketing Integration Created: 2019 Feb 13  Updated: 2019 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: shiva vajjala Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

BMC Ticketing Integration



 Description   

Hi ,

Is there any architecture diagram to integrate Zabbix with BMC remedy Ticketing Integration ..

especially BMC running on-prem

 

Need a details how ticket gets created in the on -prem BMC remedy instance ..

 

Thanks..

 



 Comments   
Comment by shiva vajjala [ 2019 Feb 13 ]

https://www.zabbix.org/wiki/Docs/specs/ZBXNEXT-2033

Already went through this document , However i am interested in the Communication between Zabbix and on-prem BMC ...

Comment by dimir [ 2019 Feb 14 ]

Some work was done here: https://support.zabbix.com/browse/ZBXNEXT-2033 but it's unfinished. Feel free to vote.





[ZBXNEXT-5085] Report an error if regexp output template references non-existing or unmatched groups Created: 2019 Mar 02  Updated: 2023 Sep 11

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Server (S)
Affects Version/s: 4.2.0beta2
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Glebs Ivanovskis Assignee: Konstantins Prutkovs
Resolution: Unresolved Votes: 0
Labels: logmonitoring, macrofunction, preprocessing, regex, troubleshooting, usability, validation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Documentation (e.g. here) says:

\N (where N=1…9) escape sequence is replaced with Nth matched group (or an empty string if the N exceeds the number of captured groups).

I would like to urge Zabbix to change this behaviour and raise errors instead of silently replacing escape sequences with emptiness. This will help prevent user errors like ZBX-15743. See this comment to get the idea of how small was the mistake... Then scroll the whole issue to get the idea of how much time and how many people it took to troubleshoot.

P.S. This change can theoretically break a lot of existing items, macro functions, preprocessing rules, etc. But in practice, I think, it won't. On August 10, 2018 ZBX-13730 introduced a bug in 3.4.13rc1 and 4.0.0alpha10 which caused escape sequence for non-existing or not captured groups to be unpredictable. It was discovered on November 16, 2018 (i.e. three months later) by Zabbix developer (not by users) and respective ZBX-15178 has 0 (zero!) votes. If garbage results caused no trouble, then suggested change in the logic won't cause any troubles as well.






[ZBXNEXT-4864] Zabbix Abnormal traffic flow (emergency) Created: 2018 Nov 19  Updated: 2018 Nov 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: pony Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix_server (Zabbix) 3.4.14
zabbix_proxy (Zabbix) 3.4.14


Attachments: JPEG File 1542630381031.jpg     JPEG File 1542630454950.jpg    

 Description   

Zabbix deployment structure:
Switch(snmpv2) → proxy → Internet
Switch(snmpv2) → proxy → Internet → Server
Switch(snmpv2) → proxy → Internet

When the fault occurs:
zabbix server network has experienced serious packet loss.

phenomenon:
1、proxy log
13995:20181114:005331.315 cannot send heartbeat message to server at "syszabbix.qiniu.io": ZBX_TCP_READ() timed out
13995:20181114:005531.034 cannot send heartbeat message to server at "syszabbix.qiniu.io": ZBX_TCP_READ() timed out
13995:20181114:005731.281 cannot send heartbeat message to server at "syszabbix.qiniu.io": ZBX_TCP_READ() timed out
2、server log
12389:20181114:005629.457 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12389:20181114:005629.457 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12389:20181114:005629.457 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.497 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.497 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.497 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.497 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.497 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.497 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.498 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.498 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.498 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.498 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
12386:20181114:005747.498 failed to accept an incoming connection: connection rejected, getpeername() failed: [107] Transport endpoint is not connected
3、the same clock time appears twice the value.(as shown)
4、the flow chart shows that the flow is too high.(as shown)

Summary of related issues (the following are unresolved issues)
1、https://support.zabbix.com/browse/ZBX-14318
2、https://support.zabbix.com/browse/ZBX-14322

Doubt:
When the zabbix proxy and the zabbix server transmit data, the network has packet loss, and the packet retransmission causes the multiple values to be repeated and accumulated due to some reason.

Remarks:
When the zabbix server network loses packets, not all monitoring items have traffic bursts. The same switch may have a problem with the A port, and the B port is ok.

 






[ZBXNEXT-4698] Recovery Triggers Automatically Created: 2018 Aug 25  Updated: 2020 Oct 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.11
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Chirag Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A

 Description   

I have configured actions for switch port if it goes down. When port goes down it will send me a mail. I have also configured recovery operation so when port comes up it will also send me a mail. My problem is when port goes down it displays PROBLEM and send me a mail. But after some time i got OK mail for the same port but when i check in switch switch port shows still down. What i want to do is when actually port comes up i want my OK/recovery mail to come



 Comments   
Comment by Alex King [ 2020 Oct 23 ]

it sounds like you've only implemented a problem expression and are using the implicit recovery ok expression. Set a separate recovery/ok expression to look explicitly for UP. Take a look at the hysteresis section and I think you'll be able to solve the problem. Also you should consider using recommendations there and for example last(10m) to prevent flapping. You should also use a different time duration threshold for the recovery trigger expression.
see https://www.zabbix.com/documentation/current/manual/config/triggers/expression#hysteresis





[ZBXNEXT-5116] Services - allow use time period selector Created: 2019 Mar 18  Updated: 2022 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.5
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Cesar Inacio Martins Assignee: Valdis Murzins
Resolution: Unresolved Votes: 10
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hi,

At the services page, today we have the option to filter by period and this filter is very limited.

I would like to request an improvement for this filter. 

Preferable for a customizable filter just like the problems filter where we can set the period from / to . 

The reason for this is to allow for this page to become more useful for the IT manager. 

Today my manager request to report every month the availability of our databases, this page perhaps not generate any report could be a perfect solution for me where I get a print from the page, but to keep the track of the exact month to generate the report I have no option unless open it on the last day of the current month and use "this month" period, if I lost this moment I have no way to get this information again.

I would like to use the "Time period select" there.

 






[ZBXNEXT-5015] Capability to integrate with Upper Management System [OSS through NBI] Created: 2019 Feb 07  Updated: 2019 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 4.0.3
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: MAHMUD IBR BENNIS Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I'm trying to integrate ZABBIX with an Upper Management System [OSS] through NBI






[ZBXNEXT-4439] Dramatically improve usability of screens (dashboards) Created: 2018 Mar 21  Updated: 2021 Aug 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Marc Schoechlin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

From a usability perspective the implementation of screen in zabbix is really improvable.
Zabbix users in my organisation are often confused of the screen implementation and ui seperation of screens and host screens.
This lowers the user-acceptance of zabbix in a dramatic way

Zabbix should quickly improve the following things:

  • The favoure screens perspective in the dashboard should also be capable to use "favourite" host screens
  • Slideshows should also capable to use host screens
    (bonus: embed all host screens with a certain name of a hostgroup and switch trough these slides)
  • Screens should be capable to integrate "host screens"
  • The screens perspective should also provide access to host screens
    (i.e. selectable by HostGroup)


 Comments   
Comment by Ben Hanson [ 2018 Nov 02 ]

I didn't give up on Cacti/RRD/MRTG until I learned how maps, screens, graph prototypes and LLD all worked together(which took way to long to discover).

I didn't think screens were of any value until I started mapping and stumbled on the "host screens" context menu item on a map.

At a minimum, the host screens should be exposed on the screens page, similarly to how host graphs are exposed on the graphs page.  Would be as straightforward as adding a "host screens" item to the drop down(Screens, Host Screens, Slide shows), then implementing a host screens filter, again, methodology ripped straight from graphs.

Comment by Michel van Son [ 2020 Feb 03 ]

https://www.zabbix.com/roadmap

The screens functionality will be merged with the dashboards and the screens themselves will be made obsolete.

Comment by Alexei Vladishev [ 2021 May 26 ]

Screens are made obsolete in Zabbix 5.4. Shall we close this ticket?

Comment by Marc Schoechlin [ 2021 May 26 ]

No, in my understanding Host Screens are now called Host Dashboards.
From my point of view the issue is still valid - just replace "screen" with "dashboard".

With Zabbix 5.2 a important feature of regarding host dashboard functionality is broken (ZBX-18831).
This requests describes usability improvments and seems to be of lower priority than this issue

Comment by Alexei Vladishev [ 2021 May 26 ]

scoopex, understood, let's keep it open then!





[ZBXNEXT-3596] Vector graphics for graphs Created: 2016 Dec 08  Updated: 2024 Feb 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Alexei Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 21
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Sprint: Sprint 4, Sprint 5

 Description   

It would be great to implement vector graphs for much better flexibility and quality of rendering for different screen resolutions.



 Comments   
Comment by Marc [ 2017 Mar 06 ]

If this implementation renders the Graph in the Web browser engine on client side, then it would be nice if already fetched values get cached.
hgruber does something like that in the timeSeries widget of his zabbix-d3js-widgets project. There the widget is able to identify missing data and fetches only missing periods from Zabbix (even gaps).

Fetching only missing item data promises to significantly reduce the volume to be queried from the database - what is a weak spot of Zabbix right now. At least when having many users and dashboards resp. screens.

Comment by Dimitri Bellini [ 2018 Mar 29 ]

Hi Guys, what happened to the this implementation for 4.0? https://www.linkedin.com/feed/update/urn:li:activity:6364418508109021184

Comment by Nathan Liefting [ 2021 Jul 30 ]

@dimitri, That's a screenshot from a dashboard so that works.

But definitely would be great to see Latest data and Monitoring Hosts with vector graphs as well!

Comment by Ryan Eberly [ 2024 Feb 03 ]

This is highly needed now that the vector graph for dashboards has been around for a while





[ZBXNEXT-6121] Support for LLD macro in SNMPv3 contextname is not working Created: 2016 Mar 25  Updated: 2023 Sep 11

Status: Postponed
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 4.0.23, 5.0.2
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Jean-Eudes Onfray Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 23
Labels: lld, snmp, snmpv3
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File lld_macro_in_snmpv3_contextname.diff    
Issue Links:
Duplicate

 Description   

I'd like to add support for LLD macro in SNMPv3 contextname item field.

I want to monitor BGP peers in several Avaya Ethernet Routing Switches.

Some of the BGP peers are inside VRF and can only be accessed with the use of specific SNMPv3 contextname. I've created a discovery rule that list all VRF and then all BGP peers inside these. For example:

{
	"data":[
		{
			"{#SNMPVALUE}":"BGP to xx.xx.xx.xx",
			"{#SNMPINDEX}":"1.4.dd.dd.dd.dd.1.4.xx.xx.xx.xx",
			"{#SNMPCONTEXT}":""
		},
		{
			"{#SNMPVALUE}":"In vrf1 BGP to yy.yy.yy.yy",
			"{#SNMPINDEX}":"1.4.dd.dd.dd.dd.1.4.yy.yy.yy.yy",
			"{#SNMPCONTEXT}":"vrf1"
		}
	]
}

Here's a patch against current trunk that should do the job!

Can this feature be included in some next release?

Thanks



 Comments   
Comment by 11Thirty8 [ 2018 Feb 06 ]

I have this need too.

Specifically trying to monitor Checkpoint VS (Virtual Systems) with SNMP LLD via a template.
The list of VS context names (vsid1, vsid2, etc..) is available via SNMPv2, and the discovery rule looks like this:

Name: VS Stats
Type: SNMPv2 agent
Key: vacmContextName
SNMP OID: .1.3.6.1.6.3.16.1.1.1.1.5
SNMP community: {$SNMP_COMMUNITY}

An item prototype then looks like this:

Name: {#SNMPVALUE} - Connections: Current
Type: SNMPv3 agent
Key: fwNumConn.[{#SNMPVALUE}]
SNMP OID: .1.3.6.1.4.1.2620.1.1.25.3.0
Context name: ctxname_{#SNMPVALUE}
Security name: *********
Security level: authNoPriv
Authentication passphrase: ********

This gives nice LLD items on the templated host like this:

Name: VS Stats: vsid1 - Connections: Current
Key: fwNumConn.[vsid1]

Name: VS Stats: vsid2 - Connections: Current
Key: fwNumConn.[vsid2]
etc..

Item status is "Enabled" and shows up in latest data, but no values ever get collected, since the

{#SNMPVALUE} part in "Context name" never gets resolved, and "ctxname_{#SNMPVALUE}

" is instead send to the Checkpoint firewall, which it of course cannot translate to an existing VS context.

I've verified that using a user definable macro indeed does work in the "Context name" field, which does produce valid item data via SNMPv3.

Having the

{#SNMPVALUE}

, and maybe also

{#SNMPINDEX}

, macro resolve properly in the "Context name" field would be very useful.

I hope this usage description might help push the development of this forward.
Thanks in advance.

Comment by Alexander Vladishev [ 2020 Aug 07 ]

I cannot treat this issue as a bug report. Currently Zabbix does not officially support lld macros in the SNMP context field. Moving back to ZBXNEXT project.

Comment by Alexander Vladishev [ 2020 Aug 07 ]

Probably this will be implemented in ZBXNEXT-2072.

Comment by Dimitri Bellini [ 2020 Sep 04 ]

Hi Alexander,

I would encourage the implementation of this feature because is very import for a good "discovery" on most of Network/SAN devices.

Thanks so much





[ZBXNEXT-5164] We need a macro that returns unixtime, to use in HTTP item request/header Created: 2019 Apr 03  Updated: 2023 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: akihiro ito Assignee: Valdis Murzins
Resolution: Unresolved Votes: 11
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-81 It will be good to implement support ... Open

 Description   

I would like to monitor AWS using HTTP agent items.

A get request to AWS requires the "StartTime" :, "EndTime": parameters.

https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html

 

Macros can be used for the Request body parameter of the HTTP agent.
However, there is currently no macro in Zabbix that returns Unixtime.

In order to make a request to AWS periodically with HTTP agent, it is necessary to specify the data period to be acquired by Unixtime, not fixed Request body.

Future or past of specified number of seconds
And I need a macro that returns Unixtime for the current time.



 Comments   
Comment by Alexei Vladishev [ 2022 Jul 13 ]

Note that function fmttime() can be used to format output of {TIME} and {DATE}.





[ZBXNEXT-5117] allow custom time period selector Created: 2019 Mar 18  Updated: 2019 Mar 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.5
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Cesar Inacio Martins Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: filters, frontend, period, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File Capturar.JPG    

 Description   

After migrating my Zabbix from version 3.x to 4.x the time filter selector on graphics and problems become a pain. 

The idea is good but the options are a mess, very confusing pre-set filters and a great resource was removed which is the "window navigation". 

My suggestion for improvement is : 

1) Allow customizing the options shown, this way we can get better use of them. 

This should be allowed at system scope and allow to override at user profile.

The idea is a screen where show all options with the period rule at the front and then allow to edit the description and the rule.

  • Last 2 days : now-2d - now
  • Last 7 days : now-7d - now
  • Last  week : now-7d/w - now-7d/w

2) The "window navigation" option still exists but it works only over the same period selected. 
I mean the buttons "<" and ">" arround of the "Zoom out" text.

In the ZBX v3.x , where there a ruler to set the period filter have options to navigate the window in other space of time, like "1d", this way if I'm looking for a behave in a graphic between 00h-03h and want to check how was the behave of this graphic at the same period one, two, three days ago, isn't possible I need to edit manually the filter which is painful. 

So, my suggestion here is at the same customizable screen requested above, allow to create quick window navigation : 

  • less 1 days : -1d 
  • Less 7 days : -7d
  • Less 1 month : -1M
  • Plus 1 days : +1d 
  • Plus 7 days : +7d
  • Plus 1 month : +1M

 

 






[ZBXNEXT-8437] Zabbix Agent active should support test function Created: 2023 May 09  Updated: 2023 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 13
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Additionally to ZBXNEXT-5200.
It would be great to add support of test function for Zabbix Agent active type of checks. Especially if Zabbix has instant configuration update now on proxies and agents since Zabbix 6.4.






[ZBXNEXT-8363] zabbix6.4 Uses proxy passive mode, resulting in frequent data monitoring failures Created: 2023 Mar 24  Updated: 2023 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.4.0
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: zabbix_1993 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix6.4


Attachments: PNG File image-2023-03-24-16-13-53-957.png    

 Description   

Two zabbix6.4 Zabbix6.4 using proxy passive mode to obtain data from the same proxy often fails。No exception log






[ZBXNEXT-8964] Audit trigger dependencies Created: 2024 Jan 19  Updated: 2024 Jan 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 7.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Rodrigo da Silva Montes Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Audit trigger dependencies is not supported yet, but it's a very important feature that is needed to know who is creating or removing dependencies between triggers.






[ZBXNEXT-8930] Add item tag filtering for Svg Graph Created: 2024 Jan 10  Updated: 2024 Jan 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.10, 7.0 (plan)
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Ryan Eberly Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be very useful to allow for item tag filtering for the Svg Graph widget. In one of my setups we have a lot of layers of information that can be presented in many aggregated or individual views.

In one case, we have a processing flow that contains many processes and those processes contain many threads. We monitor the CPU usage of specific threads to identify which host, flow, process and thread is the cause of backpressure. For these items we have really long names in this format:

CPU Usage - <flow> - <process> - <thread>

A name like the one above is very difficult to read and understand in the Svg Graph. It would be much better to be able to set the title of the graph widget with the values of <flow> <process> and <thread> and just have the name "CPU Usage" show up in the legend or hintbox along with the host. 

 

I have plenty of other examples, if you need them, but I think this is a necessary change for the Svg Graph widget as more visualization features are added to Zabbix in the upcoming 7.0 release.

 






[ZBXNEXT-8419] MongoDB monitor for Unauthenticated user Created: 2023 Apr 27  Updated: 2023 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.4.2
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Duranta Patra Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: MongoDB, zabbix-agent2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu


Attachments: PNG File image-2023-04-27-11-15-40-935.png     PNG File image-2023-04-27-11-18-08-473.png    

 Description   

 

this is the running configuration.



 Comments   
Comment by Duranta Patra [ 2023 Apr 27 ]

@Zabbix Support Team

Comment by alnogoom [ 2023 Sep 11 ]

شركة مكافحة الحشرات هي شركة تقوم بتوفير خدمات للتخلص من الحشرات في المنازل والمؤسسات. تعتمد هذه الشركات على استخدام مبيدات حشرية فعالة وآمنة، وفرق عمل مدربة على أعلى مستوى لتقديم خدماتها بشكل احترافي وفعال. تعمل شركات مكافحة الحشرات على التأكد من عدم عودة الحشرات مرة أخرى بعد إزالتها، وتهدف إلى توفير بيئة صحية وآمنة للعيش والعمل. تعتبر شركات مكافحة الحشرات حلًا مهمًا لمكافحة الأمراض التي تنتقل عبر الحشرات، وتحسين جودة الحياة والصحة العامة.

 

شركة مكافحة حشرات

 

تُعد شركة النجوم في الطائف واحدة من أفضل الشركات في المملكة العربية السعودية في مجال خدمات التنظيف. توفر الشركة أعلى مستويات الجودة في الخدمات التي تقدمها للعملاء، وتعتمد على فريق عمل مدرب ومحترف في هذا المجال. تقدم الشركة خدمات تنظيف المنازل، والمكاتب، والمقاهي، والمستشفيات، وغيرها من المباني. كما تستخدم الشركة أحدث التقنيات والمعدات لتضمن نظافة عالية وصحية في المكان المطلوب. إذا كنت بحاجة إلى خدمات تنظيف عالية الجودة في الطائف، فإن شركة النجوم هي الخيار الأمثل لك.

 

 

شركة تنظيف بالطائف

 

 





[ZBXNEXT-8812] Item Pattern "Select" in Graph Widget Makes Browser Unresponsive Created: 2023 Nov 02  Updated: 2023 Nov 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.23, 6.4.8, 7.0.0alpha7
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Ryan Eberly Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I use Zabbix to monitor a high performance computing environment. The environment is comprised of clusters of many hosts that perform similar functions in parallel. For this reason, there are certain metrics that we monitor that are aggregated on the cluster-level instead of on a per host basis. In Zabbix we use a synthetic host to denote these cluster-aggregated metrics. For some of our clusters we have some synthetic hosts that have 20,000 or more unique items. Some hosts have 50,000 items. In these cases when you click the Select button in the graph widget and filter for one of these hosts the browser times out or becomes unusable.

We need to introduce pagination in some form. I personally think this would be a good time to introduce pagination through scrolling (or infinite scrolling pagination). But any kind of pagination is fine as this will limit the amount of data returned to the user, and prevent browser crashing.






[ZBXNEXT-8242] Support NETCONF/YANG Created: 2023 Feb 01  Updated: 2023 Sep 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 26
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

NETCONF / YANG modules that support subscribing to and receiving the following YANG event notifications:

  • Alarm notifications - ietf-alarms RFC 8632
  • NETCONF base notifications - ietf-netconf-notifications RFC 6470
  • YANG push notifications - ietf-yang-push RFC 8641

Why: network hardware (Huawei, Fujitsu and others like Cisco, Juniper, ExtremeNetworks...) is moving to this protocol to replace SNMP and other tools.



 Comments   
Comment by Nathan Liefting [ 2023 Jun 26 ]

Seems worth to investigate this further, good idea to support this protocol

Comment by Fernando Collado Permuy [ 2023 Sep 29 ]

It would be interesting to start exploring this request since several clients are asking us about this.





[ZBXNEXT-8261] ARM64 virtual appliance Created: 2023 Feb 08  Updated: 2023 Feb 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Appliance (L)
Affects Version/s: 6.0.13, 6.2.7, 6.4.0beta6
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: appliance, arm64
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It is not possible to install virtual appliance or use existing one on ARM64 systems.






[ZBXNEXT-8128] Caused by HA manager Created: 2022 Dec 01  Updated: 2022 Dec 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.0.11
Fix Version/s: None

Type: Epic Priority: Critical
Reporter: qinshihuang Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-12-01-16-43-06-910.png    
Epic Name: The zabbix process cannot be stopped and the machine freezes when the reboot command is executed

 Description   

mysql version:8.0.29

zabbix server version:6.0.11

linux:ubuntu21.10

Stop mysql first before stopping zabbix,Run the "systemctl stop zabbix-server" zabbix-server Process not ending.

Logs are always printed:

cannot stop HA manager: Cannot connect to service "haservice": [111] Connection refused. 

When you run the reboot command, the machine freezes.

HA manager process Always present And the parent process is 1.

Solve by modifying the source code;

The path is "src/zabbix_server/ha/ha_manager.c "

Deleted line 1903 resolved("while")

But it is not known whether there will be other effects;

Hope this problem can be fixed in 6.0LTS






[ZBXNEXT-8124] MSSQL By Zabbix Created: 2022 Nov 29  Updated: 2022 Dec 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: mohsen khoram Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

MSSQL


Story Points: 3,388

 Description   

Dear Madam/Sir,

In fact, we decided to use Zabbix for monitoring our MSSQL environment. Therefore, we used Zabbix's official MSSQL template ([ https://www.zabbix.com/integrations/mssql|https://www.zabbix.com/integrations/mssql] ). But I didn't find answers to some important questions in this related.

First: According to this template, is compulsory that we open MSSQL port 1433 toward the Zabbix for monitoring that or not? ( my meaning is, the 1433 port has to open through the network firewall as well as the 10050 port Zabbix agent for retrieving the MSSQL data. ??? )

Second: This template only works with the Zabbix agent or we can use the template based on SNMP Version 3 for getting MSSQL data. ???? Whether there is any possibility to monitor MSSQL through SNMP by Zabbix or not?

Third: the mentioned username and password in this template is compulsory for getting MSSQL data or not? whether there is any possibility to monitor MSSQL by Zabbix without any credentials to MSSQL Server even Read user??

Best Regards



 Comments   
Comment by Justin Morse [ 2022 Dec 15 ]

You probably need to have the SQL Ports open and set up an ODBC connection. You need to set up a login for the ODBC connection, which is what the macro login is for the template, and is what zabbix uses to pull SQL Data. 

1. unixODBC  

2. Driver for ODBC Microsoft ODBC Driver 18 for SQL Server 

Once installed you configure the ini files, for example: 

/etc/odbc.ini

/etc/odbcinst.ini

 

You should be able to test the ODBC connection using isql, for example: 

isql -v <DSN> <username> <password> < should get a successful connection and can now run queries

Zabbix documentation on ODBC monitoring: 

https://www.zabbix.com/documentation/current/en/manual/config/items/itemtypes/odbc_checks





[ZBXNEXT-6105] Bring back "Monitoring -> Web" or make "Monitoring -> Hosts" more useful in regards to Web Monitoring Created: 2020 Aug 04  Updated: 2020 Aug 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.2
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Marco Hofmann Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: Frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 10 Buster amd64
MariaDB 10.4
Zabbix 5.0.2


Attachments: File Module.php     File manifest.json    

 Description   

Steps to reproduce:

  1. Upgrade to Zabbix 5.0.x
  2. See the changes of ZBXNEXT-5694 in Zabbix Frontend
  3. See the Web Navigation became a lot more complicated
  4. See that others feel the same: ZBX-17613 & ZBX-17664

Result & Explanation:
I really(!) like the new Monitoring -> Hosts view, but it has it downsides, as it feels unfinished in some use-cases.
I especially miss the old direct way to navigate to Monitoring -> Web. I find it rather complicated to navigate to it now. I think that it's especially annoying, that when I go from Monitoring -> Hosts to the Web monitoring, it's only possible to navigate there, with a pre-selected filter, from the host that linked me there.

So I now have the following work flow (as an example):

  1. Go to Monitoring -> Hosts
  2. Click the Web link on any host listed there
  3. Switch to the Web monitoring view
  4. Reset the filter, because it filters on the host that got me here
  5. Now I filter for the Hosts Group that I'm really looking for.

This is very counter-intuitive.



 Comments   
Comment by Mickael Martin (Cyres) [ 2020 Aug 13 ]

If you want, I have a small workaround with my module https://framagit.org/zabbix-modules/add-web-in-menu

Comment by Marco Hofmann [ 2020 Aug 16 ]

I'm so in love with you right now mma! That works so great, thank you!
Would you be able to also craft Module(s) to launch items.php and triggers.php directly?
https:/ /FQDN/zabbix/items.php
https:/ /FQDN/zabbix/triggers.php

I tried myself, but I don't understand what I'm doing as:

APP::Component()->get('menu.main')
			->findOrAdd(_('Configuration'))
				->getSubmenu()
					->insertAfter(_('Hosts'),((new \CMenuItem(_('Items')))
						->setAction('items.php'))

Always results in https:/ /FQDN/zabbix/zabbix.php*?action=*items.php

I think instead of setAction it must be something like:

->setUrl(new CUrl('items.php'), 'items.php')

But as I can only write Bash and PowerShell, and not JavaScript and PHP, I have no idea what I'm doing here.

Comment by Valdis Murzins [ 2020 Aug 17 ]

Hi starko,

Your second suggestion was correct:

APP::Component()->get('menu.main')
			->findOrAdd(_('Configuration'))
				->getSubmenu()
					->insertAfter(_('Hosts'),(new \CMenuItem(_('Items')))
						->setUrl(new CUrl('items.php'), 'items.php'))
Comment by Marco Hofmann [ 2020 Aug 17 ]

Hi vmurzins! Thank you very much for your response.
I know it's off-topic, but I tried several variants, but Frontend always stays blank / doesn't load with my module. No matter what I do.
I uploaded my files. Would you mind taking a look?

Comment by Valdis Murzins [ 2020 Aug 17 ]

Hi starko,

My bad. I forgot to add "\" in my example. Here it is fixed:

APP::Component()->get('menu.main')
	->findOrAdd(_('Configuration'))
		->getSubmenu()
			->insertAfter(_('Hosts'),(new \CMenuItem(_('Items')))
					->setUrl(new \CUrl('items.php'), 'items.php')
			);
Comment by Mickael Martin (Cyres) [ 2020 Aug 18 ]

I have added some modules-tips like that : https://framagit.org/zabbix-modules





[ZBXNEXT-6088] vSphere Integrated Containers (VIC) support Created: 2020 Jul 27  Updated: 2020 Jul 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 5.0.2
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: PhotonOS, VIC, VMware
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

VMware added support of the Docker runtime engine to vSphere. It would be great if Zabbix wil lsupport such runtimes out of the box.

https://vmware.github.io/vic/
https://vmware.github.io/photon/






[ZBXNEXT-3528] adding anomaly detection to evaluation function Created: 2016 Nov 10  Updated: 2016 Nov 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.0.5
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: hamid sfandiari Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: analytic, anomaly
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

it's very good to bring anomaly detection which has been developed recently as a plug-in for zabbix to list of evaluation functions like forecast
https://share.zabbix.com/cat-app/app-other/zabbix-anomaly-detector-plugin






[ZBXNEXT-3569] unable to use SMTP Authorization Created: 2016 Nov 22  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.2.1
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Kanstantin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Untitled.png     PNG File Untitled1.png    

 Description   

Hello.
We've faced a problem with SMTP Authentication. It looks like zabbix can't use "AUTH NTLM LOGIN". Zabbix stops TCP session right after "SMTP hello" from SMTP server has arrived. screenshots from wireshark is attached. Could you please have a look?
Thanks in advance.



 Comments   
Comment by Aleksandrs Saveljevs [ 2016 Nov 22 ]

ZBXNEXT-3367 asks for LOGIN support.





[ZBXNEXT-1704] Add sessionid to table "user_history" Created: 2013 Apr 11  Updated: 2014 Dec 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.15
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Cheng Chen Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: user_history
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Demand: Browsing one page in a same user with more than one place(example browser or real person), URL need to be different.
As there is a team in a department, but the team is special: the team has only a user in zabbix web, so the user will be use in different computers and different browers.
My suggest: add sessionid to table "user_history" (relate to userid). Example: SELECT title1, url1, title2, url2, title3, url3, title4, url4, title5, url5 FROM user_history WHERE userid=1 and sessionid=ef7b42f9ae9c247e



 Comments   
Comment by Erwin Vrolijk [ 2014 Dec 08 ]

Just do not use a shared account in your case, but assign every machine/user you want to track an individual user.





[ZBXNEXT-2008] Triggers with user macro not correctly transmitted to script Created: 2013 Apr 24  Updated: 2016 Mar 22

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: actions, trigger, usermacros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 2.0.6, Mysql server


Issue Links:
Duplicate

 Description   

I have follow trigger with User Macro in name:

  • name {$TEST1}
  • User Macro equal {$TEST1} -> gantest
    It is action for this trigger in default message it has - Trigger name: {TRIGGER.NAME.ORIG}
    Action run custom script and as parameter send also macros - {TRIGGER.NAME.ORIG}

    Actually:
    UserParmeter should be transmitted how it is to the script, but it isn't.

All logs see in comments.



 Comments   
Comment by Andrei Gushchin (Inactive) [ 2013 Apr 24 ]

On Server log:

31628:20130424:181051.289 In substitute_simple_macros() data:'/usr/local/share/zabbix/externalscripts/test1.py "Trigger name: {TRIGGER.NAME.ORIG}"'
 31628:20130424:181051.289 End substitute_simple_macros() data:'/usr/local/share/zabbix/externalscripts/test1.py "Trigger name: name {$TEST1}"'
 31628:20130424:181051.289 In zbx_execute_script()
 31628:20130424:181051.289 In zbx_execute_script_on_agent()
 31628:20130424:181051.289 In substitute_simple_macros() data:'10050'
 31628:20130424:181051.289 In get_value_agent() host:'Zabbix server' addr:'127.0.0.1' key:'system.run["/usr/local/share/zabbix/externalscripts/test1.py \"Trigger name: name {$TEST1}\"","nowait"]'
 31628:20130424:181051.289 Sending [system.run["/usr/local/share/zabbix/externalscripts/test1.py \"Trigger name: name {$TEST1}\"","nowait"]
]
 31628:20130424:181051.291 get value from agent result: '1'
 31628:20130424:181051.291 End of zbx_execute_script_on_agent():SUCCEED
 31628:20130424:181051.291 End of zbx_execute_script():SUCCEED
 31628:20130424:181051.291 In add_command_alert()
 31628:20130424:181051.291 In DCget_nextid() table:'alerts' num:1
 31628:20130424:181051.291 End of DCget_nextid() table:'alerts' [29:29]
 31628:20130424:181051.291 query [txnlev:1] [insert into alerts (alertid,actionid,eventid,clock,message,status,error,alerttype,esc_step) values (29,5,14462,1366805451,'Zabbix server:/usr/local/share/zabbix/externalscripts/test1.py "Trigger name: name {$TEST1}"',1,'',1,1)]

If i run script throw zabbix server

12631:20130424:221255.657 In substitute_simple_macros() data:'/usr/local/share/zabbix/externalscripts/test1.py "Trigger name: {TRIGGER.NAME.ORIG}"'
 12631:20130424:221255.657 End substitute_simple_macros() data:'/usr/local/share/zabbix/externalscripts/test1.py "Trigger name: name {$TEST1}"'
 12631:20130424:221255.657 In zbx_execute_script()
 12631:20130424:221255.657 In zbx_popen() command:'/usr/local/share/zabbix/externalscripts/test1.py "Trigger name: name {$TEST1}"'
 12631:20130424:221255.658 End of zbx_popen():6
 12631:20130424:221255.658 In zbx_waitpid()
 13741:20130424:221255.658 zbx_popen(): executing script
 12631:20130424:221255.668 zbx_waitpid() exited, status:0

If I run script throw zabbix agent
Agent log:

 10379:20130424:181051.289 Processing request.
 10379:20130424:181051.289 Requested [system.run["/usr/local/share/zabbix/externalscripts/test1.py \"Trigger name: name {$TEST1}\"","nowait"]]
 10379:20130424:181051.289 Executing command '/usr/local/share/zabbix/externalscripts/test1.py "Trigger name: name {$TEST1}"'
 10379:20130424:181051.290 Sending back [1]

Actually args in script output(simple script write itself args to file):

['/usr/local/share/zabbix/externalscripts/test1.py', 'Trigger name: name {}'

As you can see macros was lost when zabbix server(agent) execute script.

Comment by Andrei Gushchin (Inactive) [ 2013 Apr 24 ]

This problem is related from ZBXNEXT-1643

Comment by richlv [ 2013 Apr 24 ]

what's the deal with usermacros {$TEST1} vs {$TEST} ?

Comment by Andrei Gushchin (Inactive) [ 2013 Apr 24 ]

Sorry it was typo. Actually {$TEST1}

Comment by Alexander Vladishev [ 2013 Apr 25 ]

Andrei,

User Macro equal {$TEST1} -> gantest

This information is related to this problem? I didn't understand it.

Comment by Andrei Gushchin (Inactive) [ 2013 Apr 25 ]

Alexander,

Yes it is value of Macros $TEST1.

Additional information

I change name in trigger to {$$TEST1}
and in script output show this

['/usr/local/share/zabbix/externalscripts/test1.py', 'Trigger name: name {26139TEST1}']
As I inderstand it is number of pid.
Comment by Alexander Vladishev [ 2013 Apr 25 ]

But, the user macro should remain as is here. I.e. all macros from trigger name should be sent to script without any changes.

Comment by Andrei Gushchin (Inactive) [ 2013 Apr 25 ]

I found where was problem.
It need escaping variables with single quote ('), it is not connecting to zabbix.
Finally I use for run script:

/usr/bin/python /usr/local/share/zabbix/externalscripts/test1.py 'Trigger name: {TRIGGER.NAME.ORIG}'

And it is work good

['/usr/local/share/zabbix/externalscripts/test1.py', 'Trigger name: name {$TEST1}']

I'll closing this issue, It isn't bug.

Thanks.

Comment by Andrei Gushchin (Inactive) [ 2013 Apr 25 ]

If expression uses in action throw the script, there is a some problem.

action message:
Trigger name: ''{TRIGGER.NAME.ORIG}''

in server log when send message:
9664:20130425:172034.832 In zbx_popen() command:'/usr/local/share/zabbix/alertscripts/test.sh "123" "PROBLEM: name gantest" "Trigger name: name {$TEST1}"'
shell get it how string with variables, {$TEST1} disappeared 

in output 
Trigger name: ''name {}''

I found it in code and do some changes, and It will work:

alerter.c: 103:
-- zbx_snprintf_alloc(&cmd, &cmd_alloc, &cmd_offset, " \"%s\" \"%s\" \"%s\"",
					send_to, subject, message);
++ zbx_snprintf_alloc(&cmd, &cmd_alloc, &cmd_offset, " \'%s\' \'%s\' \'%s\'",
					send_to, subject, message);

after in server log:
27816:20130425:183849.634 In zbx_popen() command:'/usr/local/share/zabbix/alertscripts/test.sh '123' 'PROBLEM: name gantest' 'Trigger name: ''name {$TEST1}''''

and output
Trigger name: name {$TEST1}

I think need more deep testing about this patch.

Comment by Andrei Gushchin (Inactive) [ 2013 Apr 26 ]

I have tested shells but it was without result. (zsh,tcsh,ksh)
All cases shell think it string with variables.

Comment by richlv [ 2016 Mar 22 ]

what's the current state, is there anything to fix or improve in zabbix ?





[ZBXNEXT-3825] Zabbix 3.2.4 Graph getting Droped Created: 2017 Apr 26  Updated: 2023 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 3.2.4
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: M.ELUMALAI Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File Zabbix G.JPG    
Team: Team A

 Comments   
Comment by richlv [ 2017 Apr 26 ]

this issue tracker is for bugreports. please see http://zabbix.org/wiki/Getting_help for support options





[ZBXNEXT-4301] Confusing status/feature colour Created: 2016 Nov 04  Updated: 2019 Mar 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: design, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently Zabbix uses next colour for availability and features icons:
green - available and feature enabled
red - unavailable and feature disabled

It is good idea to use different colours for status and feature icons/labels.



 Comments   
Comment by richlv [ 2019 Mar 17 ]

This seems to be about the availability icons and the enabled/disabled links, is that correct?
Note that items also get grey for unsupported state.





[ZBXNEXT-3326] PSK/CERTIFICATE in zabbix_sender input-file Created: 2016 Jun 27  Updated: 2016 Jun 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 3.0.3
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Lucian Atody Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

zabbix_sender supports adding multiple hostnames in the file which you can pass as argument to "--input-file". It should also support adding the PSK-identity and PSK on each line for each host.






[ZBXNEXT-1798] adding more trigger severities Created: 2013 Jun 19  Updated: 2015 Jun 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Tad rimk Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: triggerseverities
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello
I need big help.
I'm using zabbix 1.8.13 ver. And when confronted with a problem. I need more severity than those that have zabbix (not classified, Information, Warning, Average, High Disaster), perhaps there is a way to have or make another saverity?
Edit/Delete Message



 Comments   
Comment by Tad rimk [ 2013 Jun 19 ]

How this to do?----> adding more trigger severities triggerseverities

Comment by Oleksii Zagorskyi [ 2013 Jun 23 ]

ZBXNEXT-470 is related





[ZBXNEXT-2573] Zabbix doesn't reset triggers if time was briefly in the future Created: 2013 Feb 22  Updated: 2016 Jun 29

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Timo A. Hummel Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: time
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian Zabbix



 Description   

Our system was briefly in the future due to a clock problem. Now I see some triggers with "host unreachable" hanging, due in Aug 2013 and I can't remove them. I already did the following things:

update triggers set lastchange = unix_timestamp() where lastchange > unix_timestamp();
update items set lastclock = unix_timestamp() where lastclock > unix_timestamp();

I'm a bit lost because this currently renders zabbix unusable.



 Comments   
Comment by Timo A. Hummel [ 2013 Feb 22 ]

I have finally found the issue: It seems that they're disabled until that specific date in august and I cannot change that from the GUI - in fact, I don't even get any info until when the host is disabled! Please include that in the GUI somewhere. The disable_until value should at least be cleared when activating a host.

select host, from_unixtime(disable_until) from hosts;

+----------------------------------------+------------------------------+
| host                                   | from_unixtime(disable_until) |
+----------------------------------------+------------------------------+
| db.rzl                                 | 2013-08-04 07:11:28          |

Comment by Alexander Vladishev [ 2014 Feb 12 ]

Yes, should be cleared all hosts.disable_until*, drules.nextcheck, httptest.nextcheck fields in this case. Zabbix server should be restarted.

I'm closing the issue.

Comment by richlv [ 2014 Feb 12 ]

(1) i'd hate to lose this bit of info, so it's added at https://www.zabbix.com/documentation/2.2/manual/appendix/faq - please, review

sasha I added "proxy" into an answer.

<richlv> thanks, CLOSED

Comment by richlv [ 2016 Jun 29 ]

ZBX-10906 is very similar

Comment by richlv [ 2016 Jun 29 ]

while this issue could be closed, maybe it's worth adding some sanity checks ?
i agree that clock should be correct, but the problem is that having incorrect clock just once penalises the user heavily (and without any feedback on why shit doesn't work).

for example, maybe it's possible to reset "disables" is they are more than some time in the future ?

if not, feel free to close this issue





[ZBXNEXT-6487] Elastic product support is still experimental - drop of support or further development Created: 2021 Feb 03  Updated: 2024 Jan 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Current Elastic problems:

  • slow recording with a large amount of history;
  • for small installations it is not advisable to use elastic in view of the architecture of the Elastic itself - complex setup;
  • no trends - which increases the requirements for the amount of data that needs to be stored;
  • frontend code complexity due to the Elastic support;

Zabbix supports real time data export, which can be imported into the same Elastic, which will make it possible to use the advantages of both systems - operational monitoring and historical data for analytics using Elastic.

Suggestion: drop support in 6.0 or make it work as scalable storage option with fast history syncing.



 Comments   
Comment by MikolajPorczynski [ 2024 Jan 16 ]

Hi! Support for Elastic is still currently marked as experimental. Will support for Elastic be marked as stable for version 7.0 LTS?





[ZBXNEXT-6862] Implement multithreaded compression/decompression of the configuration for Zabbix proxy Created: 2021 Aug 25  Updated: 2021 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 4.0.32, 5.0.14, 6.0.0alpha1
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Sub-task
depends on ZBXNEXT-6863 ZSTD compression library for Proxy/Se... Open
part of ZBXNEXT-6840 Proxy fails to receive large configur... Closed

 Description   

For example, 5Gb configuration spent almost 70-100 seconds to compress with only cpu/memory involved. 

64Gb config cache is allowed according to the documentation starting from 5.0.1 release notes. 

 

 

 






[ZBXNEXT-2726] error for snmp LLD rule: "Invalid SNMP OID: cannot parse expression." Created: 2015 Feb 24  Updated: 2017 May 31

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 2.5.0
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Victor Bashkirov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 6.5


Attachments: JPEG File Screen1.jpg     JPEG File Screen2.jpg     JPEG File Screen3.jpg    

 Description   

Problems with CONFIGURATION OF DISCOVERY RULES.Errors "Invalid SNMP OID: cannot parse expression." In version 2.4 all items normally detected.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Feb 25 ]

According to https://www.zabbix.com/documentation/3.0/manual/introduction/whatsnew300#multiple_oid_support_in_snmp_discovery
there is new syntax for SNMP OID in discovery rule.

But I could not find in documentation (especially on upgrade 3.0 notes) any information that old syntax (just OID) is not supported.
It even "sounds" more like new syntax is supported additionally to existing one:

SNMP discovery item OID value now accepts a discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, …] format (see low level discovery for details). The OID values of existing SNMP discovery rules will be converted to the new format (discovery[{#SNMPVALUE},<old oid value>]) during database upgrade.

https://www.zabbix.com/documentation/3.0/manual/installation/upgrade_notes_300

Spec says:

Existing SNMP discovery rules will be converted to take advantage of the new syntax, old syntax will no longer will be supported.

https://www.zabbix.org/wiki/Docs/specs/ZBXNEXT-1554

I believe we have to:

Comment by Oleksii Zagorskyi [ 2015 Feb 25 ]

(1) also, as we started to use special syntax for OID - why we didn't perform OID syntax check similarly to item key ?

Comment by Victor Bashkirov [ 2015 Feb 26 ]

Thank you Oleksiy. All made in the instructions. Began to work. Good modification. Previously, there was no access to the documentation 3.0.
Спасибо.

Comment by Victor Bashkirov [ 2015 Feb 27 ]

The OIDs to discover are defined in SNMP OID field in the following format: discovery[{#MACRO1}, oid1, {#MACRO2}, oid2, …,].

Comment by richlv [ 2015 Feb 27 ]

sure, but as zalex noted, there are some potential improvements in the documentation and the frontend





[ZBXNEXT-2526] SSH checks do not validate target peer Created: 2014 Oct 21  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Juris Miščenko (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: simplechecks, ssh
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The Zabbix server and proxy, when performing SSH simple checks via the ssh.run[] item employing keys, do not perform the validation and verification of the target peer, which allows for the prospect of a malicious actor on the network to impersonate the target machine and successfully intercept the traffic transported over the secure channel.

A properly designed and performed attack can carry out the theft of information transparently to the monitoring system.

This change requires adding extra steps to the session establishing part of the code for the server/proxy and possibly adding some code to the frontend, if customization is required by the user.

All versions of Zabbix that provide SSH checks are affected.






[ZBXNEXT-4545] Limit item processing errors in log Created: 2018 May 10  Updated: 2018 May 11

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.9
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Duncan Mountford Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBXNEXT-1443 Ability to transform item values befo... Closed

 Description   

We have a case whereby a template used for SMART monitoring covers both HDD and SSD hosts. The items in the template are of type dependant. In some cases, there are items that can't be evaluated, as the value cannot be found (for example Percentage Lifetime Used is only available on SSD's not HDD's.

Each time the item is processed, an error is logged in the Zabbix Server log file, which dumps out the entire output, as follows:-

12689:20180510:114743.525 error reason for "host1-example:uHDD["/dev/bus/0 -d sat+megaraid,0",202]" changed: Item preprocessing step #1 failed: cannot perform regular expression match on value "smartctl 6.4 2014-10-07 r4002 [x86_64-linux-3.16.0-5-amd64] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 200 051 Pre-fail Always - 0
3 Spin_Up_Time 0x0027 182 180 021 Pre-fail Always - 7875
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 15
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0
9 Power_On_Hours 0x0032 055 055 000 Old_age Always - 33251
10 Spin_Retry_Count 0x0032 100 253 000 Old_age Always - 0
11 Calibration_Retry_Count 0x0032 100 253 000 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 15
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 14
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 209
194 Temperature_Celsius 0x0022 115 108 000 Old_age Always - 37
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 100 253 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 100 253 000 Old_age Offline - 0" of type "string": pattern does not match

We are monitoring thousands of hosts with Zabbix, and are seeing the log files hit anything around 5G. Log rotate does take care of this eventually.

Ideas:-

 * Limit the output of a failed item preprocessing to X characters

 * Have the ability to "mute" item errors, either per item or a global option.

 

Thanks as always!

 



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2018 May 10 ]

Another problem with such message is that value comes before the error and if the value is big enough error gets truncated in the DB and can't be seen in the frontend. Error is typically short and way more important for troubleshooting than the value.

Comment by Alexey Pustovalov [ 2018 May 10 ]

It is better to avoid such error messages from your scripts. Zabbix operates with raw values, you must care about script output.

Comment by Glebs Ivanovskis (Inactive) [ 2018 May 10 ]

Dear dotneft, you didn't get the point. Message is:

Item preprocessing step #1 failed: cannot perform regular expression match on value "X" of type "string": pattern does not match

and is produced by Zabbix server. Reporter suggests to limit the printed length of X (which is a raw value before preprocessing).

Comment by Alexey Pustovalov [ 2018 May 10 ]

Sorry, I see, in this case I suppose it is good idea to remove such messages at all. It is really not warning message

Comment by Glebs Ivanovskis (Inactive) [ 2018 May 10 ]

Good idea from dotneft: don't include the raw value in the message at all because it can change quite frequently and will cause lots of unnecessary

error reason for "host:item" changed: ...

in the log file and lots of unnecessary updates of items.error in the database.

Comment by Duncan Mountford [ 2018 May 11 ]

Limiting the value of X would be brilliant, but as Alexey says I think the error is somewhat irrelevant. The error is saying that the regular expression didn't match anything in the string, which....is fine!





[ZBXNEXT-2638] Separate zabbix_agent remote execution into a separate poller Created: 2014 Dec 12  Updated: 2015 Jun 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: tagwolf Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: privilege
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I would like if you separated out the portions of the agent into a new process. (E.g. zabbix_exec, zabbix_agent_execd, or something..) This process would perform the following actions:

  • Run scripts requested from server
  • Process userparameters
  • Remote execution
  • SSH agent commands
  • Basically anything else where the agent executes something provided by a custom command

This would gain large configuration flexibility and security benefits such as "Now being able to...":

  • Filter access by host for this process (Firewall) <--- Critical!
  • Change the listen port for these more dangerous types of agent commands
  • Configure a different set of trusted IP's listed in the config to be allowed to run these more dangerous commands.
  • Configure the daemon user separately for zabbix_agent and zabbix_exec
  • Code greatly simplified in both the zabbix_agent and zabbix_sshd
  • Configure separate sudo, apparmor, SElinux, etc for this process.
  • Separate logging
  • Tunnel this functionality over SSH/SSL very easily
  • Etc..

As we don't have agent ssl or auth, this is IMO a critical security issue as well.

Splitting this code out to it's own daemon might even make it easier for you or someone else to implement server<->agent authentication and encryption.

Thanks for your time guys!



 Comments   
Comment by richlv [ 2014 Dec 12 ]

similar to ZBXNEXT-195





[ZBXNEXT-2894] Support linking host to existing hostgroup by hostgroup prototype Created: 2015 Jul 30  Updated: 2022 Feb 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: hostgroups, lld, prototype
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sub-task

 Description   

Add support to assign hosts created from Host Prototype to a potentially already existing normal hostgroup or existing hostgroup from prototype.






[ZBXNEXT-7657] Add HA quorum and killswitch for database consistency protection Created: 2022 Apr 28  Updated: 2023 Apr 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.4rc1, 6.2.0alpha2
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Edgar Akhmetshin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Sub-task
depends on ZBX-22310 HA nodes should not race between each... Closed

 Description   

Example:

  • Database - Master/Master in different DC;
  • 2 Zabbix Server HA nodes;

If link between DC for some reason fail more than silence interval for the HA node, each HA node will acquire DB as a primary and create two separate instances.

Please add:

  • quorum;
  • killswitch if amount of alive nodes less than defined value;

For example:

  • 2 node HA cluster should fail to switchover if second node is not visible to it through database (in current implementation), but current active node should work until restarted;
  • also if both nodes at start cannot see 2 of 2 they should fail to start;
    ...





[ZBXNEXT-7714] zabbix is logging too much we need to be able to finetune Created: 2022 May 13  Updated: 2022 Jun 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: patrik uytterhoeven Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

the new logging in zabbix is improved in many ways so now there is much more logging.

 

however because of this we have nog 30G per day in logs

 

we need to have an option to fine tune what we want to log in zabbix

ex exclude certain users from api loggin

do we need the details from the mails sent to be logged yes or no 

 

this would remove unneeded data from the logging

or maybe split up the time that we keep logs by resource 

 

 

 



 Comments   
Comment by Alex Kalimulin [ 2022 Jun 14 ]

ZBX-21145 may fully or partially address this.

Comment by patrik uytterhoeven [ 2022 Jun 14 ]

probably yes 

still its a good future idea to have a filter of what needs to be logged and how long in a more fine way





[ZBXNEXT-8008] Audit Logging Customization Created: 2022 Oct 01  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.9, 6.2.2
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Ryan Eberly Assignee: Valdis Murzins
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

The new audit Logging in version 6.0 is much improved but is incredibly costly in large environments  Too many logs are generated, specifically during low level discovery. Over 6 days the database table grew to 22GB which is not sustainable, particularly when the Housekeeper runs. Moving forward the expansion of the audit logging needs the same configuration flexibility as the User roles do, allowing the ability to turn on and off specific audit Logging resource types.



 Comments   
Comment by dimir [ 2022 Oct 02 ]

Related feature request ZBXNEXT-7829

Comment by Armands Arseniuss Skolmeisters [ 2023 Aug 22 ]

The auditlog table's timescaledb compression and segmentation for Zabbix 7.0 is implemented in ZBXNEXT-8520.

Comment by Janis Freibergs [ 2024 Jan 19 ]

Disabling of system event audit logging implemented in ZBXNEXT-8837.





[ZBXNEXT-8037] Zabbix upgrade available indicator Created: 2022 Oct 12  Updated: 2022 Oct 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.0beta1
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Marco Hofmann Assignee: Valdis Murzins
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Source: https://www.reddit.com/r/zabbix/comments/scpkp3/zabbix_upgrade_available_indicator/?utm_source=share&utm_medium=web2x&context=3

It would be nice, if Zabbix Frontend had an Upgrade indicator. Something that tells you, that a new minor or major release is available. A good spot might be the System information view (zabbix.php?action=report.status).

Of course, there should be a setting to turn it on or off in one of the php config files, like we already do with the "database tables upgraded" switch. You should also be able to set if you want to see only minor and/or major releases.






[ZBXNEXT-5218] User groups -> Tag filter options for without a tags (negated filtering) Created: 2019 May 09  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.7
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Kim Jongkwon Assignee: Valdis Murzins
Resolution: Unresolved Votes: 13
Labels: Zabbix7.2, negative, permissions, tags, usergroups
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File tag_filters.png    
Issue Links:
Duplicate

 Description   

When a tag filter is set for a host group, no way to can see "Without a TAG" triggers.

It is not friendly to users who use it with "Permissions" and "Tag filters"
Need to option for view "untagged problems" with some stored tag filters.



 Comments   
Comment by Oleksii Zagorskyi [ 2019 May 09 ]

ZBXNEXT-4237 is related, for view purposes.





[ZBXNEXT-5650] Zabbix client for Ubuntu Eoan Created: 2019 Dec 16  Updated: 2020 Feb 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Leonid Mamontov Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: eoan, ubuntu, zabbix-agent2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBX-17096 Zabbix client for Ubuntu Eoan Closed

 Description   

Hello. Is it possible to use a new version of zabbix-agent2 for Ubuntu 19.10?

I can't find it



 Comments   
Comment by Alexei Vladishev [ 2020 Jan 31 ]

I do not think we will provide official packages for Ubuntu 19.10, but we will support Ubuntu 20.04 LTS for sure. As a workaround you may compile Zabbix agent from sources or use 3rd party repositories if there are any.





[ZBXNEXT-5555] Multiple Graph of Host in Single Graph Created: 2019 Nov 08  Updated: 2024 Feb 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Appliance (L), Java gateway (J), Server (S), Templates (T)
Affects Version/s: 4.2.7
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Harsh Trivedi Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL 7.5 kernal version 3.10.0-862.14.4 e17 x86_64



 Description   

I need to graph a resource for a complete group of server to see if one is below or higher than the group. for example lets say i have a 10 physical server  and i want to see a graph with memory usage of all the 10 server in one graph.



 Comments   
Comment by Alexei Vladishev [ 2020 Feb 04 ]

It reminds me ZBXNEXT-5712. Is support of host groups in graph widget what you are looking for?

Comment by xaa ru [ 2020 May 14 ]

you can use grafana for this. just a couple of hours to configure

Comment by Ryan Eberly [ 2024 Feb 03 ]

Host group filtering would probably be an easy addition and it makes it so the widget doesn't need to be updated in environments where the hosts change. 





[ZBXNEXT-134] Need feature, for moving item from one host to other without lost of data Created: 2009 Nov 13  Updated: 2023 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Nikolay L Selikhov Assignee: Unassigned
Resolution: Unresolved Votes: 57
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Need feature, for moving item from one host to other without lost of data.

For example:

  • User change your connection point from one switch to other.
  • User change your connection point from one Node (hostgroup) to other.

Need move all data (statistics, triggers e t.c.) move to other point without lost.

Now it is impossible.



 Comments   
Comment by Orion Poplawski [ 2012 Jun 12 ]

I have been collecting temperature data via probes connected to one host and want to move them to another host but would like to keep all of the data. That's why I would like to see this feature implemented.

Comment by Chris Kistner [ 2012 Jul 17 ]

I would also love to have this feature.

I also find it quite annoying that when you copy an item that it does not copy the associated Application(s), Trigger(s) and Graph(s) with.

Currently one option would be to move the host's monitoring end-point, instead of moving the items.

At this very moment I'm actually modifying the Zabbix hostid in the item table to move my item(s) from one host to another.
Unfortunately it loses its Application(s) in the process. Technically it keeps the Applications that are linked to the original host, so when you view the host configuration on the new host, it still shows the correct Application(s).
So I before I move the item(s), I recreate the Application(s) on the destination host, and then after I made the database change, I remap all the item's Application(s).

Comment by Areg Vrtanesyan [ 2013 Aug 31 ]

Hi

I would like to have this too as it will help to move the collected data to other host for example if I am running the multiple instance of same service on one host and would like to separate data collected for the server and service.

https://www.zabbix.com/forum/showthread.php?p=137081

Voted for this

Regards,
Areg

Comment by Antti Hätinen [ 2019 Mar 23 ]

I would like this feature. Now I had to move the item and trigger by using SQL, but UI button would be nice, easier and more robust for most people.

UPDATE items SET hostid=<newid> WHERE itemid = <oldid>;

It seems that there is relation to triggers so that all triggers to the item follow automatically to the new host.





[ZBXNEXT-152] UserParameter to support a return value which indicates temporary error Created: 2009 Dec 01  Updated: 2018 Oct 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Juho Mäkinen Assignee: Unassigned
Resolution: Unresolved Votes: 20
Labels: items, notsupported, userparameters
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

all


Issue Links:
Duplicate
is duplicated by ZBXNEXT-1231 Delta value storage to better handle ... Closed
is duplicated by ZBXNEXT-186 add new return value from agent: ZBX_... Closed

 Description   

Scripts which are executed as zabbix UserParameter needs a way to return a temporary error gracefully. Currently if a script returns an empty response or other error message it's turned as "Not supported" in zabbix and thus the item is no longer updated. Currently Zabbix defines this as a feature as UserParameter scripts should always return some value and empty value indicates that the item is not supported. I think that current behavior is faulted and it needs to be changed some how to allow script to return a temporary error.

Few ideas how to fix this:

  • Add a way how a script can gracefully return a value indicating a temporary error. This new type of error would not turn the item as "Not supported" in Zabbix. The error could be carried from script to zabbix_agent as a magic string or shell return code.
  • Change Zabbix so that once an item has been marked as Active and working, any error returned by zabbix agent will not turn the item as "Not supported". If a item isn't no longer supported then a human operator needs to change the item status to "Not supported"

Current workarounds which have been suggested but aren't a good way to solve the problem:

  • Add "| sed 's/^$/ERROR/'" to the end of the UserParameter which would change an empty response into a response indicating an error. This doesn't work in items which return value is a number. Also using some magic number to indicate error isn't a good solution because even if the error number wouldn't be in the range of accepted values it would pollute the graph visualization.
  • Use .nodata() to detect errors states. If an item has been automaticly turned to "Not supported" by Zabbix then it's triggers are not longer executed and an alarm will not be raised.


 Comments   
Comment by Juho Mäkinen [ 2009 Dec 01 ]

Here's an example of a situation where this problem might occur:

Think for an item which returns a temperature in Celsius and that all possible temperature numbers are valid. The temperature is fetch with an UserParameter script which prints the temperature value to stdout. For +10'C it prints "10", for -12'C it prints "-12" and so on.

Then the script notices that it cannot get the temperature data for some reason, like that the meter is broken, the connection is lost or it has lost its power. The script doesn't know the temperature but it must print something, because an empty response is considered as ZBX_NOTSUPPORTED which will result zabbix to change the item status to "Not supported". Currently there isn't any way to return a temporary error from the script. After all we want to assume that the problem will be corrected and after that new temperature values must be collected with the item.

We could do a workaround by using the fact that temperatures can't be below -273.15 'C and define an arbitrary value like -1000 to indicate a temporary error. But this will result that zabbix will add those -1000 error values as normal values and they will thus be presented in graphs.

Comment by richlv [ 2009 Dec 01 ]

i'd suggest modifying the way unsupported handling happens in the server instead.
maybe even a modifyable parameter in the config file - 'UnsupportedRetries' or so. for this configured amount server would retry as normal, after that item would fall in the unsupported state.
for example, setting this to 3 would make server query item twice more after the first unsupported reply before marking it as unsupported

Comment by Alexei Vladishev [ 2010 Oct 12 ]

Perhaps the new item status should depend on availability of historical data in the database. If the data is available, then change status to "temporarily unavailable", "not supported" otherwise.

What do you think?

Comment by richlv [ 2011 May 20 ]

text items for zabbix 2.0 now can get empty strings as per ZBXNEXT-780

solution for numeric items still desired

Comment by Orion Poplawski [ 2012 Feb 07 ]

I need this as well to handle flaky temperature probes.

Comment by Oleksii Zagorskyi [ 2012 Aug 28 ]

Note that starting from 2.0 non-numerical items allowed to receive empty values.

Comment by richlv [ 2013 Sep 10 ]

ZBXNEXT-1897 is similar

Comment by Marc [ 2014 Jan 03 ]

Why not just taking care to write proper messages to log in proper log level?

Comment by richlv [ 2014 Mar 13 ]

ZBXNEXT-186 has a patch

Comment by richlv [ 2014 Apr 12 ]

ZBXNEXT-2203 might allow to provide custom error message

Comment by richlv [ 2014 Sep 05 ]

when dealing with this, special care should be taken to test 'delta' items

Comment by Filipp Sudanov (Inactive) [ 2015 Mar 13 ]

Similar for external checks: ZBXNEXT-540

Comment by Glebs Ivanovskis (Inactive) [ 2017 Nov 09 ]

Description is a bit out of date, ZBXNEXT-1791 changed how nodata() works with notsupported items.

ZBXNEXT-3006 enables a workaround described here.





[ZBXNEXT-1279] Using 'guest' for actions Created: 2010 Jan 09  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: actions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

i'm create action with condition: if host status = unreacheable and time_unreacheable >24h then delete host. Now i see in log, what user 'guest' delete thise hosts.

I think using 'guest' user not the best solution. be introduced for this purpose a special user, such as 'server'?



 Comments   
Comment by richlv [ 2010 Jan 11 ]

using guest user for sever performed changes can be very confusing. maybe third predefined user, "Zabbix server" could be added - or maybe there's some better solution





[ZBXNEXT-633] Would be nice in the "Administration->Queue->Details" report show also key of the item and it's update interval Created: 2011 Jan 25  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: queue, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Would be nice in the "Administration->Queue->Details" report show also key of the item and it's update interval.
This would be very helpful when troubleshooting performance problems.






[ZBXNEXT-1386] Required form fields pre validation using html5 Created: 2010 Jul 14  Updated: 2012 Oct 13

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Alexey Fukalov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: usability, validation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

doesn't seem to be safe enough for 1.8.3 as well, moving to 1.8.4



 Comments   
Comment by Alexey Fukalov [ 2010 Jul 19 ]

ZBX-2692

Comment by richlv [ 2010 Aug 10 ]

this issue would benefit from a change description

Comment by richlv [ 2010 Aug 26 ]

ping ? what actually was changed, how could it impact user experience, what possible problems could this introduce ?

Comment by richlv [ 2010 Aug 30 ]

dev branch rev 14145.

validation missing for :

items;
triggers;
graphs;
applications;
regular expressions (both name & test string);
maybe possible for hostgroup selector in host/template properties ? (would have to take into account 'new group';
all import pages - file field (including image uploads);
maintenance - maybe host/group maintenance ?
it services;
images;
ldap auth;
installation wizard

what about fields where something has to be selected (hostgroup, user etc) ?





[ZBXNEXT-1928] Add database consistency script or zabbix distribution Created: 2013 Sep 23  Updated: 2020 Jun 01

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: 1.8.17
Fix Version/s: None

Type: New Feature Request Priority: Critical
Reporter: Marc Schoechlin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 2
Labels: dbintegrity, installation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate
duplicates ZBXNEXT-2539 DB structure should be checked on ser... Open

 Description   

Before migration to 2.0.8 i discovered that there were a number of broken triggger expressions.

I used the script from https://www.zabbix.com/wiki/scripts/db_consistency.sh.

Probably it would be a good idea to add this script to the zabbix distribution and to maintain it with the releases.



 Comments   
Comment by richlv [ 2013 Sep 23 ]

database inconsistencies should be much more rare with 2.0 - it introduced foreign keys and other checks. some are still possible, though (like application-item linkage in nested configuration etc)

Comment by Marc Schoechlin [ 2013 Sep 24 ]

Maybe the referenced script might be a reference for checks.

I fully agree, preventing problems is better than discovering problems





[ZBXNEXT-1201] Webinterface improvements for large scale monitoring Created: 2012 Apr 28  Updated: 2019 Jun 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Critical
Reporter: Attilla de Groot Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 8
Labels: networkmonitoring, scalability, snmp, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

When managing a large scale environment in Zabbix (specifically network monitoring), there are several impractical implementations in the frontend. These limitations are mostly seen when hosts with a large number (500) of items/triggers/graphs and screens are added. This isn't an exceptional situation for just service provider class switches, but also applicable for standard 48 port enterprise switches.

  • Problematic over view of host latest data. Even with per port applications it still ends up in > 100 port applications.
  • Difficulty selecting a specific item for using in a graph
  • Difficulty managing triggers for a single host
  • Selecting the correct graph for a host with 1500 graphs in a small drop-down box isn't really practical.

I'm suggesting the following changes:

  • Implementing sub-applications/categories. This would give us the ability to have an overview in latest data like: $Linecard --> $port --> $item
  • Search/filter for triggers/graphs per host.
  • Search/filter on pages where you have to select items/triggers/graphs. On several places in the interface you have to select items/triggers/graphs you want to use (e.g. graph items, screenedit, mapedit).
  • Search for screens. You mostlikely want to search on screens that only have graphs for a specific host so you can select the appropriate screen.


 Comments   
Comment by richlv [ 2014 Mar 08 ]

screen filtering/searching is ZBXNEXT-2189

Comment by richlv [ 2015 Jun 25 ]

ZBXNEXT-2857 asks for a global graph search by name

Comment by Jori Hämäläinen [ 2015 Dec 16 ]

Also filtering by application should be doable. Allocate graph to application manual or automatic with item's applications drawn into graph..

Comment by Paul Dubé [ 2019 Jun 26 ]

See ZBXNEXT-5292 for a partial solution.





[ZBXNEXT-8867] Azure by HTTP subscriptions discovery Created: 2023 Dec 01  Updated: 2023 Dec 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 6.4.9
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Richard Ostrochovský Assignee: Evgenii Gordymov
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In larger Azure environments consisting of many subscriptions, which may come and go, it would be useful to have an option to discover also the subscriptions (being read by single service principal, permitted in all of that subscriptions) instead of their static configuration.

It could work as another level, where Azure by HTTP could be divided into 2 separate templates, e.g.:

  • Azure Tenant by HTTP - static configuration of tenant + service principal, including:
    • Subscription discovery + host prototype linking:
    • Azure Subscription by HTTP (working then in similar fashion as current Azure by HTTP)





[ZBXNEXT-9043] Template for AMD GPU monitoring Created: 2024 Feb 26  Updated: 2024 Mar 05

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 6.0.26, 6.4.11, 7.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
part of ZBXNEXT-9042 Template for NVIDIA GPU monitoring Need info
Team: Team INT

 Description   

Please provide OOB solutions to monitor AMD GPU accelerators (all series:for DC, for customer, for workstations, etc...) on Linux and Windows.

For example the following metrics can be added:

  • GPU Utilisation
  • GPU Power Consumption
  • GPU Memory (Used, Free, Total)
  • GPU Temperature
  • GPU Fan Speed





[ZBXNEXT-9040] JS code inheritance/code reuse across items/templates (script item, preprocessing) Created: 2024 Feb 26  Updated: 2024 Feb 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F), Proxy (P), Server (S)
Affects Version/s: 6.0.25, 7.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please provide a way to define user JS functions/methods which can be reused across items/templates.

For example AWS template uses several items, which has code duplicates for AUTH process, such approach complicates a lot template creation, since if you have 10-20 items with several same function, and you need to modify it or add - you need to modify all items manually once again.






[ZBXNEXT-9042] Template for NVIDIA GPU monitoring Created: 2024 Feb 26  Updated: 2024 Mar 05

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 6.0.26, 6.4.11, 7.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sub-task
depends on ZBXNEXT-9043 Template for AMD GPU monitoring Need info
Team: Team INT

 Description   

Please provide OOB solutions to monitor NVIDIA GPU accelerators (all series:for DC, for customer, for workstations, etc...) on Linux and Windows.

For example the following metrics can be added:

  • GPU Utilisation
  • GPU Power Consumption
  • GPU Memory (Used, Free, Total)
  • GPU Temperature
  • GPU Fan Speed





[ZBXNEXT-9045] Audit logs not capturing update of the host if tags are removed/added/updated Created: 2024 Feb 27  Updated: 2024 Feb 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Bartosz Mickiewicz Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate

 Description   

Audit logs don't capture host updates if the tags are added or removed from the host.

The expected behavior is to have tag changes tracked and have information about any updates in the audit log.






[ZBXNEXT-9053] Ping SIP (Session Initiation Protocol) Created: 2024 Feb 29  Updated: 2024 Feb 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 6.4.12
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Huverney Gomez Assignee: Vjaceslavs Bogdanovs
Resolution: Unresolved Votes: 0
Labels: templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

¿Es posible tener un template que nos permita monitorear de forma efectiva un el protocolo SIP en una planta telefónica, servidor SIP ó troncal SIP de manera estándar? Actualmente, no hay forma de hacerlo y estos servicios de telefonía son muy usados en las organizaciones y cuando hay fallas de la troncal o del protocolo no es posible monitorearlo desde zabbix.






[ZBXNEXT-6863] ZSTD compression library for Proxy/Server communication Created: 2021 Aug 25  Updated: 2023 May 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 4.0.32, 5.0.14, 6.0.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
part of ZBXNEXT-6862 Implement multithreaded compression/d... Open

 Description   

https://github.com/facebook/zstd

Zstandard, or zstd as short version, is a fast lossless compression algorithm, targeting real-time compression scenarios at zlib-level and better compression ratios

Used by MySQL CE 8.0, Facebook, PgSQL and other projects.

Zstandard is dual-licensed under BSD and GPLv2.






[ZBXNEXT-6845] Long running queries from frontend on history tables + High CPU usage on DB host same time Created: 2021 Aug 20  Updated: 2022 Sep 15

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 5.0.14, 6.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 9
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS: v7.9
Zabbix: v5.0.14
DB: PGSQL (postgresql12-server-12.7-1PGDG.rhel7.x86_64) + TSDB (timescaledb-2-postgresql-12-2.3.1-0.el7.x86_64)


Attachments: Zip Archive 05.zip    
Issue Links:
Duplicate
Sub-task
Sprint: Sprint 80 (Sep 2021), Sprint 81 (Oct 2021), Sprint 82 (Nov 2021), Sprint 83 (Dec 2021), Sprint 84 (Jan 2022), Sprint 85 (Feb 2022), Sprint 86 (Mar 2022), Sprint 87 (Apr 2022), Sprint 88 (May 2022), Sprint 89 (Jun 2022), Sprint 90 (Jul 2022), Sprint 91 (Aug 2022)

 Description   

Frontend can generate queries like
SELECT itemid FROM history* WHERE (itemid IN (........)) AND clock>unixtime GROUP BY itemid;
We have index for historical tables on (itemid,clock). So normally we have:

Bitmap Index Scan on _hyper_*_chunk_history_str_1  (cost=0.00..2307.05 rows=95986 width=0) (actual time=14.939..14.940 rows=92213 loops=1)
Index Cond: ((itemid = ANY ('{....,...,....}'::bigint[])) AND (clock > XXXX))

i.e. postgres splits a set of itemids and performs parallel scanning by index (itemid,clock)

Starting from a certain amount of itemid in condition postgres stops using this index and uses Index Cond: (clock > XXXXX) and [already in parallel] Filter: ((itemid = ANY (....)

It works much longer. ~2sec with index (itemid,clock) against ~170sec with index (clock)

As solution options:
1.tuning postgres for forced use of the index (SET enable_seqscan = OFF)
2. to split requests into several



 Comments   
Comment by Edgar Akhmetshin [ 2022 Jun 20 ]
As solution options:
1.tuning postgres for forced use of the index (SET enable_seqscan = OFF)

SET example is a session only and will not help for a running daemon.
https://www.postgresql.org/docs/current/sql-altersystem.html

If your table is big and data distribution is irregular, raising the default_statistics_target may help.

ALTER TABLE ... ALTER COLUMN ... SET STATISTICS X;

https://www.postgresql.org/docs/current/runtime-config-query.html#RUNTIME-CONFIG-QUERY-CONSTANTS

Comment by Alexander Vladishev [ 2022 Sep 15 ]

Partially fixed in ZBX-20644.





[ZBXNEXT-6776] Add item in VMware templates to get No.of guest VMs per Exsi host network interface Created: 2021 Jul 13  Updated: 2022 Oct 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Yaswanth Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2021-07-13-14-59-25-808.png    

 Description   

Currenlty we dont have a monitoring key defined to get the count of guest VMs deployed on each host network interface. It would be good to have such an option available, so that it can help in balancing network interfaces. 

For example: 

In below Screenshot of one ofmy Exsi hosts, I have 2 10.40.x.x Private interface configured, so if I can get the No.of VMs against ecah interface as seen below, it would help us greatly.  






[ZBXNEXT-6770] Add graphs traffic in the link from Maps Created: 2021 Jul 08  Updated: 2021 Jul 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andreas Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: Graphs, Maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The suggestion would be add a option like "mouseover" the link in the map, then show the graph traffic, or example:

 

When you mouver over the icon, show the graphs from the triggers associate. Mouse out, it disappear

 

 

 

Originaly propoused by : https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/410531-add-graphs-traffic-in-the-link-from-maps






[ZBXNEXT-6667] not able to select existing tags in applications and in other places Created: 2021 May 18  Updated: 2022 Nov 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 5.4.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: patrik uytterhoeven Assignee: Unassigned
Resolution: Unresolved Votes: 28
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot 2021-05-18 at 13.47.28.png     JPEG File download.jpeg     PNG File download.png    
Issue Links:
Duplicate
duplicates ZBXNEXT-6687 Easily filter "Latest Data" using tags Closed

 Description   

it was already annoying that there was not a selection box for tags but now that applications are replaced with tags its even more annoying

 

now then i create an item with a tag i need to remember very carefully what tag i have used

it should be a selection box to choose from so that we cannot make mistakes by accitent by typing for example Tag TAG TAg tag .......



 Comments   
Comment by Brian van Baekel [ 2021 May 18 ]

A selection or dropdown menu for finding "existing" tags on a host/template items/triggers just like we have for Hostgroups would be extremely useful!

 

Now indeed, if you are not 100% consistent this is within 5 minutes a mess...

Screenshot added to show how fast you can create (unintentionally!) a dramatic look...

+1 for this idea!

Comment by Nathan Liefting [ 2021 May 18 ]

I was actually discussing this in a training after I received a question about applications being removed and I can tell you that 5 trainees (and myself) here agree.

 

This feature missing from what we had with applications before is definitely a loss. Gotta have it back

Comment by dimir [ 2021 May 19 ]

Ask each of them to vote.

Comment by patrik uytterhoeven [ 2021 May 19 ]

be careful what you wish for ˆˆ

Comment by patrik uytterhoeven [ 2021 Jul 15 ]

prometheus has labels (tags) something like this where you can choose the tags to filter would be. nice i t hink

 

 

it would even be more cool if we had a latest data page like this where you have the visual overview of the metrics that you can choose on the right

it should be possible to show all tags starting with name cpu under CPU so that we can select the correct value per tag.

 

In this case latest data would integrate latest data and graphs in some way

 

Comment by Stefan [ 2021 Jul 16 ]

I guess that already exists with host dashboards. but you're right we need the application or something like that back

Comment by patrik uytterhoeven [ 2021 Jul 16 ]

host dashboards are a step in the right direction but are not usable at the moment.

https://support.zabbix.com/browse/ZBXNEXT-6727

i made a ticket about it 

there is too much work to do at the moment if you like to make a dashboard that works for lets say 10 hosts 

you need to make 10 dashboards in zabbix and every widget needs to get configured manually

in grafana this is possible with 1 dashboard and some regex to filter 

 

 

Comment by Alexei Vladishev [ 2021 Oct 13 ]

We are aiming to fix usability issues related to removal of applications in 6.0, at least for Latest data view. I'd like to see simple interface for filtering, preferably with one-click selection of tags, not sure about grouping. I find grouping in Latest data (as it was in 5.2 and earlier versions) not perfect, perhaps flat table view (5.4) is a better choice.

Comment by Matias [ 2021 Oct 13 ]

I can assure you that nobody thinks that the current flat table view is usable. We need a way to group by tags as we used to do with applications, this is basic functionality that almost every other monitoring solutions has. Plz guys, just take a look at any feedback about 5.4. This is the 1# problem mention on every forum post and group chat.

Comment by Marco Hofmann [ 2021 Oct 13 ]

+1 Matias
There is also a plugin available that solves the issue Zabbix has ignored until today: https://github.com/BGmot/zabbix-module-latest-data

Comment by Alexei Vladishev [ 2021 Oct 13 ]

I think that grouping can be done in many ways. One solution is just to group items in the table as we did before and what the plugin does. Another solution (a better one, but I might be wrong) is to introduce one click selection of tags and tag values you want to filter information by. Perhaps a combination of both is the best one. I will try to come up with mockups later on.

Comment by Nathan Liefting [ 2021 Oct 13 ]

First of all very happy to hear that the Tag filtering is being worked on, as it definitely very important to the overal perception of 6.0.

Related to ZBX-19413: When it comes to the flat view, I agree with Alexei that grouping can be done in many ways and options to make things better should always be explored once the chance arrives. 

Zabbix 6.0 isn't a very long way off though so just an idea for a possible quick fix. It would be possible to allow us to sort the latest data page by tags. Not possible at the moment, as we can only sort on name or host. Sorting by tags would basically allow us to use the latest data page like the old way of applications. Just without the option to collapse each tag.

 

Looking forward to the mockups

Comment by dimir [ 2022 Apr 22 ]

We could introduce a "tag cloud" thing.





[ZBXNEXT-7656] Add ability to use ENV variables to define configuration parameters Created: 2022 Apr 28  Updated: 2022 Jul 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Packages (C), Server (S)
Affects Version/s: 6.0.4rc1, 6.2.0alpha2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: cloud
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
depends on ZBXNEXT-5356 DB passwords in config files Open

 Description   

For cloud/containerised/any environments. Parsing or "regexing" custom formatted PHP and Server/Proxy configuration files complicates automated setup and also requires additional rework of chef/ansible/puppet, etc due to changes done from version to version, line in PHP configuration files from frontend. Especially with PHP arrays to parse for common settings.






[ZBXNEXT-7658] Add HTTP statuses for Server HA metrics Created: 2022 Apr 28  Updated: 2023 Aug 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.0.4rc1, 6.2.0alpha2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Simple port checking for availability from load balancers (different kinds: hardware/cloud/software/kubernetes) is not enough to ensure working state of the Server component also without additional information it's usually not possible make decision for switching or not between nodes.






[ZBXNEXT-7638] Able to append some dynamic text in the LLD Created: 2022 Apr 18  Updated: 2023 Sep 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Rohan Raj Assignee: Andris Zeila
Resolution: Unresolved Votes: 9
Labels: macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu 20.4 with 2 Zabix Servers with 6 Remote Proxy


Attachments: JPEG File WhatsApp Image 2022-12-12 at 13.22.55.jpeg    

 Description   

Hi I want to get the name of the Proxy/UserMacro that is doing the check for VMware in the Item Prototype Hostname.

Example:

if the Proxy name is PROX01 and a new Hypervisor ESXi01 is detected i wanted to it to be named as ESXi01-PROX01 so that i can manage the Infra more Effectiveness.
If the ability to give a user/global/template macro to placed the Host-name tab of the Host prototype would be great.

 

Thanks for the help.



 Comments   
Comment by LivreAcesso.Pro [ 2022 Dec 12 ]

I want to add some info to host group prototype. The info is a user macro, which is not allowed in the Group Prototypes field.

Comment by Miroslav [ 2023 Sep 14 ]

Even that here https://support.zabbix.com/browse/ZBX-15012 it was clarified that Groups created by Prototype are different type then manually created groups (hostgroups) we would like to have possibility that Prototype value accepts Macros and assign the host created to existing hostgroup.





[ZBXNEXT-7636] Add {item.date} macro Created: 2022 Apr 15  Updated: 2022 Apr 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.0.3, 6.2.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

https://www.zabbix.com/documentation/current/en/manual/appendix/macros/supported_by_location

Where is a macro only for {item.log.date}, but it would be nice to have this item for all item types.






[ZBXNEXT-6934] user permissions in usegroups ( to hostgroups, hosts, items ) based on tags Created: 2021 Sep 22  Updated: 2022 Jun 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Templates (T)
Affects Version/s: 6.0 (plan)
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: gofree Assignee: Valdis Murzins
Resolution: Unresolved Votes: 14
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi guys

 

the idea is simple in a way - imagine that when configuring usergroups the tag filer option will not only apply to problem view but also to entity view - like hosts & items.

 

This way the host groups based permissions would replaced by tags based permission - that will radically decrease the need of "overcomplexed hostgroups nesting"

 

Imagine that you could setup a tag on template level that all items will inherite ( imagine two different templates one with tag customer: AB and one with tag customer: CD ) on the other you'll have a host with tags: customer: AB and customer: CD. There will be a usergroup with permissions to see all entities with tag customer: AB ( no inclusions needed, no nested and forgotten hostgropus ). To the same host you allatach for example a template for linux ( all items will inherit the tag os:linux ).  Then you add this tag permission to the previosly mention usergroup - as a result the user will be able to see customer related metrics with linux related metrics. Possinilities are of course much wider. In addition I can see tags also on host groups level, as they contain templates too and it would be possible to give permissions to them ( editing for example ).

 

What do you think ?- in my opinion concept like this would make life much easier permisions wise to maintain and design. Especially as the application on item level have been replaced by tags. And host can be tagged for a longer time already.

 

 



 Comments   
Comment by XinWang [ 2022 Jun 09 ]

definely, this is a very good feature. we have thousand of hostgroups for multi-tenency user. tag based permission control will reduce the cost of management and be more flexible. Since zabbix is supporting tags for every where. 

Comment by Omar [ 2022 Jun 23 ]

this is extremely  needed in MSP/noc escenarios where you need to provide granular access to zabbix data.





[ZBXNEXT-6892] Custom Triggers Severities and custom Frontend Messaging/Sounds Created: 2021 Sep 03  Updated: 2021 Sep 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.15, 5.4.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Raul Chiarella Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello there!
I was searching for a solution for this and did not find any.

Then i saw multiple discussions on Zabbix Forum and other Websites with the same idea/topic so i decided to post here.

 

It would benefit a lot of Zabbix Users to have a option on Trigger Severities to create custom severities and also the option to add custom sounds on Frontend Messaging.

Here:

Lets say i want to create a new severity called "Update Complete"
Then, on Frontend messaging i would select this "Update Complete" severity and bind to a custom audio i created using my own voice or TTS saying "Update on Server Complete".

Another exampkle: "Backup Failed" . I would use this Severity and bind a audio saying "Backup on Server Failed" - So alongside with visualization we would also have audio response! Even better.

 
I am sorry if i didnt explained this right but i hope you all understood what i meant... I'm still training my English. 

PS: I know that this would be possible using API of some external software/tool but it would be a superb and handy feature to have this in Zabbix.
 






[ZBXNEXT-6719] Add ability to discover triggers inside LLD rule without item prototypes/dependent items Created: 2021 Jun 10  Updated: 2021 Nov 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: LLD, Triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate

 Description   

Example: you have a log file that is constantly updated, each line is information about the status of a specific task, the line contains a number of information by which you can identify the task and its status. Through the lld discovery rule, you can define all tasks by receiving a list from an external system. However, you cannot create 1 template/host level item with the log and LLD triggers for tasks that can be in a file without creating dependent items or item prototypes.

Would be nice to have such option.



 Comments   
Comment by Glebs Ivanovskis [ 2021 Jun 15 ]

Sounds like ZBXNEXT-3527, doesn't it?





[ZBXNEXT-6711] Add support of the curl_mime_init handling to the web scenario checks Created: 2021 Jun 09  Updated: 2021 Jun 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

In addition to the Content-Type: multipart/form-data please add support of the curl_mime_init().

https://curl.se/libcurl/c/curl_mime_init.html (former https://curl.se/libcurl/c/curl_formadd.html)






[ZBXNEXT-6682] Read-only super-admin role Created: 2021 May 25  Updated: 2022 Aug 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Maxim Yurchenko Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Sometimes it is required for other colleagues to see all items, triggers, expressions, latest data, etc., like super-admin, can do, but without the ability to change anything. So it will be great to have a super-admin read-only role for such purposes.



 Comments   
Comment by Yurii Polenok [ 2022 Aug 30 ]

ZBXNEXT-1070





[ZBXNEXT-6509] I cannot install Zabbix for Centos 8 in ARM processor architecture Created: 2021 Feb 12  Updated: 2021 Dec 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.2.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edinson Rodriguez Assignee: Jurijs Klopovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Changes in configuration...

None

  1. Navigate to screen title...

[root@Zabbix yum.repos.d]# dnf install zabbix-server-mysql zabbix-web-mysql zabbix-agent
Zabbix Official Repository - aarch64 241 B/s | 169 B 00:00
Errors during downloading metadata for repository 'zabbix':

  1. Click on screen element...
  2. ...

Result:
See screenshot...
See log file...
See memory dump...
Expected:
See screenshot....
See attached patch file...






[ZBXNEXT-6490] Mass updating Trigger dependencies, without replacing all other dependencies Created: 2021 Feb 04  Updated: 2021 Feb 04

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.8, 5.2.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Nathan Liefting Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot 2021-02-04 at 15.19.35.png     PNG File Screenshot 2021-02-04 at 15.20.33.png     PNG File image-2021-02-04-15-19-57-261.png     PNG File image-2021-02-04-15-20-41-943.png     PNG File image-2021-02-04-15-20-45-116.png    

 Description   

Hi,

For a customer I am currently building a Proxy dependent templates using the built in templates. An easy task in it's essence, but it has turned into a time consuming task now.

In this and other cases when you want to mass update trigger dependencies you want to ADD one or two to some/all triggers. Instead we only have the REPLACE option which will drop all other Trigger dependencies:

Why isn't it possible to choose like we can when adding templates to a host:

 

Definitely an important feature to add I think  

 

Kind regards,

 

Nathan






[ZBXNEXT-6440] Change the time stamp of a (dependent) item Created: 2021 Jan 13  Updated: 2021 Jan 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Gustavo Guido Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Im reciving data in a JSON (or csv), where the timesptamp of the data is specified. like in

[

{ "name": "a", "value":"3.5", "timestamp":"1610567652"}

,

{ "name": "a", "value":"2.5", "timestamp":"1610567712"}

,

{ "name": "a", "value":"3.2", "timestamp":"1610567716"}

.

{ "name": "b", "value":"3.5", "timestamp":"1610567652"}

,

{ "name": "b", "value":"2.5", "timestamp":"1610567712"}

,

{ "name": "b", "value":"3.2", "timestamp":"1610567716"}

]

Now a days, we process the value in a bash script, and by using the zabbix_sender, we specify the timestamp, it will be great to do this within zabbix, via a preprocessing step may be

 

 






[ZBXNEXT-6919] Make the length and format of zbx_sessionid configurable Created: 2021 Sep 16  Updated: 2021 Sep 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.15
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: biyurong Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently the zbx_sessionid is a 32 character string, which in fact is the hex of  a 16-digit number.

In our project, the the sessionid of any frontend system must be a real random number whose length greater than or equal to 32. However zabbix does not match this requirement.

So can you make the length and format of zbx_sessionid configurable?






[ZBXNEXT-6492] Possibility for usage jdbc connection string for PostgreSQL Patroni cluster Created: 2021 Feb 05  Updated: 2024 Feb 20

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Gorbach Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 11
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File zabbix6_4_pg_connstring.patch     Text File zabbix6_pg_connstring.patch    
Issue Links:
Sub-task

 Description   

We're able to define the only one hostname/ip-adress into configuration:
DBHost - into Zabbix Server configuration
$DB['SERVER'] - into Frontend configuration

We want to have a posibility for defining multiple hostnames/ip-adresses to Zabbix everytime will connnecting to alive database in cases of failover and switchover

For example use full jdbc string for connection to PostgreSQL Patroni cluster

 jdbc:postgresql://127.0.0.1:1544,127.0.0.2:1544/dbname?targetServerType=master


 Comments   
Comment by Rostislav Palivoda [ 2021 Feb 15 ]

Why not to use https://www.pgbouncer.org/ ?

Comment by Kris Avi [ 2022 May 11 ]

pgbouncer being another component that could fail and might be too much of overhead to add extra machines for pgbouncers, setting up VIP between them to direct traffic towards correct pgbouncer, while in that case you already would direct traffic against vip that is assigned to readwrite node. 

 

The whole point of supporting connectionstring would be to avoid adding extra components in the chain for HA solution.

I would not even go for JDBC connectionstring, as it is coming from Java  side, but since zabbix is made in PHP, then the https://www.php.net/manual/en/function.pg-connect.php function seems to support libpq and it's format https://www.postgresql.org/docs/current/libpq-connect.html

In that case the connectionstring could contain all the hosts in cluster and choose the one cluster that is read-write 
postgresql://host1:5432,host2:5432,host3:5432/zabbix?target_session_attrs=read-write
Unfortunately currently zabbix server puts together connection data from multiple variables and does not support putting multiple DB hosts

https://www.alibabacloud.com/blog/597797 Seems to be example of how it is configured in here.

Since the connection creation towards correct node is done still by the same library, then no extra components will be used and no extra links in the chain will be introduced with that change.

 

In current setup we have set up vip in front of PG servers and in the servers there is also HAProxy installed just to direct traffic to read-write node. It is ugly and has extra parts that could fail, but it gives the chance that DB has done failover to another node, but for some reason VIP did not follow, then the DB connections still end up at RW node.

 

With the connectionstring potential usecase for performance optimization could be to direct write requests towards rw node and read requests to any of the node in the whole cluster, could allow scalability on read requests, which zabbix will get more to load the values for graphs. That would probably mean that in config there could be RW connectionstring and RO connectsionstring. If RO one is not filled, RW will be used.
Directing RO requests to RO node has potential flaw of replication lagging, that could hide latest written values in some cases, but lowering lag and sync process will be duties of Postgres DBA setting up the cluster.

Comment by Dimitri Bellini [ 2022 May 17 ]

I would like add my vote for this request!
Thanks so much

Comment by Kris Avi [ 2023 Jan 24 ]

pgBouncer is not solution in here at all. pgPool-II could be possibly used in place, but it is hassle to set up pgPool-II for this purpose and another alternative is to set up HAProxy on zabbix server hosts, that forward traffic to read-write postgres node. The HAProxy solution is currently used for me, but in there the best would be to have Layer 4 proxy mode and do health checks and RW node checks in Layer 4 as well and it is annoying if you happen to have password on the role checking for RW node.

 

So I took half a day and generated patch for this feature zabbix6_pg_connstring.patch

 

I tested PHP side and seemed to work fine, even when switchover from one node to another. Was not able to build C++ Server application to test it, since working on Windows mainly and setting up build environment currently would take longer than needed.

 

This patch seemed to be good for tag '6.0.0' and checked out commit was 5203d2ea7d901cd33d148f20586e2155901a7faa.
PHP side seemed to work fine even for origin/master as well

 

Patch implements Postgres connectionstring support and support to add target_session_attr on Postgres connections when using old parameters. In the old code it is possible to add multiple hosts on DBHost field, making it work quite similar to what connstring is implementing. But for automatic failover the target_session_attr is required.

Comment by Kris Avi [ 2023 Mar 09 ]

Updated patch to current master (6cfe791429d7cccda0205335868976cac6c51039) zabbix6_4_pg_connstring.patch

Patch still has both changes, one to add target_session_attr config option (with default value of "read-write") and other one to use connectionstring instead of all the connection parameters. 

Even the target_session_attr change would give possibility to write multiple hosts on DBHost field and get correct HA capabilities. If you would like to keep old behavior, then target_session_attr could have the default value of "any", but would be good to have possibility to configure it.

This change is vital for Zabbix HA capabilities, without database zabbix is nothing. It is not normal situation to change Zabbix config if for some reason DB should have to do failover to replica node. 

If you still suggest using something like pg_bouncer to do that failover, could you please provide sample configuration for it, cause so far I have not seen pg_bouncer having such possibility to proxy connections to R/W node. 

Since there has been bigger changes, then I am not so sure if new patch contains all the required changes as I still do not have build environment set up to compile zabbix_server and zabbix_proxy.

If more load-balancing from DB is wanted, then going further it would be nice to configure read-only db config (by default being same as rw config) and having queries tagged as read-only or queries that modify data and then directing read-only queries towards config for read only and queries that modify data only towards RW config. That way it would be possible to spread the queries across DB cluster. At least talking from Postgres point of view when hot_standby is used, but I am sure similar setup is possible with MariaDB and Oracle.

Comment by Piotr Paweł Stefaniak [ 2023 Mar 28 ]

I'd very much like to see this feature in.

I haven't tested the patches, but it seems to me that stripping one of the if statements of parentheses would make the translation unit incorrect.

Comment by Antti Hurme [ 2023 Jul 21 ]

This could also be a good addition if you use pg_auto_failover. Would like to see this as an way to make Zabbix truly HA with the great inbuild server HA + PostgreSQL HA with something modern.

"Implementing client-side High Availability is included in PostgreSQL’s driver libpq from version 10 onward. Using this driver, it is possible to specify multiple host names or IP addresses in the same connection string."

Comment by Piotr Paweł Stefaniak [ 2023 Sep 05 ]

I was in the process of writing a patch to implement this for 7.x, but it appears that there's a work-around good enough for me and perhaps others that doesn't involve patching the sources.

What I needed from my WIP patch was a couple of things:

  1. the ability to set multiple hosts and their ports
  2. the ability to set target_session_attrs
  3. ideally no regression for other DB servers so that the patch could be pushed upstream.

It had already been possible to set multiple hosts in the DBHost field and it worked with Postgres as intended, but not multiple ports which I needed. The problem was that DBPort is converted to an integer and stored in a variable common to all database connection code, so I had a dilemma how to implement what I wanted but at the same time keep everybody else happy.

Someone over in the IRC channel asked whether pgservices could work and I thought that it's a nice idea, but there's a similar one, but simpler: environment variables PGPORT and PGTARGETSESSIONATTRS. This may be surprising, but it appears to work, zabbix-server doesn't do anything about it and libpq handles them as designed. You'd think for consistency I should also set PGHOST or PGHOSTADDR, but if you don't set it in the zabbix-server config, it's going to default to localhost, which in my case beats the purpose of everything else mentioned here.

I think ideally zabbix-server should cease trying to parse and handle all possible connection parameters for all database engines that it supports and instead expose a single configuration setting for the user to provide the connection URI.

Comment by vl1987 [ 2023 Sep 21 ]

In fact, it is strange that there is still no such possibility. It would be great if such an option appears

Comment by Kris Avi [ 2024 Feb 20 ]

Thanks @pstef

I opted to use environment variable PGTARGETSESSIONATTRS to solve my problem. In configuration added multiple DB hosts. My setup was easier since used default port, but different hosts. Made similar change in PHP FPM config to pass same environment variable to web interface as well. Been using that method for couple of months in production, so far on switchover, there is minor hiccup as zabbix detects that connections should be recreated on DB switchover, but so far system has been able to behave normally. This method works only because they are not setting it to some value. My patch itself would set some default value, but at the same time give you option to set it in config. Potentially could have added multiple ports option in ports field too, but it was more complicated than to add connectionstring field.

I don't bother updating my patches for it any more, big portion of work is already done in there and it is up to Zabbix guys to either use it and merge it to upstream or not. 

I agree with you, they should just give the option to enter one connection string field and not bother with parsing and handling them all. But for sake of backwards compatibility probably those fields should stay. However still could add connection string field and if it is entered, then not try to parse rest of DB config parameters and trust that user configuring already knows what they are doing. Not all of the users will need such option, but some might. When writing my patch I kept in mind that old way should still work, it should include config file descriptions to my best knowledge and should not break something on other DB engines, but in the end it is zabbix dev team choice to use that patch or not. So far it seems this ticket has not gotten any of their attention and will be among other unsolved bug reports. Yes there are more parameters you could set and parsing them all could be too much, but most commonly used ones are sslmode and target_session_attrs, that is why potentially those should be in config while rest could come from environment variables.

 

 

Still there could be improvements made in backend and to make zabbix server and web aware of query types and if they are read-only queries or need to modify data. If it is read-only query, then it could be loadbalanced using prefer-standby for those queries and direct write queries to read-write node. It of course brings danger of reading stale data, but that is more on DBA to handle on cluster side.





[ZBXNEXT-6461] Availability reports shows only current year Created: 2021 Jan 21  Updated: 2022 Mar 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.31, 4.0.26, 5.0.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrey Rybin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: graphs, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Zabbix documentation says: "Clicking on Show in the Graph column displays a bar graph where availability information is displayed in bar format each bar representing a past week of the current year."

This means that availability reports are not available for the past year.
Even if you set the correct filter values by date specifying the past year, the graph will still be for the current year. A huge request to change the work of this function so that we can get a graph for the last year (if we have a history of items).

Than you!)






[ZBXNEXT-6439] Make Macros data much biger Created: 2021 Jan 13  Updated: 2021 Jan 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Gustavo Guido Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It wil be nice for two main uses.

  1. Write some configurations in JSON format instead of writing many macros
  2. store some java script functions that can be use in many preprocesing steps from different items

 






[ZBXNEXT-6390] Possibility to get regex patterns for filtering from file Created: 2020 Dec 09  Updated: 2020 Dec 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 4.0.27
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Gorbach Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In case, when it is not possible to provide SuperAdmin access for users to modify Global regular expressions to have a possibility for to discard some regex patterns from searching into log string it would be useful to get some alternative way to get the same functilonality/

For example - get regex patterns, which should be missed from a file

Case 

1] We have some count of remote hosts, where we place a file with regex patterns
2] File format - PCRE regex patterns, one string - one pattern
3] Zabbix-agent reading the file, getting  exclude regex patterns 
4] Zabbix agent reading the log avoiding non-necessary regex pattenrs from file

 



 Comments   
Comment by Vladislavs Sokurenko [ 2020 Dec 17 ]

Could something like that do the trick ?

^(?!foo).*$

Or maybe:

^(?!(ORA-101|ORA-102)).*$




[ZBXNEXT-8021] CEPH S3 and RBD monitoring Created: 2022 Oct 09  Updated: 2022 Oct 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Karzhassov Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, CEPH



 Description   

We all need detailed ceph monitoring

1) S3 user used space, S3 user quota

2) RBD disk used space, throughput, io

3) RGW answer latency






[ZBXNEXT-7959] Add Thresholds change backrounds colors to Item Value Widget Created: 2022 Sep 02  Updated: 2022 Sep 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.2.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alejandro Benitez Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified





[ZBXNEXT-7863] Rename hostname for the auto-registered host instead of making duplicate host Created: 2022 Jul 15  Updated: 2022 Jul 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Rename already auto-registered host inside operation system, Zabbix Agent will be re-registered with new name:

  • leftover host left within Zabbix configuration;
  • history lost for the new host;
  • requires manual action to "merge" hosts;





[ZBXNEXT-7843] Trigger correlation: Extend tag count to match on close. Created: 2022 Jul 07  Updated: 2022 Jul 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrey Tocko Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: correlation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-07-07-13-11-41-904.png    
Issue Links:
Sub-task

 Description   

Single tag:value match on event close by trigger correlation is not enough. Could make list of tags to match values.

When monitoring logs files multiple event generation is used with multiple tags filled as properties of cathed event. Global correlation allows to work with multiple tag matching, but trigger correlation only with single one. Problem with global correlation is that it can close previous or last. But it happens that we receive log entry which should resolve problem event with same tag value list.






[ZBXNEXT-8060] Can zabbix support PBKDF2 when storing user password in database? Created: 2022 Oct 24  Updated: 2022 Oct 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.28, 6.0.9
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: biyurong Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Now zabbix use bcrypt hashing user passwords. Compared to PBKDF2, bcrypt has a fixed output size, which makes it less than perfect for generating encryption keys from passwords.

Moreover, PBKDF2 consumes less cpu and memory which is more friendly with resource limited situation.

Please add PBKDF2 as a choice when storing user password in database.






[ZBXNEXT-8207] Monitor website from multiple geographical locations Created: 2023 Jan 15  Updated: 2023 Jan 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: ahlem soussi Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified





[ZBXNEXT-8098] New trigger requirements like "nodata" Created: 2022 Nov 10  Updated: 2022 Nov 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: lijiyun Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

redhat7
zabbix 5.0


Attachments: PNG File image-2022-11-10-17-14-48-313.png    
Team: Team A

 Description   

For log type monitoring items, there is such a trigger requirement. When new log information is monitored, we want to push each log information through the action. The current "nodata" function cannot meet this requirement.

 






[ZBXNEXT-8077] Zabbix Sender failed:1 with PSK/CERT enabled Created: 2022 Oct 31  Updated: 2022 Nov 02

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian11.5/arm64
Zabbix > 4.0+


Issue Links:
Duplicate

 Description   

Steps to reproduce:

  1. enable PSK/CERT for host and create Zabbix Trapper item
  2. send data using zabbix_sender

Result:

zabbix_sender -z 127.0.0.1 -s "Encryption" -k "test" -o "test" --verbose
Response from "127.0.0.1:10051": "processed: 0; failed: 1; total: 1; seconds spent: 0.000372"
sent: 1; skipped: 0; total: 1

Expected:
"Encryption required" should be returned, not just "failed: 1".



 Comments   
Comment by dimir [ 2022 Nov 01 ]

That would mean changing the "protocol" or standard reply from a trapper. There is no description field unfortunately. Changing that would probably break a lot of parsers.

Besides, as sasha mentioned, sender can be used to send to multiple hosts where some might have encryption enabled and some - not.

Looks like a change request in any case.

Comment by Alexander Vladishev [ 2022 Nov 01 ]

Similar issue: ZBXNEXT-38. Probably this case can be closed as duplicate.

Comment by Alexander Vladishev [ 2022 Nov 01 ]

Related issue ZBXNEXT-506 - quiet mode for zabbix_sender.





[ZBXNEXT-8068] Amazon Linux 2 arm64 package Created: 2022 Oct 27  Updated: 2022 Oct 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Luiz Costa Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello, I need to package for Amazon Linux 2 Arm64 based in RHEL7.

I know there is an option to compile the package, but I need it to optimize the installation process

 

Thanks!






[ZBXNEXT-8070] Add "Monitoring -> Hosts" to context menu Created: 2022 Oct 28  Updated: 2022 Oct 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.0beta2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marco Hofmann Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-10-28-09-52-47-308.png     PNG File image-2022-10-28-10-01-53-538.png    

 Description   

Similar to ZBXNEXT-7512, I would like to propose, to add just another item into the context menu. If you compare the current side-menu with the context menu, you might notice a difference:

So, besides the inconsistencies in both lists, I propose to add "Monitoring ⇾ Host" to the menu.

In the meantime, this can be circumvented, by making use of the new custom context menu URLs from ZBXNEXT-3496:

By adding the following "Script", you can build something like I requested:






[ZBXNEXT-8725] Automatic delayed windows services should have configurable macro/threshold just not to fire up after reboot Created: 2023 Sep 26  Updated: 2023 Oct 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.0.22, 6.4.7rc1, 7.0.0alpha4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Use case:

On a host with the “Windows by Zabbix agent” template, we’ve gotten problems like “"WinRM" (Windows Remote Management (WS-Management)) is not running (startup type automatic delayed)”, shortly after the machine has been booted. It also clears shortly after.
This is a service with startup type set as automatic delayed.



 Comments   
Comment by Jerry Pringle [ 2023 Oct 03 ]

I am also seeing a similar thing on Zabbix 6.4.6 with multiple services (21 alerts on the last reboot of one server) on several different Windows servers (mostly Windows Server 2022). I am using "Windows by Zabbix agent active" template.

 

Would it make sense for there to be a macro {$SERVICE.DELAYED_START_TIMEOUT} or similar which could be used to specify how long to wait before alerting on delayed start services? We have some which can take several minutes to start as there are many dependancies. If this could be over-ridden per server (per service?) it would be helpful.

Comment by KB Jørgensen [ 2023 Oct 04 ]

I think it should rather be defined by the actual delay. That seems to be set by the AutoStartDelay registry setting. First as a system-wide default and then potentially overridden for each service.





[ZBXNEXT-8637] Add acknowledge detailed info to Problem export Created: 2023 Aug 14  Updated: 2023 Aug 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.0.21rc1, 7.0.0alpha4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be great to have detailed information in problem export about all acknowledged events.

For example, some user name and messages for each event in separate column.






[ZBXNEXT-8639] "Open in a new window" feature for Trigger URL Created: 2023 Aug 15  Updated: 2023 Aug 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Yurii Polenok Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: frontend, link, trigger, triggerurl
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Scripts URLs support "Open in a new window" feature.
We also need an "Open in a new window" feature for Trigger URLs.
It would be great if this option could be configured, because it is more convenient and faster for us to open the documentation from the trigger URL in a new tab.
Even if possible, there should be 2 options: a new tab or a new browser window.






[ZBXNEXT-8636] Scheduled reports save on server option. Created: 2023 Aug 14  Updated: 2023 Aug 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.0.21rc1, 7.0.0alpha4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be great to be able to save all send reports to server side directory. Probably it should be configured with zabbix-web-service. it would be also very good for troubleshooting sending reports.






[ZBXNEXT-8635] Problem export as PDF Created: 2023 Aug 14  Updated: 2023 Aug 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently we have export with CSV.
Would be great to have export as PDF as well.






[ZBXNEXT-8535] Delete items, do not delete the entire graph Created: 2023 Jul 02  Updated: 2023 Jul 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: zabbix_1993 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix 6.4.4


Attachments: PNG File image-2023-07-02-13-46-01-941.png     PNG File image-2023-07-02-13-50-05-036.png    

 Description   

This is a graph

I have now deleted the  item for gy “S10506: Ten Gigabit Ethernet5/0/4 (To-Dell_vmnic4): Speed” ,resulting in the graphics being deleted

I do not want to delete items in the graph, which will result in the graph being deleted,

I hope that after deleting the items in the graph, the deleted monitoring items will not be displayed in the graph, rather than the graph being deleted,This is very useful to me, I hope it can be achieved






[ZBXNEXT-7990] Having an issue starting zabbix agent as different user. Created: 2022 Sep 22  Updated: 2022 Sep 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 5.0.28
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Takashi Worrell Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Amazon Linux release 2 (Karoo)


Attachments: PNG File image-2022-09-21-22-53-31-004.png    

 Description   

Created a zabbix item to run a query to Amazon's RDS.

When I tested the bash script on the server, it works. When I tested the zabbix item, I'm seeing the following below.

I noticed when I ran ps aux, the list of zabbix_agentd processes are running as zabbix when it should be snetzabbix since that user is able to access the RDS Instance on AWS. But I can't change it after trying many steps that I tried over the web. Tried chowning the file to the specified user, configured the zabbix agent config file to use snetzabbix. However, it did not work.

Trying to get some ideas here on what I can do to resolve this issue.



 Comments   
Comment by Takashi Worrell [ 2022 Sep 23 ]

I'm following up to see if there's any update to this case?

Since there's no user for zabbix created in the home directory, does that I have to create one and make a cnf file to connect to Amazon's database.

It's centos based linux system.





[ZBXNEXT-7878] Add function to visualize recent and past data for an item on the same basic graph Created: 2022 Jul 22  Updated: 2022 Jul 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: thomas Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello Zabbix team

It would be great to visualize recent and past data on the same basic graph, for network traffic graph for example, without using calculated items to be more efficient.

Best regards,

Thomas

 






[ZBXNEXT-7837] how to prevent agent re-reading log repeatedly Created: 2022 Jul 01  Updated: 2023 Jul 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 6.0.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: romeo Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File agent.jpg    

 Description   

to monitoring oracle alert log with agent, today my cell phone received a lots of alert message. and then I check agent log  found this message:***still has not been updated,consider it to be a new file.(check the attachment)  ,I want konw why agent designed like this and how to prevent. I hope agent still read message from end of log file.



 Comments   
Comment by TRONG NGUYEN [ 2023 Jul 07 ]

I have the same issue when monitoring MT4 log with zabbix 5.0 LTS (I have CentOS 6 server so can not use zabbix 6.0), I found that the mechanism for writing MT4 log file is quite special, the MT4 log file is written continuously so the mtime of log file always changes, however the size of log file does not change. So it always have this log when I checked zabbix_agentd.log:

``30931:20230707:155822.971 the modification time of log file "/window/MetaTrader4Server/logs/20230707.log" has been updated without changing its size, try checking again later
 30931:20230707:155914.022 after changing modification time the size of log file "/window/mt4reportserver/20230707.report.log" still has not been updated, consider it to be a new file``

This make zabbix re-read MT4 log file repeatedly and make noise for my team.

I've tried this option in logrt[] function:

``mtime-noreread - non-unique records, reread only if the size changes (ignore modification time change).``

But when log file is written continuously, zabbix does not show anything because the file size does not change. 

Any one knows how to prevent zabbix re-reading log file, please help me!!!!!

Thanks so much!!!





[ZBXNEXT-8210] new macro function: Replace Created: 2023 Jan 16  Updated: 2023 Mar 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be useful to have REPLACE additional macro function for processing for example {ITEM.VALUE}.

So It would remove or replace some characters inside value. For example remove double quotes " or singe quotes 'or any other.






[ZBXNEXT-7981] More explicit indication of active agent availability Created: 2022 Sep 19  Updated: 2022 Sep 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ilya S Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-09-19-12-49-38-355.png     PNG File image-2022-09-19-12-53-40-834.png    

 Description   

Good afternoon! I would like to see a more explicit indication of the availability of the active agent. When there are many hosts with active agents, it is very inconvenient to point at each one and see the result. It would be cool to have a clear indication of the availability of the active agent on the hosts panel in the form of a green border on the icon



 Comments   
Comment by Ilya S [ 2022 Sep 19 ]

As an option, you can also repaint the ZBX in green


 





[ZBXNEXT-7866] Regular expressions are buggy Created: 2022 Jul 18  Updated: 2022 Aug 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: zabbix_1993 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ubuntu22.04
zabbix6.2


Attachments: PNG File image-2022-07-18-13-16-35-935.png     PNG File image-2022-07-18-13-17-09-722.png    

 Description   

 



 Comments   
Comment by Mihails Prihodko [ 2022 Aug 02 ]

Could you please describe this problem in English with screenshots in English?





[ZBXNEXT-7865] Cannot add Overrides Created: 2022 Jul 18  Updated: 2022 Jul 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: zabbix_1993 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ubuntu22.04
zabbix6.2


Attachments: PNG File image-2022-07-18-10-56-59-319.png    

 Description   

Cannot add Overrides






[ZBXNEXT-7891] gRPC receiver to support telemetry feature (with DTLS and data compression) Created: 2022 Jul 29  Updated: 2022 Sep 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: thomas Assignee: Andris Zeila
Resolution: Unresolved Votes: 15
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hello Zabbix team,

It would be great if we would use Zabbix as a telemetry receiver to collect metrics (push model). We could use this feature to monitor Cisco Nexus devices for example.

Best regards,

Thomas

 






[ZBXNEXT-7861] Add nowait option for an external check Created: 2022 Jul 15  Updated: 2022 Jul 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 6.0.6, 6.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Use case example:
Enterprise Storage system which can be monitored only using custom script (for example Python, Perl, PS, bash) and this script requires 30+ seconds to be executed, after data will be pushed using Zabbix Sender - this allows to make scheduled data gathering with Server/Proxy side only, without requirements to have Agent somewhere else.






[ZBXNEXT-8127] Consistent Host Discovery Created: 2022 Nov 30  Updated: 2022 Nov 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Proxy (P), Server (S), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Norbert Püschel Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 1
Labels: actions, api, frontend, lld, macros, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Host Discovery, Auto Registration, Host Prototypes



 Description   

Zabbix currently has three different mechanisms to automatically create host objects: Discovery with Discovery Action, Autoregistration Actions and LLD Host Prototypes. Each of these is a powerful, useful mechanism on its own. Together they are are confusing inconsistent mess.

For example: LLD creates Hosts with Host Prototypes, allowing you to use Preprocessing and Macros to exactly define the created host. Discovery and Autoregistration are limited to actions with a limited set of possible operations and no preprocessing.

On the other hand, Discovery and Autoregistration create fully customizable host objects, while hosts generated from prototypes are weirdly crippled with a lot of attributes that are readonly (there has been improvement recently there, but e.g. host groups still cannot be added). Even worse, all dependent hosts will vanish when the master host is deleted, which means for example by deleting the vCenter-Host you can wipe out all of your compute monitoring history with two mouse clicks!

So I propose to unify these three mechanisms in a useful and consistent manner:

1) No more dependant hosts and readonly attributes - what use are they anyway? Make host prototypes generate fully editable hosts.

2) Change Discovery and Autoregistration from Actions to a LLD-Style interface with host prototypes and Preprocessing. This would allow much better initial customization of discovered hosts.

3) Make them work together: Whenever a host is found by multiple discovery methods, just let them add their stuff together:

  • Host groups are all added if new -> no problem.
  • Templates are added if new; if there is a conflict, the template that was added first wins.
  • User Macros are copied; if the host already has the respective macro set, it keeps is value.
  • Interfaces are added if they have different attributes.

4) Adopt the LLD "yellow exclamation mark" method for deleting hosts that are no longer discovered by ANY discovery method. Add a button to switch such a host to "manually created" to protect them from expiration.

I believe these changes would make host discovery much more powerful and understandable at the same time.

 






[ZBXNEXT-8153] cannot modify macros on discovery host like vmware vm Created: 2022 Dec 12  Updated: 2022 Dec 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.12
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: romeo Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

cannot modify macros on discovery host like vmware vm,how can I change macro on discovery host ,because I want apply different trigger threshold value.






[ZBXNEXT-8143] Use "Info" Column for custom information Created: 2022 Dec 07  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Hugo Waschburger Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix server running on Ubuntu


Attachments: PNG File image-2022-12-07-11-17-52-869.png     PNG File image-2022-12-07-11-22-39-443.png    

 Description   

Hello everyone, I noticed that there was an empty column in the "problems" widget of zabbix

I would like to know how I can manually modify the info column

I know I should go to the "monitoring" menu and then to the "problems" sub-menu, but once in the right sub-menu I can't change the "info" field

If someone has an idea please tell me.
Thanks



 Comments   
Comment by Philippe Petit [ 2023 Feb 22 ]

Same Issue

 





[ZBXNEXT-8116] Configurable option for saving state in monitoring section Created: 2022 Nov 22  Updated: 2022 Nov 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.9
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

In Zabbix 6.0.X we have implemented ZBXNEXT-7567 Remember filters under Monitoring.

Its cool feature.

The problem is, when you work with multiple browser windows (because you are keeping watch over multiple things at once) or when you pass the page link to somebody else (who have their own view opened to something different), the page does not display what the form filtering suggests, as it keeps the “saved” filters underneath that you cannot sometimes see or modify, without using the form “Reset” button.

With a lot of open tabs, and even for some of our users, this behavior is counter-intuitive and a little annoying to handle.

Maybe having this option configurable would be useful…






[ZBXNEXT-8343] Add Polychromatic Color Option For Svg Graph Created: 2023 Mar 13  Updated: 2023 Mar 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ryan Eberly Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There are many people with some form of color blindness. The current monochromatic (single hue) option in the SvgGraph makes it difficult to distinguish different items in a dataset. An option should be added to allow to switch to polychromatic so that each adjacent item in the graph contrasts against one another. Polychromatic is the default when you graph items from the latest data page, and I think there should at least be the option to do this in the SvgGraph widget.






[ZBXNEXT-8342] zabbix6.4 Importing a Template fails Created: 2023 Mar 11  Updated: 2023 Mar 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.4.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: zabbix_1993 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix6.4 ubuntu22.04


Attachments: PNG File 图片1.png    

 Description   

Failed to export a template from one zabbix6.4 to another zabbix6.4 with the same environment. Procedure






[ZBXNEXT-8180] Host Export along with thr templates Created: 2022 Dec 27  Updated: 2022 Dec 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dileep Bammidi Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-12-27-10-22-27-322.png    

 Description   

When we export hosts from one zabbix and import it in other zabbix where the templates linked in first zabbix are not present, it is lot of manual work where we need to look for those templates and import.
It would be better if we have Host export along with templates.






[ZBXNEXT-7550] Set inventory field value based on static text or hostmetadata in discovery/autoregistration actions Created: 2022 Mar 12  Updated: 2022 Mar 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Adam Splitt Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

For discovery and autoregistration events, there are operations:

add / remove host
enable / disable host
add to / remove from host group
link to / unlink from template
set host inventory mode

https://www.zabbix.com/documentation/6.0/en/manual/config/notifications/action/operation
We need additional action like "set inventory field [choose field] value to", and with options to select: "static text" or "part of text from HostMetadata (by regex)"

This way, we can easily use Zabbix geomaps with private subnets. Also inventory can be filled with information directly send in autoregistration proces (no need for items on host = no vaste in history tables + free some machine resources needed for items).

Example, if we use the addresses 192.168.10.x for one location and 192.168.20.x for the other, we can set the corresponding coordinates in the inventory for both locations by discovery rules, using the option above (no external services used, no need for additional item and its scripts).
We can add an auto-registration rule based on HostMetadata, if HostMetadata contains specific text, then selected inventory fields are filled with some text from HostMetadata or static text.






[ZBXNEXT-7475] zbx_sessionid length is too short and not configurable Created: 2022 Feb 08  Updated: 2022 Feb 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: wangdong Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-02-08-16-47-41-765.png    

 Description   

Currently, zbx_sessionid has a fixed length and cannot be modified. We hope that zbx_sessionid can be designed as a configurable parameter.






[ZBXNEXT-7449] Security :Audit log trigger action Created: 2022 Jan 27  Updated: 2022 Feb 01

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: WytheNet Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

After the user login zabbix, send a login notification to the user's IM to enhance security.

I think we can make "action" support "audit logging"






[ZBXNEXT-7429] Agent for MacOS M1 Created: 2022 Jan 18  Updated: 2023 Jul 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 5.0.19
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Gorbach Assignee: Rostislav Palivoda
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Apple is changing architecture for its own devices to M1. The only Zabbix agent for amd64 architecture is available for now. Please, provide Zabbix Agent macOS for M1-based devices



 Comments   
Comment by Vladislavs Sokurenko [ 2022 Dec 05 ]

Actually both server and agent can be compiled, both work pretty well, especially server is very fast.

./configure --enable-server --with-mysql --prefix=$(pwd) --with-zlib=/opt/homebrew/Cellar/lzlib/ --with-libevent=/opt/homebrew/Cellar/libevent/2.1.12 --enable-agent

With openssl:

./configure --prefix=$(pwd) --with-zlib=/opt/homebrew/Cellar/lzlib/ --with-libevent=/opt/homebrew/Cellar/libevent/2.1.12 --enable-agent --with-openssl=/opt/homebrew/opt/openssl@3 




[ZBXNEXT-7398] No encryption provided for remote monitoring of Zabbix stats Created: 2021 Dec 27  Updated: 2022 Jul 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 5.0.19, 5.4.9, 6.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

https://www.zabbix.com/documentation/5.0/en/manual/appendix/items/remote_stats

Affected versions 5.0/5.4/6.0






[ZBXNEXT-7126] Add support of the GOST R for Zabbix component encryption between components Created: 2021 Dec 16  Updated: 2022 Jan 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
causes ZBXNEXT-5140 Add support for the Alt Linux SPT and... Open

 Description   

https://github.com/gost-engine/engine
https://www.altlinux.org/OSS-GOST-Crypto



 Comments   
Comment by Edgar Akhmetshin [ 2021 Dec 16 ]

According to the https://github.com/gost-engine/engine additional engine can be used with any OpenSSL implementation.

Astra Linux provides this engine out of the box, so can be used for development of this implementation.

Need to analyse if we can add GOST R algorithms support to encrypt connections between all components.

Issue requires:

  • Encryption between Zabbix components;
  • Full integration and support with Astra Linux out of the box;
  • Documentation for Astra Linux in Russian language + example how to setup and use;
  • Blog post with an announcement of this feature added;
  • Documented example how to implement this option for other operating systems - Ubuntu/RHEL;




[ZBXNEXT-7470] Template for GPU monitoring in Linux Created: 2022 Feb 04  Updated: 2022 Mar 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N), Templates (T)
Affects Version/s: 6.0.0beta3, 6.0.0rc2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Malik Armughan Mehboob Bhutta Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System, Video Processing GPU based AI servers



 Description   

Currently, there is no official template or way to Monitor GPUs in servers. GPUs are a necessary part of next-generation AI-based applications that are using accelerated computing.

I found below 2 templates to monitor GPUs via Zabbix that are really old and have not been updated since 2018. Although working with Zabbix 5.0 but we need more data and deep monitoring for GPUs.
 1. Zabbix Share - NVidia-SMI Integration

2. Zabbix Share - Nvidia-smi monitoring for multiple GPUs






[ZBXNEXT-7444] zabbix package for use in closed networks Created: 2022 Jan 25  Updated: 2022 Jan 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Packages (C)
Affects Version/s: 5.0.18, 5.0.19, 5.4.8
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: pumpkkkkin Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I want to use zabbix where there is no internet connection.

However, the dependencies of the installation files included in the zabbix package cannot be resolved without the Internet.

Can I get a zabbix package that I can use without an internet connection?

 

 

 



 Comments   
Comment by Jurijs Klopovskis [ 2022 Jan 25 ]

You should be able to download all the packages manually an the pass them to the package manager for installation at once. It is tedious but doable.





[ZBXNEXT-7134] "Zabbix agent" type items should also have the possibility to execute a script Created: 2021 Dec 20  Updated: 2021 Dec 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Florain Schmaus Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

If I am not mistaken, then the only way to create an item which is based on the outcome of an script being executed on a host is via "SSH Agent" item types. Since Zabbix server is already able to execute arbitrary code on a host via a Zabbix agent, it would be great if "Zabbix agent" items would also allow the execution of scripts, then Zabbix users would not need to setup an additional SSH access for this.






[ZBXNEXT-7133] The exit status of "executed scripts" should be available as item value Created: 2021 Dec 20  Updated: 2021 Dec 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Florain Schmaus Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

If I am not mistaken, then the "exit status" of execute scripts via the "SSH agent" is not available as item value. At least, I could not find any documentation about it.

As new Zabbix user, I was very confused that I had to configure an "executed script" item to have textual value, and then later configure a trigger that basically searches the output for a certain string (e.g., find(/Systemd via SSH/ssh.run[check-systemd-units-via-ssh,"\{HOST.CONN}","\{$SSH_PORT}",utf8],,,"failed")=1).

What I would have expected is that I can configure a script, that returns '0' if everything is alright, and that returns a non-zero exit status if something is wrong. Then I could simply configure a trigger based on a non-zero exit status of the executed script.

 

Hence, what I ask here as feature request is:

  1. It should be possible to record the exit status of the executed script as the item's value
  2. The textual output of the script should be available as "operational data"

Especially 2. would be very nice to have, as the integer value of the exit status is not able to store much contextual information. Ideally, if the trigger fires, the Zabbix users would be additional presented with the textual output of the script, to get a clear, or, at least, better picture of what went wrong.






[ZBXNEXT-7392] Return tree view in Services Created: 2021 Dec 28  Updated: 2023 Jan 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: services
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2021-12-28-17-22-36-862.png     PNG File image-2021-12-28-17-23-01-864.png    
Issue Links:
Duplicate

 Description   

Please, return tree style view for Services.

It was nice and easy to figure out whole service structure.

Service tree view in 5.4:

and in 6.0:



 Comments   
Comment by Luciano Alves [ 2023 Jan 23 ]

Hi Guys,

 

Some good/quick reference to a potential 'widget': 

 





[ZBXNEXT-7060] REST API for Zabbix Server nodes in HA Created: 2021 Nov 17  Updated: 2022 Sep 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.0.0alpha6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Andris Zeila
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Provide REST API for:
1. Load balancers to get Active/Standby nodes, for example HTTP checks are not possible currently: https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-healthchecks.html or with PCS/Corosync/Pacemaker it's not possible to find which node is active without log parsing or it's not possible to get node id for further processing;

2. Statistics related to the cluster itself.

For example:

$ curl -s http://localhost:10053/server | jq .
{
  "state": "running",
  "postmaster_start_time": "2019-09-24 09:22:32.555 CEST",
  "role": "master",
  "server_version": 6.0.66,
  "cluster_unlocked": false,
  "nodes": {
    "node1": node_id,
    "node2": node_id,
}

Main idea - provide interface for tools used within clouds or dynamic environments with LB tools.



 Comments   
Comment by Dennis Whitney [ 2022 Sep 16 ]

I ran into this need today when one of our HA nodes crashed. Since we run web and server on the same node the when the load balancer routed to the failed node the web interface stated that server was down, even though one of the HA nodes was up and active.

 

With that said, the "work around" is to make sure the web config settings ZBX_SERVER_HOST, and ZBX_SERVER_PORT are blank. Then whatever web server your load balancer routes traffic to will then connect to the correct active server.

 

It would be much nicer to have more control because in this case we're basically load balancing twice. Since we're using a load balancer and not using some kind of failover technology.





[ZBXNEXT-6946] Multiple percentiles in new graphs Created: 2021 Sep 24  Updated: 2021 Sep 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.16rc1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: patrik uytterhoeven Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: graphs, percentile
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

can't seem to find the percentile in the new dashboard graphs in the old graphs we had percentile

 

while we are add it :

it would be usefull if we could add minimum 2 percentiles

like 50 and 95 for example and also if the percentile line was calculated based on the real time data all the time nog just a horizontal line 



 Comments   
Comment by Valdis Murzins [ 2021 Sep 24 ]

The percentile itself will be added in ZBXNEXT-6940.
I will leave this task open for the other suggestion.

Comment by patrik uytterhoeven [ 2021 Sep 24 ]

thx i updated the other ticket with some extra ideas





[ZBXNEXT-7781] Zabbix Feature check Created: 2022 Jun 08  Updated: 2022 Jun 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: jackson shin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello, I'm jackson and i'm Zabbix Partner in korea.

 

I need a to checklist for introducing zabbix to customer.

 

  1. We have confirmed that the DB to which zabbix will be connected states "ElasticSearch will also be available."

At this time, I wonder when the exact release date for EleasticSearch is and what formats support EleasticSearch.

  1. It is necessary to check if a separate custom type can be added from the medium type of Zabbix. For example, in the case of a client messenger, we use our own messenger, but we need to check if we can use it by linking this messenger with Zabbix. I wonder if it is possible to provide a guideline.

 

 






[ZBXNEXT-7710] Change the trigger expressions for filesystems monitoring Created: 2022 May 12  Updated: 2024 Feb 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 5.0.23, 6.0.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Gorbach Assignee: Andrey Tocko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Current trigger expressions in filesystem monitoring templates for Windows and Linux are redundant

#5.0
{TEMPLATE_NAME:vfs.fs.size[{#FSNAME},pused].last()}>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and (({TEMPLATE_NAME:vfs.fs.size[{#FSNAME},total].last()}-{TEMPLATE_NAME:vfs.fs.size[{#FSNAME},used].last()})<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or {TEMPLATE_NAME:vfs.fs.size[{#FSNAME},pused].timeleft(1h,,100)}<1d)

#6.0
last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused])>{$VFS.FS.PUSED.MAX.CRIT:"{#FSNAME}"} and ((last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},total])-last(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},used]))<{$VFS.FS.FREE.MIN.CRIT:"{#FSNAME}"} or timeleft(/Linux by Zabbix agent/vfs.fs.size[{#FSNAME},pused],1h,100)<1d)

We've used total-used difference instead of

vfs.fs.size[,free] usage,

so the item with the mentioned key should be added to the template, and the trigger expression should be modified accordingly to not waste CPU resources for calculating the value, which we're able to get natively.

Next - timeleft function usage - is completely redundant, which could overload the system in case of thousands of hosts monitoring. Prediction is an additional function, which should not be included by default






[ZBXNEXT-7678] Initiate Maintenance even if start time skipped by DST. Created: 2022 May 06  Updated: 2022 May 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrey Tocko Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
causes ZBXNEXT-7463 Prolong or shorten maintenance period... Open
Duplicate

 Description   

Imagine weekly maintenance with period 02:00-12:00 on Sunday. It is expected that EACH Sunday, a group of hosts undergoes automatic maintenance tasks for 10 hours.
But in case of DST change, 02:00 can be skipped and there is no maintenance at all.

Please, consider if this behavior is worth changing.






[ZBXNEXT-7663] Notify administrator if database in read only mode (extend database down message) Created: 2022 Apr 29  Updated: 2023 Jan 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.23rc1, 6.0.4rc1, 6.2.0alpha2, 6.4.0beta5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Use case example (one of many):

You have 2 node patroni cluster in Amazon, Load Balancer (for some reason patroni API status was ignored by LB itself) failed to switchover and Server generates tons of logs with read only error, because LB points to read-only database. Technically connection is not lost and administrator will not receive "database down message".

Or accidentally DBA changed with Read Only permissions account for Zabbix Server.

This will help avoid situation with no events/problems from Zabbix and not working Zabbix.






[ZBXNEXT-7634] Error details for db and vault connection from frontend Created: 2022 Apr 14  Updated: 2022 Apr 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.22, 6.0.3, 6.2.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File MicrosoftTeams-image (7).png     PNG File Screenshot 2022-04-14 at 11.29.27.png     File test_connection (1).diff    

 Description   

During Zabbix setup (fresh instance) and daily usage (with some DB/Vault changes) it's possible to get errors like: "Vault connection failed or Database connection failed" (for example, DBA changed MD5 to SCRUM auth method for PgSQL or self-signed CA changed to access Vault):

Such (not)"detailed" error message is a nightmare in terms of support and maintenance, especially when you need to fetch credentials from vault and use encryption for database connection with certs, a lot of places to check, adjust and no helpful info what happened.

Please add all the error details to the output like here ( test_connection (1).diff ):






[ZBXNEXT-7104] Ability to update somehow a trigger prototype without beeing replaced Created: 2021 Dec 08  Updated: 2022 Mar 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 5.4.7
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: thierry regis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello ,

 

We are facing a complicated issue.

 

we use a lot LLD process, but one thing witch is missing is the possibility to update, somehow , a trigger to perosnnlyse what is discoverd .

 

in our configuration , we usually personnalize the Trigger name with a code , to define the incident workflow. With LLD process it is not possible , as it is update after each discovery .

 

It will be really usefull , if we could at least , personnalise the trigger description field, without beeing update on each discovery .

 

As it is in a trigger description in a traditionnal template ( without LLD) 

 

Is there a way to do that somehow  in the current version ?

I think you got the idea , but it can more describe if needed

 

actually all items/triggers LLD discovery can't be diffrentiated and it reduce consiquantly the action field , ( with the API it will allow many diffretn workflow with that functionnality )

 

thanks in advance for your response , regards

 

Thierry

 

 



 Comments   
Comment by Constantin Oshmyan [ 2022 Mar 14 ]

Thierry,

maybe, using of user macro with context could help in your case?
It could be used in trigger name.
You can define some "default" value (like "UNKNOWN") as the value of this user macro without context (for the cases if you missed some specific value) and some specific values for every discovered trigger LLD-macro as a value of user macro with context.
See an example on the Screenshot 2 here.





[ZBXNEXT-7442] Filter discovery objects on agent side. Created: 2022 Jan 24  Updated: 2022 Jul 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate

 Description   

Currently we discover objects by some discovery for example filesystem discovery on agent and bring all data in JSON format for filtering and processing on server.
Which has some impact on overall performance especially when remote server has huge number of entities.

So would be great to extend syntax of discovery key for including or excluding some objects, for example with types, probably with names it brings a lot of issues etc.

vfs.fs.discovery[include,"ext3,ext4"]
or
vfs.fs.discovery[exclude, tmpfs]

The same for other default discovery keys.






[ZBXNEXT-6819] Zabbix device centric tree Organizer, based on the groups hierarchy and the inheritance + data presentation in a table + disabling alerts for all devices behind key node, which are located in lower-level groups. Created: 2021 Aug 05  Updated: 2021 Aug 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alex Zhdanovich Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 2021-08-05_12-06.png     PNG File 2021-08-05_12-07.png     PNG File 2021-08-05_12-08.png     PNG File 2021-08-05_12-09.png     PNG File 2021-08-05_12-10.png    

 Description   

Shortly: Zabbix is lacking two very important things: any organizer like - group+ devices orientated tree and the table presentation for any data (devices, latest data etc.).

I would suggest the improve Zabbix frontend and probably to do something about fake alerting for the devices based on groups hierarchy.

If we try to compare Zabbix frontend with another monitoring systems we can see that Zabbix does not have any organizers. For instance, we have about 1000-2000 devices segregated by groups like ou can se below, due to needs of hierarchy and inheritance for creating the tickets according to groups for different teams:

ABC/
ABC/SiteA1 Node.suffix/
ABC/SiteA1 Node.suffix/SiteA2 Node.suffix/
ABC/SiteA1 Node.suffix/SiteA2 Node.suffix/SiteA3 Node.suffix

ABC/
ABC/SiteB1 Node.suffix/
ABC/SiteB1 Node.suffix/SiteB2 Node.suffix/
ABC/SiteB1 Node.suffix/SiteB2 Node.suffix/SiteB3 Node.suffix

etc.

+
Enterprise/SiteB3 Node.suffix
Enterprise/SiteB3 Node.suffix

+
For type of devices
Device/Router/Cisco

All devices have the unique name like RTR-HOP-MKT-1.GHS-DDN-DTJ with unique suffix, which is related to the Node an Site. If we need to find any group or any device, we have to search by suffixes and go through the list of showing devices and trying to find needed device.

If we do not have any external list of groups (suffixes) we need to search for all groups and go Especially huge list of groups or devises. This is not visual and hard to find any device or group. Especially, if you are at first time in Zabbix and do not have any external documentations and scheme. Moreover, the general main search does not work for the Maps and you would need to go in the Maps and search them separately. If we named any group or device wrong it would be very hard to find it after.

it can be solved by the tree of groups and showing the devices in this tree for navigation with the list of devices in the table. The table representation any data in Zabbix is not possible either. It can be solved partially by Latest Data, but this functionality was removed in the Zabbix 5.4 too.

Zabbix partially has something like this in the hierarchic maps. Unfortunately, you would need to build all your maps an keep them updated and organised. Another issue in our case is, at the end of ray of a star we have Enterprise client maps and all alerts from this maps (groups) should be shown for another team, but at the same time we need these maps for keeping the devices organized. In this case we are building two maps trees, and put on the map the Image instead of the map and put the url for the Enterprise maps, which is some extra work.

We can see the prototype of tree + table representation in some of monitoring systems like Zenoss or Ubiquity UISP.

On the screenshots you can see the representation of the infrastructure in Zenoss, where we used the locations like groups in Zabbix and the data representation for WiFi AP + clients SU (in the same way we can see file systems, interfaces etc.)



 Comments   
Comment by Evgeny Yurchenko [ 2021 Aug 08 ]

If anybody wants to try seeing groups hierarchy using this Zabbix Module: https://github.com/BGmot/zabbix-module-hosts-tree





[ZBXNEXT-6831] Increase a number of allowed Trapper processes to be started by Zabbix Server Created: 2021 Aug 11  Updated: 2021 Aug 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.14, 5.4.3, 6.0.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS: 7.9;
Database: Percona 5.7;
Zabbix: 5.0.14 (+ZBX-19715);
Proxies: 22337;
NVPS: 30 000 to 80 000 depending on the time of the day due to the geographic distribution of Proxies;


Attachments: PNG File image-11-3.png    
Issue Links:
Causes

 Description   

Current limit is 1000. Sometimes Proxies/Frontend are failing with TCP/10051 port due to the intensive processing of the data from Proxies by already allocated 1000 trappers.

With customised sources and 2500 trappers:

Required limit: 5000. Increasing trappers reduces Trapper port availability problem.






[ZBXNEXT-7459] Add option for windows agent to choose user which it runs Created: 2022 Feb 01  Updated: 2022 Feb 22

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N)
Affects Version/s: 5.0.19, 6.0.0rc1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently there is no way to choose user on Windows while installing Zabbix Agent though CLI or MSI.

Would be great to have some option in Agent configuration file or MSI, CLI installation option to specify which user instead "Local system account" which is used by default.



 Comments   
Comment by dimir [ 2022 Feb 22 ]

Currently this can be done manually: https://www.zabbix.com/documentation/current/en/manual/appendix/items/win_permissions





[ZBXNEXT-6745] Enable additional interface type during auto-registration Created: 2021 Jun 25  Updated: 2021 Aug 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Currently where is no way to add new interface instead of an agent for auto-registration.

It would great if we can add already supported interface types (JMX/IPMI/SNMP), for example, if this is requested by Agent configuration.






[ZBXNEXT-7474] zbx_sessionid length is too short and not configurable Created: 2022 Feb 08  Updated: 2022 Feb 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: wangdong Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-02-08-16-44-39-650.png    

 Description   

Currently, zbx_sessionid has a fixed length and cannot be modified. We hope that zbx_sessionid can be designed as a configurable parameter。

 






[ZBXNEXT-7441] Add {ITEM.TAGS} and {TRIGGER.TAGS} Created: 2022 Jan 24  Updated: 2024 Feb 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.20rc1, 5.4.9, 6.0.0beta2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Andris Zeila
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently we have only

{EVENTS.TAGS}

which combine both items and triggers level tags.
In some cases would be great to have additional macros for better flexibility:

  • {ITEM.TAGS}
  • {TRIGGER.TAGS}

Then this could be used in notifications for example in cases when need to send only trigger based TAGS.



 Comments   
Comment by Alex Kalimulin [ 2022 Jan 24 ]

Should we also add {HOST.TAGS}?





[ZBXNEXT-4880] option to preserve multline for problem text Created: 2018 Nov 23  Updated: 2018 Nov 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Nono Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File multiline.png     PNG File no_multiline.png    

 Description   

on the dashboard, the widget "Problems" should have an option to preserve the multi-line within {ITEM.VALUE}.

Here is a description of the "issue" I'm facing :

On the dashboard, the problems are shown without the multiline : https://imgur.com/4vJdlpg

But on the event details, there is new line : https://imgur.com/a/5FkyZtC

 



 Comments   
Comment by Nono [ 2018 Nov 26 ]

Discussion & workaround/solution : https://www.zabbix.com/forum/zabbix-troubleshooting-and-problems/369579-item-value-doesn-t-always-display-multiline





[ZBXNEXT-4869] Add Tag filter to Monitoring -> Screens -> Host group issues Created: 2018 Nov 21  Updated: 2018 Nov 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ingus Vilnis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please add option to filter Problems by event tags in Monitoring -> Screens -> Host group issues.

Why, if Monitoring -> Dashboard "Problems" widget has it with lots of other filters? Because Dashboards don't have Slide Shows. 

Alternatively, go for rotation option in Dashboards. Why that? because of TV screens.



 Comments   
Comment by Rostislav Palivoda [ 2018 Nov 21 ]

Ingus, maybe its better to add slideshow to dashboards? 

Comment by richlv [ 2018 Nov 21 ]

That would be the "Alternatively" option.

Comment by Ingus Vilnis [ 2018 Nov 22 ]

Whichever gets the requirement fulfilled. 

I know that the screens were supposed to be removed sooner or later but seeing the UX/UI regressions happening lately I fear how this Screens merged to Dashboards feature will look like. 





[ZBXNEXT-4772] New graph widget zoom requires full page refresh Created: 2018 Sep 28  Updated: 2018 Sep 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Vitaly Zhuravlev Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: dashboard, graph, refresh
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBXNEXT-4588 New Graph Widget Closed

 Description   

Graph zoom requires a full page refresh. Again, I think that currently it is intended. But it doesn't provide good user experience as well as it looks like another era.






[ZBXNEXT-4625] Support mass-update of trigger URL Created: 2018 Jul 03  Updated: 2018 Jul 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.4.11
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: massupdate, trigger
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

How about supporting bulk updates of URLs in triggers?






[ZBXNEXT-4535] Additinal macros available to Dashboard Scripts Created: 2018 May 03  Updated: 2019 Sep 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4.7, 3.4.8
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Antti Hurme Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: frontend, macros, scripts, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 2018-05-03 12_39_14-Greenshot.png    

 Description   

Manually creating a new ticket from an alert could be achieved with a script. Currently not that many macros are available at → Global scripts (including confirmation text).

Would suggest making trigger.name and perhaps trigger.description available at the dashboard. With the host and trigger information, a ticket would have more useful information. To be able to assign the ticker, also current user information would be nice to have available.



 Comments   
Comment by richlv [ 2019 Sep 18 ]

User info is duplicate of ZBXNEXT-3209.
Listed the TRIGGER.* idea in ZBXNEXT-1507.





[ZBXNEXT-4538] Need Oracle DB with Zabbix 2.0.17 installation document and requred rpm details Created: 2018 May 04  Updated: 2018 May 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: manjunatha Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: actions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

DB : Oracle
OS: Linux 6.9
Zabbix Version : 2.0.17 (JDA supports only this version )


Story Points: 2

 Description   

Steps to reproduce:

  1. Changes in configuration...
  2. Navigate to screen title...
  3. Click on screen element...
  4. ...

Result:
See screenshot...
See log file...
See memory dump...
Expected:
See screenshot....
See attached patch file...



 Comments   
Comment by Alexey Pustovalov [ 2018 May 04 ]

Unfortunately we do not provide Zabbix with Oracle support packages currently. You need compile it yourself.

Comment by manjunatha [ 2018 May 04 ]

Hi Alexey,

I saw the in zabbix forma . it supports One of: IBM DB2, MySQL, Oracle, PostgreSQL, SQLit. But I don't find installation step for oracle. If you any referral doc, Can you please share to me.

Comment by Alexey Pustovalov [ 2018 May 04 ]

Please use this one: https://www.zabbix.com/documentation/3.4/manual/installation/install





[ZBXNEXT-4504] improve "enabling ... agent" log messages Created: 2018 Apr 16  Updated: 2019 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.8
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: availability, logging, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Log messages when an item check fails look like this :

JMX agent item "jmx["jboss:service=WebService","State",10019]" on host "test" failed: first network error, wait for 15 seconds

When the host is declared available again, they look like this :

enabling JMX agent checks on host "test": host became available

Notice how the item key is not identified in the latter case.
While knowing the failing key is important, it is also often useful to know which key succeeded (for example, if there are multiple jvms on the same host).

Would be good to add the successful item key in this log message as well.






[ZBXNEXT-4354] Support partial reload of configuration Created: 2018 Jan 23  Updated: 2018 Jan 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: A B Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We currently have about 6K hosts (and expect to have noticeably more in the future), and a config size of around 1.5GB. The problem is that this configuration takes over 2 minutes load, and while it does it places a significant strain on the database, to the point where we are getting alerts every time the configuration is loaded. This is compounded by the fact that almost all our hosts are virtual hosts on the cloud, and hence we have a fairly high churn of hosts being added and disabled/removed - each time a host comes up or goes down we create/update/delete the relevant host entry in zabbix and trigger a configuration reload (CacheUpdateFrequency is set to 1h, since we almost always explicitly trigger configuration reloads). Besides the database load, the fact that it takes 2 or 3 minutes to reload the config means that it's not uncommon to get alerts when hosts are going down, since the hosts will have terminated by the time the configuration is finally reloaded (though we've been able to mitigate this somewhat, but if things continue to grow and we see 5 or more minutes to reload the configuration this will become more of an issue again).

Now, the interesting thing about the above is that in the vast majority of cases when the configuration is reloaded only a small fraction of the config has actually changed - typically just one or at most a handful of hosts. This leads to the idea that it would be great if zabbix could only reload that part that changed. One idea (and I'm sure you have others and better ones) is simple: track the list of changed hosts (including templates), i.e. any time a configuration change is made create an entry in a change table specifying which host(s) got affected; then when reloading the configuration, only reload the data for those hosts (and clear the change table). In the case of templates, you'd need to also walk up the template-links to find the upstream templates and hosts that are affected in order to get the full list of hosts/templates to reload.

One nice side-effect of something like the above would be that one could probably get rid of CacheUpdateFrequency and just check for changes every minute or even more often, since if the change-list is empty there would be nothing to do.






[ZBXNEXT-4318] Creation of duplicate item prototypes Created: 2018 Jan 06  Updated: 2018 Oct 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.4, 3.4.5, 3.4.6rc1, 4.0.0alpha1, 4.0.0alpha2, 4.0 (plan)
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: patrik uytterhoeven Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: itemprototype, javagateway, lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate
duplicates ZBX-14596 cannot use same macros of discovery i... Closed
is duplicated by ZBX-14358 JMX LLD with the same key Closed

 Description   

The documentation mentions to only collect a certain set of attributes for performance reasons like for ex the Garbage Collector when doing LLD for JMX.

But if you want to create another rule to gather for ex Memory then i can make sense to add an item key like in the discovery item for the garbage collector
Ex: jmx[{#JMXJOB},{#JMXATTR}]

This will fail as zabbix will complain about the duplicate key

I think this should be allowed in LLD item prototypes as on the host items with different names will be created.






[ZBXNEXT-4331] LDAP Configuration - Unable to Inject into containers Created: 2018 Jan 11  Updated: 2018 Jan 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Steve Roebuck Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: authentication
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Docker Swarm
Zabbix 3.4.5



 Description   

We are trying to build stateless containers for our zabbix implementation and we are able to inject the vast majority of configuration via standard --env statements are container launch, but we don't seem to be able to find anywhere we can set the LDAP connection strings and the authentication method to default to LDAP rather than local.



 Comments   
Comment by Raymond Kuiper [ 2018 Jan 11 ]

Please see ZBXNEXT-4268 for an API centric solution to this issue.
In the mean time, you can use a SQL statement during container/db deployment to configure LDAP auth (replace between {{ }} with your own settings):

UPDATE config SET authentication_type=1, ldap_host='ldap://{{ host }}', ldap_port={{ port }}, ldap_base_dn='{{ basedn }}', ldap_bind_dn='{{ binddn }}',ldap_bind_password='{{ password }}',ldap_search_attribute='{{ attr }}'

Comment by Steve Roebuck [ 2018 Jan 11 ]

Thank you Raymond, we will give that a try.





[ZBXNEXT-4204] Zabbix should be capable to watch filesystem events Created: 2017 Oct 31  Updated: 2021 Jan 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Schoechlin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux



 Description   

It would be good to have a new variant of active items:

Instead of cyclic updates, zabbix-agent should be capable to watch inotify events on directories or files. If a inotify event appears the item(s) should be fetched and delivered.
For some types of items this eases reviews of values/certain situations, allows to write easy nodata triggers and saves lots of space in the database.

Example:
The puppet state file /var/lib/puppet/state/last_run_summary.yaml is written after every puppetrun. If the zabbix detects the change and send only values if the event appear it would be easy to get the exact execution time and the resulting value of puppetruns.

Probably it would be a good idea to have a more general solution:
External checks which are allowed to block forever until values are delivered.

#!/bin/bash

inotifywait -e modify /var/lib/puppet/state/last_run_summary.yaml

  1. converted from yaml file
    echo < EOF
    Linux DB1" db.ping 1
    "Linux DB3" db.ping 0
    "Zabbix server" db.status 0
    "Zabbix server" db.error "Linux DB3 down"
    EOF

https://openquery.com.au/blog/tool-day-inotify



 Comments   
Comment by Marc Schoechlin [ 2017 Oct 31 ]

hmm, sorry unable to change the formatting/text of a already submitted issue

Comment by Rostislav Palivoda [ 2017 Nov 02 ]

Post new text in comment and I'll update description.

Comment by Marc Schoechlin [ 2021 Jan 03 ]

Next text:

It would be good to have a new variant of active items:

Instead of cyclic updates, zabbix-agent should be capable to watch inotify events on directories or files. If a defined inotify event appears the item(s) should be fetched and delivered.
For some types of items this eases reviews of values/certain situations, allows to write easy nodata triggers and saves lots of space in the database.

Example:
The puppet state file /var/lib/puppet/state/last_run_summary.yaml is written after every puppetrun.
If the zabbix detects the change and send only values if the event appear it would be easy to get the exact execution time and the resulting value of puppetruns.

The usage behavior could be:

  • define a (active) zabbix item
  • change a newly created toggle from "update based" to "file system event" and configure details (see: man 7 inotify)
  • file system pattern
  • inotify event type(s)
  • define a userparameter item which calls a script which reads the yaml file an converts it to json (suitable for a json path item preprocessing)

https://openquery.com.au/blog/tool-day-inotify





[ZBXNEXT-4194] Manual LLD discovery Created: 2017 Oct 20  Updated: 2018 Apr 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tatapoum Assignee: Rostislav Palivoda
Resolution: Unresolved Votes: 1
Labels: lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-4493 Global, template and host defined lists Closed

 Description   

It would be great to allow some kind of "manual" LLD discovery item, allowing to enter a JSON-formatted object in the WebUI.

This could have multiple use-cases :

  • LLD debugging
  • handling multiple instances of the same application :
    Let's say that you have several instances of an DB app running on the same host, and for each instance you'd like to monitor many items (in a template). AFAIK, for the moment, you have mainly two inelegant solutions :
    • create multiple hosts representing the app instances and link the template to each host
    • clone the template for each instance and edit it the avoid name conflicts
    • don't use a template and clone each item multiple times

With a "manual" LLD discovery, you would create a template, declare many item prototypes and link it to the host. Then, in the "manual" LLD discovery item, you would set following value in an editable field, for example :

{
  "data":[
  { "{#DBINSTANCENAME}":"Prod",  "{#DBINSTANCEPORT}":"30001" },
  { "{#DBINSTANCENAME}":"Dev",   "{#DBINSTANCEPORT}":"30002" },
  { "{#DBINSTANCENAME}":"Test",  "{#DBINSTANCEPORT}":"30003" }
  ]
}


 Comments   
Comment by Alexey Pustovalov [ 2017 Oct 20 ]

You can use zabbix-sender. Is it a good option for you?

Comment by Andris Zeila [ 2017 Oct 23 ]

I second that. You can create lld rule based on trapper item and send the described lld data with zabbix_sender. It might not be as nice as being able to do it from frontend, but still it should be viable workaround.

Comment by Tatapoum [ 2017 Oct 23 ]

I known I can use zabbix_sender and a trapper item. But why making this complicated when it can be simple ? I would be an easy workaround for the lack of parameterized-templates. How can we deal with multiple instances of the same app on a server at the moment ?

Comment by Roman Rajniak [ 2018 Apr 16 ]

Is it necessary write parameters in JSON on frontend?
I think, Write only parameters like /[ "macroName","macroValue" /] is little bit more user friendly and readable. See ZBXNEXT-4480 .





[ZBXNEXT-4133] zabbix java gateway support http-remoting-jmx Created: 2017 Sep 30  Updated: 2018 Jan 03

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Java gateway (J), Server (S)
Affects Version/s: 3.4.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: battulga ganbold Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux 64bit (RHEL6,7)



 Description   

Now zabbix java gateway only support native rmi protocol.
need support http-remoting-jmx protocol (used wildfly, jboss).



 Comments   
Comment by Vjaceslavs Bogdanovs [ 2017 Oct 04 ]

battulgag, have you tried changing value of JMX endpoint?

Comment by Marc [ 2017 Oct 04 ]

Beside the proper JMX endpoint it's also required to add some JARs. See JBoss EAP 6 monitoring using remoting-jmx and Zabbix

Comment by Vjaceslavs Bogdanovs [ 2017 Oct 05 ]

Yes, JARs should be added to classpath as well.

Comment by battulga ganbold [ 2017 Oct 09 ]

want mixed JMX endpoint.
"JBoss EAP 6 monitoring using remoting-jmx and Zabbix" possible just one way.
our some JMX endpoints native JMX RMI and some is wildfly(http-remoting-jmx).

Comment by richlv [ 2018 Jan 03 ]

is there anything extra required besides the jarfiles ?

in any case, duplicate of ZBXNEXT-3868

Comment by richlv [ 2018 Jan 03 ]

ZBXNEXT-2906 suggests that endpoint + jars might suffice





[ZBXNEXT-4252] SNMP and Multiple PROBLEM event generation mode Created: 2017 Nov 22  Updated: 2018 Oct 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Arthur Ivanov Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Let's talk about this feature:
https://www.zabbix.com/documentation/3.4/manual/config/event_correlation/trigger

This works right only if expression are simple, like "A=B"
but if you have something like this "A=B and C=D and E=F" in some cases zabbix will be triggered for 3 times.

It would be nice to catch this situation. It will very usefull in SNMP Trap parsing.

For example i have a TRAP:

VARBINDS:
DISMAN-EVENT-MIB::sysUpTimeInstance type=67 value=Timeticks: (550825447) 63 days, 18:04:14.47
SNMPv2-MIB::snmpTrapOID.0 type=6 value=OID: ThreeParMIB::alertNotify
ThreeParMIB::component.1 type=4 value=STRING: "test_trap"
ThreeParMIB::details.1 type=4 value=STRING: "This is a test trap sent from InServ XXXX, Serial Number xxxx"
ThreeParMIB::nodeID.1 type=66 value=Gauge32: 3
ThreeParMIB::severity.1 type=2 value=INTEGER: 6
ThreeParMIB::timeOccurred.1 type=4 value=STRING: "2017-11-17 15:02:39 MSK"
ThreeParMIB::id.1 type=66 value=Gauge32: 4294967295
ThreeParMIB::messageCode.1 type=66 value=Gauge32: 4294967295
ThreeParMIB::state.1 type=2 value=INTEGER: 5
ThreeParMIB::serialNumber.1 type=4 value=STRING: "XXX"
ThreeParMIB::catalogKey.1 type=4 value=""
ThreeParMIB::detailedMessage.1 type=4 value=""

Based on new feature "dependent items" i had parse this text to separated items

...

key[severity] ThreeParMIB\:\:severity\..value=(.:\s)?\"(.*)?\"
key[state] ThreeParMIB\:\:state\..value=(.:\s)?\"(.*)?\"
key[detail] ThreeParMIB\:\:detail\..value=(.:\s)?\"(.*)?\"

So i have trigger expression for this items:
key[severity].last=6 and key[state].last()=2 and key[detail].strlen()>0
and i would like to have triger name like this:
Event

{ITEM.VALUE}

with state

{ITEM.VALUE2}

:

{ITEM.VALUE3}

to generate informative notifications, but
with "Multiple PROBLEM event generation mode" - event generate 3 time
without "Multiple PROBLEM event generation mode" - one event will generate, but next TRAPS will be lost, cause there is no zabbix function ".onupdate()"

..



 Comments   
Comment by Arthur Ivanov [ 2017 Nov 28 ]

One more example:

EXPRESSION-MIB::sysUpTimeInstance type=67 value=Timeticks: (2523564200) 292 days, 1:54:02.00
SNMPv2-MIB::snmpTrapOID.0 type=6 value=OID: SW-MIB::sw.0.4
SW-MIB::swEventIndex.6547 type=2 value=INTEGER: 6547
SW-MIB::swEventTimeInfo.6547 type=4 value=STRING: "2017/11/28-15:27:30"
SW-MIB::swEventLevel.6547 type=2 value=INTEGER: 4
SW-MIB::swEventRepeatCount.6547 type=2 value=INTEGER: 1
SW-MIB::swEventDescr.6547 type=4 value=STRING: "TS-1010 NTP Server Time Update from 2017/11/28-15:27:26.564653 to 2017/11/28-15:27:30.611955"
SW-MIB::swSystem.10.0 type=4 value=STRING: "zzzzz"
SW-MIB::swFabric.15.6547 type=2 value=INTEGER: 128
SNMP-COMMUNITY-MIB::snmpTrapAddress.0 type=64 value=IpAddress: 10.10.2.61
SNMP-COMMUNITY-MIB::snmpTrapCommunity.0 type=4 value=STRING: "zzzzz"
SNMPv2-MIB::snmpTrapEnterprise.0 type=6 value=OID: SW-MIB::sw

Would be nice to extract data swEventLevel and swEventDescr to bring up informational trigger (cause level =4). in "multiple problem mode".

how can be done this ?

Comment by Arthur Ivanov [ 2017 Nov 28 ]

So
would be nice to add
"OK event generation: Expression | Recovery expression | None | Timer"

It will be very usefull in case on event traps with "information/debug" things. Event has been received, blinks for 1 hour and disapear. Everyone happy

Comment by Oleg Ivanivskyi [ 2018 Oct 12 ]

Hi there,

1. Have you tried data extraction? It can be used to grab some data from value and display it in the problem name. It is very useful for the SNMP traps.
2. The global event correlation rule can be used to close duplicates automatically (https://www.zabbix.com/documentation/4.0/manual/config/event_correlation/global#global_event_correlation)





[ZBXNEXT-4094] Multi Dashboard manager Created: 2017 Sep 11  Updated: 2018 Jan 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.4.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Mr.Khang Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dashboard, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos 7 - Zabbix 3.4.1



 Description   

I just upgraded to zabbix 3.4.1 and very satisfied with new Dashboard features.
But, there're something come into my mind:

  • Feature that let you choose which is the MAIN DASHBOARD, I mean, which dashboard will be show when user log in.
  • How about a dropdown list that let you choose between dashboards, instead of having return to Dashboards page and choose which dashboard to show.
    Please consider about these things and finally, sorry for my bad english grammar.


 Comments   
Comment by Ingus Vilnis [ 2017 Sep 11 ]

While the request is not implemented how about using the URL after login field in the user profile and direct it to the URL of the dashboard you want to use?
https://www.zabbix.com/documentation/3.4/manual/web_interface/user_profile

Comment by Mr.Khang [ 2017 Sep 12 ]

Oh I totally forget about that option, thank you very much,Ingus Vilnis, for your suggestion,
I'll use that but still waiting for this feature update.





[ZBXNEXT-4076] Use a controlling socket instead of signals for controlling the zabbix subsystem Created: 2017 Sep 01  Updated: 2018 Apr 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrea Biscuola (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: control, runtime, server
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Actually, for controlling the zabbix server at run-time, zabbix use a signal subsystem that is linux specific (for example you can't control zabbix at runtime on other operating systems).
Being zabbix also used outside of Linux (and I know a lot of cases for it), the proposal is to replace the signal-based control mechanism with a socket-based one. This will allow:

  • Safety, as signal handlers interrupt the normal flow of the program (in particular, zabbix is not completely safe on the syscall handling for this).
  • Flexibility: It will be possible to implement in a future complex controlling behaviors (like statistics on stdout regarding the server performances).
  • Portability: All the systems where zabbix compile support the standard sockets interfaces.

My idea is to have a separated utility (named like "zabbixctl"), that take care of the communication with the server and whatnot and report to the user if required (numbers, if the operation was successful etc).



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2017 Sep 01 ]

Voted. The only thing I don't like is a separate utility. It needs to be installed separately (which may be an issue in some environments) and it's kinda weird to have Zabbix but not have control over it. How is zabbixctl different from zabbix_<something> -R?

Comment by Andrea Biscuola (Inactive) [ 2017 Sep 01 ]

glebs.ivanovskis We already install the zabbix_get, zabbix_sender utilities. Out of the name (just preferences) that in this case is just an example, keeping the utility code separated is more a matter of keeping the server code clean and making it easier to do something like:

zabbix_<whatever> log verbose

or

zabbix_<whatever> show stats

Without adding the code to the (already) big codebase of the server. It's more semantic separation than anything else. But any approach will do the job anyway

Comment by Евланов Александр Викторович [ 2018 Jan 29 ]

I think it will be reasonable to use some platform-independent MQ to send commands to zabbix components. For example, ZMQ is very small library that can be compiled in each unix and on Windows as well.

So we need to simply create 1 queue for every zabbix component running on the server: for example. we can send proxy control commands to zabbix-proxy-NNN queue (where NNN is a unique instance id in the system) and agent control commands - to the zabbix-agent-YYY queue. Instance id can be stored in any place defined by the service configuraton file (zabbix_[proxy,server,agentd].conf).

Comment by Andrea Biscuola [ 2018 Apr 11 ]

Actually zabbix already have an internal library for performing
IPC operations. As a starting point it could be a good idea to
just be able to control the server and maybe, if it tuns out that
the feature is flexible enough and useful, extend it to control
other areas of the subsystem.





[ZBXNEXT-3996] Map Sharing Created: 2017 Jul 26  Updated: 2017 Jul 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.2.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: oleg16 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

My zabbix is running on centos 7.0



 Description   

Hello,
I want to allow access only to the map (web interface). But block access to all frontend.
i do not want that users can enter to the host inventory.
If i share map image they can modify the link and access to the frontend.
How should I do it? please assist.



 Comments   
Comment by Ingus Vilnis [ 2017 Jul 27 ]

Hi,
This qualifies as a valid feature request and will left open unless there are duplicates already reported. Currently there is no such functionality available out of the box.

Comment by Rostislav Palivoda [ 2017 Jul 27 ]

Would it be possible in 3.4 to extract widget in to separate HTML page? vmurzins

Comment by Valdis Murzins [ 2017 Jul 28 ]

We are not planning to do this in 3.4, but it can be considered as feature request for future releases.





[ZBXNEXT-5253] Offload preprocessing to zabbix-agents? Created: 2019 Jun 03  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Evgenii Terechkov Assignee: Michael Veksler
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

To really high-frequent monitoring, it is obvious idea to offload values preprocessing to agents. What do you think?



 Comments   
Comment by Andris Mednis [ 2019 Jun 03 ]

What do you mean by "high-frequency" monitoring? 100 times/second? 1000 times/second? More?

Comment by Evgenii Terechkov [ 2019 Jun 03 ]

Nope, I think about 0.1 - 1 time/second monitoring of free space/inodes for autodiscovered FS, with values throttling offloaded to agents.

 

As example, 5 mountpoints/FS and 1 time/second monitoring of 2 items gives total 10 nvps per host, multiple it by number of hosts. Preprocessing/throttling on agents will make this case easier for transient zabbix proxy and main zabbix server.





[ZBXNEXT-5221] Convenient monitoring of one object from different places Created: 2019 May 13  Updated: 2019 May 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Roman Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: frontend, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I would like to monitor a single network node through several interfaces on different proxy servers. This will enable the construction of distributed monitoring for a single object from different places. Either the main and subordinate network nodes. A typical use case is monitoring the availability of a web site through different providers / from different countries without increasing the number of network nodes.






[ZBXNEXT-5248] Better API warnings Created: 2019 May 30  Updated: 2019 May 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 4.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Bendyna Vitalii Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 0
Labels: api
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Server 4.2.1
Zabbix Proxy 4.2.1



 Description   
  1. API explanation: please add better explanation for API, as sometimes it's not easy to guess what should be in parameters.
  2. API response warnings: If request is correct, but, for example, parameter "proxy_hostid" is outside of parameters array, API will just omit it without notifying user that parameter is omitted. For example, in this JSON parameter "proxy_hostid" will be omitted without any warnings:
{ 
"jsonrpc":"2.0",
"method":"host.create",
"params":{ 
"host":"Some-host-name",
"interfaces":[ 
{ 
"type":1,
"main":1,
"useip":1,
"ip":"127.0.0.1",
"dns":"",
"port":"10050"
}
],
"groups":[ 
{ 
"groupid":"17"
}
],
"templates":[ 
{ 
"templateid":"10586"
}
],
"macros":[ 
{ 
"macro":"{$REAL_DOMAIN_NAME}",
"value":"example.com"
}
]
},
"proxy_hostid":"10583",
"auth":"some-auth-string",
"id":1
}


 Comments   
Comment by richlv [ 2019 May 30 ]

Mostly the same as ZBX-3783. Specific suggestions on how to improve documentation would be needed, if anything is unclear.





[ZBXNEXT-5020] Link to filtered list from template settings Created: 2019 Feb 07  Updated: 2019 Nov 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 4.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBX-16819 Hosts list are missing in template view Closed

 Description   

Filter by template name was implementer under ZBXNEXT-4725.
Would be good to have a link from template settings page to filtered list of hosts by current template name.






[ZBXNEXT-5024] Allow "Manual close" option is greyed out if triggers are creating automatically from trigger prototype and from default template Created: 2019 Feb 09  Updated: 2019 Feb 11

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Abhilash Chittahukatil Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: trigger
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Production


Attachments: PNG File triggerautoclose.PNG    

 Description   

Allow "Manual close" option is greyed out if triggers are creating automatically from trigger prototype  and from default template. Tested with windows default OS template. the services are discovered automatically by the default template and trigger prototypes are created automatically. But unable to check the option "manual close the trigger" in such cases.

 

if we manually create a new tigger prototype or new trigger, there is no such problem and able to check "allow manual close"

 

seems like its a bug. Please check.



 Comments   
Comment by Alexander Vladishev [ 2019 Feb 11 ]

Hi,

All trigger fields, except "Enabled", based on trigger prototypes cannot be changed. It can be changed on trigger prototype level. After next discovery iteration all changes from trigger prototype will be transferred to the trigger level.

Same situation with triggers, based on templates.

Comment by Abhilash Chittahukatil [ 2019 Feb 11 ]

But I am not able to change that even in trigger prototype level. There are also it is grayed out. Is this the problem because I am using the default trigger prototype from the default windows server service discovery rule ?

When I take a clone of that trigger prototype, The Manual close option I am able to check.

Comment by Abhilash Chittahukatil [ 2019 Feb 11 ]

But I am not able to change that even in trigger prototype level. There are also it is grayed out. Is this the problem because I am using the default trigger prototype from the default windows server service discovery rule ?

When I take a clone of that trigger prototype, The Manual close option I am able to check.





[ZBXNEXT-5021] Links in Hostgroup for hosts and templates list filtered by this hostgroup name Created: 2019 Feb 07  Updated: 2019 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

As feature request ZBXNEXT-5020. Supposed in hostgroup settings page create links to the filtered list of:

  • hosts by hostgroup name
  • templates by this hostgroup name





[ZBXNEXT-5048] Export/Import Services Created: 2019 Feb 15  Updated: 2019 Mar 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 4.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Cesar Murilo da Silva Junior Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: export, import, services, sla
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I have more than 800 SLA's registered, and I worry if someone will delete accidentally or not one of them. It would be better to import / export an SLA instead of restoring a backup and losing a history, even for a short period of time.



 Comments   
Comment by richlv [ 2019 Mar 10 ]

IT service import/export also requested in ZBXNEXT-3281.





[ZBXNEXT-5056] Allow regex/wildcards for vfs.files.exists Created: 2019 Feb 19  Updated: 2023 May 11

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S), Templates (T)
Affects Version/s: 4.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Hector Lopez Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 4
Labels: items, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL 6/7 64bit


Issue Links:
Duplicate
duplicates ZBXNEXT-1699 support log.discovery Open

 Description   

We are planning to migrate our current monitoring tool to zabbix but one major blocker is that Zabbix does not play well with wildcards using vfs.files.exists. A large number of our systems generate application logs where our current tool would monitor and report if found. It is actually a simple "search for anything .log or error-.log in path /this/path/to/logfile", which does not appear to work with Zabbix vfs.files.exists item.



 Comments   
Comment by Edgar Akhmetshin [ 2019 Feb 19 ]

Hello Hector,

Thank you for reporting the issue. You can use custom LLD rules to discover all files and add them to the monitoring. I found a similar case registered under ZBXNEXT-1699, so we will close this ticket and continue the discussion there. Feel free to follow the original case and vote for it.

Regards,
Edgar

Comment by Glebs Ivanovskis [ 2019 Feb 19 ]

If you don't need to dive into contents of these files, you can use vfs.dir.count[]. I think it should be sufficient for this use case.

Comment by Hector Lopez [ 2019 Feb 25 ]

Thank you everyone for your inputs! Will do more testing noting these inputs.

 

Comment by James Howe [ 2019 May 15 ]

@edgar.akhmetshin
Just because the example use case is about log files, doesn't make it a duplicate of a discovery feature request. Nothing discussed on that ticket will help when I want to know if there exists a file with a particular name, but don't care what the extension is.

Comment by Aleksandrs Petrovs-Gavrilovs [ 2022 May 10 ]

Instead of having a vfs.file.exists for each one, perhaps an item like vfs.files.exists to combine this into one item check such as:

vfs.files.exists[/path1/to/some.log, /path1/to/another.log, /path2/to/more.log, /path3/to/another2.log]

Regardless of whether the list of filenames is a single string parameter (“name1,name2”) or the item just accepts multiple parameters with each as a separate file, it would help reduce the chances of an external script timing out.





[ZBXNEXT-4900] Improve preprocessing performance Created: 2018 Dec 04  Updated: 2020 Nov 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.2.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andris Zeila Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-4914 Multiple preprocessing managers Closed

 Description   

With new features (LLD preprocessing, custom scripts) preprocessing might become a bottleneck. Currently it can push ~160k small values/sec on i7-7700 cpu. With preprocessing values becoming larger (especially in LLD case) and steps more complex (scripts) the performance drops and might not be enough.

There are two options - rework preprocessing to use worker threads instead of processes. The data exchange load will be significantly reduced, especially with large data. Another option is brute force approach - use multiple preprocessing managers each having own worker process set, split items between managers by itemid.
Some tests results by converting processes to threads (a 'trim' preprocessing step was applied to all values) :

Value Size (bytes) Values/sec
(trunk)
Values/sec
(threaded workers using sockets)
Values/sec
(threaded workers using queues)
4 167K 173k 590k
128 158K 170k 530k
1024 136K 148k 362k
2048 124K 141k 268k
4096 84K 127k 183k
8192 68K 99k 115k

Threaded workers using sockets

The worker processes were replaced with threads. The old communication protocol (sockets) was used, but instead of sending data only references to the data objects were sent. It could be optimized further, but still gives a rough estimate.

Threaded workers using queues

In this test the manager-worker communication was changed to simple mutex protected queues.

 

Or in worst case we can merge both options.

 



 Comments   
Comment by Glebs Ivanovskis [ 2018 Dec 06 ]

Network traffic compression was advertised to provide 5 times improvement in required bandwidth with "no impact on CPU or memory usage". Why can't it be used for sending LLD data to preprocessing workers?

Complexity of preprocessing steps shouldn't be the issue since it only affects preprocessing workers and you can have as many of them as you like.

wiper: I would say - no noticeable impact on CPU usage. But that's with large data. With smaller data packets it might have negative result. Currently we are limited by preprocessing manager performance, so we are looking either how to reduce or share it.

I did test pure preprocessing performance, without pushing data into history cache. With contested history cache the results would be even worse.

On the other hand if the compression is done in data gathering processes (is that what you were thinking?), then preprocessing manager has only to cache/forward the compressed data - so that should help with performance when large data (LLD) is processed.

 cyclone Honestly speaking, I wasn't thinking that far. But it sounds like a sensible approach to offload the preprocessing manager. And of course you are not obliged to compress all, small data can go uncompressed. It is a matter of protocol design to allow both types of messages. Since the protocol isn't for public use you are free to design it the way you like it.

As far as I recall, one and the only preprocessing manager was needed to keep the guarantee that the data which came first will be processed by triggers and actions first regardless of preprocessing steps it has to go through.

wiper: yes, but that guarantee is lost in history cache.

cyclone Well, I meant for items in one group of interdependent triggers... Isn't this guarantee still true if we neglect the fact that internal item processing is prioritized?

Comment by Evren Yurtesen [ 2020 Nov 09 ]

Is there a reason why preprocessing can't be moved to zabbix-agent side? this way the load can be distributed. Also with options like threshold/discard, the final transmitted data amount can be considerably smaller.





[ZBXNEXT-4901] how to monitor file systems in windows if its went offline (suppose e drive offline) Created: 2018 Dec 05  Updated: 2018 Dec 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: bhuvaneswar dabbara Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified





[ZBXNEXT-4793] Add a NOT filter to Monitoring–>Problems filter options Created: 2018 Oct 05  Updated: 2018 Oct 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marco Hofmann Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 9 amd64
Zabbix 4.0



 Description   

While working with the Monitoring->Problems view, I really wish, we could exclude stuff we don’t want to see right now. There are alreday many filter built in, but they only work in AND mode and since 4.0 in OR mode if I recall correctly. 

But we don’t have the possibility to exclude certain information. 

For example: Sometimes I have so many active “Low disk space HDD events” that it’s hard to spot other important issues. In those moments I would like to set the Problem Name filter to NOT show any event with “Low disk” in its name. 






[ZBXNEXT-4791] Guest account should be used for readonly non-destructive access to the system Created: 2018 Oct 05  Updated: 2018 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Lukas Macura Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Guest user should not be able to modify anything except explicitly set permissions.

I would say that guest user should not be "each user". It is normal behaviour in all systems that guest account is used for readonly non-destructive access to the system. 

There should be probably next permission to check/uncheck if given user can add anything or not. And in default setup, guest user should not have these permissions. In other words, guest user should not have ability to modify/add/remove anything in system except data in its own session unles it is explicitly granted by admin for guest user.

 



 Comments   
Comment by richlv [ 2018 Oct 05 ]

Hmm, what is the exact change that is sought here?

Comment by Lukas Macura [ 2018 Oct 05 ]

This is just feature requested which I created like instructed by support.

Sorry, I did not link original issue: ZBX-14453

 

 

Comment by richlv [ 2018 Oct 05 ]

Ah, I see, I'd suggest to list here all the things you think should not be possible for the guest user to do.
Note that this is similar to ZBX-3561, which was rejected.

Comment by Ingus Vilnis [ 2018 Oct 08 ]

Sure, the reason of closing ZBX-3561 is simply ridiculous. 

Additionally to the original request I want to make sure the behavior is not broken for the current read-only users. In a typical NOC the 24/7 monitoring guys are allowed to see all the hosts, AND it is vitally important for them to do ackowledge problems. In the meantime the Zabbix Super Admins don't want them to ever be able to fiddle with the host or template configs for that matter. 

Please think about this well and don't just remove this ability for current read-only users. 

My proposal would be that there is a real read-only user as suggested by Lucas, and then a "read-only with extras" like currently (ability to ack, create screens etc.).





[ZBXNEXT-4797] Allow bulk requests for JavaPollers and Java Gateway to manage connection count by itself Created: 2018 Oct 08  Updated: 2018 Oct 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Java gateway (J)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aigars Kadikis Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-14513 Openfiles leak in Java Gateway Closed
is duplicated by ZBX-14436 We are getting lot of alerts in moca... Closed

 Description   

Problem description
There is no connection pool and no bulk processing. Every check will create a new connection to specified endpoint and will hold it until all the data is received. This leads to the problem when 100 JMX metrics for the same endpoint can cause 200 open connections on Java Gateway (one for incoming connection and one for connection to endpoint).

Possible fix
The problem can be fixed by increasing the limits (ulimit or fs.file-max in /etc/sysctl.conf), setting bigger update intervals or by scaling Java Gateways so there are not so many active connections required at once.



 Comments   
Comment by richlv [ 2018 Oct 08 ]

Doesn't server/gateway already pool beans as much as possible?
If so, is this issue seeking additional pooling, both by Java pollers reusing connections to Java gateway, and Java gateway reusing connections to JMX endpoints?

Comment by Vladislavs Sokurenko [ 2018 Oct 08 ]

As far as I know Zabbix java gateway will first connect and then collect all keys for one interface

			jmxc = ZabbixJMXConnectorFactory.connect(url, env);
			mbsc = jmxc.getMBeanServerConnection();

			for (String key : keys)
				values.put(getJSONValue(key));




[ZBXNEXT-4828] Interface Se0/0/ Bits received and Bits sent Created: 2018 Oct 25  Updated: 2020 Jan 17

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 3.4.14
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Trinath Dakua Assignee: Michael Veksler
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

WAN Interface Card - HWIC Serial 2T on Slot 0 SubSlot 0: is not supported by zabbix 3.4.14 and 4.0


Attachments: PNG File image-2018-10-25-11-24-10-440.png     PNG File image-2018-11-06-16-14-45-291.png     PNG File image-2018-11-06-16-29-45-435.png     PNG File image-2018-11-06-16-30-47-136.png     PNG File image-2018-11-06-16-35-13-953.png    

 Description   



 Comments   
Comment by Vjaceslavs Bogdanovs [ 2018 Nov 01 ]

Thank you for your submission.

Can you please provide the error you are getting when item gets not supported?

Comment by Trinath Dakua [ 2018 Nov 06 ]

Hi,

we are using Cisco 2901/K9 Router and monitoring graphs .

Network Interfaces Discovery: Interface Se0/0/0(*** LEASE LINE TO HO ***): Bits sent
net.if.out[ifHCOutOctets.5] 1.3.6.1.2.1.31.1.1.1.10.5

Network Interfaces Discovery: Interface Se0/0/0(*** LEASE LINE TO HO ***): Bits received
net.if.in[ifHCInOctets.5] 1.3.6.1.2.1.31.1.1.1.6.5

 

 

 

 

 

 

 

Comment by Trinath Dakua [ 2018 Nov 07 ]

Hi

Cisco 2901/K9 Router Discovered and Ethernet interface is graphs Monitoring and working fine.but   serial interface are  not   graphs Monitoring .

by default Serial interface OID are  :

Network Interfaces Discovery: Interface Se0/0/0(*** LEASE LINE TO HO ***): Bits sent
net.if.out[ifHCOutOctets.5] 1.3.6.1.2.1.31.1.1.1.10.5

Network Interfaces Discovery: Interface Se0/0/0(*** LEASE LINE TO HO ***): Bits received
net.if.in[ifHCInOctets.5] 1.3.6.1.2.1.31.1.1.1.6.5

 





[ZBXNEXT-4780] It should be possible to set default time interval for the dashboard Created: 2018 Sep 30  Updated: 2018 Sep 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Vitaly Zhuravlev Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: dashboard, timeselector
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File screenshot-1.png    

 Description   

User story 1.

  • Enter Dashboard X. You see some nice graphs.
  • Zoom in into some range on some graph to see data closer
  • Exit Zabbix, go home
  • On the next day open Dashboard X. Observe that all graphs are loaded in the time interval that you zoom in last time(like 1 hour yesterday) and not something more actual like 'last day, last week etc'

What to do:

  • I suggest adding an option to define the default time interval for the dashboard in Edit mode
  • If you zoom in or change time interval - params specifying the range must be added to the URL of the dashboard.
  • If you are reentering the dashboard without any params defined in the URL - it must be shown with the default time interval defined by the dashboard owner. Useful default would 'Last day', 'Last week', 'Last 1h' etc.
  • If you are just refreshing the page or sending someone a direct link to the dashboard - time interval is preserved, thanks to HTTP params in the URL.





[ZBXNEXT-4761] Zabbix Item Type External Check wraps each argument in quotation marks, which breaks PowerShell Core Created: 2018 Aug 10  Updated: 2018 Sep 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marco Hofmann Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: externalchecks, items, powershell, scripts
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 9 Stretch amd64
zabbix_proxy (Zabbix) 3.4.12



 Description   

Due to the new possibilites Microsoft offers the Linux community, I installed Microsoft PowerShell and Vmware PowerCLI on Debian.

I want Zabbix Proxy to query VMware vCenter via External check.

I created a ps1 script which accepts several copmmand line arguments.

Zabbix wraps each argument in quotation marks, but PowerShell can't interpret arguments in quotation marks.

 

Steps to reproduce:

  1. Create an Item of Type "External check"
  2. Create the Key. Can be Any Key with script name and at least 1 Parameter. For example:
  3. vmware.ps.wrapper.shvmware.vm.snapshot.count.ps1,{HOST.CONN},{$USERNAME},'{$PASSWORD}',{#VM.NAME}
  4. Set Debug Log to Level 4

Result:

zabbix_proxy.log:

 

13741:20180809:094425.082 In get_value() key:'vmware.vm.snapshot.count.ps1[-Server {HOST.CONN},-User {$USERNAME},-Password '{$PASSWORD}',-VM {#VM.NAME}]'

13741:20180809:094425.082 In get_value_external() key:'vmware.vm.snapshot.count.ps1[-Server 10.23.0.200,-User [email protected],-Password 'XXX',-VM server.domain.local]'

13741:20180809:094425.083 In zbx_popen() command:'/usr/lib/zabbix/externalscripts/vmware.vm.snapshot.count.ps1 "-Server 10.23.0.200" "-User [email protected]" "-Password 'XXX'" "-VM server.domain.local"'

 

 Zabbix puts quotation marks around any argument:

vmware.vm.snapshot.count.ps1 "-Server 10.23.0.200" "-User [email protected]" "-Password 'XXX'" "-VM server.domain.local"'

These arguments won't get parsed in the script.

 

Expected:

The String should be created as following:

vmware.vm.snapshot.count.ps1 -Server 10.23.0.200 -User [email protected] -Password 'XXX' -VM server.domain.local

I need Zabbix to let the Admin choose, if the arguments are put in quotation marks or not.

 

I solved it, by calling a Linux Bash Script first, which accepts five arguments and parses the arguments to the powershell script without quotation marks:

 

/usr/lib/zabbix/externalscripts/vmware.ps.wrapper.sh:

 

#!/bin/bash

/usr/bin/pwsh -File /usr/lib/zabbix/externalscripts/$1 -Server $2 -User $3 -Password $4 -VM $5

 



 Comments   
Comment by Edgar Akhmetshin [ 2018 Aug 10 ]

Hello, Marco

Thank you for contacting Zabbix. Beginning with version 2.0.0, quotation marks are used for all arguments of the external checks. You can process arguments with quotes using the capabilities of a powershell script. Looks like a ZBXNEXT request.

Please note that ZBX is a Bug Tracker, no indication of a bug here.

Comment by Marco Hofmann [ 2018 Sep 27 ]

Thank you very much, for moving my Request into the right Tracker!

"You can process arguments with quotes using the capabilities of a powershell script."

I'm a PowerShell beginner, as far as I found out, arguments in quotes won't get parsed into the script, but if I'm wrong I would gladly correct myself.

The Bash Wrapper script to strip the quotation marks down is overhead, but works very well!





[ZBXNEXT-4717] return time period in graph title Created: 2018 Sep 06  Updated: 2024 Jan 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 37
Labels: graph, regression, timeperiod, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2024-01-18-13-20-17-743.png     PNG File image-2024-01-18-13-22-13-857.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-4818 Restore time period indication on graph Closed

 Description   

Previously, the selected time period was displayed in the graph title. This is lost now in pre-4.0.

Showing it in the graph itself was highly useful, as we tend to attach graphs to incidents or provide them to other people for different purposes.
It helped to quickly identify a graph covering 1 hour, month or year. Determining this from the timeline is error prone and is extremely hard.

 

For example long time ago there was very similar case ZBX-1120.



 Comments   
Comment by Valdis Murzins [ 2018 Oct 22 ]

It was removed in scope of ZBXNEXT-4361.
While it is easy to display it in old graphs, the problem is, how new timeline calculates the period for quick ranges:

  • Last 3 months = 3m 2d
  • Today = 23h 59m 59 sec
  • Previous week = 6d 23h 59m

I think, this inconsistency was the reason, the period was removed.

Also, if we will display period on old graph title (or somewhere else), we might also think about adding it to Classic graph widgets and New Graph widgets. Widget title can be used for this, but maybe some better place can be found.

Comment by richlv [ 2018 Oct 31 ]

We're seeing this issue every now and then. Graphs are attached to tickets or shared otherwise, and it is very hard to operate on data coming from Zabbix now - graphs for different time periods are being mixed up and cause confusion when investigating outages.

Comment by richlv [ 2019 Jan 24 ]

Thank you for sharing some of the considerations. While the period might not look as exact, it is hardly a bigger problem than not having the period at all. Even in the worst cases like "6d 23h 59m" the user can quickly figure out that it's somewhere around 6 or 7 days. Without the period shown user is disappointed.

Now let's look at the graphs before this feature disappeared. If one uses the time period scrollbar or drag-zoom (very common), they would still get such a period shown. Testing that just now with Zabbix 2.4, I see a period of "6d 13h 52m". It does not seem to cause any major problems, and does not seem to have caused any major problems for many years.

If there was a major reason why this is a problem, adding rounding based on the length of the time period would have been much more preferred over dropping a feature.

Comment by ysus [ 2019 Feb 12 ]

Dear Zabbix Developers,

Could you please advise if there are any plans to restore this extremely useful functionality? Even if this issue has only 16 votes I guess it affects many other customers.

Appreciate your understanding.

Comment by dimir [ 2021 Jul 08 ]

36 votes now.

Comment by richlv [ 2021 Aug 08 ]

Dear developers, any thoughts on the detail, discussed in January 2019?

Comment by Marco Hofmann [ 2021 Aug 09 ]

Maybe this request belongs partly to this request (https://support.zabbix.com/browse/ZBX-16162?focusedCommentId=560785&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-560785), as Kalimulin speaks about replacing the Graphs engine from PNG to SVG. Maybe this belongs together. Just an idea.

Comment by richlv [ 2024 Jan 18 ]

For the record, a regression like this was already fixed once in the past, ZBX-1120.

Judging by the comments on this issue, there were no functional reasons to remove this feature.

Then:

Now:





[ZBXNEXT-4679] Add read/write locks to value cache Created: 2018 Aug 08  Updated: 2018 Aug 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andris Zeila Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Value cache is another place that could take advantage of read/write locks. Currently value retrieval process looks like:

  • lock cache
  • if item is not cached:
    • add item to cache
  • if not enough values are cached:
    • unlock cache
    • read values from database
    • lock cache
    • add values to cache
  • copy values from cache to external buffer
  • unlock cache

With read/write locks it would be something like:

  • lock cache for reading
  • if item is not cached:
    • unlock cache
    • lock cache for writing
    • add item to cache
  • if not enough values are cached :
    • unlock cache
    • read values from database
    • lock cache for writing
    • add values to cache
  • copy values from cache to external buffer
  • unlock cache

On server startup it would result in some overhead because for all items there would be extra value cache unlock/lock. But after caching all required values data retrieval from value cache would require only single read lock.

Additional read->write lock 'upgrades' would happen when item changes value type, but that's rare occurrence.

However the main problem is that each read function alsot update some item properties to track the cached values, produce statistics:

  • daily request range - used to track for each item the time period that must be cached
  • item hits/misses - used to decided which items can be dropped when value cache switches to low memory mode
  • cache hits/misses - used to provide cache statistics to frontend

In theory we could use atomics to store those properties. However that's quite serious design decision that should be carefully investigated.






[ZBXNEXT-4640] Zabbix Integrate keycloak require review by zabbix official. Created: 2018 Jul 17  Updated: 2022 Oct 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.0.19
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Zhiyuan Zou Assignee: Valdis Murzins
Resolution: Unresolved Votes: 5
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Red Hat 7: 3.10.0-514.el7.x86_64
PHP: 5.4.16 (cli) (built: Jan 23 2018 07:26:54)
httpd: Server version: Apache/2.4.6


Attachments: PNG File UI-simple.png    
Issue Links:
Duplicate

 Description   

Hi, zabbix offcial:  

the initial feature request  described in zabbix-forum 

https://www.zabbix.com/forum/zabbix-help/52013-zabbix-has-plan-to-integrate-keycloak-as-sso  

Copy the abstract solution here again:

1. Package the authentication-relevant-php-files(e.g:CUser.php) as a RPM (: named zabbix-keycloak-plugins)
2. install zabbix-keycloak-plugins after zabbix-official rpms 
3. USER request zabbix
4. zabbix-redirect User to keycloak server
5. Keycloak AUTH ok, return "code" and "state" to zabbix
6. zabbix exchange JWT token from keycloak with "code" and "state"
7. zabbix store J*WT token* into DB and parse JWT Token
8. Based on Parsed JWT token, zabbix build result-Array contains authentication information  (:The Array, zabbix used for INTERNAL authentication method)
9. USER access Zabbix...finally.
The below picture show the simple UI from USERs perspective.

 

 

 

 



 Comments   
Comment by Zhiyuan Zou [ 2018 Jul 17 ]

Will post our codes via SVN method later, this ticket is for submit message..

And 

Actually, our code is based on

*zabbix-[web | server-mysql]-3.0.13-2*

and 

*zabbix-[web | server-mysql]-3.0.17*

version, 

i didn't find those in Affects Version/Fix Version  fields when i create this issue , So i choose 3.0.19 ...

Comment by Marc [ 2018 Jul 17 ]

As Keycloak is the upstream OSS project for Red Hat Single Sign-On (RH-SSO), is it supposed to work with RH-SSO too?

Comment by Jan Garaj [ 2018 Jul 17 ]

Keycloak supports SAML and OIDC clients. This implementation seems to implement only OIDC, so I guess the auth name "KEYCLOAK" is not the best one. The better name is "OpenID Connect".

Keycloak is Certified OpenID Provider Server, so this implementation should be able to work with any OIDC server/service: Identity Server, Google, ... (actually, some minor hacks will be required for some IdPs).

This feature is about authentification only, but client scope is about authorisation. It will be awesome to have also authorisation, but I would like to see role-based authorisation. Roles can be a part of the access token, and they can be used for authorisation.

Comment by Zhiyuan Zou [ 2018 Jul 18 ]

can you give me the guide for this contribute-guide action?

Comment by Rostislav Palivoda [ 2018 Jul 18 ]

Can you attach .patch file to the ticket?

Comment by Zhiyuan Zou [ 2018 Jul 19 ]

@palivoda   

patch file bundled as 2 RPMs, 

Is OK  to attach rpms for your view? 

 

Comment by Zhiyuan Zou [ 2018 Jul 20 ]

hi, zabbix official :

Upload this feature to https://share.zabbix.com/ is ok for review by you ? 

Comment by Valdis Murzins [ 2018 Jul 23 ]

Dear zhiyuan,

You can upload it to https://share.zabbix.com/ (share.zabbix.com is meant for this ).
Please don't forget to add description, how to install your enhancement and how to use it.
In order to get your enhancement reviewed by Zabbix Team, please add a comment with link to your enhancement in share.zabbix.com to this task.
From our side the review will be done, when this task will be accepted for roadmap. You can make it faster by voting for this task.

Comment by Zhiyuan Zou [ 2018 Aug 02 ]

@vmurzins   

  1. I push the patchs into nokia git repo  as transfer station to zabbix-patch repo, not sure whether you can review it on nokia-repo 

https://github.com/nokia/zabbix-patches/tree/master/zabbix-3.0/ZBXNEXT-4640    

      2. I also upload all files into zabbix.share site, https://share.zabbix.com/component/mtree/cat-app/security/zabbix-integrate-with-keycloak-zbxnext-4640?Itemid=     ,but the site truncate some description , so  post it in there:

-------Description-------

After you apply this plugins,

you will find a new authentication option will be available.

This ZIP file includes the following files and i will explain their function one by one:

0. README

     Abstract description for this files.

1. UI-simple.png

    The authentication UI will be look like this after you install plugins

2. UI-demo4outside.pptx

    Simple Usage with keycloak authentication

3. USER GUIDE for ZBX-3.0.13-2 with Keycloak EXTERNAL.pdf

    This describe how to apply the plugins...

4. zabbix_template.realm

    will be used when you configure KEYCLOAK

5. zabbix-server-mysql-keycloak-1.4-11.noarch.rpm

    this contains 3 SQL files:

    the pre-create.sql and mid-create.sql file already done when you install zabbix as official-procedure.

    the post-create.sql file is to create a "access_tokens" table into zabbix Databases.

    in other words, create "access_tokens" table is necessary condition for KEYCLOAK feature

6. zabbix-web-keycloak-1.4-11.noarch.rpm

    the php files which are relate to authentication, modify those php files and rename them with

    ".new" suffix , finally, package them into this RPM

    After install this RPM, the php files with ".new" suffix will replace the original php files while original php files also be backup with          ".old" suffix...

Note:

1. I already push the patch files into nokia-repo as a transfer station to zabbix-patch-repo

https://github.com/nokia/zabbix-patches/tree/master/zabbix-3.0/ZBXNEXT-4640 

2. I advise zabbix-official can rewrite the functions of php-oauth2client, as the LADP and HTTP authentication were did... i also can help on this.

refer links:

Git repo: https://github.com/zabbix/zabbix-patches/issues/16 

JIRA : https://support.zabbix.com/browse/ZBXNEXT-4640 

Forum :https://www.zabbix.com/forum/zabbix-help/52013-zabbix-has-plan-to-integrate-keycloak-as-sso 

 

----------Procedure for keycloak-authentication/authorization---------

1. Package the authentication-relevant-php-files(e.g:CUser.php) as a RPM (: named zabbix-keycloak-plugins)
2. install zabbix-keycloak-plugins after zabbix-official rpms
3. USER request zabbix
4. zabbix-redirect User to keycloak server
5. Keycloak AUTH ok, return "code" and "state" to zabbix
6. zabbix exchange JWT token from keycloak with "code" and "state"
7. zabbix store J*WT token* into DB and parse JWT Token.
8. Based on Parsed JWT token, zabbix build result-Array contains authentication information (:The Array, zabbix used for INTERNAL authentication method)
9. USER access Zabbix...finally.

 

 

Comment by Gergely Csatari [ 2018 Sep 06 ]

Are there any other actions needed for the review of this change proposal?

Comment by Vinícius Ferrão [ 2022 Jul 25 ]

Hello, almost 4 years have passed. Is there any interest on the Zabbix Team side to add this functionality?





[ZBXNEXT-4633] SQL injections issues in the case of using Oracle database Created: 2018 Jul 11  Updated: 2018 Jul 12

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ivan Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It's insecure to use Zabbix with Oracle database because of all the SQL injections issues caused by improper data encoding function listed below:

./include/db.inc.php:

1013 case ZBX_DB_ORACLE:
1014 if (is_array($var)) {
1015 foreach ($var as $vnum => $value) {
1016 $var[$vnum] = "'".preg_replace('/\'/', '\'\'', $value)."'";
1017 }
1018 return $var;
1019 }
1020 return "'".preg_replace('/\'/','\'\'',$var)."'";

In the case of string \' it's possible to bypass escaping function and 

Please find a PoC code below:

<?php
$var = chr(92).chr(39);
$q = "'".preg_replace('/\'/','\'\'',$var)."'";
echo $q;

'\'''

where the string \'' is unquoted


 Comments   
Comment by Vjaceslavs Bogdanovs [ 2018 Jul 11 ]

Thank you for your submission. Can you please provide some additional info on your finding:

  1. Have you tested it on specific Oracle installation, or are you just making an assumption that it shouldn't be the way it is?
  2. What version of Oracle do you have?




[ZBXNEXT-4614] limited hostname lookup support in zabbix_sender Created: 2018 Jun 27  Updated: 2020 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Michael Veksler
Resolution: Unresolved Votes: 6
Labels: configfile, hostname, sender
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

ZBXNEXT-1729 rejected the idea of supporting hostname lookup on the reasonable basis that implementing full support would involve userparameters, usafe params, aliases and other things.

But, automatic basic hostname lookup is the most often desired functionality and would help a large number of users without involving complicated development and feature creep in sender.

This feature request asks to support limited hostname lookup, only supporting automatic system.hostname resolution if none of the Hostname* parameters is defined.



 Comments   
Comment by Daria [ 2020 Jun 15 ]

Absolutely agree!
This feature needed in our project too 





[ZBXNEXT-4610] Ability to create items groups and shedule maintenace on Created: 2018 Jun 26  Updated: 2018 Aug 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.0.0alpha8
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Axel IT Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello,

Customers would like to be able to plan maintenance on specific items and item groups

The use case is the following :

  • A network device is fully monitored and some link are operator ones
  • sometime theses links have scheduled maintenance
  • When this append the customer put the device in maintence in zabbix
  • The problem is that customer receive no more alerte for the device and other IF ( where maintenance only affect one or two IF )

 

Regards



 Comments   
Comment by Ingus Vilnis [ 2018 Jun 27 ]

Duplicate of https://support.zabbix.com/browse/ZBXNEXT-413

Comment by Axel IT [ 2018 Jun 27 ]

Hello Ingus,

Please note that the grouping notion is important for the feature usability

Best regards,





[ZBXNEXT-4612] JMX: cascade host prototype Created: 2018 Jun 27  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Java gateway (J)
Affects Version/s: 3.4.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alex Tomasello Assignee: Michael Veksler
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi there,

I'm using Zabbix Java Gateway and I'd like to monitor, through JMX protocol, my own Wildfly environment (domain mode). I need:

  • to monitor domain server (starting point) 
  • to find its hosts connected (host prototype based on first discovery) 
  • to show deployments on host (new host prototype for every 'host connected' prototype find before) 
  • to get multiple details for each deployment (items prototype based on previous host prototype).

So I created a 'Template JMX Wildfly domain' attached to my own domain Zabbix host.It contains a discovery rule for all host-connections (jmx.discovery[beans,"jboss.as:core-service=management,host-connection=*"]), with an host prototype using '{#JMXHOST_CONNECTION}' as hostname. I linked 'Template JMX Wildlfy host' template on host prototype that it contains a discovery rule to find all deployments (jmx.discovery[beans,"jboss.as.expr:deployment=*"]) and I expected to find new hosts prototype, but it fails and I cannot see error (also increase debug level).

I suppose you cannot add an hosts prototype based on a discovery rule running on another host prototype. In fact in Zabbix UI, in  'configuration' > 'hosts' > 'HOSTID' > 'discovery rules' I cannot see 'Hosts  Prototype' column that you can see clicking to another hosts (not prototype).

 I cannot find any issues related to this one (or maybe I cannot search so well), so thanks for support!



 Comments   
Comment by Alex Tomasello [ 2018 Jun 27 ]

I confirm that skipping first point and adding manually zabbix host representing hosts connected, points 3 and 4 work as well.

So I'd like to ask you, why cannot i link a template containing discovered hosts on an existing host prototype?





[ZBXNEXT-4523] Use available item preprocessing steps to extract values of variables from web page contents in web scenarios Created: 2018 Apr 26  Updated: 2018 Jun 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 4.0.0alpha6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Glebs Ivanovskis (Inactive) Assignee: Andris Zeila
Resolution: Unresolved Votes: 5
Labels: preprocessing, variables, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-13786 Web scenarios and slash in JSON response Closed

 Description   

Inspired by ZBX-13786.

Currently the only way to extract something from web page contents in web scenario is a regex variable like:

Name   Value
{macro} regex:<regular expression>

4.0 will bring a new HTTP Agent item type (ZBXNEXT-4358) and I'm sure users will enjoy item preprocessing (ZBXNEXT-1443) available there. This puts web scenarios on a back foot.

Since HTTP Agent will not support multiple steps and does not provide performance metrics, I think it would be a good idea to introduce preprocessing into web scenario variables. XPath, JSON Path and regular expressions with "output" parameters will be very useful there.






[ZBXNEXT-4519] Cannot bind ldap server: authentication failed Created: 2018 Apr 24  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Appliance (L), Server (S)
Affects Version/s: 3.0.15
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Zhou Zhenhua Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix was installed on centos 6.8, needs to bind ldap server from Windows server 2008 R2 Enterprise


Attachments: PNG File ldap conect test script.png     PNG File zabbix.png    

 Description   

Our zabbix component was installed on centos 6.8, we need to bind ldap information from Windows server 2008 R2 Enterprise. We could get user accounts from Windows server, but cannot bind ldap server in zabbix, it said unable to bind to server, invalid credentials, login name or password is incorrect.



 Comments   
Comment by Alexey Pustovalov [ 2018 May 10 ]

do you use any special characters in login name or password?
Are you able to connect to LDAP server from Frontend server shell using ldapsearch command?

Comment by Andrew Twemlow [ 2018 May 29 ]

Have you tried it without ldap:// for the LDAP host, we don't have that in our working configuration.
You also have php-ldap installed for your version of php running on your web server?

Comment by Damian Ferrari [ 2019 Jun 13 ]

I have same problem with Zabbix Server 4.2.3 and AD in Windows 2016. I've tried many times with all recommended parameters but no luck. Connection test from PHP script works. 

Comment by Dave Johnson [ 2022 Mar 09 ]

At a small risk that I am missing something here, as I am really brand new to zabbix, so I apologize upfront if I stir the pot.  Still, I reckon that this is probably the right thing to do as Microsoft has shifted to requiring using channel signing to attach to ldap now (using certificates).

I felt the need to interject as I had to go through and generate some certs for linux machines (via sssd) and some apps (including postgres) to use ldaps and have the cert with private key authenticate into our AD.  This is the method we use for querying AD when you are not joined in the domain.   The certs need to be setup in AD to allow secure LDAP / AD access to the records in AD.  Here are some additional notes on Microsoft getting people to migrate towards ldaps for years:

In Aug 2019, Microsoft released "Microsoft Guidance for Enabling LDAP Channel Binding and LDAP Signing":
   https://msrc.microsoft.com/update-guide/en-us/vulnerability/ADV190023

   That post includes the following link:
    https://docs.microsoft.com/en-US/troubleshoot/windows-server/identity/enable-ldap-signing-in-windows-server

Some documentation I refered to that helped me create the certs and perm them in AD:
   https://social.technet.microsoft.com/wiki/contents/articles/2980.ldap-over-ssl-ldaps-certificate.aspx
   https://techcommunity.microsoft.com/t5/sql-server-blog/step-by-step-guide-to-setup-ldaps-on-windows-server/ba-p/385362

I saw this recent post, which may help too (I didn't use this, looks to be more for AD "auth use"):
   https://bl.ocks.org/magnetikonline/0ccdabfec58eb1929c997d22e7341e45

==

Now with the above said, can Zabbix:

a) authenticate against ldap with a certificate?  (more universal and probably recommended) 
b) piggyback off the local machine's auth (ie. via sssd) somehow? (probably easier through some pam configuration, but is going to be restrictive to unix rev/sssd versions).

Again there is a small possibility I have this wrong as I am new to zabbix, but from what I read here and currently understand, zabbix "should" have a proper way of authenticating into AD using a cert, right?





[ZBXNEXT-4566] Permission zabbix administrator on maps with images Created: 2018 Apr 07  Updated: 2019 Aug 10

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Diego Cavalcante Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu 16.04 LTS


Attachments: PNG File bug01.png     PNG File bug02.png     PNG File bug03.png     PNG File bug04.png     PNG File bug05.png     File inserting-image-item-in-private-map-allows-all-zabbix-admins-see-some-content.mp4    
Issue Links:
Duplicate
is duplicated by ZBX-15141 Permissions failure Closed

 Description   

Good night dear.

I recently encountered a problem regarding permissioning on maps,

I have some maps, which are specific hosts and triggers for a group, to which only users who have the appropriate permissions in this group should have access to "list and view the maps", but that is not quite what is happening.

If the user is of type "user zabbix" such maps are not listed nor displayed.
If the user is of type "administrator zabbix" the maps are listed and displayed in a way that had never seen before, with the icons in gray and the text "* UNKNOWN" linked to the data.

I noticed that if the map contains only "host, trigger, group, map" elements, the permission applied to the user works perfectly and it is not able to list or view the maps.

And if the map contains at least 1 element of type "image", the user is able to list and view the map in the way I described above, it seems to me that this is not correct.

I faced this problem in version 3.4.6, and tried an upgrade to version 3.4.8 and the problem persists.

Is it a permission setting, or a bug?
I hope it was clear, below I separated some prints to illustrate the problem.

In short: if any map that contains some element of type "image", any user of type "administrator zabbix" is able to list and see, if I remove all elements of the "image" type of maps, permission works perfectly.



 Comments   
Comment by Diego Cavalcante [ 2018 May 15 ]

version 3.4.9 the problem persists.

Comment by Aigars Kadikis [ 2018 May 23 ]

Can confirm this on 3.4.9.

Here is how to reproduce it:
1) Create user 'another' and assign it to User type 'Zabbix Admin' which by default has no rights to any host.
2) With Zabbix super administrator create a new map and add 'Zabbix server' host inside it. Sharing type remains as 'Private'
3) Authorize with 'another' user. Ensure the map is not visible.
4) Use Zabbix super administrator and include one image in the same map. Save the map
5) With user 'another' refresh the map page. The map becomes visible. It is possible to go inside and see some images (not including sensitive data).
inserting-image-item-in-private-map-allows-all-zabbix-admins-see-some-content.mp4

Comment by Diego Cavalcante [ 2018 May 23 ]

Hello Aigars Kadikis, your reproduction of the problem was perfect.
This is exactly the problem, I followed your procedure and the behavior is the same as yours, the permissioning of the elements in the maps works perfectly, but if you insert a single element of type "image" then the permission fails, so any user of type "zabbix administrator" will be able to list and view the maps of other users even if they are" private "and even if they do not have any permission on the elements contained in the map "even though the sensitive data is hidden ".

I can confirm that the problem affects all versions 3.4.x and all alphas of 4.0.
Version 3.2.x in my tests are working ok.

Comment by Alexander Vladishev [ 2018 May 23 ]

It works as documented.

Admin level users can see private maps regardless of being the owner or belonging to the shared user list.

Comment by Diego Cavalcante [ 2018 May 23 ]

The way it is, I only see 2 exits:

1º Do not use elements of type "image" in the maps. Well, the permissions are respected.
2. Do not leave any users with "Zabbix admin" profile. Well, the permissions are respected.

I have to choose between the 2.

Comment by João Edson [ 2018 May 23 ]

Step by the same problem as Diego and I do not see exit since if not leave some users as admin they no longer have access to some elements

Comment by Alexander Vladishev [ 2018 May 24 ]

I moved this issue to ZBXNEXT project. Please vote for this change request!

Comment by Alex Tomasello [ 2018 Nov 27 ]

In include/classes/api/services/CMap.php there are some lines that permit this:

 // Setting PERM_READ permission for maps with at least one image.
 $selement_images = self::getSelements(array_keys($sysmaps_r), SYSMAP_ELEMENT_TYPE_IMAGE);
 self::setMapPermissions($sysmaps_r, $selement_images, [0 => []], $selement_maps);
 self::setHasElements($sysmaps_r, $selement_images);
Comment by Alex Tomasello [ 2019 Jan 15 ]

Any updates?

Comment by Alex Tomasello [ 2019 Jan 23 ]

Hi there, I've reported code lines involved in this issues/feature. This ticket was opened on  2018 Apr 07 ...Any updates?

Comment by Dirk Bongard [ 2019 Aug 10 ]

I wonder about this authorization concept.

When I look at this list of references, I can not believe that large companies agree with this mess, or have spent a lot of money on work arounds.

Example: We have several 24/7 data centers. Some have their own site administrators. To be able to administer their own hosts, they need to be Zabbix Adminstrator. This gives them all rights to maps again. The same issue is with Discovery. I am not able to give a DBA for a single host the rights for scheduled downtime without giving it the right Zabbix Adminstrator.
From an authorization perspective, Zabbix is not suitable for large DCs, in particular multi-tenancy environment.
Map is one of many gaps.

By the wording, it is true that an administrator should see everything, but an application admin should be able to set up maintenance or add a template to his host. That's why many of us are Zabbix administrators and have in this case too many rights.

 





[ZBXNEXT-4499] Set custom Elasticsearch Index name in Zabbix configuration Created: 2018 Apr 13  Updated: 2018 Apr 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Mikhail Markov Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I try to configure index rotation in Elasticsearch but have an issue.
Alias for writing data has only 1 index so in need two different aliases for writing and reading. For example:
uint-000003 has alias 'uint-write' and Zabbix server send data to it.
uint-000003, uint-000002 and uint-000001 have alias 'uint-read' and i can use it in Zabbix web for watching all historical data.
I will rollover 'uint-write' alias and uint-000003 will be replaced with uint-000004 also uint-000003 will be added to 'uint-read' alias and uint-000001 will be deleted.






[ZBXNEXT-4393] Add individual item recchock option when unsupported Created: 2018 Feb 21  Updated: 2018 Feb 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Proxy (P), Server (S)
Affects Version/s: 3.4.7, 3.4.8rc1, 4.0.0alpha3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Diego Narducci Arioza Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All



 Description   

You can implement an option to manually configure each trigger when it is not supported, in many cases, we use the nodata function to check if a bank instance is ok or not, when the instance drops the item gets error and has to wait for the zabbix global retraction time, when you need to leave this value high, the item in this example even after being solved very fast will have to wait zabbix global temple for rechecation, I think it would be very interesting to put an individual option in cad aitem for rechecagem if it is not supported.



 Comments   
Comment by richlv [ 2018 Feb 21 ]

while unsupported items should work with nodata() in recent releases, could this issue be a duplicate of https://support.zabbix.com/browse/ZBXNEXT-473 ?





[ZBXNEXT-4261] Expand the support for macros (HOST.DESCRIPTION,TRIGGER.HOSTGROUP.NAME,INVENTORY.CONTACT) Created: 2017 Dec 01  Updated: 2018 Jan 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksejs Petrovs Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Please expand the functionality of the following three macros:
1.{HOST.DESCRIPTION<1-9>}
2.{TRIGGER.HOSTGROUP.NAME}
3.{INVENTORY.CONTACT<1-9>}

Currently, they are available in Notifications, Icon labels in maps or in internal notifications.

The information from those ones may be meaningful and expand them into the Trigger name could help to solve the issue as fast as possible.



 Comments   
Comment by Nicola Mauri [ 2018 Jan 04 ]

I agree with Aleksejs.
A typical use case is including INVENTORY.CONTACT in specific trigger descriptions, only when it is relevant. This is expecially true when you are using short-text notifications (SMS, Jabber, Telegram) which usually uses only TRIGGER.NAME or TRIGGER.DESCRIPTION macro.

Comment by Stefan [ 2018 Jan 10 ]

I think

{INVENTORY.LOCATION<1-9>}

is also very usefull to see where is the Server/Sensor whatever..





[ZBXNEXT-4232] HOST.IP, HOST.CONN HOST.DNS macros in the MAP element URL Created: 2017 Nov 13  Updated: 2018 May 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.4.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Petr Vyhlidal Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File MapsURL.png    
Issue Links:
Duplicate
duplicates ZBXNEXT-155 Support macros in URL map elements Closed
Sub-task
depends on ZBX-13272 Ability to use MACROS (user and syste... Closed

 Description   

It would be great if macros like HOST.IP, HOST.CONN HOST.DNS, HOST.HOST could be used in MAPS URLs to be able seamlessly integrate map elements with CMDB or web management
For example like URL in attached example screenshot, which does not work.
Result of this notation is http://%25257bhost.conn%25257d/: in the browser.



 Comments   
Comment by Matt [ 2018 May 21 ]

Can't believe HOST.CONN is not an available macro.  Desperately needed.

Comment by Matt [ 2018 May 21 ]

https://support.zabbix.com/browse/ZBXNEXT-155





[ZBXNEXT-4246] add conditions to recovery and acknowledgement operations Created: 2017 Nov 21  Updated: 2018 Jan 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexander Bergolth Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: actions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There is a special category of triggers where recovery notifications don't make any sense. Examples are one-time events like "/etc/passwd has changed", "zabbix agent version changed" or "Host {HOSTNAME} rebooted". You simply don't want an OK notification that tells you that the host did not reboot anymore since the last check.

Now that zabbix already features trigger tags since 3.2, adding an optional filter condition to recovery and acknowledgement operations would solve the problem:

A tag like T_NO_RECOVERY could be added to the corresponding triggers and the recovery operation of the actions could be configured with a condition like Tag <> T_NO_RECOVERY.

This feature request is a more specific version of ZBXNEXT-582, since trigger tags are already implemented now but a filter condition in the recovery operation is still missing.






[ZBXNEXT-4125] API access to global regular expressions Created: 2017 Sep 26  Updated: 2023 Aug 15

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.4.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: David Angelovich Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: regularexpression
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sprint: Roadmap Backlog
Story Points: 2

 Description   

Its either undocumented, hard to find documentation for, or not possible - but I'd like to be able to create/update/delete/get global regular expressions in Zabbix.



 Comments   
Comment by Aleksejs Petrovs [ 2017 Sep 27 ]

Hello David,
currently you can't manipulate with global expressions through the API.





[ZBXNEXT-4058] Non Case sensitive Login Created: 2017 Aug 28  Updated: 2019 Nov 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.2.7
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: BM Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello,
In our company we log on Zabbix with ADS account from LDAP.
The problem is that each personn have his habits to write his account name.
Sometimes with "ADS_xxxxx.xxxxx" or "Ads_xxxxx.xxxxx" or "ads_xxxxx.xxxxx".
Thanksfuly Active Directory is not case sensitive but sadly Zabbix Login is.
It pose me problem with personn who can't log because one case haven't got the right uppercase or lowercase...

Can you remove the case sensitivity only for login ? Perhaps you can make a tick box in account settings to activate or deactive case sentivity.



 Comments   
Comment by Marco Hegenberg [ 2019 Nov 28 ]

I'm facing exactly the same issue, so I would appreciate a solution. 

 

From my point of view an option to make all entries lowercase or all entries upper case would be enough. 

Comment by Tim Szozda [ 2019 Nov 29 ]

This or SAML support.  ZBXNEXT-2663

It's not realistic for us to tell enterprise end users who browse maps or look at their application health to remember to use all lower case. 





[ZBXNEXT-4069] SNMP-interface for integration into umbrella management Created: 2017 Aug 30  Updated: 2019 Apr 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Gebhard Loehnert Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We suffer from the fact that Zabbix cannot be integrated into an umbrella mangement via SNMP, i. e. not only sending SNMP traps but also delivering data for SNMP polling to the "outside world".



 Comments   
Comment by Vitaly Zhuravlev [ 2017 Sep 05 ]

Hi, do you need northbound interface?
I think you can use custom notification scripts to send snmptraps when problems start/end in zabbix.
What kind of data do you want to poll by SNMP?

Comment by Gebhard Loehnert [ 2017 Sep 07 ]

Hi,
yes, we would like to have a kind of northbound interface.
The mechanism you are describing works for sending traps, however, if an application wants to poll a set of values (based on a defined MIB), this will not work.
An example for the kind of data being polled would be the status of a set of values which are defined/calculated within Zabbix.
BR, Gebhard

Comment by Gebhard Loehnert [ 2017 Oct 02 ]

Hi, any news on that issue? BR, Gebhard

Comment by Roman [ 2018 Sep 25 ]

Hello,

Do we have any chance to have the feature in next release?

Comment by Vitaly Zhuravlev [ 2018 Sep 25 ]

Hi!

Roman, what do you expect Zabbix to expose using SNMP? Its own internal metrics or problems/metrics it collects? Or do you want it to notify on problems using snmptraps? It would be nice if you guys describe your business case in more detail, since they may differ.

 

This feature is not in the shortlist for the next release(4.2). In the meantime, I suggest you place your votes here using 'vote' button. You may also contact [email protected] if you have really high demand on this feature.

Thank you!

Comment by Roman [ 2018 Sep 25 ]

hi @Vitaly

Thanks for the feedback.

I expect to have functionality very similar to Nagios XI
case 1: Zabbix should be able to generate and send SNMP Traps to NBI/Upper Management System/Umbrella based on every Alert/Trigger configured in Zabbix.
case 2: Zabbix should be able to forward received from HW/Network equipment SNMP Traps to NBI/Upper Management System/Umbrella

in short:
Both cases are very critical for many customers Who have already Netcool or Nagios or any other old/legacy system in place but agreed to move to Zabbix. Unfortunately, this impossible to do quickly and such integration are warmly welcomed as will help them to try Zabbix and don't lose opportunities to control their HW/hosts from the existing system.

Comment by Stefan Leonhartsberger [ 2019 Apr 17 ]

Hi gentlemen

 

Any update on this topic? I would need this feature as well

What is the difference of this ticket compared to https://support.zabbix.com/browse/ZBXNEXT-401 -> Is this not an SNMP interface?

 

BR
Stefan





[ZBXNEXT-3994] Allow active checks on hosts created by host prototypes Created: 2017 Jul 25  Updated: 2018 Oct 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S), Templates (T)
Affects Version/s: 3.0.9, 3.0.10, 3.2.6, 3.2.7
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aviram Alter Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

As of now, when hosts are created using Host Prototypes in discovery, active checks cannot be used on them (due to their host name not matching the agent's host name).

This makes the feature useless for those using active checks due to constraints in the environment.






[ZBXNEXT-5212] Extendend filtering capabilities for Audit view Created: 2019 May 07  Updated: 2019 May 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksejs Petrovs Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: auditlog, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Add the following additional filtering options for Reports -> Audit view.

  1. Filter by specified Host name/-s
  2. Filter by specified Host group/-s
  3. Filter by specified Template/-s

 



 Comments   
Comment by richlv [ 2019 May 07 ]

Very closely related to ZBXNEXT-2434.





[ZBXNEXT-5131] Enable host group prototypes to either create host group or add to existing one, if it already exists Created: 2019 Mar 26  Updated: 2020 Mar 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.0.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edgars Melveris Assignee: Andris Zeila
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File fTLD_common_lld_grp.patch    
Issue Links:
Duplicate

 Description   

In some cases it would be very useful to be able to group the hosts, created from host prototypes by host groups from LLD macros, even if the host groups are created from different LLD rules on different hosts.
Consider a case, where an LLD rule returns a macro

{#CLIENT}, which contains CLIENT1 and from this, we create a host and host group "CLIENT1".
Then, on another host, another LLD runs, also returns macro {#CLIENT}

with the same value, but is unable to create a new host group and doesn't add to the existing one.
This would be very useful, to group all discovered hosts for this specific client.






[ZBXNEXT-5097] Problem with priority in Windows Created: 2019 Mar 07  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 3.0.24
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Lukasz Krzyczkowski Assignee: Michael Veksler
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello 

Is there any possibility to start zabbix agent in windows server in higher priority using zabbix config ?  



 Comments   
Comment by Dmitrijs Lamberts [ 2019 Mar 07 ]

Please be advised that this section of the tracker is for Feature request reports only. The case you have submitted can not be qualified as one, so please reach out to [email protected] for commercial support or consultancy services. Alternatively, you can also use our IRC channel or community forum (https://www.zabbix.com/forum) for assistance. With that said, we are closing this ticket. Thank you for understanding.

Best regards,
Dmitry





[ZBXNEXT-5038] debug zabbix delayed items Created: 2019 Feb 14  Updated: 2019 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Nikolay Lebedev Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello.

To debug zabbix delayed  items I use /zabbix/queue.php.
But it need to imprive.

I want  setup limits of items, select proxy to view, export to csv for future analize.






[ZBXNEXT-5041] Precompiled ZBX 4.0.4 Agent on AIX 7.1 Created: 2019 Feb 14  Updated: 2020 Jul 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 4.0.3, 4.0.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marcus Griesing Assignee: Michael Veksler
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ZBX 4.0.4 Agent on AIX 7.1


Issue Links:
Duplicate
Sub-task
part of ZBX-15151 Zabbix Agents for AIX 6.1, 7.2 with a... Closed

 Description   

Dear Zabbix Support Team,

We recognize Errors on Compilation of the ZBX4.0.x Agent on our AIX 7.1 Systems.
So can you please provide a pre-compiled Agent as ppc for AIX 7.1?

Here is the Output of our AIX Technician:
After configuring the client as following:

./configure --enable-agent --enable-ipv6 --with-net-snmp --with-libxml2 --with-openssl

I tried to "make install", but this stopped in several errors:

In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:582:12: error: conflicting types for 'fgetpos64'
extern int fgetpos64(FILE *, fpos64_t *);
^~~~~~~~~
In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:377:12: note: previous declaration of 'fgetpos64' was here
extern int fgetpos(FILE *__restrict__, fpos_t *__restrict__);
^~~~~~~
In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:585:12: error: conflicting types for 'fseeko64'
extern int fseeko64(FILE *, off64_t, int);
^~~~~~~~
In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:525:12: note: previous declaration of 'fseeko64' was here
extern int fseeko(FILE *, off_t, int);
^~~~~~
In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:586:12: error: conflicting types for 'fsetpos64'
extern int fsetpos64(FILE *, const fpos64_t *);
^~~~~~~~~
In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:379:12: note: previous declaration of 'fsetpos64' was here
extern int fsetpos(FILE *, const fpos_t *);
^~~~~~~
In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:587:16: error: conflicting types for 'ftello64'
extern off64_t ftello64(FILE *);
^~~~~~~~
In file included from ../../../../include/sysinc.h:26,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/stdio.h:526:14: note: previous declaration of 'ftello64' was here
extern off_t ftello(FILE *);
^~~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234,
from ../../../../include/sysinc.h:157,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:210:16: error: conflicting types for 'lseek64'
extern off64_t lseek64(int, off64_t, int);
^~~~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:208:14: note: previous declaration of 'lseek64' was here
extern off_t lseek(int, off_t, int);
^~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:866,
from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234,
from ../../../../include/sysinc.h:157,
from ../../../../include/common.h:23,
from cpu.c:21:
/usr/include/sys/lockf.h:64:13: error: conflicting types for 'lockf64'
extern int lockf64 (int, int, off64_t);
^~~~~~~
/usr/include/sys/lockf.h:62:13: note: previous declaration of 'lockf64' was here
extern int lockf (int, int, off_t);
^~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234,
from ../../../../include/sysinc.h:157,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:939:14: error: conflicting types for 'ftruncate64'
extern int ftruncate64(int, off64_t);
^~~~~~~~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234,
from ../../../../include/sysinc.h:157,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:937:14: note: previous declaration of 'ftruncate64' was here
extern int ftruncate(int, off_t);
^~~~~~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234,
from ../../../../include/sysinc.h:157,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:996:14: error: conflicting types for 'truncate64'
extern int truncate64(const char *, off64_t);
^~~~~~~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234,
from ../../../../include/sysinc.h:157,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:994:14: note: previous declaration of 'truncate64' was here
extern int truncate(const char *, off_t);
^~~~~~~~
In file included from /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/fcntl.h:234,
from ../../../../include/sysinc.h:157,
from ../../../../include/common.h:23,
from cpu.c:21:
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1015:18: error: conflicting types for 'pread64'
extern ssize_t pread64(int, void *, size_t, off64_t);
^~~~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1012:18: note: previous declaration of 'pread64' was here
extern ssize_t pread(int, void *, size_t, off_t);
^~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1016:18: error: conflicting types for 'pwrite64'
extern ssize_t pwrite64(int, const void *, size_t, off64_t);
^~~~~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1013:18: note: previous declaration of 'pwrite64' was here
extern ssize_t pwrite(int, const void *, size_t, off_t);
^~~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1101:17: error: conflicting types for 'fclear64'
extern off64_t fclear64(int, off64_t);
^~~~~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1098:15: note: previous declaration of 'fclear64' was here
extern off_t fclear(int, off_t);
^~~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1102:13: error: conflicting types for 'fsync_range64'
extern int fsync_range64(int, int, off64_t, off64_t);
^~~~~~~~~~~~~
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/8.2.0/include-fixed/unistd.h:1099:13: note: previous declaration of 'fsync_range64' was here
extern int fsync_range(int, int, off_t, off_t);
^~~~~~~~~~~
make: 1254-004 The error code from the last command is 1.
Stop.
make: 1254-004 The error code from the last command is 1.
Stop.
make: 1254-004 The error code from the last command is 1.
Stop.
make: 1254-004 The error code from the last command is 1.
Stop.
make: 1254-004 The error code from the last command is 1.
Stop.

Regards, Marcus



 Comments   
Comment by Andris Mednis [ 2019 Feb 14 ]

Hi, Marcus!

Can you try:

$ OBJECT_MODE=64 ; export OBJECT_MODE
$ CFLAGS="-maix64 -g -O2" ./configure --enable-agent --enable-ipv6 --with-openssl
$ make install
Comment by Enrico Becker [ 2019 Feb 15 ]

Hi,

we tried this and I think we had a little progress, but came to an error:

ld: 0711-224 WARNING: Duplicate symbol: Hyp_Name
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
ld: 0711-317 ERROR: Undefined symbol: .libiconv_open
ld: 0711-317 ERROR: Undefined symbol: .libiconv
ld: 0711-317 ERROR: Undefined symbol: .libiconv_close
collect2: error: ld returned 8 exit status
make: 1254-004 The error code from the last command is 1.

Stop.
make: 1254-004 The error code from the last command is 1.

Stop.
make: 1254-004 The error code from the last command is 1.

Stop.

Seams to be a problem with the LD-Library path, but don't know how to fix that the right way!

Comment by Andris Mednis [ 2019 Feb 18 ]

Hi, enrico.becker !

It could be that you have only 32-bit libiconv installed. Take a look at comment

https://support.zabbix.com/browse/ZBX-6564?focusedCommentId=189446&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-189446

how to compile a 64-bit libiconv and then Zabbix agent. It was written almost 3 years ago, today probably there are newer versions available.

Comment by Enrico Becker [ 2019 Feb 19 ]

Hi Andris.

Thanks for your hint. I compiled libiconv version 1.15 as you suggested in 64-bit:

ar -tv -X64 lib/libiconv.a
rw-r--r-- 0/0 1657366 Feb 19 08:14 2019 iconv.o
rw-r--r-- 0/0 43724 Feb 19 08:14 2019 localcharset.o
rw-r--r-- 0/0 37981 Feb 19 08:14 2019 relocatable.o
r--r--r-- 0/0 310633 Feb 19 08:14 2019 shr4_64.o
file bin/iconv
bin/iconv: 64-bit XCOFF executable or object module not stripped

But after configure zabbix again I got the same error. here is what I do and get:

{{CFLAGS="-maix64 -g -O2" ./configure --enable-agent --enable-ipv6 --with-openssl --with-net-snmp --with-libxml2 --with-iconv=/tmp/libiconv-1.15 --prefix=`pwd`}}

Configuration:Detected OS: aix7.1.5.0
Install path: /tmp/zabbix/zabbix-4.0.4
Compilation arch: aix
Compiler: /tmp/zabbix/zabbix-4.0.4/compile cc
Compiler flags: -maix64 -g -O2
Library-specific flags:
TLS: -I/usr/include
iconv: -I/tmp/libiconv-1.15/include
Enable server: no
Enable proxy: no
Enable agent: yes
Agent details:
TLS: OpenSSL
Linker flags: -L/usr/lib -L/tmp/libiconv-1.15/lib
Libraries: -lssl -lcrypto -lm -lperfstat -lpcre -liconv
Configuration file: /tmp/zabbix/zabbix-4.0.4/etc/zabbix_agentd.conf
Modules: /tmp/zabbix/zabbix-4.0.4/lib/modules
Enable Java gateway: no
LDAP support: no
IPv6 support: yes

And after "make install" I got:

ld: 0711-224 WARNING: Duplicate symbol: Hyp_Name
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
ld: 0711-317 ERROR: Undefined symbol: .libiconv_open
ld: 0711-317 ERROR: Undefined symbol: .libiconv
ld: 0711-317 ERROR: Undefined symbol: .libiconv_close
collect2: error: ld returned 8 exit status
make: 1254-004 The error code from the last command is 1.

Stop.
make: 1254-004 The error code from the last command is 1.

Stop.
make: 1254-004 The error code from the last command is 1.

Stop.

Regards, Enrico

Comment by Andris Mednis [ 2019 May 16 ]

Maybe you can use agent compiled on AIX 6.1 on an AIX 7.1 machine?

ZBX-15151 describes recently built agents, they are also published on https://www.zabbix.com/download_agents

Comment by Andrzej [ 2019 Sep 18 ]

Hi

In our company we have the same problem. AIX 6.1 version zabbix agent 4.2.6.
Such a procedure:

$ OBJECT_MODE=64 ; export OBJECT_MODE
$ CFLAGS="-maix64 -g -O2" ./configure --enable-agent 
$ make install

I got an error like Becker described.

But I checked if a binary was created in the src directory in directory zabbix-4.2.6.

Surprise was in this directory.

Next i did ./zabbix_agent -V and got a response.

I create zabbix_agent.conf and run this agent.

It work Agent Zabbix send value to Zabbix Server.





[ZBXNEXT-5026] Assigning templates to hosts/groups from the template editor and assign host from host groups editor Created: 2019 Feb 11  Updated: 2020 Jan 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Reichler Assignee: Valdis Murzins
Resolution: Unresolved Votes: 23
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File hostgroups.PNG     PNG File remove_host_group.png     PNG File templates.PNG    
Issue Links:
Duplicate
is duplicated by ZBX-16819 Hosts list are missing in template view Closed

 Description   

To manage hosts and templates it was very very useful in pre 4.0 versions:
Host Groups - in the editior i could add/remove hosts to the group, screenshot hostgroups.png
Templates - in the editor i could add/remove groups and hosts, screenshot templates.png

This functions in the frontend are very important because assigning of hosts/groups/templates is very easy, fast and save. I'm working with many hosts/groups and templates and for me it is a no go for upgrading to version 4.x for production.

Unfortunately you closed the issue ZBXNEXT-4725 even thoug not fixing it.



 Comments   
Comment by Tony den Haan [ 2019 Jun 20 ]

For me this is a showstopper. Maintaining takes many times longer without these.

Comment by Valdis Murzins [ 2019 Jun 20 ]

Functionality to add multiple hosts to host group (also applies to templates) is still present in form of mass update of hosts (in scope of ZBXNEXT-4725 it was made more useful for such operations). From my point of view it is even easier, than adding hosts in host group edit page.
1. In host list you can filter out only hosts, you are interested in, select them and via mass update add new host group for them. There is no more need to search for each single host in big list, where at each time you see only small part of it.
1.1. In worst case scenario (if you can't filter out the subset you need), you will need to go through same amount of hosts, but this time via host list, where it should be easier to navigate, than in small list, as it was previously.
2. By mass update you can add several host groups to hosts you have selected. (no need to search for them in each host group you are adding them to)

Also I should add that having such list of all hosts in Host group page on huge installation will introduce performance issues (it was one, if not the main, reason why this selection was removed from there in first place).

You are saying, maintaining hosts and/or templates takes longer. But I don't see, why is should be so, if you are using mass update. Can you, please, explain your use cases?

Comment by Olli Ihamäki [ 2019 Jun 20 ]

Yes, you can add new template to hosts with mass update, but you can't remove hosts from template with mass update. This used to be trivial, click, scroll down, shift-click and click > arrow.

Comment by Valdis Murzins [ 2019 Jun 20 ]

It is possible to remove one or multiple host groups from selected hosts via mass update.
It can be done by selecting "Remove" radio button in mass update edit form. It will remove only selected host groups from selected hosts.

Comment by Ingus Vilnis [ 2019 Jun 20 ]

Olli, I just hope you know that by that "removal" sequence you just unlinked the template from the host, leaving the actual items "orphaned" on the host level. It was a cool feature if you know it but at the same time could leave a huge mess on the host level. 

Valdi, Mass update can't nicely unlink (and clear) a single template. And one more use case - you could create a new template and immediately add it (yet empty with no items) to selected hosts. Now you have to go through all the mass update hassle to do it. 

Additionally you can't even see what hosts are linked to a template from Configuration -> Templates -> Opened template view. 

Comment by richlv [ 2019 Jun 20 ]

Valdi, thank you for mentioning this functionality - it is indeed working as expected.
A big usability problem is that Zabbix frontend has become even more fragmented than it was before. That is, one cannot find or easily reach the desired functionality from common source locations.

For example, a very simple and fairly common scenario:

1. Take a look at some host.
2. Switch to the template tab.
3. Notice a template of interest, and have a need to check what other hosts are linked to it.
4. Click on the template name.
5. a) Older versions of Zabbix: see the information you need.
5. b) New versions of Zabbix: no way to get to the information you need.

The usual workaround would be to copy the template name, go to Configuration -> Templates, expand the filter, paste the template name, click Filter.
Oops, that only gives up to 50 entities by default, and they are crammed in a single table cell, and not even an entry per line.
So as a workaround that is pretty lousy.

The usability regression there is also mind-boggling. Every extra click is a big burden for repeat operations, and here we have not only many extra clicks, but also the need to memorise this sequence - infrequent Zabbix users will give up instead (empirically tested).
The access usability regression could be fixed very easily - by providing a few links from the host/template properties (to go to a filtered host/template list). I might be missing something very obvious, but it is unclear what holds back ZBXNEXT-5020.

Of course, fixing the interlinking would not help with the template downstream entity listing being pretty much unusable beyond a dozen of entries.

Update:
Please note that the reason for the removal of that exact feature is clear - in large installations that functionality not only was not working well, it was also a big performance problem.
While it is possible that extensive brainstorming happened in secret and excluded all possible solutions, it seems a bit far fetched.

Comment by Olli Ihamäki [ 2019 Jun 20 ]

Ingus, I was not aware of that. That is/was crazy bad design! However, problem persists: there is no easy way to unlink "and clear" template from chosen subset of hosts.

I think that template added to host ++group does not reflect to hosts under same host group, right? I tried it with 4.2.3:

  1. Created new template
  2. Added new item to template created on step 1
  3. Added template created on step 1 to existing host group

Item added on step 2 did not appear on host in host group used on step 3

So workaround/workflow Valdis suggested does not work.

 

Comment by Valdis Murzins [ 2019 Jun 20 ]

Sorry olli, I misread your second to last message, now I see it:
In mass update, you can remove all templates from hosts. If you are updating many hosts with same templates, you can replace templates with same ones, except the one, you want to remove.
But yes, you can't remove single template from hosts with different templates.

As for ingus.vilnis comment, there is an option to clear the hosts, when mass removing templates: Clear when unlinking. Or you was meaning something else?

I see the usability issue you are mentioning, richlv. I am not really in place to comment it, but I can say: "Thank you for explaining it".

It is kind of in the comments, but I will write it more explicitly:

  • To see, what hosts are linked to template, you can go to host list and filter hosts by template.
  • To see, what templates are linked to template, you can go to template list and filter templates by "Linked templates".

But, as richlv mentioned, there is a usability issue here, as it requires more steps to do, as you would normally want to.

Comment by Valdis Murzins [ 2019 Jun 20 ]

The workaround I suggested was to add/remove host groups from hosts/templates. The problem with templates I explained in my previous comment.

You are right olli, the templates, added to same host group as hosts, will not be linked to these hosts. Sorry, my message confused you.

Comment by Olli Ihamäki [ 2019 Jun 20 ]

Yes, I know that you replace templates. However, that is not sufficient.

For example, you have:

  1. mail.example.com
    1. Template tape backup
    2. Template IMAP
    3. Template SMTP
  2. web.example.com
    1. Template tape backup
    2. Template HTTP
    3. Template HTTPS
  3. web1.example.com
    1. Template tape backup
    2. Template HTTP
    3. Template HTTPS

 

And so on, tens, hundreds, thousands of hosts, and you need unlink and clear "Template tape backup" from these hosts. Can't replace since they have different templates.

 

Comment by Tony den Haan [ 2019 Jun 20 ]

Richlv i'd say not even a link to a filtered version, just add filter there and then, perhaps default to whatever seems sane.

Comment by bunkzilla [ 2019 Oct 03 ]

please bring this functionality back.   here is how I often use this.  I have a group that is called "Paging"     if I edit this hostgroup, I can see which hosts which are not in the hostgroup using the selectors.  By selecting different hostgroups that I know should have hosts in the hostgroup, also to be able to remove them.     Now I have no idea how to accomplish this.      I use this mostly with hostgroups and not with templates because of the issues about unlinking. 

 

Comment by Jack Valko [ 2020 Jan 13 ]

Many of us manage ad-hoc maintenance windows with a group called "Maintenance" and require the ability to manage a hostgroup (not a host).  Having a UI that allows us to manage the group it crucial. 

Here's a good use case: I get notified of a short notice outage in a remote site.  I have over 100 hosts groups there.  Before 4.0, I could add all of these hosts quickly to a Maintenance group.  Now that operation is:
1. Configure -> hosts
2. Click Reset
3. Configure a filter to display the hosts you want add to a hostgroup
4. Select all hosts
5. Click Mass Update
6. Click HostGroup
7. Click Select
8 Select group(s) from the list
9 Click Update

This workflow is also much more difficult to explain than the old hostgroup two window UI. 

Since our upgrade to 4.4 Zabbix has become less useful because we can't quickly disable alerts and escalations.  





[ZBXNEXT-4943] Change Zabbix Agent and Server to use different user accounts in packages Created: 2019 Jan 07  Updated: 2019 Feb 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Packages (C)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: W. S. Story Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: account, agent, package, security, user
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 7



 Description   

At the suggestion of Richlv, I am creating this. Per Chapter 1, page 15 of the Zabbix Network Monitoring: Second Edition book, it is a bad idea to use the same account for server and agent on the server.

Steps to fix:

  1. Create a /var/log/zabbixagent
  2. Create a zbxagent user account with nologin
  3. sudo cp /usr/lib/systemd/system/zabbix-agent.service /etc/systemd/system
  4. Modify the PidFile parameter to /var/run/zabbixagent/zabbix_agentd.pid
  5. Add a line User=zbxagent under the [Service] section
  6. Modify PidFile and LogFile in /etc/zabbix/zabbix_agentd.conf
  7. systemctl daemon-reload
  8. systemctl start zabbix-agent

Currently both start as zabbix user which could be a security vulnerability as the Zabbix agent on the server could read its configuration and give up details there were not intended outside of the server.

 



 Comments   
Comment by W. S. Story [ 2019 Jan 07 ]

I failed to mention that volter discovered this vulnerability.

Comment by Edgar Akhmetshin [ 2019 Jan 07 ]

Hello W.S. Story,

You can change the user in accordance with the security policy applied in your enterprise. The steps that you use to change a user are not correct:

Along with a unit file foo.service, a "drop-in" directory foo.service.d/ may exist. All files with the suffix ".conf" from this directory will be parsed after the unit file itself is parsed. This is useful to alter or add configuration settings for a unit, without having to modify unit files. Drop-in files must contain appropriate section headers. For instantiated units, this logic will first look for the instance ".d/" subdirectory (e.g. "[email protected]/") and read its ".conf" files, followed by the template ".d/" subdirectory (e.g. "[email protected]/") and the ".conf" files there. Moreover for units names containing dashes (""), the set of directories generated by truncating the unit name after all dashes is searched too. Specifically, for a unit name foo-bar-baz.service not only the regular drop-in directory foo-bar-baz.service.d/ is searched but also both foo-bar.service.d/ and foo-.service.d/. This is useful for defining common drop-ins for a set of related units, whose names begin with a common prefix. This scheme is particularly useful for mount, automount and slice units, whose systematic naming structure is built around dashes as component separators. Note that equally named drop-in files further down the prefix hierarchy override those further up, i.e. foo-bar-.service.d/10-override.conf overrides foo-.service.d/10-override.conf.

man 1 systemd

Could you describe in more detail what the vulnerability is?

Regards,
Edgar

Comment by richlv [ 2019 Jan 07 ]

ZBX-4916 initially covered this.

Comment by Arturs Lontons [ 2019 Jan 08 ]

Hi,
Thank you for pointing out the possible security flaw. As richlv mentioned, the issue was discussed a while back in ZBX-4916. It was decided then that we will cover the possible security flaws and ways to fix them in the Zabbix official documentation. 
Since agent and server running under the same account out of the box the intended behavior, I've changed the ticket to a feature request.





[ZBXNEXT-4795] Auto-completion of macros in configuration forms Created: 2018 Oct 07  Updated: 2018 Oct 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.2.0alpha1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Glebs Ivanovskis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 6
Labels: configuration, macros, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Somewhat related to ZBXNEXT-1517, but actually inspired by auto-completion of LLD macros being discussed in the context of ZBXNEXT-4087.

Basically, whenever user types in ‍{ in any field of any configuration form that supports any kind of macros (built-in macros, user macros, LLD macros, {host:item[].func()} aka simple macros), something like that should pop up:

This will save tons of time users currently have to spend browsing documentation about built-in macros, copy-pasting user macros to avoid mistyping them or painstakingly troubleshooting syntax issues with macro contexts, macro functions or "simple" macros.






[ZBXNEXT-4859] Show fields from host inventory on the dashboard as a custom column Created: 2018 Nov 12  Updated: 2018 Nov 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Adam Birds Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Be able to show fields in the host inventory as a custom column on the dashboard widgets. 

Use Case:

We would like to be able to tag a certain field in the host inventory, or a custom field in the host if it can be implemented with the clients name, we would then like to show that clients name in the dashboards. 






[ZBXNEXT-4659] Add option to delay setting trigger in Problem for some time Created: 2018 Jul 31  Updated: 2018 Aug 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 4.0.0alpha9
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ingus Vilnis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Use case

Consider trigger based event correlation as described here: https://www.zabbix.com/documentation/4.0/manual/config/event_correlation/trigger

Note that this use case is practical for log and trapper items with Multiple problem event generation mode enabled. 

The goal is to reduce the trigger flapping in case the application stops and restarts happen in relatively short time causing no or very short service interruptions. 

Currently available trigger functions are evaluated immediately when e.g. problem line appears in the log and the problem is closed when the recovery expression is satisfied with all the tags and conditions. However, the practical requirement is to put the trigger in the actual Problem state only if in e.g. 5 seconds after the "problem" line is detected the recovery expression with matching tag value has not been found in the log. In this case a short disturbance in the service would not be triggered. 

Should that be implemented in a trigger function as a parameter or a configurable box in the frontend and API does not matter that much although a box in the web interface would be more user friendly and not overcomplicate already option-rich trigger functions. 

 



 Comments   
Comment by Ingus Vilnis [ 2018 Jul 31 ]

Delayed escalations don't completely satisfy this as the problems are displayed in the web interface anyways. 

Nodata triggers are no use here because of of minimum 30 seconds evaluation period and no practicality with Multiple problem event generation mode.

Somewhat remotely related: ZBXNEXT-2452ZBXNEXT-1604 and some more. This may be just another implementation of the same problem. 

Comment by richlv [ 2018 Jul 31 ]

Assuming the flapping is the biggest concern, would the existing trigger functions help somewhat?
For example, count() or regexp() using the second parameter.

Comment by Ingus Vilnis [ 2018 Jul 31 ]

Unless I'm totally missing something but I have not succeeded with these functions. Here would be an example with count().

Item: log[/home/test.log,(stopped|started),,,skip,]

Problem expression: {host:log[/home/test.log,(stopped|started),,,skip,].count(5,started,regexp)}=0

Recovery expression: {host:log[/home/test.log,(stopped|started),,,skip,].str(started)}=1

When a log line "Service1 stopped" appears it immediately triggers the problem expression regardless if you are looking for "started" or "stopped" pattern. How to make it wait for those 5 seconds maybe the "Service1 started" appears? Count() or regexp() is looking back in history for the past values in those 5 seconds, what you actually need is to look in the values for the next 5 seconds after the initial log line is received and then do the final evaluation. How? "Stopped"  always comes before "Started".

If I would have known service names I could use a separated trigger for each of them and combine regexp() and nodata() triggers. But when there are ~200 previously unknown names then this is not feasible. Additionally nodata() can't do periods under 30s and no multiple event generation thus no correlation of tags. Any other ideas?

Comment by richlv [ 2018 Aug 02 ]

How about a hack like {host:log[/home/test.log,(stopped|started),,,skip,].count(5,started,regexp)} < {host:log[/home/test.log,(stopped|started),,,skip,].count(5,stopped,regexp)} ?

(unrelated - you can probably use like instead of regexp for a tiny performance gain)

But that' s still hackish, I'll grant that. If the app development can be influenced, going for monitorable objects that show service state and uptime would be the best - one could construct very neat triggers around those.

Comment by Ingus Vilnis [ 2018 Aug 02 ]

The suggested expression still fires immediately because the evaluation happens with the first "stopped" line and at that moment Zabbix looks 5 seconds in history for "started" which obviously is not there. There is no wait delay for the next condition. But I am truly thankful for your efforts to help. 

Suggesting other methods of app monitoring might be in the future scope but for the current case the log monitoring is the required way. 

Comment by richlv [ 2018 Aug 02 ]

Oh, I might have misunderstood the need then. Thought the intent is to alert about restarts, but avoid the flapping, but I guess the expectation is to ignore quick restarts.

How about this hack?

{host:log[/home/test.log,(stopped|started),,,skip,].count(10,started,like)} < {host:log[/home/test.log,(stopped|started),,,skip,].count(5,stopped,like,5)}

Although this might not work if "stopped" is not followed by any other entries for 10 seconds. Even if count() was time based (ZBXNEXT-1604), it might not help with such small intervals...

Comment by Ingus Vilnis [ 2018 Aug 02 ]

This never even fires but for the same reason - it looks in the history whereas it should receive the initial "event", wait a bit in case recovery happens, and if no recovery has been within 5 seconds then go into problem state. 

You have now understood me right - quick restarts must not be considered as problems (As in the original description "In this case a short disturbance in the service would not be triggered."). It is no problem configuring with numeric items having regular update intervals. But with irregular log events having multiple event generation and tags this becomes an issue. Thus the feature request for delaying the evaluation of a trigger but initiate that by a condition. 

Comment by richlv [ 2018 Aug 02 ]

Well, it would fire if the log is really frequently updated. Still, it's not really reliable and no better ideas at this time, sorry.

Comment by Ingus Vilnis [ 2018 Aug 02 ]

It would but still it misses the first problem line and in case of no updates there are no alerts. And what kind of service would that be with so frequent restarts?  Thank you in any case!





[ZBXNEXT-4555] Support custom representations for status OK and PROBLEM Created: 2018 May 16  Updated: 2018 May 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.4.9
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Valdis Murzins
Resolution: Unresolved Votes: 5
Labels: mapping, status, trigger, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
depends on ZBXNEXT-1737 Trigger with one status only Open

 Description   

Zabbix triggers allow a lot of use cases. Many of them not necessarily connected to a problem. In fact a trigger to me corresponds to a condition. The exact meaning results of the context the trigger is used for.

How about introducing a trigger status mapping applicable on trigger level? This would allow users to provide a custom string replacing OK and PROBLEM.

The technical representation should remain untouched. This is just about the Zabbix frontend resp. possibly also about notifications.

 

PS: The idea has already been mentioned in ZBXNEXT-1737. But that particular feature request asks for "a custom number of statuses", what in my understanding also consideres the technical status representation.






[ZBXNEXT-4481] Reveal User group permissions in Host groups Created: 2018 Apr 04  Updated: 2019 Apr 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 3.0.16
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 2
Labels: adminuser, permissions, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In the configuration view of a User group Zabbix-Admins may find out easily what permission applies to which host group(s) resp. host(s).

But sometimes it is desirable to do the exercise the other way around too. That's to say, looking at a Host group and finding out which User groups apply permission to it and which users have finally access granted or explicitly denied.



 Comments   
Comment by Marc [ 2018 Jun 06 ]

Just hacked together this one after a request of an admin on site - maybe it's for the time being useful to anyone else too (see last condition of WHERE clause!):

zabbix=# SELECT ug.name user_group,
zabbix-#        p.name permission
zabbix-# FROM   groups hg,
zabbix-#        rights r,
zabbix-#        usrgrp ug,
zabbix-#        ( VALUES
zabbix(#         ( 1, 'Deny' ),
zabbix(#         ( 2, 'Read' ),
zabbix(#         ( 3, 'Read-Write' )
zabbix(#        ) AS p ( id, NAME )
zabbix-# WHERE  ug.usrgrpid = r.groupid
zabbix-#        AND r.permission = p.id
zabbix-#        AND r.id = hg.groupid
zabbix-#        AND hg.NAME = 'A Host group name one is interested in';
                  user_group                   |    permission
-----------------------------------------------+------------
 A User group                                  | Read-Write
 Another User group                            | Read
 Yet another User group                        | Read
 What shall I say, a User group                | Read

Should be fairly easy to extend it to reveal users behind user groups as well.

Comment by Marc [ 2019 Apr 09 ]

Similar statement working with MySQL (the one in the previous comment was for Postgres):

SELECT ug.NAME user_group,
       CASE
         WHEN r.permission = 1 THEN 'Deny'
         WHEN r.permission = 2 THEN 'Read'
         WHEN r.permissionis = 3 THEN 'Read-Write'
       END     AS permission
FROM   groups hg,
       rights r,
       usrgrp ug
WHERE  ug.usrgrpid = r.groupid
       AND r.id = hg.groupid
       AND hg.NAME = 'A Host group name one is interested in';

 





[ZBXNEXT-4448] snmpv3_authpassphrase only 64 characters supported Created: 2018 Mar 23  Updated: 2018 Mar 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4.7
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Viktor Shatskykh Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: database, frontend, items
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 2018-03-23 09_34_21-Configuration of items.png    

 Description   

Reason:
Monitored endpoint uses SNMp v3 'Authentication passphrase' and 'Privacy passphrase' 255 characters length and it's can't be changed. (McAfee ESM

Steps to reproduce:
Change 'Authentication passphrase' and 'Privacy passphrase' fields in Items allowed length from 64 characters to at least 255 characters.

Expected:

In the process of filling Authentication passphrase' and 'Privacy passphrase' fields for SNMPv3 item be able to put 255 characters row.



 Comments   
Comment by Kaspars Mednis [ 2018 Mar 26 ]

Moving this to a feature request section, because this can not be considered as a bug, just a limitation. At least front-end and DB changes are required here.

MariaDB [zabbix]> describe items;
| snmpv3_authpassphrase | varchar(64)         | NO   |     |         |       |
| snmpv3_privpassphrase | varchar(64)         | NO   |     |         |       |

Regards,
Kaspars

Comment by Viktor Shatskykh [ 2018 Mar 27 ]

Ok. Thank you Kaspars!





[ZBXNEXT-4434] action operations message (subject+body) template Created: 2018 Mar 16  Updated: 2019 May 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4.7
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Jan Ostrochovsky Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: actions, messages, operations, templated
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

any


Issue Links:
Duplicate

 Description   

It could be great for actions to have implemented possibility not just to fill separate notification message subject and body, but also to be able to have defined something like "notification message templates" (for inspiration, Jira itself has similar concept implemented for its notifications), defining subject+body templates, reusable (referenced) in more than 1 action.

Disadvantages of current state: when you have e.g. 100 actions, you need to have also subject and body copypasted 100 times, when you want to have unified form of notification messages. Then, when you want to change form of unified message, you need to edit 100 actions (burdening, error-prone process, hardly-maintainable). Complexity increases, when you have several types of messages (subject+body), each defined in many various actions, in the same ZABBIX system.

Advantages of suggested feature: definig just one "notification message template" for each notification message type, and assigning them (optionally?) to actions as default, recovery, and acknowledgement messages in actions' operations.

Thank you in advance for consideration, and sorry for my rude "Major" priority classification and "4.0 (plan)" suggested fix version, but I feel it this way .

Jano



 Comments   
Comment by richlv [ 2018 Mar 16 ]

might be considered a duplicate of ZBXNEXT-2831

Comment by richlv [ 2019 Jan 26 ]

Turns out, the new zabbix_action module for Ansible is very useful to implement templated messages in Zabbix actions.
We now use the same template across many actions, and even several servers. Ansible replaces parts of server URL (for links like acknowledge or graphs) and other information that is environment/server specific.





[ZBXNEXT-4385] Ignore hosts in maintenance in aggregated and calculated items Created: 2018 Feb 16  Updated: 2018 Feb 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: aggregateditems, calculateditems, maintenance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently Zabbix does not consider host is in maintenance mode or not, it always processes aggregated and calculated items independent of host status for all items involved to aggregated item key or formula.






[ZBXNEXT-4282] Add received values for failed items to Zabbix server log file with enabled debug only Created: 2017 Dec 15  Updated: 2017 Dec 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleg Ivanivskyi Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: logging
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

If item became not supported Zabbix writes received value in the error message to the log file. Example:

  1240:20171215:111419.363 error reason for "<host>:<key>" changed: Value "<received value>" of type "string" is not suitable for value type "Numeric (unsigned)"

Also, it displays the same error in "Info" column in the Frontend. This is cool and helps to troubleshoot issues.


Now, let's imagine that you are using 3.4 new features like bulk data collection, pre-processing or just have a misconfiguration (wrong type of information). Displaying received value may cause fast growing of Zabbix server log file.

Example (pre-processing):

  • you are sending a JSON, e.g.:
    {
        "Status": {
            "db1": [
                {
                    "app_id": 7, 
                    "app_name": "SQL Server 2012", 
                    "asset_name": "test", 
                    "certified": "n/a", 
                    "client_config": true, 
                    "client_id": 35, 
                    "client_name": "db1", 
                    "client_os": "Windows 2016", 
                    "complete": true, 
                    "complete_time": "12/01/2017 11:02:16 am", 
                    "database_name": "test", 
                    "disk_metadata": true, 
                    "duration": 15, 
                    "encrypted": false, 
                    "gfs_rp_type": "", 
                    "id": 540, 
                    "instance_id": 57, 
                    "last": null, 
                    "legalhold": false, 
                    "output": null, 
                    "purgeable": null, 
                    "replicated": false, 
                    "server_instance_name": "db1", 
                    "size": 17, 
                    "start_time": "12/01/2017 11:02:01 am", 
                    "status": "Successful", 
                    "synth_capable": false, 
                    "synthesized": false, 
                    "type": "Full", 
                    "verified": false, 
                    "verify_status": "Not Applicable", 
                    "vmware_template": false, 
                    "xen_template": false
                }
            ]
        }, 
        "timestamp": "12/01/2017 11:02:01 am"
    }
  • there are 30 dependent items with pre-processing (e.g regex or json path).
  • for example, 5 of them have issues like pattern does not match
  • Zabbix will add 5 errors to the log and will write this JSON 5 times to it.

What if I have in 10 times bigger JSON or thousands of such items?


How about to display value in the Frontend, but add value to the log file with enabled debug only (i.e. add error to log, but truncate value with "DebugLevel=3")?






[ZBXNEXT-3704] New operation types: add/delete macro, set macro value Created: 2017 Feb 16  Updated: 2017 Apr 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Server (S)
Affects Version/s: 3.4.0alpha1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Glebs Ivanovskis (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: macros, operations
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There could be many uses for this, one of them is dynamic adjustment of update intervals depending on trigger states. (Macro support in intervals is coming with ZBXNEXT-1675.)



 Comments   
Comment by Semiadmin [ 2017 Apr 15 ]

May be, add also the operation type like this one:
"Change update interval of item {ITEM.ID1} to 30"
or "...to {$FAST}"
This option'll allow to monitor anomalies more carefully.
Recovery operation'll return an old value.





[ZBXNEXT-3649] Clone entire group of hosts Created: 2017 Jan 05  Updated: 2017 Jan 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marco Hegenberg Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I think it would be useful, if you could clone an entire group of hosts or use something like an "extended template".

Here's my usecase: I'm monitoring a couple of distributed sites in Zabbix which all got the same structure. One router, one UPS, one server and so on. So what I'd like to do is to create a new group for each site which includes the template for the router, template for the UPS etc. so that I only have to give the IP addresses of all the different components.

I hope you get the idea what I mean.






[ZBXNEXT-3418] Can not get a log more than 64KB in one line in Zabbix3.0.0 Created: 2016 Sep 01  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Takafumi Iwasaki Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix3.0.0-1



 Description   

Can not get a log more than 64KB in one line in Zabbix3.0.0.
For log file records longer than 65535 bytes, only the first 65535 are gotten.
The [6 Log file monitoring] of Zabbix3.0 of the manual has the following of such a description.


For log file records longer than 256kB, only the first 256kB are matched against the regular expression and the rest of the record is ignored.


Note:
Zabbix 2.0.14 is also the same movement.

Thank you



 Comments   
Comment by Andris Mednis [ 2016 Sep 01 ]

How long are your log lines then ?





[ZBXNEXT-3144] support partial matching for the certificate subject field Created: 2016 Feb 16  Updated: 2016 Nov 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 3.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: certificates, encryption, tls, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

As mentioned in (58) in ZBXNEXT-1263 and further documented at the certificate page, arriving at a proper value for "Subject" field in host's "Encryption" tab is non-trivial - one should use a command-line tool for it.

Since using the "Subject" field is a must from the security perspective, it is sad that it currently requires manual handling for every host with a command-line tool. It would be nice to reduce the amount of effort in two ways:

  • support partial matching, listing only required fields: "CN=agent.example.com" (then using a command-line tool will not be necessary)
  • support macros: "CN={HOST.DNS}" (reported separately in ZBXNEXT-3148 and covers pre-shared keys, too)

Both should reduce the amount of effort significantly and make it more convenient.



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2016 Nov 29 ]

When we will come to implement this it would be very beneficial to bring issuer/subject verification logic into one place. Currently it is done independently in ~4 places across the whole source tree.





[ZBXNEXT-2919] Finer grained control over lld entities creation and aging Created: 2015 Aug 24  Updated: 2015 Sep 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.10, 2.4.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Mārcis Lielturks Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: lld, ttl, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

LLD discovered objects should have finer control over their life cycle in Zabbix. LLD rules have no control mechanism for handling objects which are temporal in their nature. This generates noise in form of Internal action messages or messes things up if one is relaying on number of unsupported items as measure of Zabbix health.

For very basic control, having a way of specifying how old the object must be, before it is added to Zabbix would be great. Say, for file system one could specify 1 day, to avoid adding USB flash stick filesystm to Zabbix (when monitoring user PCs).

For more sophisticated control, maybe new objects should be added to monitoring right away but there needs to be a way of defining simple rules/ratio for object history as a function of how old is the object (i.e new objects get pruned faster if they are not discovered anymore)



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Sep 04 ]

It could be resolved using multiple lld filters in 2.4, as paths for mounting USB sticks usually are fixed or predictable (/media etc) and not being used for partitions mounted automatically for OS.

But in general the idea is interesting.
What I could imagine is a usage of a timestamp when an item has been created.

An item_discovery table has two columns:

lastcheck 	integer 	Last timestamp when item was discovered & passed through filter. 0 - for item prototypes 		
ts_delete 	integer 	Timestamp when the lost resource will be deleted, 0 otherwise. 0 - for item prototypes

The table could extended by additional column - creation_time.
Then use it in ... I don't know .... in triggers with new trigger function ... no idea.

Comment by Mārcis Lielturks [ 2015 Sep 04 ]

Yes, basic approach would be to allow create LLD rules where there is also duration for "how long to postpone adding discovered" besides "how long to keep lost".

As for filesystems, this was only example. I have some Windows PCs to monitor and every USB flash filesystem is immediately discovered. Same thing happens with VM hosting, if customer creates test VM with unpredictable name and deletes it after 3 hours, I have no way to tell Zabbix that LLD should treat this VM differently than VMs which LLD has discovered 3 months ago and they don't disappear.

Comment by Marc [ 2015 Sep 04 ]

That's actually a nice idea. We got regularly alerts for temporarily mounted file systems. These file systems provide more or less static data and do therefore not have much free space.

I know there are potential workarounds by using additional macro filtering or upcoming context macro support.
Anyway, despite of that I'd appreciate to have an option to consider discovered entities only after a certain period.





[ZBXNEXT-2889] Sort similar LLD-item values in a host Created: 2015 Jul 23  Updated: 2018 Apr 22

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Timofey Koolin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: sorting, top
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Virtual server node



 Description   

For example:
I have a node with VDSes. I have many similar LLD items for every VDS, for example cpu: vds-cpu1 - cpu usage from VDS1, vds-cpu2 - cpu usage from VDS2 and etc.

I want way to see TOP-10 of vds-cpu items.



 Comments   
Comment by richlv [ 2015 Jul 23 ]

is "VDS" meant to be "virtual dedicated server" ? (guessing from https://en.wikipedia.org/wiki/VDS)

also, do you just want to see a list of latest values for such items ?

Comment by Timofey Koolin [ 2015 Jul 24 ]

Yes - I mean virtual dedicated server, virtual machine.

I want see list of item, sorted by value (not by name) - for fast see what of virtual server consume a lot or resources (cpu, iops, etc).

Comment by Oleksii Zagorskyi [ 2015 Jul 24 ]

Theoretically it could be resolved if we would have ability to sort by "Last value" ob latest data page.
But that's not possible to easily introduce as the values may have different type ...

Comment by John Lauro [ 2018 Apr 22 ]

I would also like to sort by last value, As an alternate method of implementing, other options might be to have it tied to a new screen type or someway to do a top list linked to a template that is applied to all hosts in the template instead of only one, that would ensure you don't have to deal with different types.  (Although being able to sort / pull up top lists without having to first configure a screen would be ideal).

Comment by John Lauro [ 2018 Apr 22 ]

Another option might be on the overview page, and hosts on the left, being able to sort by column.  Each column should have the same type...  (I seldom use overview because it is slow with a lot of hosts and data elements if you don't narrow with application, but it would be more useful it it let you sort by the values in a column).





[ZBXNEXT-2856] Allow storing Integer32 data type for SNMP Created: 2015 Jun 25  Updated: 2018 Aug 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ingus Vilnis Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: datatype
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

SNMP has a OID datatype of Integer32 (signed integer), which currently cannot be stored by zabbix correctly.

We are monitoring printers, which report e.g. tray capacities and current levels as Integer32. Not only positive integers, which represent the actual capacity or level but also negative integers are used to transport information, e.g. that there is media present in the tray but the printer cannot determine the exact amount.

Zabbix doesn't offer an unsigned integer data type so it looks like there is currently no way to map those values to zabbix.

Float is not the correct datatype to store integers.
When using unsigned as datatype, items with negative values will become unsupported:

23729:20150602:103834.648 item "stp08-printer.wu-wien.ac.at:prtInputCurrentLevel.1.1" became not supported: Received value [-3] is not suitable for value type [Numeric (unsigned)] and data type [Decimal]

(The value -3 means that the printer knows that at least one unit remains.)

Besides SNMP mappings, unsigned integers would also be useful in other situations where negative numbers could be used to transport additional information.

See RFC3805 for details about our use case, especially Integer32 datatypes like prtInputCurrentLevel, prtOutputRemainingCapacity etc. and the reasons for negative entries.



 Comments   
Comment by richlv [ 2015 Jun 25 ]

besides not matching the datatype, what is the problem with using float for such values ?

Comment by Alexander Bergolth [ 2015 Jun 26 ]

float is not suitable for storing integers. (Accuracy and rounding problems, etc.)
It's not a clean solution for storing integers. (I know that Zabbix tries to repair some of the issues that occur when using floats, e.g. by using a 0.000001 tolerance in its comparison operators but there will be other issues as well.)

One of the main tasks of Zabbix is storing SNMP values. So Zabbix should be able to accurately and lossless store any SNMP OID data type.

Comment by Tomasz Kłoczko [ 2015 Jun 28 ]

In range of values Integer32 float has always exact value in float representation.

Comment by bahaa aldin alawneh [ 2015 Jul 21 ]

I have same problem regarding to graph integer32 values, is there any way solves this issue.





[ZBXNEXT-3899] Possibility to convert SNMP DateandTime to Timestamp in Preprocessing Created: 2017 May 30  Updated: 2022 Nov 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4 (plan)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Kay Schroeder Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We have several systems with SNMP-Values of octetstring, formatted in a special manner for Date and Time:

ateAndTime ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2d-1d-1d,1d:1d:1d.1d,1a1d:1d"
STATUS current
DESCRIPTION
"A date-time specification.

field octets contents range
----- ------ -------- -----
1 1-2 year 0..65536
2 3 month 1..12
3 4 day 1..31
4 5 hour 0..23
5 6 minutes 0..59
6 7 seconds 0..60
(use 60 for leap-second)
7 8 deci-seconds 0..9
8 9 direction from UTC '+' / '-'
9 10 hours from UTC 0..11

10 11 minutes from UTC 0..59

For example, Tuesday May 26, 1992 at 1:30:15 PM EDT would be
displayed as:

1992-5-26,13:30:15.0,-4:0

Note that if only local time is known, then timezone
information (fields 8-10) is not present."
SYNTAX OCTET STRING (SIZE (8 | 11))

For us it is useful to get this converted into a timestamp so that we can work with several trigger functions. I know about the new feature of preprocessing and I think this functionality could be a good additional feature to have it implemented.

Kind Regards,
Kay



 Comments   
Comment by alex dekker [ 2017 May 31 ]

This would be useful for dealing with snapshot age on HP SANs.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jun 05 ]

Would be nice if you pointed us to the format specification.

Comment by Kay Schroeder [ 2017 Jul 08 ]

Glebs, the syntax above should be the general syntax and should work in general.

Comment by Marc [ 2017 Jul 08 ]

Sounds rather like a use case for ZBXNEXT-3508 to me.

Comment by alex dekker [ 2017 Oct 05 ]

Glebs, format specification is in RFC2579 p18.

Comment by David Collier [ 2021 Jan 15 ]

Is this feature being worked on? We have exactly the same requirement for handling Date / Time fields returned as STRING variables from SNMP agent items.

Comment by Malcolm [ 2021 Jun 11 ]

For anyone still looking for a solution, the below can be thrown into a Javascript preprocessing rule to create a unixtime/epoch timestamp:

p_date =  Date.UTC(
    parseInt("0x" + value.slice(0,2) + value.slice(3,5)),
    parseInt("0x" + value.slice(6,8)),
    parseInt("0x" + value.slice(9,11)),
    parseInt("0x" + value.slice(12,14)),
    parseInt("0x" + value.slice(15,17)),
    parseInt("0x" + value.slice(18,20)),
    parseInt("0x" + value.slice(21,23))
) / 1000

utc_direction = String.fromCharCode(parseInt("0x" + value.slice(24,26))) == '-' ? -1 : 1
p_date += parseInt("0x" + value.slice(27,29)) * 3600 * utc_direction
p_date += parseInt("0x" + value.slice(30,32)) * 60 * utc_direction

return p_date
Comment by Mickael Martin (Cyres) [ 2022 Nov 09 ]

Hello,

I try to use this format to monitor FORTINET-FORTIGATE-MIB::fgHaStatsSyncDatimeUnsucc and FORTINET-FORTIGATE-MIB::fgHaStatsSyncDatimeSucc.

For me, your code is wrong on calculation on month : Date.UTC use an index between 0 and 11 and not 1 to 12. Moreover, you can have this format without UTC direction. So, I propose this fix :

value=value.trim()
p_date =  Date.UTC(
    parseInt("0x" + value.slice(0,2) + value.slice(3,5)),
    parseInt("0x" + value.slice(6,8) -1),
    parseInt("0x" + value.slice(9,11)),
    parseInt("0x" + value.slice(12,14)),
    parseInt("0x" + value.slice(15,17)),
    parseInt("0x" + value.slice(18,20)),
    parseInt("0x" + value.slice(21,23))
) / 1000if (value.length > 23){
utc_direction = String.fromCharCode(parseInt("0x" + value.slice(24,26))) == '-' ? -1 : 1
p_date += parseInt("0x" + value.slice(27,29)) * 3600 * utc_direction
p_date += parseInt("0x" + value.slice(30,32)) * 60 * utc_direction}
return p_date; 

 





[ZBXNEXT-3866] the disk usage graph looks strange,when i modified it,it return some err messages Created: 2017 May 11  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 3.2.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: 孙悟空 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: frontend, graphs, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CENTOS7.2 + zabbix 3.2.5


Attachments: PNG File 111.png     PNG File 333.png    

 Description   

PATH---Template OS Linux,Mounted filesystem discovery,Graph prototypes

The graphs look strange?why the total disk space is red??
So i want to change the graph prototype.
After i updated it and waited for some time,it didn't work.

Then i change the "Graph type" option,it returns some errs:
Undefined index: calc_fnc [graphs.php:624 ? CView->render() ? include() in include/views/configuration.graph.edit.php:347]
Undefined index: calc_fnc [graphs.php:624 ? CView->render() ? include() in include/views/configuration.graph.edit.php:347]

If you have any good news,pls send me an email: [email protected]

thks very much






[ZBXNEXT-3904] calculated item formula: reference source item by ID instead of key Created: 2017 May 31  Updated: 2017 Dec 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.2.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: itcbsops Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently, a calculated item takes a formula in which you can reference another item (let's call it a source item) by specifying its key. See manual here : https://www.zabbix.com/documentation/3.4/manual/config/items/itemtypes/calculated
The syntax of the formula is :
func(<key>|<hostname:key>,<parameter1>,<parameter2>,...)

The problem with that are :

  • the key to reference the source item can be a long and complicated string of characters; some characters must be escaped. It makes formulas very difficult to read and it is a hell !
  • if the source item's key changes, you have to manually reflect those changes manually into the calculated item. Come on ! Manually ...
  • when you change the source item's key, you must disable the calculated item first otherwise it stays in some kind of error state and it's a misery to get it back even after fixing the formula.
  • inconsistency creates confusion : when an item is part of a trigger expression, that trigger expression is automatically updated whenever an item changes. My assumption is that, internally, the trigger expression refers items by their unique item ID. Therefore when an item's name or key changes, there is no impact on the trigger. That's an inconsistent compared to the way calculated items work (as explained earlier)...

Proposed improvement: why not adopting an alternative syntax for calcultated item's formula that would take an item's refernce by its ID instead of key ?

Here is an example of a formula from a calulated item we have in our system:
not nodata("logrt[\"/stelink/bdl_scripts/FIXEngine/logs/^TSOX.log*\", \".*BLPSOX.incoming.*8=FIX.4.4.*35=(0|8|9|j|AE|J).*\"]", 120s)

in the future, the formula could be instead :
not nodata(itemID=86139, 120s)

(could be displayed as item's name as it is in the trigger expression editor, for instance)



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2017 May 31 ]

May be considered a duplicate of ZBXNEXT-3441 and ZBXNEXT-3444.

Comment by richlv [ 2017 May 31 ]

the user-visible formula should not use item ids, but the internal representation might. as mentioned, it would be somewhat similar to triggers then. ZBXNEXT-3441 glebs.ivanovskis mentioned might make it possible (current syntax might be hard to handle)

Comment by itcbsops [ 2017 May 31 ]

none of the two duplicate this ticket, though it looks like a duplicate of ZBX-5857, which is closed.
I would like to challenge that.

Comment by itcbsops [ 2017 May 31 ]

I agree with richlv : the item ID should be used internally. Right now it's not. It is free text. Which is silly.
If you've got a lot of calculated items, it's a catastrophe to handle.
This needs to be improved.

Comment by itcbsops [ 2017 Dec 19 ]

Hi,

Any progress on this Jira ?
The fact that calculated items use source item's keys are reference is a pain.
We have a huge quantity of items and we have calculated items. Each time we change an item key, it will make the calculated item fail.
The link between a source item and a calculated item should be the unique ID of the source item. Not the Key.
Please address this.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Dec 19 ]

No, no progress. As you see at the moment there are literally zero votes on this issue. Bringing more votes and/or sponsorship may draw some attention to the problem.





[ZBXNEXT-3723] Unsupported messages links to wiki or KB Created: 2017 Feb 26  Updated: 2017 Feb 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Heðin Ejdesgaard Møller Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: frontend, items, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be nice to be presented with a wiki link whenever a discovery rule or general item is rated as unsupported.

Example:
Create a host, configure it for vmware vsphere monitoring via sdk
you get an error saying "cannot complete login due to an incorrect user name or password"

That text should link to a KB for that error on the wiki, where ppl. can read more details about the issue and, if appropiate, contribute to the article about possible solutions.



 Comments   
Comment by Marc [ 2017 Feb 26 ]

ZBXNEXT-130 could be considered related.





[ZBXNEXT-3741] Refactor substitute_simple_macros() function to make macro resolving more transparent and efficient Created: 2017 Mar 09  Updated: 2017 Sep 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Glebs Ivanovskis (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: codequality, macro, substitution
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: DEV-591
Story Points: 10

 Description   

This function is ~1350 lines of code long and does multiple tasks:

  • some missing validation of tokens found by zbx_token_find() (previously substitute_simple_macros() used to search macros all by itself!);
  • gathers and caches data necessary to get macro values;
  • handles all possible macro contexts and all supported macros;
  • substitutes macros with values.

We should:

  • cut down the size to 200-300 lines of code;
  • move all necessary context + token type + macro validation to zbx_token_find() or other helper functions;
  • store information about supported macros in easily manageable data structures instead of code logic;
  • ...





[ZBXNEXT-3410] Discovery status of network interface Created: 2016 Aug 29  Updated: 2016 Sep 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: uniken1 Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: lld, newlldmacro
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please add {#IFSTATUS} macros in to LLD process "net.if.discovery".
I think this is good way to discovery active network interfaces and filter disabled.



 Comments   
Comment by Alexander Vladishev [ 2016 Sep 22 ]

Related issue: ZBX-6787





[ZBXNEXT-3577] Add macro-based filters to item prototypes Created: 2016 Nov 29  Updated: 2016 Nov 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 3.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Jori Hämäläinen Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

LAMP



 Description   

I use LLD to discover a lot. The problem with templates, LLD and external JSON API is that I want to map only single thing to item-key.

ifHCInOctet to be itemized key inbps if available
ifInOctet to be itemized inbps if HC is not available
IfSpeed to be itemized Speed if /\d{1,8}/
ifHighSpeed to be itemized to Speed if /\d{9,}/

This way I could always ask JSON API single key for same type of data without building external logic. I use Grafana to summarize multiple routers interfaces etc.

This is totally doable with today's template if I create multiple LL-discoveries. But maintaining all templates and filter rules I find troublesome. And querying same discovery data from router many times loads routers.

HC-disc: discover[IFALIAS,IFDESCR,IFSPEED,IFHIGHSPEED,IFNAME]
Speed-disc: discover[IFALIAS,IFDESCR,IFSPEED,IFHIGHSPEED,IFNAME]

With item prototype -filter I could create multiple prototypes for same key but with filter limit to only one to be created.
IFSPEED matches /\d{1,8}/ create prototype with ifspeed
IFSPEED matches /\d{9,}/ create prototype if ifhighspeed
or
IFTYPE matches /^GigabitEthernet/ create ifhighspeed, create HCOctets
IFTYPE matches /^FastEthernet/ create ifspeed, create HCOctets
IFTYPE matches /^Ethernet/ create ifspeed, create Octets

From 3.4 release notes I see some enhancements for item prototyping/low level discovery but I interpret it this way that above situation is not solved.



 Comments   
Comment by Jori Hämäläinen [ 2016 Nov 29 ]

or another way round is on item/item prototypes

primary oid (ifHCInOctets)
backup oid (ifInOctets) which would be used if router responds item unavailable for primary oid

But this has a problem
ifSpeed report speeds in bps
ifHighSpeed report speeds in Mbps - meaning it requires multiply with 10^6

  • this cannot be backup oid'ed - but needs item prototype filtering




[ZBXNEXT-3061] Using Oracle bind variables in the queries generated by Frontend. Created: 2015 Dec 03  Updated: 2015 Dec 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleg Ivanivskyi Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: bind, oracle, performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 2.2 and 2.4


Issue Links:
Duplicate
is duplicated by ZBX-9635 Availability report does not use Orac... Closed

 Description   

ZBXNEXT-166 introduced Oracle bind variables support for server/proxy and only for inserts.
Many ZABBIX Frontend/API queries are causing hard parse (it makes query performance poor) as they are not using bind variables at all. They are using directly value in query. Example:

SELECT f.triggerid,f.functionid,h.host,h.name FROM functions f JOIN items i ON f.itemid=i.itemid JOIN hosts h ON i.hostid=h.hostid WHERE (f.functionid BETWEEN '4937' AND '4941' OR f.functionid BETWEEN '4959' AND '4963' OR f.functionid BETWEEN '4981' AND '4985' OR f.functionid BETWEEN '5003' AND '5007' OR f.functionid BETWEEN '5025' AND '5029' OR f.functionid BETWEEN '5050' AND '5054' OR f.functionid BETWEEN '5072' AND '5076' OR f.functionid BETWEEN '6760' AND '6764' OR f.functionid BETWEEN '6786' AND '6790' OR f.functionid BETWEEN '6820' AND '6824' OR f.functionid BETWEEN '6842' AND '6846' OR f.functionid BETWEEN '6864' AND '6868' OR f.functionid BETWEEN '6886' AND '6890' OR f.functionid BETWEEN '6908' AND '6912' OR f.functionid BETWEEN '6930' AND '6934' OR f.functionid BETWEEN '6952' AND '6956' OR f.functionid BETWEEN '6974' AND '6978' OR f.functionid BETWEEN '6996' AND '7000' OR f.functionid BETWEEN '7018' AND '7022' OR f.functionid BETWEEN '7040' AND '7044' OR f.functionid BETWEEN '7062' AND '7066' OR f.functionid BETWEEN '7084' AND '7088' OR f.functionid BETWEEN '7106' AND '7110' OR f.functionid BETWEEN '7128' AND '7132' OR f.functionid BETWEEN '7150' AND '7154' OR f.functionid BETWEEN '7172' AND '7176' OR f.functionid BETWEEN '7194' AND '7198' OR f.functionid BETWEEN '7216' AND '7220' OR f.functionid BETWEEN '7238' AND '7242' OR f.functionid BETWEEN '7260' AND '7264' OR f.functionid BETWEEN '7282' AND '7286' OR f.functionid BETWEEN '7304' AND '7308' OR f.functionid BETWEEN '7326' AND '7330' OR f.functionid BETWEEN '7348' AND '7352' OR f.functionid BETWEEN '7370' AND '7374' OR f.functionid BETWEEN '7392' AND '7396' OR f.functionid BETWEEN '7414' AND '7418' OR f.functionid BETWEEN '7436' AND '7440' OR f.functionid BETWEEN '7458' AND '7462' OR f.functionid BETWEEN '7480' AND '7484' OR f.functionid BETWEEN '7502' AND '7506' OR f.functionid BETWEEN '7524' AND '7528' OR f.functionid BETWEEN '7546' AND '7550' OR f.functionid BETWEEN '7568' AND '7572' OR f.functionid B... 

It would be great, if Zabbix API will use bind variables in queries also.






[ZBXNEXT-3034] Support groupfunc (grpavg, grpmax, grpmin, grpsum) via the API Created: 2015 Nov 02  Updated: 2015 Dec 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Chris Christensen Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: aggregate
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The API should support the ability to query grouping functions: groupfunc (grpavg, grpmax, grpmin, grpsum). This would allow better understanding of item values from a grouping perspective for validation before implementing the grp* item key and the ability to look at grouped data values where a grp* item key was not previously set.


There is precedent for the use of group aggregates with the existing API methods, but the implementation is akward and could benefit from optimization(s) rather than multiple queries. For example:



 Comments   
Comment by Chris Christensen [ 2015 Nov 02 ]

Just to note, ZBXNEXT-1192 looks similiar, but I believe they are different in that the aggregates do not include hostgroup item selection.

Comment by Chris Christensen [ 2015 Nov 02 ]

Here's an example with the trends table using MySQL:

Variables: i.key_, g.name, clock (and grouping)

SELECT clock, AVG(value_avg) FROM trends
WHERE itemid IN (
  SELECT DISTINCT i.itemid
  FROM items i, hosts h, hosts_groups hg, groups g
  WHERE i.hostid=h.hostid
   AND h.hostid=hg.hostid
   AND i.key_='system.cpu.load[,avg5]'
   AND i.status=0
   AND i.state=0
   AND h.status=0
   AND g.name IN ('hostgroup-name-1', 'hostgroup-name-2'))
AND (clock BETWEEN 1422496800 AND 1422536400)
GROUP BY clock DIV 300;




[ZBXNEXT-2937] Macros {MAC.RO<1-9>} are limited to single digit Created: 2015 Sep 02  Updated: 2015 Sep 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ebonweaver Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: limits, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

All macros by documentation and testing are limited to single digit values.
As such, getting an email action to report the status of all 12 inks in an HP Designjet for example is impossible, because item.name and item.value 10 and up simply do not work.

This is a serious limitation for which the only work around I can see is having 12 triggers instead of one which is not as elegant and removes the ability to present an overview of the whole device in the alert instead of just a single alert item.






[ZBXNEXT-2860] Improve housekeeper algorithm Created: 2015 Jun 29  Updated: 2015 Nov 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Server (S)
Affects Version/s: 2.4.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: housekeeper
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently Zabbix server retrieves all itemid's min clock from history* and trends* table. Also it uses housekeeper table to remove non-existing items. We need to optimize the process and drop housekeeper table at all and use only history and trends tables data.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Jun 30 ]

In ZBX-9278 (which I posted earlier ) I suggested some exact solutions for almost the same aspects as Alexey mentioned here.

I cannot imagine how we could drop the housekeeper table at all.

I'd suggest to close current report as duplicate and move unique details to the ZBX-9278

Comment by Oleksii Zagorskyi [ 2015 Nov 03 ]

Now I understand how Alexey's scenario would work and I agree that it would be nice a for following scenario:
Existing zabbix installation, where long time ago type of information has been changed for many items (itemIDs), and these itemIDs are still in zabbix configuration.

How to "clean" currently existing installations? - yes, remove values for every history/trends table for items which do not exist already for this table type.
My suggestion in ZBX-9278 would not help for this scenario.

Comment by Oleksii Zagorskyi [ 2015 Nov 05 ]

Before working on this issue, take a look please to ZBX-10012 discussion.





[ZBXNEXT-2857] Searching for graphs via search engine Created: 2015 Jun 25  Updated: 2020 Jan 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Jacek Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: graphs, search
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Would it be possible to add graphs in results (name of the host + names of valid graphs with links to them) of search engine queries?

For example, someone wants to check a traffic of some specific bussines client, he/she knows the name of that cilent and there is a graph named after that client, but he/she doesn't know on what host this graph can be found and because of large number of possible hosts going through all of them would generate lots of unecessary work. After typing ABCDE in search engine's field and submitting it, user would get (apart from standard results for hosts, host groups and template) another section with list of all graphs containing ABCDE in their titles along with hosts these grpahs can be found.



 Comments   
Comment by richlv [ 2015 Jun 25 ]

ZBXNEXT-1201 asks for a per-host graph filter

Comment by Kay Schroeder [ 2017 Apr 28 ]

Hello, we are running in the same issue. We have thousands of customer poorts and we have non-admin users checking graphs and statistics of these ports. These users also won't care on which (of 200) device the customer is located. So would be nice to have this feature in place.

Comment by Arnis Č. [ 2017 Sep 16 ]

I'm pretty surprised that it is still not implemented. May be in server environment it is not so important to search for a graph by description, but in networking environment it is a big disatvantage. We have a lot of switches and routers and we have graphs for each interface and each interface has a description with some unique identifier. We would like to search for a graph globally with some wildcard filter possibilities. It would be a killer feature for us. Many networking people I spoke with put that as a disatvantage e.g. in comparison with Cacti where you can search for graphs quickly.
But thanks to great Zabbix API we implemented a helper service that does graph search via Zabbix API and then we can redirect to the graph. But still, native functionality would be great.

Comment by Piotr Goczal [ 2019 Dec 31 ]

I'm also interested in these issue. @acivciss could you please tell more about your solution?

Comment by Arnis Č. [ 2020 Jan 02 ]

@Piotr Goczal We wrote a small web serviss that allows us to search and find graph IDs with specified description. 

We use API graph.get method with searchWildcardsEnabled to search for graphs. 

https://www.zabbix.com/documentation/3.2/manual/api/reference/graph/get

When graph ID is found we can redirect to zabbix frontend graph page:

zabbix.example.com/charts.php?form_refresh=1&fullscreen=0&graphid=<GRAPH_ID>

 

Comment by Piotr Goczal [ 2020 Jan 02 ]

Thank you, I will check it. If you can share your code it would be great.





[ZBXNEXT-5080] allow to tune SNMP bulk mode for zabbix user - adjust MAX_SNMP_ITEMS on host interface level Created: 2019 Feb 28  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Andris Zeila
Resolution: Unresolved Votes: 11
Labels: bulk, snmp, snmpbulk
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File example-fragmented.png     File fragmented-UDP-SNMPv1-126OIDs-failed-halvedto63-then-successful.pcap     File fragmented-UDP-SNMPv1-126OIDs-successful.pcap     File limit_snmp_oids_to50.patch    
Issue Links:
Duplicate

 Description   

There were number of cases, when MAX_SNMP_ITEMS in 128 was too much to be working, which caused different problems (tooBig(1) error).

A few possible reasons: different OIDs length, included response etc, which leas to UDP packet overcome MTU packet size, which leads to troubles in UDP-SNMP protocol which works not well for many devices.
As a result - bulk mode works bad or almost does not work.

I saw that some devices can nicely send fragmented response split to a few UDP packets (see attached example), which in total are higher that MTU, and they reconstructed on server side. I saw that on captured dumps on server side. But it happens not for all devices (snmp agents). I'm not 100% sure I understand this correctly.

How it could be improved - if you enable the bulk mode for SNMP interface, then one more input field appears or right (with default value 128) but you can set an arbitrary number in range 2-128. I mean user can decrease the upper limit manually.
I can imagine even implementation without changing current DB schema, we could use existing "bulk" column.

The level how I could recommend to decrease the value when set manually - 50-60. It's based on my own experience, when troubleshooting different issues.
If it does not help, decrease by 10 for each step.

Related discussions:
https://support.zabbix.com/browse/ZBX-8528#comment-119477
https://support.zabbix.com/browse/ZBX-12956  (about tooBig)
and other.

To filter such errors in Wireshark, use filter "(snmp.error_status == 1)"
https://datatracker.ietf.org/doc/html/rfc3416



 Comments   
Comment by Oleksii Zagorskyi [ 2019 Feb 28 ]

I've attached a simple patch, which decreases the MAX_SNMP_ITEMS from 128 to 50. limit_snmp_oids_to50.patch
This is just in case.

Comment by Oleksii Zagorskyi [ 2021 Dec 16 ]

This is very related to ZBXNEXT-4428, they are possible duplicates.

Comment by Oleksii Zagorskyi [ 2022 May 10 ]

A few OIDs which could be interesting to be checked/monitored in case of SNMP issues:

.1.3.6.1.2.1.11.20 (SNMPv2-MIB::snmpOutTooBigs) - likely should be used with an index 0, so final OID .1.3.6.1.2.1.11.20.0
.1.3.6.1.6.3.10.2.1 (SNMP-FRAMEWORK-MIB::snmpEngine), also likely should be used with an index 0, so final OID .1.3.6.1.6.3.10.2.1.0
In case of doubts, use snmpwalk with OID without the index .0





[ZBXNEXT-4992] {EVENT.ID} in trigger URL Created: 2019 Jan 30  Updated: 2023 Nov 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.0.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Jan Ostrochovsky Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

{EVENT.ID} macro is currently not supported in trigger URL

https://www.zabbix.com/documentation/4.0/manual/appendix/macros/supported_by_location

This limits possibilities for integration of ZABBIX frontend with external problem management/handling applications.

Please respectfully, could you implement that?



 Comments   
Comment by Rob Sterenborg [ 2020 Apr 15 ]

No activity here, but:

https://www.zabbix.com/documentation/current/manual/appendix/macros/supported_by_location

So, this has been made to work in Zabbix 4.4.

Comment by Richard Ostrochovský [ 2023 Nov 06 ]

Yes, this ticket can be closed.

1 Supported macros (zabbix.com)





[ZBXNEXT-5516] Dashboard new Graph widget legend extended functionality Created: 2019 Oct 17  Updated: 2019 Oct 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.4.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alex Alexandrov (Inactive) Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 4
Labels: dashboard, frontend, graph, legend, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2019-10-17-09-17-24-346.png     PNG File image-2019-10-17-09-23-08-872.png     PNG File image-2019-10-17-09-52-54-344.png     PNG File image-2019-10-17-09-53-27-774.png     PNG File image-2019-10-17-09-56-17-953.png     PNG File image-2019-10-17-10-00-06-287.png     PNG File image-2019-10-17-10-01-00-779.png    

 Description   

On the "old" Screen on each graph in the legend statistical information was displayed (avg,last,max,min).

 

On the "new" Graph widget in Dasboard there is no such possibility:

 

It is impossible to use new graphics in some cases due to the lack of this functionality.



 Comments   
Comment by Alex Alexandrov (Inactive) [ 2019 Oct 17 ]

As it turned out, the new graph widget also lacks the functionality of Dynamic Graphs. This is extremely inconvenient when creating the same type of dashboards for different hosts.

In screen graph you have ability select Dynamic item in Graph properties:

This allows you to use the same screen for different hosts of the same type, switching between groups and hosts:

 

In Dashboard graph widget you can select only static hosts for data set and you have no ability select dynamic dataset:

Comment by Valdis Murzins [ 2019 Oct 17 ]

Hello alex_spq,

Thank you for feedback and suggestions.
But, as these are not a bugs, but not implemented functionality for new graphs, I will move this task to Feature request project.
Edit: It was already done before me.





[ZBXNEXT-5467] Add the ability to Add/Change Tags in Triggers that are created from LLD Discovery templates Created: 2019 Sep 24  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Stephen Apple Assignee: Unassigned
Resolution: Unresolved Votes: 33
Labels: Zabbix7.2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

All Triggers that are created from LLD discovered items are set so that Tags cannot be added or changed on the triggers.

We would like to use this functionality to link a trigger with our external ticketing system in order to track when a ticket exists or needs to be created based on the trigger that fired.  In order to do this, we need a way to link the trigger to the ticket and with all fields suppressed for editing in LLD created items/triggers, this is not possible.



 Comments   
Comment by Constantin Oshmyan [ 2022 Mar 14 ]

This task could be implemented now using the LLD override rules.
Unfortunately, you can edit the LLD overrides on the host level only; so this solution is not appropriate if your LLD rule is at the template level.

ZBXNEXT-4514 contains a similar request.

Moreover, after the ZBXNEXT-6674 implementation the importance of this ticket raises dramatically. In the previous versions of Zabbix (up to and including 5.4) it was be possible to link the Service to a trigger directly; but since v6.0 this link is possible via tags only. So, if you need to link a service with some LLD-generated trigger, then you should have a possibility to mark this trigger by a tag. Moreover, if this LLD rule is inherited from the template, it's impossible to use a workaround with the LLD override

Comment by Rodrigo P [ 2022 Mar 31 ]

I'd like to endorse this feature request. I have the same situation here. I need to specify tags for triggers that were created by LLD rules to be able to link them with my ticket system when they are fired, and then automate the process of opening the tickets and then be able to connect events and tickets.

Comment by Sacha Zufferey [ 2022 Jun 02 ]

We are interested in this feature too. Thanks!

Comment by Kirill Varnakov [ 2022 Jun 23 ]

What about LLD items? They also need this functionality.

Comment by Nathan Liefting [ 2022 Oct 10 ]

For anyone running into this issue. You can get there using OVERRIDES.

Simply use user macros in your filters to override the values between host and template levels.

Comment by Constantin Oshmyan [ 2022 Oct 10 ]

For anyone running into this issue. You can get there using OVERRIDES.

See ZBXNEXT-7593

Comment by leeyc0 [ 2022 Nov 12 ]

I need this too. For my use case I need to tag the problem to ad-hoc disable notification of selected problems (but not disabling the problem itself, I still need to log the problem), or using tags to selectively notify some of the users.

With problem tagging I can simply disable problem notification by setting tag conditions in actions, otherwise I have to cherry-pick the problem in action rule every time when I need to ad-hoc disable a problem notification, and potentially in multiple action rules.

Comment by leeyc0 [ 2022 Nov 13 ]

Moreover, if this LLD rule is inherited from the template, it's impossible to use a workaround with the LLD override

It is indeed possible, but you need to set the LLD override at template level, and add one LLD override rule per host, utilizing {HOST.NAME} macro as condition.

Comment by leeyc0 [ 2022 Nov 13 ]

See ZBXNEXT-7593

We can at least set the tag at the host itself, which should be enough for most cases, just need to check one more tag...

Comment by Constantin Oshmyan [ 2022 Nov 14 ]

Just a reminder that the ZBXNEXT-6674 (implemented in version 6.0) caused to increasing of the current ZBXNEXT priority.
There was version 6.2 published, the version 6.4 is at the beta3 stage – but this feature is still not implemented.
I really hope it will be included in the next version, as the 7.0 should be an LTS.

Comment by Mehmet Ali Buyukkarakas [ 2023 Jul 11 ]

I need also this feature. Voting for.

Comment by Cesar Inacio Martins [ 2023 Oct 27 ]

Also need this feature.
Basic example , we have lots of Windows Servers , few ones have some FS drives which should be monitored for specific and different teams.... The only way is setting a specific tag on trigger/hosts which is in this case, triggers prototype created by windows template .

Since TAGs was implemented as general use for filters and identification of services , this resource is mandatory!

No overrules or ulgy solutions like clone the trigger and work with a "fixed" trigger on the host are good and acceptable solution.

 

Comment by Mehmet Ali Buyukkarakas [ 2023 Oct 27 ]

Totally agree.

We have another scenario. Some windows services on some servers are monitored by the Infrastructure team, but some application specific services are monitored just by another team. And the application team never accepts the infra-related services alerts to be delivered to them.

Currently we can't distinguish the services by teams unless we dont use the LLD discovery rules overriding option. But its not practical.

 





[ZBXNEXT-5450] Zabbix Java Gateway metrics retrieval optimisation Created: 2019 Sep 19  Updated: 2019 Sep 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Java gateway (J)
Affects Version/s: 4.0.12, 4.2.6, 4.4.0alpha2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Viktors Tjarve Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: javagateway, jmx, performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Multiple metrics could be potentially grouped (JMXItemChecker.java). For example, I have jmx.discovery item that will create items from prototypes. Later in a case when a jmx.discovery request is received together with separate item request then all values are retrieved for the discovery request. To optimize performance items should be grouped in a way that when values retrieved by discovery could be passed to specific items as well.






[ZBXNEXT-5005] Drill-down browsing from Summary Widget Created: 2019 Feb 05  Updated: 2019 Apr 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.2.0alpha3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: T.J. Yang Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2019-02-05-13-03-33-170.png     PNG File image-2019-02-05-14-45-07-046.png    

 Description   

 Hi 

Sorry for opening up many epics today. I am from Nagios camp and thinking of moving over the Zabbix. But I missed following feature after using latest 4.2.0 alpha3 for a while.

  1. Above screenshot is from Nagios Monitoring instance. One can move the cursor to 160 number click on the number to see the list of all 160 hosts are not reachable.
  1. Can Zabbix Server put this same feature  as Dashoard widget ? 
  2. end


 Comments   
Comment by T.J. Yang [ 2019 Feb 05 ]

Another approach is to enhance "System information" widget to add drill-down click on green 17 to list out 17 enabled hosts.





[ZBXNEXT-4912] zabbix proxy 链接不到zabbix server Created: 2018 Dec 13  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: 3.0.24
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: mishidehun Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

centos 7.6
zabbix-server 3.4.15
zabbix-proxy 3.4.15


Attachments: PNG File zabbix-png.png    

 Description   
过滤172.21.168.23

[root @ Pay-ZABBIX-Proxy-TN SYS-operator] #tailf /var/log/zabbix/zabbix_proxy.log | grep 172.21.168.23
59920:20181213:121823.261在connect_to_server()[172.21.168.234]:10051 [timeout:600]
59920:20181213:121824.267在connect_to_server()[172.21.168.234]:10051 [timeout:600]
59920:20181213: 121825.273在connect_to_server()[172.21.168.234]:10051 [timeout:600]


proxy 一样的报错

59920:20181213:121941.889结束proxy_get_history_data_simple():0 lastid:0更多:0大小:52
59920:20181213:121941.889在proxy_get_lastid()字段中:'proxy_autoreg_host.autoreg_host_lastid'59920
:20181213:121941.889 query [txnlev:0] [select来自ids的nextid,其中table_name ='proxy_autoreg_host'和field_name ='autoreg_host_lastid']



 Comments   
Comment by Artjoms Rimdjonoks [ 2022 Jan 04 ]

This is an international issue tracker, please rewrite your request in English. (check https://zabbix.org/wiki/Docs/bug_reporting_guidelines)

Comment by patrik uytterhoeven [ 2022 Oct 20 ]

zabbix proxy cannot connect to zabbix server

 

its a commercial question





[ZBXNEXT-8965] Operational data improvement (Expression macro support or related item caching) Created: 2024 Jan 19  Updated: 2024 Jan 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.26rc1, 6.4.11rc1, 7.0.0beta1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrey Tocko Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2024-01-19-16-57-16-343.png     PNG File image-2024-01-19-17-01-32-082.png     PNG File image-2024-01-19-17-05-01-292.png    

 Description   

Issue:

Detected Problems/Events requires additional information for correct decision making.

Example:

    Event fired: Filesystem / volume has less then 10% Available space
    We need to know total size of volume. Its a big difference when you need to provision additional Gigs or Terabytes of storage.

 

Current workarounds used now:

  • {?Expression macro} in the Event name:
     
    • Event name or Subject of notification grows unexpectedly.
    • Not useful on Event detail page, because it can not reflect current situation of ongoing problem solution.
    • Will stay Unknown forever, if related data was collected only after the trigger fired.
  • dummy items in trigger expression:
    • Can affect trigger firing, so it's not an option.
    • trigger expression looks unpresentable. Especially for official templates.

Solutions:

  • {?Expression macro} support in Operation data.
  • Or separate definition of informational items, outside of trigger expression (and macro like {ITEM.LASTVALUE1..9}).

 






[ZBXNEXT-8824] Add option to inherit parent host tags for the child hosts created from host prototype with ability to add/modify/change additional tags Created: 2023 Nov 08  Updated: 2024 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F), Proxy (P), Server (S)
Affects Version/s: 7.0.0alpha8
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Alex Kalimulin
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File grafik.png    
Issue Links:
Duplicate

 Description   

Use case: parent host is added from the CMDB with tags, all child hosts discovered from the LLD prototype on this host should have same tags.

Option can look like this:






[ZBXNEXT-8804] Be able to use a docker socket proxy instead of mapping directly the volu Created: 2023 Oct 29  Updated: 2024 Feb 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent2 plugin (N)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Kaybi Assignee: Eriks Sneiders
Resolution: Unresolved Votes: 1
Labels: agent, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello,

It would be awesome if "Plugins.Docker.Endpoint" parameter could use a docker socket proxy instead of only supporting unix.

For instance Netdata does it: https://learn.netdata.cloud/docs/installing/docker#with-docker-socket-proxy

Examples of docker socket proxies:

Kind regards



 Comments   
Comment by Kaybi [ 2023 Nov 03 ]

Created a pull request for that feature request: https://github.com/zabbix/zabbix/pull/115





[ZBXNEXT-8605] Web scenario: Allow overriding domain names resolving Created: 2023 Jul 30  Updated: 2023 Jul 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Waleed Mortaja Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In a load balance environment, we have multiple web servers serving a set of domain names over HTTPS. We would like to measure the performance of each web server independently by creating a web scenario for each one of them.

 

The problem: Using a domain name in the "URL" field in the web scenario would lead to resolving the domain to a different web server each (some) time leading to non reliable data.

 

Workaround (fails for HTTPS): Specify the IP of the web server instead of the domain name. This fails because each web server serves multiple domains (virtual hosts) and thus it responds differently based on the domain name used to connect to it, or more specifically the "Host" HTTP header. And while you can override the HTTP Host header in the current interface, this would fail for HTTPS because An HTTPS server also needs to get the server name provided already in the TLS handshake so that it knows which cert etc to use.

 

The solution: Zabbix depends on curl under the hood. curl allows you to give curl the proper URL but with a custom IP address to use for the host name we set. The --resolve command line option is our friend

 

Notes:

  • This method also works perfectly when following redirects since any further use of the same host name will still resolve to the same IP address and redirecting to another host name will then resolve properly.
  • There is also a "--connect-to" option in curl but it would not be suitable for HTTPS and redirects together since it only used to establish the network connection. It does NOT affect the hostname/port that is used for TLS/SSL (e.g. SNI, certificate verification) or for the application protocols.

 

So please provide an interface parameter to configure the curl's "--resolve" option (or a sub-interface menu since it can be used multiple time to override multiple domains per a web scenario)

 

Reference: https://daniel.haxx.se/blog/2018/04/05/curl-another-host






[ZBXNEXT-8483] Improve housekeeping of events from deleted triggers. Created: 2023 Jun 07  Updated: 2023 Nov 01

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.35, 6.0.18, 6.4.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgars Melveris Assignee: Alex Kalimulin
Resolution: Unresolved Votes: 0
Labels: housekeeper
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently when a trigger is deleted information about it is written into the "housekeeper" table.
Later housekeeper uses that data to remove data from "problems" table related to this trigger.
But "events" table is not cleaned up and events in it remain until the global housekeeping settings from Administration -> (General) -> Housekeeping -> Trigger data storage period
are reached. By default this is on year.
An installation with many changes (hosts removed etc) could end up with a huge amount of entries in events table that cannot be used in any way.
This is caused by ZBX-12975, if housekeeper deletes the events before configuration has been reloaded (trigger still exists in configuration cache), this can cause problems.

I believe this process could be improved by removing such orphaned events. For example 24h after the trigger has been deleted. 24h to be on the safe side that configuration has been reloaded.






[ZBXNEXT-8434] Provide CAB files for the Agents Created: 2023 May 08  Updated: 2023 May 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N)
Affects Version/s: 6.0.17, 6.4.2, 7.0.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows/SCCM/MECM


Issue Links:
Causes

 Description   

Build and publish CAB files for easy integration with SCCM/MECM






[ZBXNEXT-8382] zabbix的过滤器无法应用宏 Created: 2023 Apr 03  Updated: 2023 Apr 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.32
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: 李大嘴 Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-04-03-16-58-29-729.png     PNG File image-2023-04-03-16-59-06-284.png     PNG File image-2023-04-03-16-59-38-504.png     PNG File screenshot-1.png    

 Description   






[ZBXNEXT-8959] Fix Color Selection In SVG Graph When Aggregating by Whole Dataset Created: 2024 Jan 17  Updated: 2024 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.25, 6.4.10, 7.0.0alpha9
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ryan Eberly Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When multiple items are chosen in the Svg Graph and are aggregated by the whole dataset, the first result from the function getColorVariations becomes the color of the aggregated data set. This is confusing and can lead to unexpected colors in the graph.

 

For whole data set aggregations the original color choice should be used from $options['data_sets'].

 

For example, in getMetricsAggregatedData(), starting at line 701, some simple logic could be added to easily fix this:

699                                 if ($metric['options']['aggregate_grouping'] == GRAPH_AGGREGATE_BY_DATASET) {
 700                                         $dataset_metrics[$dataset_num] = $metric_num;
 701                                         if ($data_sets[$dataset_num]['dataset_type'] == CWidgetFieldDataSet::DATASET_TYPE_PATTERN_ITEM) {
 702                                                 $metric['options']['color'] = '#' . $data_sets[$dataset_num]['color'];
 703                                         }
 704                                         else {
 705                                                 $metric['options']['color'] = '#' . $data_sets[$dataset_num]['color'][0];
 706                                         }
 707                                 }





[ZBXNEXT-8855] periodical problem reports (extend functionality of scheduled reports) Created: 2023 Nov 28  Updated: 2023 Nov 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: atpk Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please add support for problems in scheduled reporting. The idea is to receive a report of problems occurred in a given time period grouped/categorized by severity etc. Triggers are great for real time alert escalations but having a periodical problems report is much useful for top tier managers. Example: send email report every 1hour with problems occurred in the past hour grouped by severity, i.e., all warn alerts, then all avg alerts, then all disaster alerts etc.






[ZBXNEXT-8737] Create multiple links between the two routers Created: 2023 Oct 04  Updated: 2023 Oct 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.38
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Tran Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In Zabbix 5, when trying to create a diagram between two routers with multiple Te links connecting them, I've noticed that it appears to only support one link, and the links overlap. It seems that Zabbix does not readily support multiple connections between two routers. How can I create multiple links between the two routers?
Additionally, how can I prevent Zabbix from automatically scanning VLANs, Port-channels, etc.? I only want to retrieve information about physical ports such as Gigabit and Ten Gigabit interfaces' Up/Down status, without capturing VLANs, Port-channels,..or other details.
Thank you.






[ZBXNEXT-8732] Automatic suppression of problems in case the trigger is marked for removal Created: 2023 Oct 03  Updated: 2023 Oct 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.4.7
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edgars Melveris Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

When monitoring SNMP sometimes a component is removed and the index no longer exists in snmp table.

For example, BGP link is down, problem created from it and then it's removed. Problem remains in Zabbix until the "Keep lost resources" period.

If this period is decreased we might remove valuable history, that might still be used, so we don't want it decrease it.

At the same time, because trigger is marked for removal at the moment, there is a high probability that the issue is no longer actual.

 

In this use case it would be very beneficial if we could suppress the problem automatically in case trigger is marked for removal. If it gets removed, the problem goes away anyway, but if "Marked for removal is unset", the problem continues and have correct history.






[ZBXNEXT-8539] Move MQTT item processing from agent2 to server/proxy Created: 2023 Jul 03  Updated: 2023 Jul 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: McDouglas Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be great if we could create hosts/templates for the different sensors we are accessing using MQTT, however using agents for this, is kind of strange. Obviously we can't install agents on the hosts (they don't even have IP addresses, eg. LoRaWAN nodes), so the config is really convoluted right now.

It would be much easier if there would be an MQTT item type, and the server/proxy would connect to the MQTT broker and provide the values for it. It could use the host interfaces, or macros, etc for the broker address. Would make creating templates, and LLDs, and maps much easier.

This structure would make much more sense than the current agent-host based one.






[ZBXNEXT-8400] extend parameters for eventlog windows key Created: 2023 Apr 13  Updated: 2023 Apr 13

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N)
Affects Version/s: 6.4.2rc1, 7.0 (plan)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

extend current parameters for eventlog key for windows like it was done for log logrt

maxdelay - the maximum delay in seconds. Type: float. Values: 0 - (default) never ignore log file lines; > 0.0 - ignore older lines in order to get the most recent lines analyzed within "maxdelay" seconds. Read the maxdelay notes before using it!

This would be very useful to not read all logs if they not needed. If wee need only some fresh for last hour.

One of use case:

Agent was stopped or not running by some reason for few hours/days then we nit started it start reading huge set of event logs which might be not actual for a moment for monitoring.

Probably maxdelay could be set globally for all eventlog/ log items and on priority on key level for particular logs.






[ZBXNEXT-8778] Map Read-only permission is not working for users with user role type Admin Created: 2023 Apr 05  Updated: 2023 Oct 23

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Daniel Kempkens Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 6.0 LTS


Attachments: PNG File screenshot-1.png     PNG File screenshot-2.png     PNG File screenshot-3.png     PNG File screenshot-4.png     PNG File screenshot-5.png     PNG File screenshot-6.png     PNG File screenshot-7.png    
Issue Links:
Duplicate
Team: Team B

 Description   

Steps to reproduce:

  1. Create new map as Zabbix admin with owner Zabbix admin, select "share" and choose a user group, give them "read-only" permission.
  2. That User group has a user role type "user".
  3. Login as a member of that group -> map editing is not possible
  4. Change user role type to "admin"
  5. Login as a member of that group -> map editing is possible (should not be!)

Try the same steps with a dashboard instead of a map - the user group with role type "admin" cannot edit the dashboard. This is the expected result, but not in the maps section.



 Comments   
Comment by Michal Czerniakiewicz [ 2023 Apr 05 ]

I do confirm. Replicated on Zabbix appliance 6.0.15 LTS(https://www.zabbix.com/rn/rn6.0.15). Created: user "Admina" with Admin role and group Zabbix administrators; user "User" with User role and group Users(changed during and for the process to Admin role).



User can edit the map.

Created and owned by Admin role type user "Admina".

User can not edit the dashboard.

Created and owned by Admin role type user "Admina".

Comment by Alexander Vladishev [ 2023 Sep 26 ]

This works according to the documentation:

Admin level users can see private maps regardless of being the owner or belonging to the shared user list. Private maps can be edited by the owner of the map and in case a user/ user group has read-write permissions for this map and at least read permissions to all elements of the corresponding map including triggers in the links.





[ZBXNEXT-8416] zabbix avg calculation wrong when measurement interval is not constant Created: 2023 Mar 06  Updated: 2024 Jan 17

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: tni Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Zabbix_Bug_Avg.png    
Issue Links:
Sub-task
part of ZBX-16162 Draw Graph line complete when Discard... READY TO DEVELOP
Team: Team A

 Description   

Steps to reproduce:

  1. I collect data from a MQTT power measuring device
  2. The MQTT power measuring device does not send data at a regular interval but when it detects a significant change in power consumption
  3. in this case this leads to more measurements when the power consumption is low

Result:

The calculated avg is 1.35 KW for the last 1 hour

See screenshot attached

Expected:

Since power consumption is 2.61 KW 80% of the time and 0.55 KW 20% of the time, the calculated avg for the last 1h should be about 2.18 KW

I think this happens because Zabbix calculates the Avg by just summing up all values and dividing through the number of values taken.

But it does not take into account the time interval between each measurement taken.

This method only works if the measurement values are taken at an exactly regular interval, say each 1 minute



 Comments   
Comment by tni [ 2023 Mar 07 ]

I forgot to mention - this does not only affect the avg calculated in the graph view but also the Aggregate function 

avg (/host/key,(sec|#num)<:time shift>)





[ZBXNEXT-8349] Usermacros context for discovered hosts. Created: 2023 Mar 15  Updated: 2023 Mar 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.0.15rc1, 6.4.1rc1, 7.0 (plan)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: LLD, VMware, server
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

For example we have native VMware monitoring with discovering hypervisors and VMs.

And we want to fill some template with user macro context

{$CPU_HIGH:"{#HV.NAME}"}

Right now it won't work so LLD Marco is not expanded inside linked template of discovered host.

Maybe also would work if we could expand regular macro in context.

{$CPU_HIGH:"{HOST.NAME}"}





[ZBXNEXT-8341] Improved responsiveness of the Recent problems & Problems screen Created: 2023 Mar 10  Updated: 2023 Mar 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.32
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Toshiyuki Eto Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS=RHEL8.3
Zabbix Version=5.0.3



 Description   

[Eng]
When a large number of failures occur temporarily (about 1 million failures occur), the response of the "Monitoring > Problem > Recent problems" and "Monitoring > Problem > Recent problems > Problems" screens deteriorates or the screen disappears. .
We know that the load on the database is the cause, so we are dealing with it by closing problem information and applying recovery conditional expressions. However, applying closing and recovery conditional expressions is a post-event response, so I would like you to improve the response of these screens even when a large number of failures occur.

[日本語]
一時的に障害が大量発生した時(100万件くらいの障害が発生)「Monitoring > Problem > Recent problems」「Monitoring > Problem > Recent problems > Problems」画面のレスポンスが悪化したり、画面が表示されなくなる。
データベースの負荷が原因である事は分かっており、problem情報のクローズや復旧条件式を適用して対応している。然しながら、クローズや復旧条件式の適用は、事後対応になってしまうため、障害が大量発生した時でもこれらの画面のレスポンスが良くなるようにして欲しい。






[ZBXNEXT-8168] The Y-axis values are shown on the right Created: 2022 Dec 21  Updated: 2022 Dec 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: zabbix_1993 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix6.2.1


Attachments: PNG File image-2022-12-22-01-25-56-158.png    

 Description   

How is the value of the y axis displayed on the right






[ZBXNEXT-8139] Vware Hypervisor mainteance status should suppress all related hosts. Created: 2022 Dec 06  Updated: 2022 Dec 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Andris Zeila
Resolution: Unresolved Votes: 3
Labels: VMware
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

When the Vmware hypervisor is in maintenance status = 1, It would be great if zabbix will take this into account and suppress related hosts alerts by option or automatically.






[ZBXNEXT-8489] Add LLD-Macro-postprocessing to LLD-discovery Created: 2023 Jun 08  Updated: 2023 Jun 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S), Templates (T)
Affects Version/s: 6.4.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Norbert Püschel Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: lld, macros, preprocessing
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

LLD Discovery



 Description   

LLD is one of Zabbix most powerful mechanisms. There are a lot of functions and preprocessing options available to use nearly any data format as basis for item discovery and extract relevant parameters as LLD-macros.

What is missing is an easy way to process the values extracted from the LLD source data before they are assigned to the LLD macros.

Yes, you have a few options:

  • Use item preprocessing to change LLD macro values working on the whole set of source data before they are taken apart by LLD. This requires at least pretty complicated regex wizardry and might not give you the expected results, as it is pretty difficult to target only specific parameters you wish to change and leave the rest of source data unchanged.
  • You can use macro functions to change the value of LLD macros; however, this has to be put in every location the LLD macro is used instead of making sure it contains the right value in the first place. Also, you might not be able to create the required macro value using regex.

What I propose is to add an optional post processing chain to LLD macro definitions. It would be easy to adopt a subset of the item preprocessing operations for LLD macros:

  • regex processing
  • replace
  • trimming
  • multiplication
  • number conversions (hex, binary, octal, ...)
  • range validation
  • javascript function

An use case would be: imagine getting storage sizes reported back in megabytes (or as storage block count). For items, you would use item preprocessing to alway convert them to bytes (to make use of Zabbix's builtin unit processing power). Now you also get another parameter indicating size you want to put in a LLD macro (because it does not normally change). Now imagine you need to build a trigger comparing the processed item values to the threshold stored in the LLD macro... only they are not compatible for comparison, because the macro holds something like "100M" instead of the byte count.






[ZBXNEXT-8353] Enhance Item filtering for foreach-functions Created: 2023 Mar 18  Updated: 2023 Mar 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Norbert Püschel Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: aggregateditems, calculated, filter
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Calculated Items using aggregate functions



 Description   

Aggregate functions using foreach functions are a mighty tool. However, there are some glaring omissions that are difficult to impossible to work around.

Consider for example a template determining the current patch state of Linux systems (this is an actual use case of mine). It uses some predefined thresholds to fill a patch state item for each Linux hosts; the item contains values 0 (unknown), 1 (bad), 2 (warning), 3 (good).

Now I want to get a simple graph to show me how many of my Linux servers have which patch state. Easy? No, it is not possible right now. I would need to count the number of hosts where this item has a specific value. However, item filters right now only support host groups and / or tags as criteria. Host groups obviously do not help me here, and I see no way to put a current item value in a tag. So what would be required  is a filter enhancement that would allow me something like this:

count(last_foreach(/*/patch.stage,value=2)) (or something like this).

Consider another problem: I want to have a statistic with the different Linux Versions I run with the number of hosts for each of them.

This would require a LLD using a calculated item returning JSON, e.g.:

distinct(last_foreach(/*/linux.version)) returning something like

[""{#LINUX.VERSION}":"RHEL8.5","{#LINUX.VERSION}":"Centos 8 Stream"

So I could use an item prototype like this

count(last_foreach(/*/linux.version,strcmp({#LINUX.VERSION}))

to get the count for string values as well.

While this would fit in well syntactically, I guess this is not trivial to implement.






[ZBXNEXT-8179] Discovery filesystem is not working. Error is "The system cannot find the file specified.". Created: 2022 Dec 26  Updated: 2023 Feb 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N), Templates (T)
Affects Version/s: 6.2.5
Fix Version/s: None

Type: Epic Priority: Major
Reporter: tunahan husem Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: agent, items, macros, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows Server 2019, Zabbix Server v6.2, Zabbix agent v6.2 and Zabbix agent 2 v6.2


Attachments: PNG File Screenshot_1.png     PNG File Screenshot_2.png     PNG File Screenshot_3.png    
Epic Name: Mounted filesystem discovery
Team: Team INT

 Description   

There is a problem on discovery rules in filesystem discovery part.  Error is "The system cannot find the file specified.".  I will attach error logs.






[ZBXNEXT-8122] Make {USER.NAME} & {USER.SURNAME} useable in Trigger-based notifications and commands Created: 2022 Nov 28  Updated: 2023 Jul 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.2.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marco Hofmann Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-8553 Macro {USER.*} in notifications Closed

 Description   

Our current Zabbix <-> Ticket integration requires being able to address the receiving person by his/her full name. Zabbix knows the names of each user, but can't access that information during a Trigger-based notification. The macros for that operation exist, but are not usable in that context.

Please make it possible, to resolve the macros for Trigger-based notifications and commands.



 Comments   
Comment by Evgeny Semerikov [ 2023 Jul 11 ]

+100500
In 6.4.3 this is still not implemented.





[ZBXNEXT-8126] Suppress recovery and update notifications during maintenance for problem started before maintenance Created: 2022 Nov 30  Updated: 2022 Nov 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 6.0.11, 6.2.5, 6.4.0beta4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Case:
"We have a Prometheus template monitoring both Prod and Dev servers. We have a host group for the Dev Prometheus servers. We have a daily maintanence window with data collection that applied to the Dev host group. (Goal is we can catch problems and gather data overnight, but save the notification until the morning if the problem still exists.)
Now, in order to prevent waking up the on-call person to tell them a problem has resolved, I have to add complexity to the solution, or else take away some monitoring and provide less value."

Please add checkbox like:
"Suppress recovery and update notifications during maintenance"






[ZBXNEXT-8285] allow out-of-box monitoring for multi-homed host (verifying selected host interface availability) Created: 2023 Feb 20  Updated: 2023 Feb 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Jonathan De Graeve Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Some hosts are multi-homed and zabbix allows to add multiple interfaces per host. GREAT!

HOWEVER:

In the current monitoring, it is not visible when a backup interface suddenly goes offline, while in fact, this backup (or another) interface might be needed when the major interface would fail.

Thus losing the potential backup without knowing it is gone is considered a major problem.

 

My feature request is to add a function like:

1) option to allow enable/disable keep-alive check per host interface.

If the keep-alive succeed, no problem else: trigger alarm of the specific host interface becoming unreachable

2) option to allow for some other checks to test: like latency / packet-loss towards this additional interface(s)

 

Below explains partially the problem, but working with macro's etc for this might be considered huge workaround. Some devices/hosts we use have even many possible interfaces...

https://blog.zabbix.com/monitoring-a-dual-homed-machine-within-zabbix/11349/

 






[ZBXNEXT-8231] Update IP address stored for auto-registered hosts with HostInterface set to DNS Created: 2023 Jan 26  Updated: 2024 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.12, 6.2.6, 6.4.0beta5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: Zabbix7.2, autoregistration, dns, hostinterfaces, ipaddress
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Use case:

Use auto-registration feature with HostInterface set:
https://www.zabbix.com/documentation/current/en/manual/discovery/auto_registration#using-dns-as-default-interface

During first auto-registration interface created with both fields populated IP and DNS, and DNS is set to default connection method.

For example, host is moved to another network or between data-centers or between on-premises and cloud.

Monitoring still works through DNS, but IP stored inside interface settings is incorrect.

This makes {HOST.IP} macro unusable and information provided by Zabbix is incorrect.

Please add ability to refresh this information on regular basics.






[ZBXNEXT-5707] Add template Windows updates check (Windows registry monitoring) Created: 2020 Jan 22  Updated: 2023 Dec 18

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ivan Degtyarev Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 22
Labels: None
Σ 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: JPEG File winupdate.jpg    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-8900 Official Windows update Template moni... Closed
Sub-Tasks:
Key
Summary
Type
Status
Assignee
ZBXNEXT-7594 Frontend changes for Windows registry... Specification change (Sub-task) Closed Dmitrijs Goloscapovs  
ZBXNEXT-7732 Windows registry monitoring Specification change (Sub-task) Closed Dmitrijs Goloscapovs  
Team: Team INT
Sprint: Sprint 86 (Mar 2022), Sprint 87 (Apr 2022)

 Description   

Create linked template (Template OS Windows by Zabbix agent and Template OS Windows by Zabbix agent active) to check the date of the last update installation on Windows.

In Zabbix Roadmap:

Security and compliance monitoring

  • Standard templates will be enhanced to contain security- and compliance-related monitoring

Example item key: system.run["PowerShell.exe [int][double]::Parse((Get-Date((Get-ItemProperty -Path Registry::'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\Results\Install').LastSuccessTime) -UFormat %s))"] 
But you can think about implementing it without powershell.
 
You can also make a check to check the status of the firewall.
 



 Comments   
Comment by Ivan Degtyarev [ 2020 Jan 22 ]

In Inherited and template macros, create Macro with Effective value for redefine the number of days without installing updates

Comment by Alexei Vladishev [ 2020 Jan 31 ]

It sounds like a great idea, let us check if it can be implemented without use of system.run.

Comment by Alexei Vladishev [ 2022 Apr 08 ]

Just a quick status update. We are about to start development of this functionality, aiming for Zabbix 6.2.

Comment by Dmitrijs Goloscapovs [ 2022 May 19 ]

Development of new metrics (without template changes) for monitoring of Windows registry was moved to ZBXNEXT-7732.

Monitoring of Windows updates using registry seems not to provide real latest info about updates. Sources other than registry should be considered.
Some categories of updates are being installed, but they do not change a timestamp in registry (for example, KBxxxxx updates for Windows Defender, UWP apps, drivers). In such cases eventlog will contain records about successfully installed updates (with event ID 19, and source as WindowsUpdateClient), but timestamp in registry will not be changed. Judging by this fact, Eventlog can be the right source, as WMI behaves similarly to registry. However, eventlog monitoring is available only as active check.

Windows registry monitoring metrics are available in:

Comment by dimir [ 2023 Dec 18 ]

While implementing registry monitoring was mentioned above this is not what was asked for (Windows Update monitoring). Keeping this open.





[ZBXNEXT-5668] Add ability to place host in maintenance for relative time period Created: 2020 Jan 02  Updated: 2020 Jan 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Jack Valko Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Various workarounds have existing in zabbix in the past to place hosts in a mode where it will not action on 1 or more of its triggers.  With the removal of the add hosts to group functionality on the hostgroup edit page, there's no immediate way from a dashboard to quiet a host for a relative period of time.  (Please correct this assumption if I'm mistaken).

I would propose an additional operation on the "Update Problem" page that would offer an option to quiet this alert or quiet this host.  






[ZBXNEXT-6049] New type of dependent item, update interval Created: 2020 Jul 07  Updated: 2020 Jul 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S)
Affects Version/s: 5.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dario Sindicic Assignee: Michael Veksler
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be awesome that we could have another kind of dependant item in Zabbix. A new kind of dependant item would mean that kid item would act like a normal item, but its refresh would be indicated by the change of its' master item. Having that feature, kid item shouldn't have so tiny refresh interval because it would refresh only on a real update. For example, master item is a Log item in which I grep "Synchronized" word, and kid item would be an HTTP agent that would curl the website and by that collect new content. 






[ZBXNEXT-5993] Access item in the HTTP agent ( Headers ) Created: 2020 May 31  Updated: 2022 Nov 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Stanislav Yaroshevskiy Assignee: Andris Zeila
Resolution: Unresolved Votes: 7
Labels: items, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 2020-05-31_18-55-23.png    

 Description   

Situation:
First item: There is a parent item(HTTP agent) that receives the web authorization cookie on the system.
Second item: Using the web authorization data from the parent item (cookie), ubstitute them in the header of the HTTP request

Suggestion:
Add the ability to access host item in the HTTP agent in Headers.



 Comments   
Comment by Alexei Vladishev [ 2022 Nov 17 ]

It looks similar to ZBXNEXT-4449.





[ZBXNEXT-5949] Non-PHP format for web configuration Created: 2020 May 13  Updated: 2020 Aug 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: cloud, config, usability, web
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently Zabbix web-interface uses configuration file in PHP script format. Sometimes it is very difficult to automate web configuration deployments as it is PHP with many special characters.

Probably it is better to migrate to Zabbix server/proxy configuration file format to be consistent with all Zabbix components.






[ZBXNEXT-6284] Ability to use multiple dependent items in trigger expressions but in a synchronous way Created: 2020 Oct 22  Updated: 2024 Jan 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Andris Zeila
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-6297 master item: trigger expressions eval... Closed
is duplicated by ZBX-19871 Trigger use old data from dependent item Closed

 Description   

Ability to use multiple dependent items in trigger expressions but in a synchronous way. If I have 3 dependent items based on the same master item I would expect that trigger will calculate its expressions at the same time after 3 samples will be saved. Thanks to that trigger generate only one problem with correct ITEM.LASTVALUE resolution in the event table.

It means that we cannot use multiple items in trigger expressions because it doesn't make sense in most of our cases if trigger generates multiple events almost at the same time based on one master item and only one sample.

But since the master item return JSON, JSONPATH on trigger level could solve that issue.

i.e.:

{"file": "somelogfile.txt", "value": {"count": 3, "min": 0.302, "max": 0.302, "avg": 0.302, "sum": 0.906}, "count": 3}

An additional trigger function that extracts a number value from json sample or clean text. Something like that:

Log Parser Template:log_parser.master_item.regexp("\"avg": ([\d\.]+),#1, \1) > 0.200

or

Log Parser Template:log_parser.master_item.jsonpath($.value.avg,#1) > 0.200

Is it makes sense and is it possible in the future?



 Comments   
Comment by Oleksii Zagorskyi [ 2021 Sep 30 ]

There is a technical discussion in ZBX-12796 which explains current data processing workflow.





[ZBXNEXT-5863] Dynamic indexes inside OID Created: 2020 Apr 03  Updated: 2020 Apr 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexander Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi.

As defined in docs and code see link below, this feature only works for indexes on the end of OID, somtimes needs to insert dynamic index inside OID. For example look at jnxCosQstatTotalDropPkts to monitor this oid we need insert dynamc index inside, final oid would look like "JUNIPER-COS-MIB::jnxCosQstatTotalDropPkts.${jnxCosQstatIfIndex}.0"

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/src/zabbix_server/poller/checks_snmp.c#1981 






[ZBXNEXT-6266]  I would like to insert a new function to the maps, which allows by placing a mouse on the link between two "Host_A" and Host_B ", an online graph of traffic interfaces. Created: 2020 Oct 15  Updated: 2022 Jun 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Carlos SIlva Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix network maps that can show link traffic on graffic online in draw.






[ZBXNEXT-6176] Remove limitation for sleep between steps in an operation Created: 2020 Sep 01  Updated: 2020 Sep 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Shawn Burkit Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Instant and 1 MInute plus are vastly useless timeframes, There needs to be an option to set a custom step time from 1 -60 as well.  Additionally and alternative option would be the ability to choose if the step is sequential or parallel. this would provide the ability to execute the next step only once the previous step completes, incase data is needed form the previous step.






[ZBXNEXT-6166] Implement TLS/SSL session cache for encrypted connections between Server/Proxy/Agent Created: 2020 Aug 27  Updated: 2023 Apr 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Andris Mednis
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A

 Description   

Current solution - https://www.zabbix.com/documentation/current/manual/encryption:

Currently each encrypted connection opens with a full TLS handshake, no session caching and tickets are implemented
Adding encryption increases the time for item checks and actions, depending on network latency:
For example, if packet delay is 100ms then opening a TCP connection and sending unencrypted request takes around 200ms. With encryption about 1000 ms are added for establishing the TLS connection;
Timeouts may need to be increased, otherwise some items and actions running remote scripts on agents may work with unencrypted connections, but fail with timeout with encrypted.

For example web servers has different options how to deal with SSL/TLS cache:
https://httpd.apache.org/docs/2.4/mod/mod_ssl.html#sslsessioncache
http://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_session_cache



 Comments   
Comment by dimir [ 2020 Sep 02 ]

Sometimes we are having encrypted server->proxy connection failures. We use OpenSSL library. The error happens during the attempt to establish SSL handshake. Call to SSL_connect() function is never finished, we hit the alarm timeout that we set to 20 seconds (TrapperTimeout=20). The error message is SSL_connect() timed out and it's generated by Zabbix:

7822:20200820:092156.849 cannot connect to proxy "Foobar": TCP successful, cannot establish TLS to [[www.xxx.yyy.zzz]:1050]: SSL_connect() timed out

While not saying this issue will fix our problems (which may happen because of network issues) we think it might minimize those and also minimize the effort spent on establishing encrypted connections.





[ZBXNEXT-6087] Ability to select nested host groups with poiting only top level one Created: 2020 Jul 27  Updated: 2020 Jul 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

If I have several Host groups nested:
DB/Oracle
DB/PostgreSQL

Provide the way to filter them in Zabbix UI (Configuration -> Hosts, Templates, etc.) with wildcard for example (DB/*) or additional option for a filter like "including nested host groups".

It might be useful to get all groups for a mass updates.






[ZBXNEXT-6069] Generic Filter Language for all UI pages Created: 2020 Jul 14  Updated: 2020 Oct 26

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Christian Anton Assignee: Valdis Murzins
Resolution: Unresolved Votes: 8
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File monitor-filter_builder.png    

 Description   

In Zabbix, there are filters everywhere, both in configuration and display contexts: in list of hosts, templates, “Latest data”, Problems view etc. These filters have been extended more and more during the last releases, and they already look quite “overloaded” on one hand, and on the other hand they are still missing quite a lot of useful functionalities which almost all bigger customers (and not only those) do strongly wish:

  • Filtering by regular expressions, i.e. in host name, …
  • IP filtering by CIDR notation in interface addresses
  • Negating and concatenating filters (“all hosts being part of hostgroup “A” whose host name matches regular expression ‘^db[0-9]”’ and which are assigned to this and that template” or “all hosts being part of hostgroup “B” who do not have tag “C” assigned", for example)
  • Filter by responsible person, by amount of problems
  • A lot more…

Additionally, there is a strong need to make the UI pages more flexible: currently, applied filters are saved in cookies, which causes a lot of undesired situations, such as a page showing up a different search result, host data, etc. than expected. This has been seen as very annoying by a lot of users.

Another annoying thing is, that for example in the problems-widget on a dashbboard one can exclude one or more hostgroups. But this seems not possible on the problems view, even if the filters else look very similar.

 

A good and forward-looking solution would be an approach such as Atlassian Jira’s: in all pages where filters may be needed, the content is totally customizable by using a generic query language. Same has been seen at some monitoring solutions (Nagios based, see screenshot attached).

A query language like that, combined with a graphical "filter builder" to help figuring out which possibilities there are to filter the current view, and probably even still some check boxes like those existing currently (“show acknowledged” and such) which change the query language parameters inline by pressing them, would make the whole Zabbix user interface much more flexible and better to use in large environments. Those same filters could be used inside of dashboard widgets, in the graph widget, in future maybe even in custom graphs (making them dynamic), in maps (to show, i.e. not just "one host group of hosts" but those exactly matching such a filter) and much more.

Beside of the above described, I believe it would make sense to hand over the queries in URL parameters. This way, a proper “navigating back” would be possible, permalinks with queries included could be handed over to coworkers etc. Additionally such queries could be saved as “saved searches”, been combined with user permissions (like dashboards etc.) and this way be visible and quickly accessible for other users.

As I have seen in other monitoring solutions, one possible way to implement could be to include the actual type of information (problems, latest data, …) to see in the query. This way, one query would clearly tell the UI which page to render. This would allow also custom frontend modules to integrate into such a filtering sub system.



 Comments   
Comment by Andrei Gushchin (Inactive) [ 2020 Jul 15 ]

Thank you for detailed describing your idea.

Comment by Carl Slaughter [ 2020 Oct 26 ]

This may be a bit simplistic, but adding an exclude option to the search..

Example
Host group=North_America -exclude=New_York





[ZBXNEXT-6014] Add URL in triggers mass update and discovery LLD override Created: 2020 Jun 15  Updated: 2020 Jun 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Templates (T)
Affects Version/s: 4.4.8, 4.4.9, 5.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Agrate SSSL Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: frontend, lld, templates, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File urlmassupd.JPG     JPEG File urloverride.JPG    

 Description   

Add missing URL replace in triggers mass update and discovery LLD override






[ZBXNEXT-3781] Add Dockerfiles for Zabbix proxies with Postgres backends Created: 2017 Apr 09  Updated: 2017 Apr 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: PostgreSQL, docker
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Simply because Zabbix should also offer Dockerfiles for the world's most advanced open source database as well






[ZBXNEXT-3764] Extend Zabbix get to support requests towards Zabbix Java gateway Created: 2017 Mar 27  Updated: 2020 Jun 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 3.0.8
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 15
Labels: debugging, javagateway, sender
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File get.sh     File get.sh     File zabbix_get_jmx_3.4.7.sh     File zabbix_get_jmx_4_2.sh    
Issue Links:
Duplicate
is duplicated by ZBX-13681 JMX bad protocol header Closed

 Description   

Zabbix get is a very helpful debugging tool by acting like a Zabbix proxy towards Zabbix agents for passive checks. It saves a lot of time as there is no need to wait for configuration synchronization to take place.

It is desirable to be able to issue Zabbix proxy like requests towards a Zabbix Java gateway too. Especially because mistakes are more likely due to the more complex nature of JMX item key definitions.

Before ZBX-11528 it was already possible to make requests towards Zabbix Java gateway via Zabbix get.

Now, as fixing ZBX-11528 is correct and should not be reverted, it would be great if Zabbix get gets extended to also support this kind of requests in a decent way.



 Comments   
Comment by richlv [ 2017 Mar 27 ]

as discussed, it might be better/easier to extend/fork sender.pl from the svn repo for this task

Comment by Glebs Ivanovskis (Inactive) [ 2017 Mar 28 ]

Try this small script. Not even Perl

P.S. Probably the most complicated bash script I've ever written (aka composed from examples in the net).

Comment by Glebs Ivanovskis (Inactive) [ 2017 Apr 05 ]

Hopefully, new version fixes problems with double quote escaping.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jun 08 ]

Updated https://zabbix.org/wiki/Docs/howto/zabbix_get_jmx with get.sh and a bit of sarcasm.

Credits to okkuv9xh for patient testing of the script!

Comment by Janne Korkkula [ 2017 Dec 12 ]

Quite a shell script... ... Doesn't support authentication, though.

Comment by Anant Saraswat [ 2018 Apr 11 ]

Zabbix has changed the JMX item protocol so the old script doesn't work with Zabbix 3.4.7 or higher version. ( https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340#jmx_item_protocol_changes )

I have attached the script as per latest Zabbix version.

Comment by Eduardo Arruda Pimentel [ 2019 Sep 17 ]

I've updated zabbix_get_jmx_3.4.7.sh, to work with any type of endpoint, username and password. See zabbix_get_jmx_4_2.sh attached to this issue. Hope this will be useful to someone.





[ZBXNEXT-3754] Convert old trigger hysteresis and drop {TRIGGER.VALUE} support in trigger expressions Created: 2017 Mar 22  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Installation (I), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Glebs Ivanovskis (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: hysteresis, recoveryexpression, upgrade
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

{TRIGGER.VALUE} is still being used for trigger hysteresis while there is a new and supposedly better way to achieve the same result, namely Recovery expression. As a result we need to support two ways of doing the same thing.

Conversion algorithm should be derived and implemented in DB upgrade and XML import.



 Comments   
Comment by Andrey Melnikov [ 2017 Mar 22 ]

Better create function between($a,$b) to avoid write multiple expressions for each trigger.





[ZBXNEXT-3753] Rename autodiscovered items/triggers Created: 2017 Mar 22  Updated: 2018 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.8
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Stijn Vanschoonbeek Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: autodiscovery, frontend, items, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screen Shot 2017-03-22 at 09.52.17.png    

 Description   

Auto-discovery is a very nice feature but there is a thing the we thinks is missing with auto-discovery: Renaming of the items or triggers once they are discovered:

I give a specific example where this would be very useful:

  • we added a Network-switch
  • all the ports are discovered
  • if a port goes down the triggers says: Port 1 is down
  • it would be very handy if we could rename some triggers once they are discovered to for example "Port Machine A is down" (because we now Machine A is on port 1)
    => there are many other situations this could be very useful


 Comments   
Comment by Ward Van Breedam [ 2017 Mar 22 ]
  • On a firewall you would be able to swap WAN/LAN ports as we do to optimise bandwidth usability
  • VM hosts can be named following the same naming convention we use for other hosts
  • Everything that is automatically named could be renamed so it is more easy to interprete trigger reporting
Comment by richlv [ 2017 Mar 22 ]

an approach that would scale better would be to use ifDescr and ifAlias in the item names - thus way the data would propagate from the device into the items

Comment by Stijn Vanschoonbeek [ 2017 Mar 22 ]

richlv,

That is indeed a good idea! if made this possible to retrieve the ifAlias-value as a second macro in the discovery rule. thanks for the tip!!
however, it would still be useful to be able to rename auto-discovered items. For example: we monitor some switches where we cannot change the ifAlias, ifDescr or ifName values...

Comment by Kevin Schroer [ 2018 Feb 09 ]

i'd like to see this feature aswell, sometimes its really annoying to have these autodiscovered Items/Trigger names.

Comment by Alex P [ 2018 Sep 11 ]

+1 for the feature, having an ability to rename auto discovered items by pattern would be great!
For example, want to rename all "GigabitEthernet1/0/X" to just "Gi1/0/X". At the moment, there is no ability to do that.





[ZBXNEXT-3729] HOST.PORT and HOST.DESCRIPTION to be available wide-like as HOST.HOST and HOST.NAME Created: 2017 Mar 02  Updated: 2017 Mar 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: PMirek Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: lld, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

While using LDD and macros there is a need to have access to as many variables related to host as possible. I'd vote to have at least these two enabled. PORT for obvious reasons, DESCRIPTION for hacking possibilities to pass whatever you need for a specific host.

The other nice to have macros would be:
HOST.

{AGENT|SNMP|JMX|IPMI}.PORT
HOST.{AGENT|SNMP|JMX|IPMI}

.DNS
HOST.

{AGENT|SNMP|JMX|IPMI}

.IP

Hopefully this won't involve too much work and will make LDD related tools/scripts usage much easier.






[ZBXNEXT-3744] orabbix cannot be installed on solaris Created: 2017 Mar 16  Updated: 2017 Mar 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: lihua Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

install orabbix3.0.1 on solaris 10 failed



 Description   

I failed to install orabbix3.0.1 on solaris 10 ?I cannot get any information from database, only use orders get information from database,then use zabbix agent get key from OS files.



 Comments   
Comment by Marc [ 2017 Mar 16 ]

Note that Orabbix is a 3rd party product. I suggest to take a look at the Zabbix forum. There you'll find some threads dealing with Orabbix.

Comment by lihua [ 2017 Mar 17 ]

thanks.
can u enjoy the best practice to monitor oracle database on solaris?

Comment by Marc [ 2017 Mar 17 ]

I suggest to get in touch with the Zabbix community or to request consultancy by Zabbix LLC.





[ZBXNEXT-3651] zabbix_sender utilizing agent config to support TLS Created: 2017 Jan 05  Updated: 2017 Jan 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 3.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Janne Korkkula Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: encryption, zabbix_sender
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The standard zabbix_sender, when used together with an agent configuration file, should directly support TLS connections.

From https://www.zabbix.com/documentation/3.2/manpages/zabbix_sender:

OPTIONS
-c, --config config-file
Use config-file. Zabbix sender reads server details from the agentd configuration file. By default Zabbix sender does not read any configuration file. Absolute path should be specified. Only parameters Hostname, ServerActive and SourceIP are supported. First entry from the ServerActive parameter is used.



 Comments   
Comment by richlv [ 2017 Jan 06 ]

similar issue about zabbix_get : ZBXNEXT-3021





[ZBXNEXT-3668] Option to group triggers with identical names in Monitoring -> Overview Created: 2017 Jan 26  Updated: 2017 Jan 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.16, 3.0.7, 3.2.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ingus Vilnis Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: overview
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File 25012017_153305.jpg    

 Description   

Related to ZBX-9820 and ZBX-5072.

In older versions of Zabbix the triggers with different expressions but identical names in Overview page were grouped by those names. Agreed that this can cause confusion when used without knowing this behavior, however there were several use cases where this hidden feature was used intentionally.

As mentioned in ZBX-5072 this can be used in screens where same trigger has different severities thus achieving an effect where multiple triggers are displayed in one row just with different colors. User had intentionally configured the triggers that they don't overlap to not cause unexpected behavior on a single host.

This is how it looks now.

The page in particular use case was adapted to a wall mounted TV screen which has now become unusable because all triggers no longer fit in one screen. No, there is no option to use scrolling.

Please implement a control which can enable / disable the advantage of this grouping feature. Additionally it should be remembered in the user settings since screens are displayed automatically from selected URLs without the need to adjust the filtering by a user every time the page is opened.



 Comments   
Comment by richlv [ 2017 Jan 26 ]

seems to be a duplicate of ZBX-11743

Comment by Ingus Vilnis [ 2017 Jan 26 ]

Sigh. This is what happens when you start one issue in the morning and finish creating it by the evening. Coincidence because this functionality is not something what was changed yesterday.





[ZBXNEXT-3619] Better LLD logging Created: 2016 Dec 20  Updated: 2016 Dec 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sean Nienaber Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: lld
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified
Environment:

Ubuntu 14.04 LTS


Sub-Tasks:
Key
Summary
Type
Status
Assignee
ZBXNEXT-5171 Add debug logging to LLD filter Change Request (Sub-task) Open Andris Zeila  

 Description   

Hello,

Please see my forum post here: https://www.zabbix.com/forum/showthread.php?t=56368

I'd like to request that logging be improved around low level discovery, as even with debug level 5 set of discovery, there isn't anything meaningful around why my discovery script isn't correctly creating items other than "Cannot create item: item with the same key "PureStorageMonitoring.py[{HOST.CONN},{$APITOKEN},"temperature",{#ID}]" already exists." which I assume means that {#ID} isn't being expended.

Why it isn't being expanded would be more useful, along with info around how the JSON is actually being processed etc.

Many thanks,.
Sean



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2016 Dec 20 ]

Maybe it would help if there was a message that no value of LLD macros encountered in prototype was found in JSON?

Comment by Sean Nienaber [ 2016 Dec 20 ]

Glebs, yes that would be a good start!





[ZBXNEXT-3471] querying trend API for aggregate information Created: 2016 Oct 03  Updated: 2016 Oct 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.0.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Martin Møller Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: api, items, trends
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 6.8 Server with MySQL, running af a VMware VM.
8 GB RAM, approximate database size: 160 GB.



 Description   

I have tried to integrate trends into my PDF report, and I believe I am querying the way I should, but it looks like trend.get ignores the time_from and time_till values and just return the value from one record instead.

For example, I have some hosts/gateways that have had some unscheduled downtime. Some of them a few days ago, but it I ask for trend data for say a week, it just says that no pings were ever lost.

If I have a host that is still down, I at least get a value that is not zero, but typically much higher than what the period it covers would lead to.

Example:Report from 2016.09.25 22:33 until 2016.10.02 22:33.

Ping loss is shown as 0%?!
Looking at the graph, it is clear that the actual ping loss in that period is 37.12%

If I manually query the trend database the way I would expect the API to, I get a value matches this pretty well:

mysql> select AVG(value_avg) AS trend_avg from trends WHERE itemid=52391 and clock BETWEEN 1474835627 and 1475440427;
+-------------+
| trend_avg   |
+-------------+
| 37.11576826 |
+-------------+
1 row in set (0.00 sec)

Datapoints:

mysql> select clock,value_avg AS trend_avg from trends WHERE itemid=52391 and clock BETWEEN 1474835627 and 1475440427;
+------------+-----------+
| clock      | trend_avg |
+------------+-----------+
| 1474837200 |    0.0000 |
| 1474840800 |    0.0000 |
| 1474844400 |    0.0000 |
| 1474848000 |    0.0000 |
| 1474851600 |    0.0000 |
| 1474855200 |    0.0000 |
| 1474858800 |    0.0000 |
| 1474862400 |    0.0000 |
| 1474866000 |    0.0000 |
| 1474869600 |    0.0000 |
| 1474873200 |    0.0000 |
| 1474876800 |    0.0000 |
| 1474880400 |    0.0000 |
| 1474884000 |    0.0000 |
| 1474887600 |    0.0000 |
| 1474891200 |    0.0000 |
| 1474894800 |    0.0000 |
| 1474898400 |    0.0000 |
| 1474902000 |    0.0000 |
| 1474905600 |    0.0000 |
| 1474909200 |    0.0000 |
| 1474912800 |    0.0000 |
| 1474916400 |    0.0000 |
| 1474920000 |    0.0000 |
| 1474923600 |    0.0000 |
| 1474927200 |    0.0000 |
| 1474930800 |    0.0000 |
| 1474934400 |    0.0000 |
| 1474938000 |    0.0000 |
| 1474941600 |    0.0000 |
| 1474945200 |    0.0000 |
| 1474948800 |    0.0000 |
| 1474952400 |    0.0000 |
| 1474956000 |    0.0000 |
| 1474959600 |    0.0000 |
| 1474963200 |    0.0000 |
| 1474966800 |    0.0000 |
| 1474970400 |    0.0000 |
| 1474974000 |    0.0000 |
| 1474977600 |    0.0000 |
| 1474981200 |    0.0000 |
| 1474984800 |    0.0000 |
| 1474988400 |    0.0000 |
| 1474992000 |    0.0000 |
| 1474995600 |    0.0000 |
| 1474999200 |    0.0000 |
| 1475002800 |    0.0000 |
| 1475006400 |    0.0000 |
| 1475010000 |    0.0000 |
| 1475013600 |    0.0000 |
| 1475017200 |    0.0000 |
| 1475020800 |    0.0000 |
| 1475024400 |    0.0000 |
| 1475028000 |    0.0000 |
| 1475031600 |    0.0000 |
| 1475035200 |    0.0000 |
| 1475038800 |    0.0000 |
| 1475042400 |    0.0000 |
| 1475046000 |    0.0000 |
| 1475049600 |    0.0000 |
| 1475053200 |    0.0000 |
| 1475056800 |    0.0000 |
| 1475060400 |    0.0000 |
| 1475064000 |    0.0000 |
| 1475067600 |    0.0000 |
| 1475071200 |    0.0000 |
| 1475074800 |    0.0000 |
| 1475078400 |    0.0000 |
| 1475082000 |    0.0000 |
| 1475085600 |    0.0000 |
| 1475089200 |    0.0000 |
| 1475092800 |    0.0000 |
| 1475096400 |    0.0000 |
| 1475100000 |    0.0000 |
| 1475103600 |    0.0000 |
| 1475107200 |    0.0000 |
| 1475110800 |    0.0000 |
| 1475114400 |    0.0000 |
| 1475118000 |    0.0000 |
| 1475121600 |    0.0000 |
| 1475125200 |    0.0000 |
| 1475128800 |    0.0000 |
| 1475132400 |    0.0000 |
| 1475136000 |    0.0000 |
| 1475139600 |    0.0000 |
| 1475143200 |    0.0000 |
| 1475146800 |    0.0000 |
| 1475150400 |    0.0000 |
| 1475154000 |    0.0000 |
| 1475157600 |    0.0000 |
| 1475161200 |    0.0000 |
| 1475164800 |    0.0000 |
| 1475168400 |    0.0000 |
| 1475172000 |    0.0000 |
| 1475175600 |    0.0000 |
| 1475179200 |    0.0000 |
| 1475182800 |    0.0000 |
| 1475186400 |    0.0000 |
| 1475190000 |    0.0000 |
| 1475193600 |    0.0000 |
| 1475197200 |    0.0000 |
| 1475200800 |    0.0000 |
| 1475204400 |    0.0000 |
| 1475208000 |    0.0000 |
| 1475211600 |    0.0000 |
| 1475215200 |   98.3333 |
| 1475218800 |  100.0000 |
| 1475222400 |  100.0000 |
| 1475226000 |  100.0000 |
| 1475229600 |  100.0000 |
| 1475233200 |  100.0000 |
| 1475236800 |  100.0000 |
| 1475240400 |  100.0000 |
| 1475244000 |  100.0000 |
| 1475247600 |  100.0000 |
| 1475251200 |  100.0000 |
| 1475254800 |  100.0000 |
| 1475258400 |  100.0000 |
| 1475262000 |  100.0000 |
| 1475265600 |  100.0000 |
| 1475269200 |  100.0000 |
| 1475272800 |  100.0000 |
| 1475276400 |  100.0000 |
| 1475280000 |  100.0000 |
| 1475283600 |  100.0000 |
| 1475287200 |  100.0000 |
| 1475290800 |  100.0000 |
| 1475294400 |  100.0000 |
| 1475298000 |  100.0000 |
| 1475301600 |  100.0000 |
| 1475305200 |  100.0000 |
| 1475308800 |  100.0000 |
| 1475312400 |  100.0000 |
| 1475316000 |  100.0000 |
| 1475319600 |  100.0000 |
| 1475323200 |  100.0000 |
| 1475326800 |  100.0000 |
| 1475330400 |  100.0000 |
| 1475334000 |  100.0000 |
| 1475337600 |  100.0000 |
| 1475341200 |  100.0000 |
| 1475344800 |  100.0000 |
| 1475348400 |  100.0000 |
| 1475352000 |  100.0000 |
| 1475355600 |  100.0000 |
| 1475359200 |  100.0000 |
| 1475362800 |  100.0000 |
| 1475366400 |  100.0000 |
| 1475370000 |  100.0000 |
| 1475373600 |  100.0000 |
| 1475377200 |  100.0000 |
| 1475380800 |  100.0000 |
| 1475384400 |  100.0000 |
| 1475388000 |  100.0000 |
| 1475391600 |  100.0000 |
| 1475395200 |  100.0000 |
| 1475398800 |  100.0000 |
| 1475402400 |  100.0000 |
| 1475406000 |  100.0000 |
| 1475409600 |  100.0000 |
| 1475413200 |  100.0000 |
| 1475416800 |  100.0000 |
| 1475420400 |  100.0000 |
| 1475424000 |  100.0000 |
| 1475427600 |  100.0000 |
| 1475431200 |  100.0000 |
| 1475434800 |  100.0000 |
+------------+-----------+
167 rows in set (0.00 sec)

What I see in my report (DEBUG stage):
Trend item search for: ICMP loss of type number

Array
(
    [0] => Array
        (
            [itemid] => 52391
            [name] => ICMP loss
            [key_] => icmppingloss
            [description] => 
            [units] => %
            [lastclock] => 1475439806
            [lastvalue] => 100.0000
        )

)

Trend data for ICMP loss:

Array
(
    [0] => Array
        (
            [itemid] => 52391
            [num] => 60
            [value_min] => 0.0000
            [value_avg] => 0.0000
            [value_max] => 0.0000
        )

)

In this case, it looks like only the first value in the set is used.
I would expect that num would be SUM()'ed, value_min, MIN()'ed, value_avg AVG()'ed, and value_max MAX()'ed over the entire period and then returned.

This is tested on Zabbix 3.0.4. I expect it is also an issue in 3.2, but I have not had time to test it.

It does not look like 3.0.5 is available as a package for my CentOS base yet, but I doubt the issue is fixed, since the release notes make no mention of it.



 Comments   
Comment by richlv [ 2016 Oct 03 ]

first, zabbix api never performs any operations on the database values (there is a separate feature request for that), thus your check with the db level avg() wouldn't be reproducible with the current zabbix api.

as for only one value being returned, please show the raw json sent to the zabbix api (not an interpretation for some library or language, pure json)

Comment by Martin Møller [ 2016 Oct 03 ]

Alright. That would be this part:

{"auth":"<removed>","method":"trend.get","id":1,"params":{"output":["itemid","num","value_min","value_avg","value_max"],"itemids":"52391","time_from":1474851603,"time_till":1475456403,"limit":1},"jsonrpc":"2.0"}

From your description, I think I can gather that limit:1 is my issue and that I will get all rows returned, not the added values. Might there be a call for that some day?
I guess I'll have to see about averaging them in PHP after I receive them, them.

Context:
CURL Options:

Array
(
    [19913] => 1
    [13] => 30
    [78] => 5
    [81] => 
    [64] => 
    [52] => 1
    [74] => 1
    [10023] => Array
        (
            [0] => Content-Type: application/json-rpc
            [1] => User-Agent: ZabbixAPI v1.0 - http://andrewfarley.com/zabbix_php_api
        )

    [10036] => POST
    [10015] => {"auth":"64e85a215abf7e23d57f57fcd246a0f7","method":"trend.get","id":1,"params":{"output":["itemid","num","value_min","value_avg","value_max"],"itemids":"52391","time_from":1474851603,"time_till":1475456403,"limit":1},"jsonrpc":"2.0"}
    [10102] => gzip
)

Got response from API:

({"jsonrpc":"2.0","result":[{"itemid":"52391","num":"60","value_min":"0.0000","value_avg":"0.0000","value_max":"0.0000"}],"id":1})

Response decoded:

(Array
(
    [jsonrpc] => 2.0
    [result] => Array
        (
            [0] => Array
                (
                    [itemid] => 52391
                    [num] => 60
                    [value_min] => 0.0000
                    [value_avg] => 0.0000
                    [value_max] => 0.0000
                )

        )

    [id] => 1
)

PS: Tried removing 'limit:1' and then I get all the rows, so now that part is solved. I didn't get a good grasp on the trend.get call from the one example shown, I'm afraid.

Comment by richlv [ 2016 Oct 03 ]

ZBXNEXT-656 asks for something similar - only for history.get, but that's normal as trend.get didn't exist back then.
other similar feature requests are ZBXNEXT-1192 and ZBXNEXT-3034





[ZBXNEXT-3239] Armor against ODBC client-induced crashes by way of external process Created: 2016 Apr 12  Updated: 2016 Apr 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Michael Mol Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Zabbix has intermittent (by way of upstream MySQL bugs getting fixed and reappearing) difficulties with ODBC items crashing Zabbix servers and proxies, by way of dynamic linking issues within the ODBC connector libraries.

Zabbix could fix this by having the ODBC poller relegate ODBC queries out to a subprocess that doesn't link against libmysql (or hardly anything else). This would be a very simple and straightforward (if not ideal, from an efficiency standpoint) solution that would armor the Zabbix server and proxy architecture against future issues like these.

This might look like using a pipe to feed requests in, and then receiving the results back when they're available. It doesn't even need an asynchronous alerting / are-the-results-ready-yet behavior outside of a heartbeat, I suspect, as the ODBC poller processes are only expected to be working one query at a time.

Again, this would permanently fix ZBX-7665, as well as prevent Zabbix server and proxy crashes that stem from issues from ODBC libraries.

Related to ZBX-7665 and ZBX-10654 (which I include because it shows the sporadic nature of ZBX-7665's impact).



 Comments   
Comment by Aleksandrs Saveljevs [ 2016 Apr 12 ]

Related request: ZBXNEXT-2485.





[ZBXNEXT-3346] JSON adding new item to map without deleting existing items Created: 2016 Jul 25  Updated: 2016 Jul 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.0.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Vekli Sergey Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Vekli Sergey [ 2016 Jul 25 ]

I mean in the theme "adding new item".

asaveljevs Fixed.





[ZBXNEXT-3213] Create new network discovery event type: port closed Created: 2016 Mar 23  Updated: 2017 Jul 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Romanenkov Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: actions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 2.4.5. Appliance on KVM/qemu



 Description   

The autodiscovery check "TCP(port range)" does not generate any event if the specified port is closed. So it is impossible to make a condition based on a closed tcp port or to link any actions on such a case.

It is necessary to create an event type like "tcp port closed" and corresponding condition fields in the "actions" - "discovery" section.



 Comments   
Comment by Aleksandrs Saveljevs [ 2016 Mar 29 ]

Could you please elaborate a bit why "Discovery status = Down" in action conditions is not sufficient (it seems to work for me)? What is your use case?

Comment by Romanenkov [ 2016 Mar 29 ]

If the port is closed there is no "Discovery status = Down".

On a previosly "Up" or "Discovered" check result there can be some kind of state, but if it is a first time scan there are no states - I tried all the possible values in the action conditions: "Available","Unavailable","Discovered","Lost" with no result. When I display the discovered hosts, the status field of the TCP check is empty for hosts with closed port (not red, green or any other color) - which means it has no status, and no event is generated.

I am trying to automate the zabbix agent installation on remote hosts. So I created a network discovery rule with two checks: ICMP ping and TCP(10050). Next I run an installation script on the remote machine if the TCP(10050) is closed. It works manually, and to automate it I need some event or determined state of the TCP check - but it seems not implemented in zabbix (2.4.5 or 3.0).

Comment by Aleksandrs Saveljevs [ 2016 Mar 29 ]

Thanks for clarifying! Indeed, if a host has never been discovered before, there are no "Down" events.

Comment by Romanenkov [ 2017 Jan 12 ]

Any progress in the last 9 months?

Comment by Romanenkov [ 2017 Jul 25 ]

Another 6 months passed - still nothing? Maybe I could do something to speed up the problem resolution?

Comment by Rostislav Palivoda [ 2017 Jul 25 ]

Sure, there are multiple options available:
1) sponsor development - contact [email protected]
2) Join Zabbix team - CV to [email protected]
3) Ask 100 you friends to vote on this ZBXNEXT





[ZBXNEXT-3128] Support for Unicode characters in arguments for Windows' zabbix_get, zabbix_sender Created: 2016 Feb 02  Updated: 2016 Feb 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 3.0.0beta2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sandis Neilands (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: encoding, utf8, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows



 Description   

Protocols that are used between Zabbix components are UTF-8 based. However for Windows version of zabbix_get, zabbix_sender no conversion to UTF-8 is done for the command line parameters.

For example, one can query Windows agent from Unix with the following command.

$ ./zabbix_get -s 192.168.3.227 -k "wmi.get[root\cimv2,select Caption from Win32_OperatingSystem where Caption like '%Édition%']"
Microsoft Windows 7 Édition Familiale Premium 

Equivavlent command doesn't work either from PowerShell or cmd.exe.

PS E:\> .\zabbix_get.exe -s 127.0.0.1 -k "wmi.get[root\cimv2,select Caption from Win32_OperatingSystem where Caption like '%Édition%']"
ZBX_NOTSUPPORTED: Cannot obtain WMI information.

We should check how to solve this. One of the possibilities is to change main() to wmain() and then convert arguments from UTF-16 to UTF-8.






[ZBXNEXT-3091] submenus nested into parent menuitem Created: 2016 Jan 11  Updated: 2016 Feb 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ya Bo Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: css, html, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File ZBXNEXT-3091-nested-submenus--beta2.patch    

 Description   

Currently the menu and it item submenus are divided between two different divs. It is not usual and convenient decision.

I propose some non significant changes that give us all submenus nested into they parent menuitem.

If this changes will be applied it will be possible to replace js menu processing with help of pure css in new skins/styles.

NB. unfortunately, with this changes the small triangle under selected parent menuitem in existing styles should be moved to left side of the menuitem.



 Comments   
Comment by Ya Bo [ 2016 Feb 02 ]

changed files:
modified: app/views/layout.htmlpage.menu.php (recoding, require more optimization. I tried to make as less changes as I can for easy understanding of changes)
modified: include/defines.inc.php (- unused constants)
modified: styles/blue-theme.css
modified: styles/dark-theme.css

NB2: server-name moved inside the logo div but it is showing on the right border of sub-menu (current behavior).





[ZBXNEXT-3138] Wrong frontend search bar on smartphones Created: 2016 Feb 11  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Adail Horst Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: globalsearch, layout
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos mysql apache
Android 4.4 with chrome


Attachments: PNG File Screenshot_2016-02-11-10-46-05.png     PNG File Screenshot_2016-02-11-10-46-38.png     PNG File Screenshot_2016-02-11-13-52-51.png    

 Description   

When i try to access the frontend the interface apear wrong
See screenshots



 Comments   
Comment by Pavel Amosov (Inactive) [ 2016 Feb 11 ]

Looks like a duplicate of ZBX-10289. Fixed in 3.0.0rc1.

Comment by Adail Horst [ 2016 Feb 11 ]

Pavel, i update now to rc2 and still with problem...
Maybe the global search field need to be smaller in smartphones...

Comment by Adail Horst [ 2016 Feb 11 ]


I upload a new screenshot

Comment by Pavel Amosov (Inactive) [ 2016 Feb 11 ]

Adail, yes, the search field should be more narrow. Responsive layout is not implemented yet, we will address this issue in the future. On a broader scale.





[ZBXNEXT-2904] Option to securely pass sensitive arguments to External check and User parameter Created: 2015 Aug 15  Updated: 2021 Apr 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 2.2.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: externalchecks, security, userparameters
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Command line arguments or environment variables can easily be exposed via the /proc file system.

Since ZBXNEXT-1550 one can create custom functions that may get sensitive data passed by item arguments as there is no additional process forked that my reveal any information.

Now I wonder whether it is feasible to improve External check and User parameter functionality to be usable for such cases too - to get sensitive data passed more securely.

The only way I currently can think of is by optionally passing data to stdin of the custom command.

I've no clue whether it should rather be configurable in a fixed format with two variables only (username and password) or a free form field supporting line breaks.

The first allows to use existing form fields. The latter provides maximum flexibility for instance to adapt a format that is already supported by a given custom command.

I know, without something like ZBXNEXT-1660 there is no real security for sensitive data in Zabbix at all but I think this could still be a worthwhile improvement.



 Comments   
Comment by Justin Addams [ 2021 Apr 08 ]

If I understand correctly, this is still an issue experienced even when using the new secure macros?





[ZBXNEXT-2994] Modify value_avg type in trends_uint (MySQL) Created: 2015 Oct 01  Updated: 2015 Oct 01

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.4.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Kanstantin Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: database, trends
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi there,

Zabbix stores value_avg as BIGINT(20) in mysql DB.
It makes trends_uint almost unusable because of huge inaccuracy.
In point of view it make a lot more sense to store value as DOUBLE(16,4).
We've tried to modify column type in DB, but it haven't made any affect, because zabbix calculates avg value as integer.
Could you please modify it on zabbix server side?

Thanks in advance.
Best Regards.



 Comments   
Comment by richlv [ 2015 Oct 01 ]

initially mentioned in ZBX-3643





[ZBXNEXT-4256] Host Name should be case insensitive Created: 2017 May 26  Updated: 2017 Nov 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Shriharsh Thanvi Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 3.0.9, RHEL 7, MySQL 5.7.17



 Description   

We found that Zabbix adds host even if another host with exact same name but different case is present.
E.g. ABCD.xyz.com is different than abcd.xyz.com for Zabbix. This I think is not correct.
I can understand the need to add utf8_bin while installation, especially from performance perspective. But in the process we are letting Zabbix to discover two hosts with exactly the same name.
It looks this is a bug and needs to be addressed.



 Comments   
Comment by richlv [ 2017 May 26 ]

most of the things in zabbix are case sensitive - it would be a major breaking change, and there does not seem to be a compelling reason to change.

Comment by Shriharsh Thanvi [ 2017 May 26 ]

I completely agree about most of the other things being case sensitive; except for the host name.
The reason can be compelling if you come across such situation for many hosts in real deployments.

If not entire change, then at least auto registration should check the host name without case sensativity. I do not think it will be a major breaking change.

Comment by richlv [ 2017 May 26 ]

what is the compelling reason for that then ?

Comment by Shriharsh Thanvi [ 2017 May 26 ]

The intention here is primarily to prevent duplicate host creation, and providing zabbix admin the flexibility to handle complex scenarios.

We already had several VM discovered and subsequently cloned to modify monitoring policies (like alerts on disk space etc) using macros.
We are now preparing to add active agents.
But We want to preserve the macros that have been modified by other users (business) but just wanted to add an agent.

This leads us to two scenarios:

  • Agents on fresh hosts :
    This is straigtforward through auto registration.
  • Agents on hosts already present in Zabbix
    We thought of using some discovery rule, automation etc. to just unlink / link template.

The agent config will be same and we intend to do mass deployments.
But when we install an agent (active), sometimes it auto registered another hosts with duplicate host name but different cases.
Hence, at least auto registration should have some mechanism to handle the scenario.

On our part, I also do recognize the need for some strict complaince when it comes to naming conventions at different stages.

Comment by Ingus Vilnis [ 2017 Nov 28 ]

Not a defect in code. Reasoning makes sense but that classifies as a request for changed functionality. Moved to ZABBIX FEATURE REQUESTS project.





[ZBXNEXT-3801] Allow limiting file system access in Zabbix agent configuration Created: 2017 Apr 18  Updated: 2019 Oct 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Sami Pajunen Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Agent configuration should support whitelist of allowed paths for following agent items:

  • log
  • logrt
  • vfs.file.*

This is necessary when running agent in environment where security requirements state that full external access to file system items by Zabbix is not allowed but some file items still must be monitored. Whitelisting paths allows limiting accessible file system items easily.

Another way to restrict Zabbix access to file system requires configuring file access of Zabbix agent user at file system level which is much more cumbersome, prone to errors and may be impossible to implement in certain environments.

I have already implemented this feature in fork of Zabbix which can be seen at: https://github.com/digiapulssi/zabbix/pull/2

In the implementation, whitelist can be configured by adding AllowedPath elements in agent configuration specifying regex path patterns. When none are configured full access is allowed to ensure backwards compatibility.

For example, following configuration would only allow checking of mariadb logs:

AllowedPath=^/var/log/mariadb/.*$


 Comments   
Comment by richlv [ 2017 Apr 18 ]

besides filesystem permission level, this might be better achievable via selinux/apparmor. built-in capability would be easier to use, though.

ZBXNEXT-1085 is similar (asks to restrict whole keys)





[ZBXNEXT-3806] Add negative lookup for required string in web scenario Created: 2017 Apr 20  Updated: 2019 Jul 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.0.8, 3.2.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ingus Vilnis Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: webmonitoring, webscenario
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-4307 Add "Forbidden string" (opposite to R... Closed

 Description   

In web scenario steps add possibility to succeed the step only if the required string is NOT found.

Issue remotely related to ZBX-3924.



 Comments   
Comment by richlv [ 2017 Apr 20 ]

would be solved by ZBXNEXT-309 (although a basic negation might still be desirable)

Comment by richlv [ 2018 Jan 02 ]

looks like pcre support in daemons solved this one ?

Comment by Ingus Vilnis [ 2018 Aug 20 ]

Technically now it is possible but in reality the negative regexps are way too complex for end users to configure. 

See ZBXNEXT-4690 for similar discussion. 

Comment by Björn Dieding [ 2019 Jul 31 ]

Hi,

I thought I should supply a use case for this ticket. Here is my use case:

I would like to test the url http://rbl-check.org/rbl_api.php?ipaddress=83.246.67.106 for the non existence of the string ";notlisted" 





[ZBXNEXT-3373] Allow disabling ConfigFrequency in active proxy and CacheUpdateFrequency in server Created: 2016 Aug 10  Updated: 2016 Aug 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sandis Neilands (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Large - frequent configuration synchonization is not possible.



 Description   

Disabling periodic configuration synchronization would allow other configuration propagation schemes than periodic synchonization.

Currently the configuration for proxies, server, frontend can be be divergent for a long time. To avoid this it is proposed to allow users triggering configuration synchronization as per business needs and capabilities of our components.

With periodic synchronization disabled it is up to the users to implement the configuration propagation schemes through config_cache_reload runtime control options for both proxies and server.



 Comments   
Comment by Sandis Neilands (Inactive) [ 2016 Aug 10 ]

Related: ZBX-10968, ZBXNEXT-1198, ZBXNEXT-1581, ZBXNEXT-3290, ZBXNEXT-1580.





[ZBXNEXT-3488] Support user macros in macro function parameters. Created: 2016 Oct 06  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sandis Neilands (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: macrofunction, usability, usermacro
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

From (2) of ZBXNEXT-3457.

Consider this scenario which demonstrates poor usability.

Problem expression:

{dummy_host_0:dummy_item_0.regexp("[a-z]+ {$SERVICE_DOWN}",#1)}=1

Tag "reason" value:

{{ITEM.LASTVALUE}.regsub("[a-z]+ {$SERVICE_DOWN}",\2)}

Both expressions formatted for comparison:

{dummy_host_0:dummy_item_0.regexp("[a-z]+ {$SERVICE_DOWN}",#1)}=1
{{ITEM.LASTVALUE}         .regsub("[a-z]+ {$SERVICE_DOWN}",\2)}

Expected: both expressions work fine (since the regex is the same.
Actual: tag value expression fails and the tag has a value "UNKNOWN"

vso User macros are not supported in function macros.

sandis.neilands That is exactly the point. There are many arbitrary (surprising) limitation in the Zabbix macro language applications.



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2016 Oct 06 ]

Can be considered a duplicate of ZBXNEXT-1568. And depends on implementation of ZBX-2866.

Comment by Glebs Ivanovskis (Inactive) [ 2016 Oct 06 ]

And let's not forget that user macros come with contexts and potentially with LLD macros inside them...





[ZBXNEXT-3518] Oracle DB, heavy queries Created: 2016 Oct 28  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Dimitri Bellini Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: database, oracle
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit


Attachments: File OTT_zabbix_server_20161027.log.gz     File query1.sql     File query2.sql    

 Description   

We have experienced some heavy and resource consuming queries on Oracle databases, in a Zabbix installation with a very high amount of active triggers.
You can find some examples in attached files, together with a dump of the Zabbix server log in which it got disconnected from database because of no more available memory.
These kind of queries hang waiting for latch shared pool events.

Any suggestion? Thanks






[ZBXNEXT-3395] make client authentication optional in TLS communication with certificates Created: 2016 Aug 18  Updated: 2022 Jun 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 3.0.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: MarcoP Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Agent on Windows 2008-2012 and Linux RHEL6, server Linux RHEL6


Attachments: JPEG File proposal.jpg    
Issue Links:
Causes

 Description   

Dear team,

we are working with agent-server communication encryption

  • two-way encryption works fine ?
  • we would like to have one-way encryption (asymmetric) so when client initiate communication with server (while keeping it unencrypted the other way around).
    The problem we have with one way encryption is that, even if only TLSConnect is equal to "cert", so encryption should be used only for agent outbound connections, the agent will not start without an agent certificate as well/key.

I.e. agent configuration file:
Hostname=XXXXXX
LogFile=D:\zabbix\Zabbix_agentd.log
DebugLevel=4
TLSConnect=cert
TLSAccept=unencrypted
TLSCAFile=D:\eon\zabbix\zabbix_ca_file
EnableRemoteCommands=1
LogRemoteCommands=1
Server=YYYY
ServerActive=YYYY
Include=D:\zabbix\zabbix_agentd.userparams.conf

The agent on Windows will not start.

The same happens with the Linux agent ? but providing a clearer error:
Starting Zabbix agent: zabbix_agentd [16788]: ERROR: parameter "TLSConnect" value requires "TLSCertFile", but it is not defined

Is this expected, i.e. by design Zabbix is using not only encryption but also client authentication over TLS (so the server will ask the client, in this case the agent to provide its certificate to authenticate it? Otherwise, if this is not the intended design, can it be classified as an issue/bug?

Thanks in advance for your help
Cheers
Marco



 Comments   
Comment by MarcoP [ 2016 Aug 19 ]

Hi,
after checking this, I found it is by design (so not a Bug), so it would rather be classified as feature

◾ Zabbix uses mutual authentication.
Each side verifies its peer and may refuse connection.
For example, Zabbix server connecting to agent can close connection immediately if agent's certificate is invalid. And vice versa - Zabbix agent accepting a connection from server can close connection if server is not trusted by agent.

Comment by Aleksandrs Saveljevs [ 2016 Aug 22 ]

Yes, Zabbix daemons perform mutual authentication and this is by design. How would you then formulate the feature request?

Comment by MarcoP [ 2016 Aug 22 ]

Hi Aleksandrs,
thanks for your support.
I would ask if it would be possible to select on the endpoint accepting TLS connection, either Agent or Server if client Authentication would be required or not (this selection might be done already in the current web interface).

So in this use case there would be two options:
the "cert" option (which would mean that when accepting connection it should be encrypted using a certificate but not with Client Authentication)
the "cert +CA" (certificate + client authentication): also CA will need to be enforced (which is exactly the current design).

The encryption without CA would be useful to avoid a certificate to be installed and configured on the Agent, i.e. scenario in which only the connection from the agent to the server needs to be encrypted (active). So only the server would have its certificate and would be authenticated on the agent side, while the agent will not send any certificate to the server.

PS: attached web GUI proposal of how this might be activated.
Thanks
Best Regards
Marco

Comment by Aleksandrs Saveljevs [ 2016 Aug 22 ]

So, basically, it is about not being required to configure certificates for Zabbix agents, just like with HTTPS, where only a Web server is required to present a certificate, but not clients?

Comment by MarcoP [ 2016 Aug 22 ]

hi, yes, you got the point.
I think it would be great to have both options that could be chosen from the admin, really like HTTPS, if the server you are handshaking with is requiring client authentication, the browser will prompt you to select a certificate, if not, only the server certificate will be validated and the client will just get the encryption.

Thanks
Marco

Comment by Aleksandrs Saveljevs [ 2016 Aug 22 ]

Thank you! I have updated the issue title and moving it to ZBXNEXT project.

Note that if it is desired to only configure a certificate on Zabbix server, but not on the agents, then it will prevent passive checks from working. With passive checks, Zabbix server connects to Zabbix agents, so Zabbix server acts as a TLS client and Zabbix agents act as TLS servers. If Zabbix agents (TLS servers) do not have certificates, then it will probably not work, because TLS servers are more or less required to have certificates (see also http://security.stackexchange.com/questions/38589/can-https-server-configured-without-a-server-certificate).

If you just need a cheaper and easier encryption scheme, you can use PSK in the meanwhile.





[ZBXNEXT-3388] Load libraries in runtime with RTLD_LOCAL flag Created: 2016 Aug 19  Updated: 2019 Apr 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 3.2.0alpha2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Glebs Ivanovskis (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: crash, dependencies
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-15964 ODBC item causes Zabbix Server to crash Closed
Sub-task
depends on ZBX-12159 Resolving TNS names via LDAP crash on... Confirmed
part of ZBX-13239 ODBC crashes zabbix_server Closed

 Description   

Let's start with a small demonstration. Let's build a small application (test) linked against two libraries (liba.so and libe.so) depending on one and the same symbol (foo) from two different libraries (libb.so and libd.so).

a.c:

#include "a.h"
#include "b.h"

void	a_foo(void)
{
	foo();
}

a.h:

void	a_foo(void);

b.c:

#include <stdio.h>

void	foo(void)
{
	printf("bar\n");
}

b.h:

void foo(void);

d.c:

#include <stdio.h>

void	foo(void)
{
	printf("baz\n");
}

d.h:

void	foo(void);

e.c:

#include "d.h"
#include "e.h"

void	e_foo(void)
{
	foo();
}

e.h:

void	e_foo(void);

Let's build libraries:

$ gcc -o libb.so b.c -fPIC -shared
$ gcc -o libd.so d.c -fPIC -shared
$ gcc -o liba.so a.c -lb -L. -fPIC -shared
$ gcc -o libe.so e.c -ld -L. -fPIC -shared

Let's first test them separately.
test_a:

#include "a.h"

int	main(void)
{
	a_foo();

	return 0;
}

test_e.c:

#include "e.h"

int	main(void)
{
	e_foo();

	return 0;
}
$ export LD_LIBRARY_PATH=.
$ gcc -o test_a test_a.c -la -L.
$ gcc -o test_e test_e.c -le -L.
$ ./test_a
bar
$ ./test_e
baz

So far everything is as expected. Now let's link both libraries to the same program.
test_both.c:

#include "a.h"
#include "e.h"

int	main(void)
{
	a_foo();
	e_foo();

	return 0;
}

Both a_foo() and e_foo() print "bar" or "baz" depending on -l flag order:

$ gcc -o test_both test_both.c -la -le -L.
$ ./test_both
bar
bar
$ gcc -o test_both test_both.c -le -la -L.
$ ./test_both
baz
baz

If program has it's own symbol foo it gets even better.
test_own.c:

#include "a.h"
#include "e.h"
#include <stdio.h>

void	foo(void)
{
	printf("foo\n");
}

int	main(void)
{
	a_foo();
	e_foo();

	return 0;
}

Symbol foo from liba.so and libe.so gets resolved to the foo exported by the program itself:

$ gcc -o test_own test_own.c -la -le -L.
$ ./test_own
foo
foo

But with a different approach it is possible to sort it out.
test_rtld.c:

#include <stdio.h>
#include <dlfcn.h>

void	foo(void)
{
	printf("foo\n");
}

int	main(void)
{
	void	*liba, *libe;
	void	(*a_foo)(void);
	void	(*e_foo)(void);

	liba = dlopen("liba.so", RTLD_NOW | RTLD_LOCAL);
	libe = dlopen("libe.so", RTLD_NOW | RTLD_LOCAL);

	a_foo = dlsym(liba, "foo");
	e_foo = dlsym(libe, "foo");

	foo();
	a_foo();
	e_foo();

	dlclose(liba);
	dlclose(libe);

	return 0;
}
$ gcc -o test_rtld test_rtld.c -ldl
$ ./test_rtld 
foo
bar
baz

Most important question: How is it related to Zabbix?

Zabbix depends on a number of libraries (cURL, Net-SNMP, OpenIPMI, DB client libraries, ...) which all require encryption libraries as a secondary dependency. Zabbix uses DB client libraries to access its database and links against UnixODBC which loads ODBC drivers which require DB client libraries too. Sometimes they all need different versions of the same library and inability to resolve symbols correctly (slight difference between "bar" and "baz" in the example above) often leads to crashes.



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2016 Aug 19 ]

List of potentially related tickets: ZBX-8005, ZBX-9035, ZBX-10461, ZBX-10656, ZBX-10897, ZBX-11017, ZBX-12159.





[ZBXNEXT-3316] In trigger does not work macro {INVENTORY.LOCATION} and etc. Created: 2016 Jun 21  Updated: 2019 Oct 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.4.8, 3.0.2, 3.0.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Nikita Assignee: Unassigned
Resolution: Unresolved Votes: 12
Labels: inventory, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

In trigger does not work macro

{INVENTORY.LOCATION}

and etc.


Attachments: PNG File image001.png     PNG File image002.png    
Issue Links:
Duplicate

 Description   

The trigger does not run the macro

{INVENTORY.LOCATION} and all other macros. According to the documentation they need to display values. But, instead of the value of the Inventory field they give {INVENTORY.LOCATION}

etc.



 Comments   
Comment by Aleksandrs Saveljevs [ 2016 Jun 22 ]

According to https://www.zabbix.com/documentation/3.0/manual/appendix/macros/supported_by_location, {INVENTORY.LOCATION} macro is only supposed to work in notifications. Where exactly are you trying to use them?

Comment by Nikita [ 2016 Jun 23 ]

In trigger name. According to the documentation - Trigger-based notifications...

Comment by Mikhail Khirgiy [ 2016 Dec 09 ]

It's very important to use

{INVENTORY.LOCATION}

macro in triggers notifications.

Comment by Christian McHugh [ 2018 Apr 27 ]

We too would like to use INVENTORY.ALIAS, LOCATION, or TAG in the trigger name. 

Comment by Kurbanov Ruslan [ 2019 Apr 01 ]

In zabbix 4.0.3 {INVENTORY.LOCATION} doesn't go into a trigger name.





[ZBXNEXT-3315] can't get all template properties in one call Created: 2016 Jun 20  Updated: 2016 Jun 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.0.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: template.get
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

when requesting template.get, we may ask for all the properties like applications, macros, items, triggers, graphs... unfortunately, nested properties are not returned :

  • steps for web scenarios
  • items for graphs
  • prototypes for lld rules
  • templated screen items/elements
  • something else ?

if one would like to get all the information about a template, that makes the 'extend' call to these entities useless - it is still required to make another call for all the web scenarios, graphs, lld rules, templated screens...

the host.get method is likely the same.



 Comments   
Comment by richlv [ 2016 Jun 20 ]

also applications for items, and probably many more properties or other entities.

looks like these parameters haven't been thought out that well - the frontend doesn't use them anyway and resorts to the individual .get methods.





[ZBXNEXT-3226] Move Zabbix Gateway to Agent Created: 2016 Apr 01  Updated: 2016 Apr 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Java gateway (J)
Affects Version/s: 3.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Dennis Plöger Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: agent
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In many cases, JMX-Interfaces only listen to localhost or firewall admins tend to close down their ports.

In these cases, the current implementation would force me to install a zabbix agent, a java gateway and a zabbix proxy on the application server to be able to read the jmx information.

Thus, the java gateway feature should either be directly integrated into the agent (recommended) or the gateway should be linked to the agent, not to the proxy or server.



 Comments   
Comment by richlv [ 2016 Apr 01 ]

integrating it in the agent would be highly unfeasible. java gateway is written in java, while agent is small, lean and uses little memory.
those things just don't go together

Comment by Glebs Ivanovskis (Inactive) [ 2016 Apr 03 ]

Dynamically loadable Java agent module?





[ZBXNEXT-3194] zabbix 3 disables core dumps Created: 2016 Mar 16  Updated: 2016 Aug 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S)
Affects Version/s: 3.0.0, 3.0.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: patrik uytterhoeven Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: coredump, zabbix_agentd, zabbix_proxy, zabbix_server
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Zabbix disables core dumps when adding encryption when compiling
This is ok on the zabbix server but not always preferred. The real problem is that agents also disable core dumps or else fail to start as can be seen in this ticket: ZBX-10542.

A better solution would be to have the option in the config file. This way when people needs a core dump they have the option to enable core dumps. Or at least they have a choice. I understand that the dump can be a security risk but sometimes coredumps are usefull and needed.



 Comments   
Comment by Sandis Neilands (Inactive) [ 2016 Aug 16 ]

Coredumps remain enabled if Zabbix compiled without encryption support: ZBX-10086.





[ZBXNEXT-3202] Certificate Inventory and alarming Created: 2016 Mar 18  Updated: 2016 Mar 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Carlos Solano Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: certificate, inventory
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Don't know if duplicate or incorrect, sorry in advance.

What we are looking for, is a way to create an inventory about Certificates.

  • SSL
  • Public, Private
  • Certification Authority.
  • Root Certificates
  • Chain Certificates
  • Errors thrown
  • Expiration
  • Clients subordinated
  • SelfSigned certificates on server and services
    ...

Regards



 Comments   
Comment by Aleksandrs Saveljevs [ 2016 Mar 21 ]

Related request asking for just expiration: ZBXNEXT-1403.





[ZBXNEXT-3166] get IDs for web monitoring items using API easily Created: 2016 Feb 24  Updated: 2023 Jul 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 2.4.7
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: itcbsops Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: ids, items, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-19160 How to get "speed", "response time", ... Closed

 Description   

Dear,

using API, we want to retrieve some informations about Web scenarios, like the average response time for the first (and uniq) step.

We retrieve the web scenario information without any problem (using httptest.get).

But to get the average response time, we use the historyGet, but we must set in parameter (itemid) the id of the average response time (I get the itemid in the frontend url).

In other word, I don't understand how is linked the web scenario id to the average download time of the 1st step.

I've also check on database but cannot see the relation.

Thanks for your help



 Comments   
Comment by Oleksii Zagorskyi [ 2016 Feb 25 ]

Indeed an "httpstepitem" table could be used to get and include actual items to API response.
As the response contains only steps, but each has 3 items and there are also items for scenario - to resolve this request the method should support something like selectItems, which would include items for steps and scenario.

As a workaround, having scenario and step names it's possible to construct item keys https://www.zabbix.com/documentation/2.4/manual/web_monitoring/items and then using hostid get items using item.get with filtering by key.

Should we move it to ZBXNEXT ?

Comment by Oleksii Zagorskyi [ 2016 Feb 25 ]

Or close it as a duplicate of ZBX-9649

Comment by Oleksii Zagorskyi [ 2016 Feb 25 ]

Well, indeed worth to close.

Comment by richlv [ 2016 Feb 25 ]

i'd suggest moving to zbxnext instead. ZBX-9649 was about getting those items, this issue is about getting their ids in the first place.
while constructing item keys might work, it is fragile - what if an upcoming zabbix version changes the keys ?
being able to properly get the associated ids would be quite useful.

Comment by Oleksii Zagorskyi [ 2016 Feb 25 ]

Good point, moved.

Comment by Carl [ 2023 Jul 12 ]

It does not seem possible via API how we can get the relations between httptestid > httpstepid > itemsid.

Using httptest.get($hostid) we can get httptest.httptestid, httptest.hostid, httpstep.httpstepid and httpstep.httptestid - but we cannot get items.itemid

Using item.get($hostid,webitems) we can get items.itemid and items.hostid - but we cannot get httpstep.httpstepid or httptest.httptestid

The httpstepitem table contains httpstepitemid, httpstepid, itemid, type and is necessary to link the two above; but does not appear exposed in API

It seems the following changes may address this:

a) have httptest.get when during selectSteps return the list of steps including the itemid and type from httpstepitem as an array

and/or

b) have item.get when during webitems=true return the httptestid, httpstepid and type from httpstepitem.

I wrote the above before I found this unresolved item of 7 years ago.

It seems like I am the first to vote on the issue, but is there any likelihood this shortcoming will be addressed?





[ZBXNEXT-3186] optionally hide "Ok/Problem" text for elements on maps Created: 2016 Mar 10  Updated: 2018 Jun 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Roman Belda Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: filters, maps, status
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File hide-status.tgz     PNG File network-maps.png     PNG File with-problem.png     PNG File without-problem.png    

 Description   

Dear Zabbix,

we need to hide Ok/Problem status in maps, because with statuses, we haven't got lots of space between items.

I think it will be a good feature. I send you all edited files, with updated database. It's new item called "hidestatus".
It's same as highlight option. It's available to change this option per map.

Thank you for your reply and add it in next versions.



 Comments   
Comment by Guido [ 2016 Jul 07 ]

+1

Comment by richlv [ 2016 Jul 07 ]

please see http://zabbix.org/wiki/Docs/bug_reporting_guidelines#Reporting_an_issue . note this part :

Don't add "me too" or "when will this be fixed" comments to issues - those aren't productive and only clutter the issue. Discuss issues in Zabbix forums or IRC channel. On the other hand, if the issue is unclear and hard to reproduce, it might be worth adding relevant environment details and whether problem is reproducible there.
If you want to show that you also suffer from a particular problem and would like to see it fixed, vote on it.

Comment by richlv [ 2017 Mar 26 ]

seems to be a duplicate of ZBXNEXT-2665

Comment by Brett Grothoff [ 2018 Jun 26 ]

Thanks, this worked great!





[ZBXNEXT-3234] PGRES_FATAL_ERROR in zabbix log after restarting Postgresql service Created: 2016 Mar 01  Updated: 2017 May 31

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sergey Lisikh Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: database, postgresql
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos 6.5/7.1 x64, PostgreSQL 9.5, Zabbix 2.4.7


Attachments: File zabbix_server_with_localhost_PSQL_DB.log     File zabbix_server_with_remote_PSQL_DB.log    

 Description   

After restarting postgresql I get "[Z3005] query failed: [0] PGRES_FATAL_ERROR:FATAL:" errors in zabbix log. They stabely appear from time to time, until I restart zabbix-server.
Errors differ slightly on the basis of "DBHost" configuration (remote or localhost). See logs for details.
Don't know, is this critical or not?

To reproduce:
1) set DEBUG to 3 in zabbix_server.conf
2) run DB service, run zabbix server, check that they work
3) stop DB service, wait 10-20 sec, start it again
4) see zabbix logs, PGRES_FATAL_ERROR will appear periodically (think, it depends on the count of hosts and items)



 Comments   
Comment by Sergey Lisikh [ 2016 Mar 02 ]

This error also appear on debug level=2 with interval from 1 to 10-15 minutes.

Comment by Aleksandrs Saveljevs [ 2016 Mar 02 ]

Here is a longer part of the log on my system:

 14399:20160302:111456.497 Starting Zabbix Server. Zabbix 2.4.8rc1 (revision {ZABBIX_REVISION}).
 14399:20160302:111456.497 ****** Enabled features ******
 14399:20160302:111456.497 SNMP monitoring:           YES
 14399:20160302:111456.497 IPMI monitoring:           YES
 14399:20160302:111456.497 WEB monitoring:            YES
 14399:20160302:111456.497 VMware monitoring:         YES
 14399:20160302:111456.497 Jabber notifications:      YES
 14399:20160302:111456.497 Ez Texting notifications:  YES
 14399:20160302:111456.497 ODBC:                      YES
 14399:20160302:111456.497 SSH2 support:              YES
 14399:20160302:111456.497 IPv6 support:              YES
 14399:20160302:111456.497 ******************************
 14399:20160302:111456.497 using configuration file: /home/zabbix/zabbix-bin/etc/zabbix_server.conf
 14399:20160302:111456.508 current database version (mandatory/optional): 02040000/02040000
 14399:20160302:111456.508 required mandatory version: 02040000
 14399:20160302:111456.517 server #0 started [main process]
 14403:20160302:111456.517 server #1 started [configuration syncer #1]
 14404:20160302:111456.517 server #2 started [db watchdog #1]
 14405:20160302:111456.517 server #3 started [poller #1]
 14406:20160302:111456.517 server #4 started [unreachable poller #1]
 14408:20160302:111456.518 server #5 started [trapper #1]
 14409:20160302:111456.518 server #6 started [trapper #2]
 14411:20160302:111456.518 server #7 started [trapper #3]
 14413:20160302:111456.518 server #8 started [trapper #4]
 14415:20160302:111456.519 server #9 started [trapper #5]
 14421:20160302:111456.520 server #13 started [timer #1]
 14422:20160302:111456.520 server #14 started [http poller #1]
 14420:20160302:111456.520 server #12 started [housekeeper #1]
 14418:20160302:111456.520 server #11 started [alerter #1]
 14426:20160302:111456.521 server #16 started [history syncer #1]
 14430:20160302:111456.522 server #18 started [ipmi poller #1]
 14433:20160302:111456.522 server #19 started [java poller #1]
 14417:20160302:111456.522 server #10 started [icmp pinger #1]
 14434:20160302:111456.522 server #20 started [proxy poller #1]
 14429:20160302:111456.523 server #17 started [escalator #1]
 14435:20160302:111456.524 server #21 started [self-monitoring #1]
 14423:20160302:111456.539 server #15 started [discoverer #1]
 14429:20160302:111520.531 [Z3005] query failed: [0] result is NULL [select escalationid,actionid,triggerid,eventid,r_eventid,nextcheck,esc_step,status,itemid from escalations order by actionid,triggerid,itemid,escalationid]
 14429:20160302:111520.531 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select escalationid,actionid,triggerid,eventid,r_eventid,nextcheck,esc_step,status,itemid from escalations order by actionid,triggerid,itemid,escalationid]
 14429:20160302:111520.531 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14429:20160302:111520.531 database is down: reconnecting in 10 seconds
 14422:20160302:111521.533 [Z3005] query failed: [0] result is NULL [select h.hostid,h.host,h.name,t.httptestid,t.name,t.variables,t.headers,t.agent,t.authentication,t.http_user,t.http_password,t.http_proxy,t.retries,t.ssl_cert_file,t.ssl_key_file,t.ssl_key_password,t.verify_peer,t.verify_host from httptest t,hosts h where t.hostid=h.hostid and t.nextcheck<=1456910121 and mod(t.httptestid,1)=0 and t.status=0 and h.proxy_hostid is null and h.status=0 and (h.maintenance_status=0 or h.maintenance_type=0)]
 14422:20160302:111521.533 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select h.hostid,h.host,h.name,t.httptestid,t.name,t.variables,t.headers,t.agent,t.authentication,t.http_user,t.http_password,t.http_proxy,t.retries,t.ssl_cert_file,t.ssl_key_file,t.ssl_key_password,t.verify_peer,t.verify_host from httptest t,hosts h where t.hostid=h.hostid and t.nextcheck<=1456910121 and mod(t.httptestid,1)=0 and t.status=0 and h.proxy_hostid is null and h.status=0 and (h.maintenance_status=0 or h.maintenance_type=0)]
 14422:20160302:111521.533 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14422:20160302:111521.533 database is down: reconnecting in 10 seconds
 14426:20160302:111521.556 [Z3005] query failed: [0] result is NULL [begin;]
 14426:20160302:111521.556 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14426:20160302:111521.556 database is down: reconnecting in 10 seconds
 14403:20160302:111526.520 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14403:20160302:111526.520 database is down: reconnecting in 10 seconds
 14418:20160302:111526.528 [Z3005] query failed: [0] result is NULL [select a.alertid,a.mediatypeid,a.sendto,a.subject,a.message,a.status,mt.mediatypeid,mt.type,mt.description,mt.smtp_server,mt.smtp_helo,mt.smtp_email,mt.exec_path,mt.gsm_modem,mt.username,mt.passwd,a.retries from alerts a,media_type mt where a.mediatypeid=mt.mediatypeid and a.status=0 and a.alerttype=0 order by a.alertid]
 14418:20160302:111526.528 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select a.alertid,a.mediatypeid,a.sendto,a.subject,a.message,a.status,mt.mediatypeid,mt.type,mt.description,mt.smtp_server,mt.smtp_helo,mt.smtp_email,mt.exec_path,mt.gsm_modem,mt.username,mt.passwd,a.retries from alerts a,media_type mt where a.mediatypeid=mt.mediatypeid and a.status=0 and a.alerttype=0 order by a.alertid]
 14418:20160302:111526.528 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14418:20160302:111526.528 database is down: reconnecting in 10 seconds
 14429:20160302:111530.531 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14429:20160302:111530.531 database is down: reconnecting in 10 seconds
 14422:20160302:111531.533 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14422:20160302:111531.534 database is down: reconnecting in 10 seconds
 14426:20160302:111531.556 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14426:20160302:111531.556 database is down: reconnecting in 10 seconds
 14403:20160302:111536.520 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14403:20160302:111536.520 database is down: reconnecting in 10 seconds
 14418:20160302:111536.528 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14418:20160302:111536.529 database is down: reconnecting in 10 seconds
 14429:20160302:111540.532 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14429:20160302:111540.532 database is down: reconnecting in 10 seconds
 14422:20160302:111541.534 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14422:20160302:111541.534 database is down: reconnecting in 10 seconds
 14426:20160302:111541.556 [Z3001] connection to database 'zabbix_2_4' failed: [0] could not connect to server: No such file or directory
	Is the server running locally and accepting
	connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

 14426:20160302:111541.556 database is down: reconnecting in 10 seconds
 14403:20160302:111546.527 database connection re-established
 14418:20160302:111546.532 database connection re-established
 14429:20160302:111550.535 database connection re-established
 14422:20160302:111551.538 database connection re-established
 14426:20160302:111551.560 database connection re-established
 14423:20160302:111556.546 [Z3005] query failed: [0] result is NULL [select distinct r.druleid,r.iprange,r.name,c.dcheckid,r.proxy_hostid from drules r left join dchecks c on c.druleid=r.druleid and c.uniq=1 where r.status=0 and (r.nextcheck<=1456910156 or r.nextcheck>1456910156+r.delay) and mod(r.druleid,1)=0]
 14423:20160302:111556.546 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select distinct r.druleid,r.iprange,r.name,c.dcheckid,r.proxy_hostid from drules r left join dchecks c on c.druleid=r.druleid and c.uniq=1 where r.status=0 and (r.nextcheck<=1456910156 or r.nextcheck>1456910156+r.delay) and mod(r.druleid,1)=0]
 14411:20160302:111558.141 [Z3005] query failed: [0] result is NULL [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14411:20160302:111558.141 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14405:20160302:111558.780 [Z3005] query failed: [0] result is NULL [select hostid,key_,state,evaltype,formula,error,lifetime from items where itemid=23278]
 14405:20160302:111558.780 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select hostid,key_,state,evaltype,formula,error,lifetime from items where itemid=23278]
 14421:20160302:111600.534 [Z3005] query failed: [0] result is NULL [begin;]
 14413:20160302:111658.151 [Z3005] query failed: [0] result is NULL [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14413:20160302:111658.151 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14415:20160302:111758.162 [Z3005] query failed: [0] result is NULL [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14415:20160302:111758.162 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14408:20160302:111858.174 [Z3005] query failed: [0] result is NULL [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14408:20160302:111858.174 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14409:20160302:112358.213 [Z3005] query failed: [0] result is NULL [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14409:20160302:112358.213 [Z3005] query failed: [0] PGRES_FATAL_ERROR: [select hostid,status from hosts where host='Zabbix server' and status in (0,1) and flags<>2 and proxy_hostid is null]
 14399:20160302:114444.374 Got signal [signal:15(SIGTERM),sender_pid:15844,sender_uid:1000,reason:0]. Exiting ...
 14399:20160302:114446.378 syncing history data...
 14399:20160302:114446.380 syncing history data done
 14399:20160302:114446.380 syncing trends data...
 14399:20160302:114446.392 syncing trends data done
 14399:20160302:114446.392 Zabbix Server stopped. Zabbix 2.4.8rc1 (revision {ZABBIX_REVISION}).

It can be seen that there are failed queries after database connection was re-established. However, these failed queries probably come from processes which did not notice that the database was down before and were using the old connection descriptor for their query. This looks scary, but does not seem to cause a problem: these failed queries will be repeated immediately after reconnection.

Comment by Sergey Lisikh [ 2016 Mar 02 ]

Thanks for reply, Aleksandrs!
I've calmed down

Comment by Glebs Ivanovskis (Inactive) [ 2016 Apr 04 ]

From the log attached by asaveljevs we can see that the fact that database was down and came back was noticed by alerter, escalator, http poller (these are processes which use direct queries instead of caches), configuration syncer and history syncer processes (which communicate with database a lot by design). Processes that do not notice such short database downtime are trappers, pollers, discoverer, timer, ... (which use mostly caches or spend a lot of time simply sleeping) Since Zabbix processes do not share information about database status this situation is more or less expected.

Comment by Glebs Ivanovskis (Inactive) [ 2016 Apr 07 ]

After some discussion we decided to leave things as they are. Some of Zabbix processes communicate to database not very frequently. Between rare queries connection handle may become invalid. Query then fails and Zabbix process tries to reconnect immediately. If the reconnection is successful on the first attempt, no messages about database down/up are logged, just the message about a failed query. Rationale:

  • We don't want to add "database is down", "database is up" messages on every reconnect, because this would litter logs and frighten users.
  • We don't want to add "successfully reconnected" message only, because it would be like ")" without "(".
  • We don't want to get rid of failed query messages, because we believe it's not good to hide such things.

As suggested by richlv moved to feature requests to track user interest in this issue.





[ZBXNEXT-3143] Display link to created entity in "green" success message. Created: 2016 Feb 15  Updated: 2016 Feb 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.0beta2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ivan Kolomiets Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File fr.png    

 Description   

Hello!
I suffering of some "incompletenes" of new fronted.
You done a greate job eleminating dropdown for mass operations - now it's tome to add a link to create entity (host, template, item) in flash message.

Usually, when you creating something - you want to adjust something or validate that you not forget anything.

Now you are forced to remember the name of created entity, then find it.

It would be super handy if there will be direct link to it in flash message.

I attached screenshot of how i see it.



 Comments   
Comment by richlv [ 2016 Feb 15 ]

just to clarify, the popup/slidedown temporary message is meant, adobe flash not suggested here

this would be very handy indeed, but what if multiple entities are affected in one go ? should the links go in the detailed entries (expandable) then ?

Comment by Ivan Kolomiets [ 2016 Feb 15 ]

@richlv fair comment. I'm particularly suffering from adding single items, not used mass editing much, but can i imagine example for this - mass enabling of hosts - it would be nice to get links to them in order to open in new tabs and continue editing.
As for the first implementation i would suggest split entities by commas. What is the maximum mass editing number? Per page maximum? 50? If name length is reasonable - it even will look nice. And if not - then the that admin is his own worst enemy =)

Comment by Pavel Amosov (Inactive) [ 2016 Feb 16 ]

One thing is for sure: there should be a name of a template/host, like "Template 'ubertemplate' added".

Comment by Ivan Kolomiets [ 2016 Feb 16 ]

I read my description again - and i'm sorry for errors. Please note, it was written at night after long long working day =)
To clarify: link to create_D_ element.





[ZBXNEXT-2927] a "template" to manually create screens easier and faster Created: 2015 Aug 27  Updated: 2015 Sep 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: wgretz Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: screens, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please add the ability to create a screen template so users can add a list of hosts with a predetermined (template) set of graphs onto a screen for quick and easy dashboards. This makes screen creation much more efficient when trying to create a large dashboard.



 Comments   
Comment by richlv [ 2015 Aug 27 ]

could you please provide an example of the desired functionality ?
there are screen templates, but it sounds that this issue is more about an ability to create manual screens more easily

Comment by wgretz [ 2015 Aug 27 ]

Sure, hopefully this makes sense.

I want 20 servers on a screen and I want them all to graph cpu load, memory and eth0.

It would be nice if I could create a screen template that would include those metrics by default. Having this ability would mean I could graph all of those items in a couple clicks, applied to however many hosts I want on the screen.

Example: Create screen --> manually created baseline graph template --> Apply to select hosts --> auto populates screens with items/graphs

Right now I need to create a blank screen, and manually add each graph item I want for each server.

Comment by Marc [ 2015 Aug 27 ]

Isn't that already covered by dynamic elements of a regular screen or by a host screen?

Edit:
Hmm, after a second thought I think the request is rather about having a single screen that gets dynamicaly populated by a fixed set of widgets for each host of a host group. My previous suggestion allows instead to have a single screen with option to choose a host for from which data should be used in the screen widgets.

Comment by wgretz [ 2015 Aug 27 ]

I want to create a screen, that includes x amount of servers, with the same items/graphs displayed. I want the ability to manually create a template where I can define the graphs I want applied. I then want to create a screen, apply the manually created template and select the hosts I want applied. Currently this is a very manual process, custom screen template would be ideal.

Host Graph Graph Graph
Host Graph Graph Graph
Host Graph Graph Graph
Host Graph Graph Graph

Comment by wgretz [ 2015 Aug 27 ]

Right. I guess using the dyanmic item logic it could be as simple as, under screen config, adding items you want graphed, making them dynamic and then under monitoring screens, you could select a hostgroup which would then display an instant dashboard per hostgroup of your choosing. Just brainstorming...

Comment by Marc [ 2015 Aug 27 ]

ZBXNEXT-1992 and ZBXNEXT-2146 could be considered as distantly related.





[ZBXNEXT-1734] On HP-UX the interface detection can go into an endless loop Created: 2013 May 06  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.0.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Albert Flügel Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: discovery, hp-ux, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

HP-UX 10 or higher


Attachments: File zabbix-2.0.5.hpux-Makefile.in.patch     File zabbix-2.0.5.patch    

 Description   

In src/libs/zbxsysinfo/hpux/net.c, line 79 a loop over all interfaces starts.
If the current interface is not of type INET or INET6 in the first if within the loop, the loop continues.
That is, if the last interface in the list is not of type INET or INET6, the loop does not stop, because
the code to step to the next interface (lines 89 or 91) are never reached. So the agent
stops working and only eats CPU.
In the loop starting in 119 the continue is ok as the loop condition is part of the for ... statement.

The patch contains also other fixes for building on HP-UX 10 and to implement system.uptime and system.boottime.

The attached patch can be applied to version 2.0.5 and 2.0.6. Others have not been tested.



 Comments   
Comment by Albert Flügel [ 2013 Sep 16 ]

The patch is still valid for zabbix 2.0.8

Comment by Albert Flügel [ 2013 Sep 17 ]

If automake cannot or should not be run after applying the other patch file zabbix-2.0.5.patch , apply this file the same way:

  1. cd zabbix-2.0.X
  2. patch -p 1 < /path/to/zabbix-2.0.5.hpux-Makefile.in.patch




[ZBXNEXT-1577] move entity selection field to be the second in the properties form Created: 2013 Jan 17  Updated: 2013 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

when another map element type than image is selected, actual entity selection field (host, host group, map, trigger) appears below several other fields. this is not very logical and users struggle with finding this field. instead this field should be moved right below the "type" dropdown






[ZBXNEXT-1765] Improved Screens navigation and management Created: 2013 May 30  Updated: 2021 May 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Cristian Assignee: Unassigned
Resolution: Unresolved Votes: 17
Labels: screens, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2437 accessing host screens Closed
is duplicated by ZBX-6639 Improved Screens navigation and manag... Closed

 Description   

Hi,

I think the current way the screens are implemented is making hard to use them.

On management side:

  • The focus should be on creating screens within templates
  • The general screens (as they are) should have the option to include templated screens if the hostname has assigned a template with screens

On consulting/review these screens I think:

  • Monitoring->Screens should have a way to select Host as well, not to only display "general" screens
  • If a host has included a template with a screen then when navigating the Monitoring->Screens and picking the proper host it should be displayed the templated screen
  • As well should be a way to switch between hosts having same screen. So less clicks to navigate to graphs
  • As well, I think the zoom bar used on zabbix is harder to understand/use. Having select boxes as on Cacti is much better

Basically on navigation/review side of graphs I found Cacti much superior and somehow we should follow the same or improved navigation/review pattern.



 Comments   
Comment by alex dekker [ 2017 Dec 22 ]

Host screens are inexplicably difficult to find. There should be a link to them from the Screens screen.

Comment by Alexei Vladishev [ 2021 May 21 ]

I think it has been improved significantly in 5.4 by merging of screens (global and template-level) into dashboards. Less confusing and much more user friendly!





[ZBXNEXT-1764] Plugin support in the webinterface Created: 2013 May 30  Updated: 2022 Jan 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Frank Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: plugins
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In order to get most out of your Zabbix installation, it would be nice to have plugin support in the webinterface allowing people to write their own plugins and use it from Zabbix.
It should be able to insert itself into the menu and authentication system.

Additionally, it would be nice if actions/links could be added to the "popup" (if you click an item) function as well with parameters (e.g. host ID, hostname).

Functionality like this would allow people to use Zabbix for more than "just" a monitoring system
For instance by integrating it with their environment (e.g. Puppet, Saltstack or virtualization platforms like Vmware/KVM/EC2)



 Comments   
Comment by richlv [ 2013 May 30 ]

this seems to be a very broad request.
as for the host popups, you are aware of administration -> scripts, right ?

Comment by Frank [ 2013 May 30 ]

I know about the popups, but instead of running a script it should allow a link to a page in Zabbix (provided by the plugin)

Comment by richlv [ 2013 May 30 ]

linking to pages in zabbix can be implemented using map urls (although they won't work in other views, of course )

Comment by Oleksii Zagorskyi [ 2013 May 31 ]

Here in Jira are several discussions about plugins for frontend.

Comment by Mickael Martin (Cyres) [ 2022 Jan 05 ]

Hello !

Solved in version 5.0 https://www.zabbix.com/documentation/5.0/en/manual/modules , so you can close ?

Thank you Zabbix team !





[ZBXNEXT-1514] Enter maintenance mode on network connection failure Created: 2012 Nov 14  Updated: 2016 Jun 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Michele Piccini Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: maintenance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux Debian 6.0 .
Zabbix server and monitored hosts ar on different networks.



 Description   

If Zabbix-server's network connection fails then Zabbix-server should enter mainteniance mode so that no alert is sent.
For example we monitor network connectivity by ping to a remote host then if thi



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Nov 15 ]

Description looks not finished.

And the idea is not very logical: network connection fails .... -> no alert is sent

Comment by Michele Piccini [ 2012 Nov 15 ]

In this scenario Zabbix is on a remote network and monitor hosts on different network.
If Zabbix network fails, we get hundred of alerts for all the monitored hosts which are working ok and the problem is zabbix server connection only.
Since the only way we get alerts is through network it make no sense to send alerts when network fails.
If zabbix server connection server fails we need to monitor it externally from a different location eventually using an othere zabbix server.
So it does not matter if you don't get alerts in case of local network failure, eventually in this case you can try to send only a single alert for the network connection failure that will be really sent when network is up again or using an sms gateway.
Normally we monitor zabbix server network connection by pinging google from zabbix server.

Comment by richlv [ 2012 Nov 15 ]

sounds like "easier way to manage dependencies"

Comment by Michele Piccini [ 2012 Nov 15 ]

Yes but I don't want to create manually a dependency for each trigger on each monitored host.
I forgot to tell that when network connection is up again zabbix should exit mainteniace mode.

Comment by Oleksii Zagorskyi [ 2016 Jun 16 ]

ZBXNEXT-1375 may be related
See also http://zabbix.org/wiki/Docs/simplify_ad_hoc_maintenance





[ZBXNEXT-1516] Make the trigger expression editor more efficient Created: 2012 Nov 16  Updated: 2012 Nov 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Volker Fröhlich Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: expressions, triggerconfigform, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Goal:

A) Create a new item and a simple trigger for that item
B) Create a more complex trigger, involving various items from different hosts

Modus operandi A):

= Manual approach =

  • Create the item
  • Memorize or copy exact host name and item key; that can be very difficult in cases
  • Switch to triggers.php
  • "Create trigger"
  • Type or paste it and hope everything goes well
  • Save

= UI approach =

  • Create the item
  • Switch to triggers.php
  • "Create trigger"
  • Click "Edit"
  • Click "Select"
  • Navigate for the right host and item
  • Adapt the expression or leave it as it is and edit later
  • Click "Insert"
  • Save

B):

Much like before, you'd have to go through all the steps over and over.


To me it seems, the process could be improved in two ways:

1.) Make it easier to create a simple trigger expression for a single item. This could be achieved via a link in the Wizard column on items.php, or better: The Triggers column. It would take you the trigger editor, with host and item already filled in.

2.) Try to get rid of the popups and integrate the list of all available items in the trigger form, to comfortably pick items.



 Comments   
Comment by richlv [ 2012 Nov 16 ]

also something that has been discussed a lot, but i couldn't find an existing issue, so i created a new one... expression hints/suggestions/autocomplete : ZBXNEXT-1517





[ZBXNEXT-1458] Allow patterns in "exclude" of item "services[<type>,<state>,<exclude>]". Created: 2012 Oct 09  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.0.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert de Bock Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: regexps, services, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows



 Description   

We have some Windows services that include a version in their name, like: "clr_optimization_v4.0.30319_32,clr_optimization_v4.0.30319_64". I'd like to be able to exclude a pattern like "clr_optimiztion_*", otherwise the list of excluded patterns will be long and unmanagable.

So, I'd like to configure this key on an item:
services[automatic,stopped,"clr_optimization_*"]

Currently this "clr_optimiztion_*" does not match "clr_optimization_v4.0.30319_32", nor "clr_optimization_v4.0.30319_64".



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Oct 10 ]

I'd say support of regexps there is requested.





[ZBXNEXT-1461] Notify dependent triggers with an indication of the root problem plus dynamic dependency maps Created: 2012 Oct 10  Updated: 2023 Nov 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Documentation (D), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Volker Fröhlich Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 27
Labels: dependencies, topology
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

This ticket describes my wish from the conference talk "Generating Maps and Hosts from Topological Data" (https://www.youtube.com/watch?v=Sv0ZV05N5oI).

=Scenario=

A Zabbix server is connected to a monitored server via a switch

Z-N-S

Z ... Zabbix server
N ... Networking equipment (switch)
S ... Monitored server

The switch is maintained by a network administrator (NA), the server is maintained by a server administrator (SA). S hosts a website for a customer.

=A little story=

In the middle of the night, SA receives a message on his phone, claiming S is unreachable. What happened? Various things go through his mind: Did somebody mess up the firewall, the nameserver? Did somebody pull a cable or did the switch break? Did the machine or the network stack crash? Is it actually the Zabbix server that became disconnected from this part of the network?

2 minutes later the customer is on the phone, asking the drowsy SA what's wrong with his website. At this point he can't answer the customer's question. He doesn't even know if he can do anything about it. He only knows the problem is apparently real. If he's lucky, he'll reach a NA who can help him find out.

Meanwhile in the network operations center: NA gets a message on the dashboard, saying N is unreachable. He doesn't know the topology very well and therefore doesn't know from the top of his head, which hosts are affected by this outage. He also has no idea what services the machines runs, that is behind the broken switch. He has no immediate sense of urgency besides the trigger severity. If he's lucky, somebody's maintaining some additional information, accessible in the enterprise wiki.

This little story assumes, no trigger dependency is used. The trigger dependency mechanism could have been used to not notify the SA at all, because S depends on N. But that doesn't help the SA, because the customer would have still called him up and he'd have been even more clueless.

=What if ...=

What if the SA would have gotten a message saying:

"Server S is unreachable. This is due to an outage of N."

Reading it, he would have known he can't do anything about the problem. The website would most likely come back online when N is back to work. He could have answered the customer: "We have a network problem, NOC is working on it, have a good night!".

Also, what if the NA had a dynamic map reflecting dependency? Optionally he could also receive messages like below, if he cares:

"Switch N is unreachable. Therefore S is unreachable too."

NA: "Gosh, S is an important server, I better hurry!"

If you're creative with triggers and trigger dependency, you can visually reflect affected hosts on static maps and get this kind of notification. It only works in specific topologies though and may break silently, when you delete a host. This is not how it should be done.

=What would be necessary?=

I believe all necessary information already exists in the Zabbix database. Zabbix knows about the whole dependency chain. Instead of hiding away subsequent problems, it should also be possible to notify subsequent problems with the root problem message.

=Known limitations=

Trigger dependencies are connected with a logical OR. This might not be ideal for modelling topology.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Oct 10 ]

I'm not sure but ZBX-4744 looks a bit related.

Comment by Raymond Kuiper [ 2012 Oct 10 ]

I disagree, Volker is suggesting a fundamental change in handling trigger dependencies in actions and maps.

Comment by Volker Fröhlich [ 2012 Oct 12 ]

Related to ZBXNEXT-1333

Comment by Volker Fröhlich [ 2013 Mar 01 ]

Loosely connected to ZBXNEXT-1547

Comment by romale [ 2013 Nov 19 ]

>all necessary information already exists in the Zabbix database. Zabbix knows about the whole dependency chain.

imho, in current state, zabbix does not know about dependencies. Firstly, it should create a network tree. i think it should discover who is host, who is switch, router etc and who of this at righ side and at left side for topology compilation and relations between devices. Also, it should to know who is Port for root cause discovery and port to port mappings. This mechanism is requires model-oriented approach. And, since, all of network devices are typically SNMP-based, so, discovery should rely on SNMP.
Examples.
Our topology: ZABBIX-switch_port11-SWITCH1-switch_port12router_port1-ROUTER1-router_port2switch_port21-SWITCH2-switch_port22-HOST1
Scenario:
If switch_port21 is disconnected (we are receive router_port2 LinkUp/Down SNMP Trap, we can use this info in correlation).
Remark: Zabbix DB may contain info: router_port2 connected to switch_port21 (based on mac address table info while topology discovery), or on upper level relation: ROUTER1 at left side has SWITCH1, and ROUTER1 at right side has SWITCH2.
When HOST1 is unreachable, zabbix poll by icmp or snmp or tcp the SWITCH2: hey, are you OK? No answer. Next step - zabbix poll ROUTER2: he is replay via icmp for example, it worked and router_port2 status is Down.
So, HOST1 unreachable - is secondary issue and should be suppressed (suppresed message should be emailed to SA with root cause "SWITCH2 is down"), and root cause - "SWITCH2 is down" (this message to NA with affected devices for example. What if 400 hosts is connected to SWITCH2, cisco 6513? NA should know a scale of trouble ).

This is my reflections about network topology discovery and dependencies and about some implementations.
imho, just templates with dependencies is not enough today. It creates human errors, complexity of maintenance and tight monitoring.





[ZBXNEXT-1464] Add debug option to items Created: 2012 Oct 11  Updated: 2021 Jan 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: 1.8.15
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Schoechlin Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: debug, template
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

While developing zabbix templates on productive systems it´s often difficult to debug non working triggers.
If i increase the debug level to "4" (i.e. this is often needed to find the cause of a nonworking snmp item) my log is flooded with tons of messages.

It would be a cool thing to have a "debug-level" option on item level.
Increasing the debug-level to "4" on a certain item, should cause zabbix to log debug information at the place where the check is performed.
(agent, proxy or server)



 Comments   
Comment by Marc Schoechlin [ 2014 Dec 29 ]

A direct feedback to the zabbix user interface would be a really great improvement.
(see also ZBXNEXT-1093)

Comment by Marc Schoechlin [ 2021 Jan 03 ]

Would be still useful on current releases.





[ZBXNEXT-1411] ZABBIX-Proxy per host interface Created: 2012 Sep 07  Updated: 2018 Feb 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.0.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: host, interface, proxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, CentOS-6, PostgreSQL 9.1.4, Apache HTTPD-2.2.15, PHP-5.3.3



 Description   

I'm evaluating ZABBIX again since version 2.0 was released.

Our servers are equipped with remote management adapters. The networks of these adapters differ from the networks where the hosts reside.
Because a ZABBIX-Proxy can only be assigned globally per host, we can not put such RMAs to their corresponding hosts.

Is there any chance to get the option to choosse a ZABBIX-Proxy per host interface?



 Comments   
Comment by Justin McNutt [ 2013 May 22 ]

I would like to see a feature like this as well. My management would like me to be able to provide "perspectives" on a network device. That is, they want me to be able to show whether a switch is reachable not only locally (from a "primary" proxy) but also remotely (from a proxy farther away).

This is especially important when monitoring services like DNS, where it is extremely useful to be able to show that a service was up and running, since the local proxy could reach it, but that there was a network problem somewhere because the external proxy was unable to reach it.

Suggestion:

Make it so that a single Host can have multiple Interfaces, defined by the (IP/DNS, proxy) tuple, where "proxy" can be NULL when that Interface is monitored by the Zabbix host itself.

One problem I see is that this may confuse how Items work. Would ALL Items be re-tested per Interface/Proxy? Or just certain ones? Some more thought needs to be given to this to make it feasible.

Comment by Raymond Kuiper [ 2014 Aug 27 ]

Another reason why this should be implemented is ZBXNEXT-1285.
This would allow us to send traps from zabbix_sender to the main Zabbix server for hosts that are monitored by proxies.

Comment by Raymond Kuiper [ 2014 Aug 27 ]

ZBXNEXT-735 would be needed to effectively use this new functionality.

Comment by Raymond Kuiper [ 2015 Feb 16 ]

I also have the need to use external checks for some proxied hosts that need to run on the central zabbix server instead of on the proxies. This might allow that functionality as well.

Comment by Philipp Jakubowski [ 2015 Jul 09 ]

This feature is needed in multiple ways for us...

Comment by Timo Reimann [ 2018 Feb 16 ]

This feature would be very useful for our deployment, too. I think it would be best to select the Zabbix proxy on interface basis. Using this setup, we could use some kind of production proxy for Zabbix agent checks and a Out-of-band management proxy for SNMP checks against the servers lights-out management card.

Currently we need to create two hosts for each server: one host for checks against Zabbix agent and another one to check the server hardware using SNMP in a dedicated Out-of-band management network.





[ZBXNEXT-1415] Support HTTP-Proxy for Jabber/XMPP Created: 2012 Sep 10  Updated: 2014 Sep 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.0.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: httpproxy, jabber, xmpp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, CentOS-6, PostgreSQL 9.1.4, Apache HTTPD-2.2.15, PHP-5.3.3



 Description   

Please consider to add support for sending Jabber-/XMPP-Messages via a HTTP-Proxy.
Sending messages via XMPP is a great feature but it's out of question if there needs to be a firewall activation from the ZABBIX-Server to the internet.



 Comments   
Comment by Marc [ 2014 Sep 06 ]

Because of the extra costs a once opened proxy connection can be reused when multiple XMPP messages have to be send.





[ZBXNEXT-1416] Allow granting permission to configure Maintenance Periods without granting full configuration access to host group Created: 2012 Sep 10  Updated: 2022 Oct 04

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.0.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert Parker Assignee: Unassigned
Resolution: Unresolved Votes: 53
Labels: maintenance, permissions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 2.0.2 running on Debian from unstable repository packages.


Issue Links:
Duplicate
duplicates ZBXNEXT-77 Better permission granularity Closed
is duplicated by ZBXNEXT-4245 Request for new feature that supports... Closed
is duplicated by ZBXNEXT-7051 Allow maintenance to be created by Za... Closed
is duplicated by ZBXNEXT-4970 Allow to register the maintenance of... Closed

 Description   

We would like to be able to grant some users the permission to create and modify Maintance Periods for certain host groups, without granting them full configuration access to all aspects of the hosts in those groups.

Perhaps this could be implemented as new User Type such as 'Operator', or a new column (between Read-write and Read-only) in the User Group Permissions screen.

Of course I suspect this might not be simple to implement, and may fall within the scope of the work required for something like ZBXNEXT-77 although that other feature request appears more focused on host-based granularity, whereas this is more about making granular an aspect of configuraiton.



 Comments   
Comment by Robert Cooper [ 2012 Oct 24 ]

This might be easily related to ZBXNEXT-310.

Comment by Sebastiaan Woudenberg [ 2014 May 14 ]

We also would like this additional security level.
We've sysadmins that do maintenance work and need to create maintenance windows in zabbix. These sysadmins don't have enough knowledge of zabbix so it would be best to limit there access. Currently they require read-write access to create maintenance windows in zabbix.

ZBXNEXT-310 is an older request but discribes it even better.

Comment by richlv [ 2014 Jun 19 ]

this should be handled in the context of overall permission granularity, closing in favour of ZBXNEXT-77

Comment by richlv [ 2015 Jan 27 ]

this might be considered w/o full permission redesign, reopening

Comment by Volker Fröhlich [ 2015 Apr 22 ]

This little hack gives an actual meaning to "Read/Write" in the context of a regular user. This might be a good idea, because it allows the implementation without massive changes and may reduce the confusion as of what the heck the "Read/Write" column is for.

http://zabbix.org/wiki/Docs/simplify_ad_hoc_maintenance#POC_implementation

Comment by Elvar [ 2017 Mar 14 ]

I think it's very important for users to be able to set maintenance periods for various hosts and groups without having to be in the Zabbix Administrators group. In fact, the majority of users I have accessing Zabbix I would prefer not be Zabbix Administrators but have the ability to create maintenance schedules.

Comment by Marlon Willrich [ 2017 Apr 27 ]

I would also like this function, very important for larger installations

Comment by Brad Turnbough [ 2017 Apr 28 ]

Add my vote to the list of 'why doesn't this exist yet?' 5 years and counting....

Comment by Jos Hoekstra [ 2017 May 31 ]

We're assigning dev-teams their own credentials for notifications etc, but allow them to set their own maintenance without needing us to set it for them would save us a lot of time.
Please allow for a role of 'maintenance-user' which can set maintenance for hosts assigned to his/her group.
This makes for a better to maintain rights management while still allowing users to manage their own hosts.

Comment by Cesar Murilo da Silva Junior [ 2019 Jan 22 ]


Any news?

Comment by Kornelis [ 2019 May 15 ]

How difficult can it be to add a maintenance role. Would be a nice feature. Is there anyway to work around this? With a script or so?

Comment by Volker Fröhlich [ 2019 May 15 ]

Would my approach work for you @Kornelis?

Comment by Kornelis [ 2019 May 16 ]

@Volker:

Is this script compatible with Zabbix 4.2? And how do i implement this?

Comment by Michal Bartak [ 2019 May 28 ]

I agree this feature would be greatly appreciated!

Thanks

Comment by Nick Zolot [ 2020 Mar 31 ]

@Volker, is it possible to use patch with 4.4? Also, is there any step-by-step instruction how it can be installed?

Comment by Volker Fröhlich [ 2020 Apr 01 ]

Given its age I predict it not to apply cleanly. However, I think that the concept is still sound and just try to do the few things that I did in the patch wherever they belong now.

Comment by Dale [ 2022 Oct 04 ]

This appears to work on 6.0.2 and I'm not sure about other versions.

Add read-write to the host groups you desire via User Groups and then using User Roles you can restrict configuration of Hosts.

I'm not sure if I'm missing anything, but my users can now add maintenance and appear that they cannot configure anything still.

 





[ZBXNEXT-1495] Network Discovery Unique Identifier Created: 2012 Oct 31  Updated: 2012 Nov 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marcus Oliveira Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: networkdiscovery, uniqueness
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 6.3 and Percona MySQL Server



 Description   

Hi guys,

It would be very nice the possibility to choose HOSTNAME as UNIQUE IDENTIFIER as the majority of servers have many IPs.

The action fired based on on the discovery rule get confused when a server have more than one IP on reachable networks.

Marcus



 Comments   
Comment by richlv [ 2012 Oct 31 ]

are you discovering zabbix agent there ?

Comment by Marcus Oliveira [ 2012 Oct 31 ]

The fastest response ever... thanks.

If you are asking if the discovered serveres have Zabbix agent installed, the answer is "not always".

Marcus

Comment by richlv [ 2012 Oct 31 ]

so server should do reverse lookup and use the result as the uniqueness criteria ?

Comment by Marcus Oliveira [ 2012 Oct 31 ]

That's a possibility.

It was the first thing I thought.

Marcus

Comment by Oleksii Zagorskyi [ 2012 Nov 22 ]

See also ZBXNEXT-1267





[ZBXNEXT-1363] Web interface navigation improvement Created: 2012 Aug 14  Updated: 2017 Dec 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sergey Syreskin Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: frontend, gui, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 1.Overview.Monitoring.png     PNG File 2.Graphs.Monitoring.png     PNG File 3.Map.Monitoring.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-2481 left side menue Closed

 Description   

I would like to propose an improvement to the way how a user navigates Zabbix web interface by
adding some new views and controls to Zabbix frontend.

1. The main menu, situated on the top of the page should keep its current place.
2. A multi-tab view should replace the current main menu sub-items and the current main part of the page.
3. A navigation tree, containing hosts and host groups, should be added to the left side of the page.

With this improvement any type of monitoring data will be accessible with at most 3 clicks of a mouse button.
Please also see the attached pictures.

This interface improvement was inspired by Adrem NetCrunch
http://www.adremsoft.com/netcrunch/screens/ - a commercial monitoring software, which I had an occasion
to use. Navigating through its user interface seems very intuitive for me and other users, who tried both
Zabbix and NetCrunch.



 Comments   
Comment by Sergey Syreskin [ 2012 Aug 22 ]

A related feature request for displaying all graphs of a host on a single page: ZBXNEXT-75.

Comment by Alexei Vladishev [ 2012 Oct 10 ]

I think that the proposed navigation would make the front-end much easier for users to navigate.

Comment by Stefan [ 2014 Sep 29 ]

2years ago, and nothing happens?
i think thats are a good idea, because the GUI/GUI-Navigation is not state of the art

Comment by Stefan [ 2017 Dec 22 ]

any news?





[ZBXNEXT-1290] Support of proxy in GUI Scripts Created: 2012 Jun 25  Updated: 2014 Jan 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.13, 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Laurent SEROR Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: globalscripts, gui, proxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Web Frontend (GUI)


Issue Links:
Duplicate
is duplicated by ZBX-600 Can not ping from map Closed

 Description   

GUI Scripts do not use the proxy when the host is monitored by the proxy. Usually, when there is a proxy, the host is not reachable from them. Ping script by example will fail even if the host is up. We need to be able to use the script (by example ping) from the proxy.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Jul 09 ]

ZBXNEXT-1276 is a bit related





[ZBXNEXT-1235] selectively ignore trigger dependencies Created: 2012 May 25  Updated: 2014 Aug 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.12
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ghozlane TOUMI Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: triggerdependencies, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Imagine having a complex network scenario, with trigger dependencies defined.
You have a map of this network, and have defined link triggers

when a system is down, you only get one red link , you may get other triggers depending on triger order,
bu the rest of the dependent trigger and links will stay "green", wich may be misleading, and dont give a sens of 'importance'

I think the triggers should be shown on link triggers with no regards to dependencies, or at least give a per map choice on that.

seems to be the oposite of ZBX-2923 ...



 Comments   
Comment by richlv [ 2012 May 25 ]

but we do not know that other links are down, we know that one link is down. from the last information we got, the other links were up. should we really mark unknown things as down ?

Comment by Ghozlane TOUMI [ 2012 May 25 ]

From my pov, we know that the links are down :
I'm using triggers on icmping, and icmping keeps returning data (as can be seen on the simple graphs).

now the question is : can zabbix show the triggers even if they depend on another problem trigger...

I don't know at what level the dependencies are managed, I think i understand dependent triggers are somehow set in an "invisible" state when the depending trigger value is in "problem" state, it would be simpler for this request if triggers where allways evaluated, in which case dependencies could be a filter on those triggers
=> for actions, escalation, dashboard => use the dependency filter
=> for maps and events => no dependency filter

the rationale behind this being that you ban see what's really happening on you system in the maps and in the events , while keeping only the relevant problem on the dashboard/triggers and alerting .

and decorrelation between trigger evaluation and dependency could help with escalation problems such as ZBX-4344 and ZBX-4835

Comment by richlv [ 2012 May 25 ]

well, it sounds like you want to selectively ignore dependencies, which i can't see another way to have as a new feature to, well, ignore them. it should be figured out which elements/pages should have the option and on what level (for example, is it per map or per map element/link ?). as such, it is definitely a feature request

Comment by Jacek [ 2014 Aug 08 ]

Maybe it would be easier to accompish that if you could change a behaviour of dependant triggers - instead of not changing (ignoring) its status in case of problem on more important node, you could change its status to 'unknown'. That wouldn't generate any notifications, would keep dashboard clean and maps would be even more detailed (pointing exactly where is the main problem and what is influenced by it).

For some reason I cannot add screenshots, so below there is a link to forum thread where I posted an example to that. Unfortunately I don't know how to solve this.
https://www.zabbix.com/forum/showthread.php?t=41377





[ZBXNEXT-1004] implement proc.mem for windows agent Created: 2011 Oct 19  Updated: 2012 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 1.8.7
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ghozlane TOUMI Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: items, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

found alot of occurence of people asking for this feature, could not find an issue in the ticketting system (sorry , my jira fu is not that good)

anyway : Windows agent should support a proc.mem item .

right now the workarounf of using perf_counter is far from perfect :

  • perfcounters name change from one windows locale to another, and they can even change from version to version,
  • when monitoring scheduled tasks or non constantly running processes , the perfmon counter does't exist if the process is not started => zabbix marks it as unsupported by design. the problem is that you can miss those tasks... => proc.mem could return 0 allowing us to monitor those tasks
  • when having multiple isntances of the process, I cannot use th perfmon counters to get a global memory usage, => proc_mem could answer that with its regexp magic and all...





[ZBXNEXT-1121] Let Items work on lists Created: 2012 Feb 14  Updated: 2012 Oct 16

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: AG Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently, if you want to monitor several network interfaces, or several disk partitions, you need to create multiple items, one for each interface or partition, but otherwise almost identical. Moreover, you need to create multiple triggers, one for each item you want to be warned about.

This is a lot of duplicated configuration, clutter in the host or template entries, etc. It would be great to be able to let Items or Triggers to operate on lists. That way the item "Incoming network traffic on interface $$", could then be be told to act on "eth0 eth1 eth4".

(Sorry if this request is duplicate, i couldn't find an existing request although i would think many people would love this...)



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Feb 15 ]

http://www.zabbix.com/documentation/2.0/manual/discovery/low_level_discovery
could meet all requested functions

What do you think?





[ZBXNEXT-1040] host activation/deactivation should be done by history syncers Created: 2011 Nov 24  Updated: 2012 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

followup of ZBXNEXT-782

history syncers, not pollers, should be the ones enabling/disabling hosts



 Comments   
Comment by Aleksandrs Saveljevs [ 2011 Nov 24 ]

Sasha also said that the other reason why we cannot do this in 1.8 is that pollers process internal items and they must have a database connection for that. In 2.0, though, we can get rid of not very useful internal items like zabbix[history] and rewrite items like zabbix[requiredperformance] to use configuration cache.





[ZBXNEXT-956] inventory referencing macros in trigger descriptions Created: 2011 Sep 10  Updated: 2013 Feb 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.9.6 (beta)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: inventory, macros, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

trunk revision


Attachments: Text File zbxnext-956.patch    

 Description   

I think need add support macros from host profile for trigger descriptions.
Example, "Host unreachable in

{PROFILE.LOCATION1}

"
or,
in actions can using

{PROFILE.CONTACT}

for quickly contact with responsible person



 Comments   
Comment by Alexey Pustovalov [ 2013 Feb 13 ]

Small patch to implement this feature.





[ZBXNEXT-843] Icon Highlighting Improvement Created: 2011 Jul 13  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Christian Patrick Rotava Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: highlighting, maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Version: 1.8.3 and above (until 1.8.5 has been tested)


Attachments: PNG File complex_maps.png    

 Description   

Can not build advanced maps with regions and icon highlighting ( see attached image).

The problem is that if I create different color icons and use Advanced Icons option, I can only see that somewhere has or not a problem, so I do not know wich severity the problem is. I know that Icon highlighting could solve this question, but it does not make a shadow around the image, it just make an elipse based on height and width of the image.

My suggestion is to create composed icons to build over the originals, just like a small wrench at the right-top of the icon(when in maintenance), or a small point right-bottom with something that could be used to understand the severity of that "problem status".

An easiest way to solve this question could be to add the possibility to choose icons for each severity, it will make it a lot easier to build maps just like I wish.

Any other suggestion is welcome!

Thanks in advance,
Christian



 Comments   
Comment by Christian Patrick Rotava [ 2011 Jul 13 ]

Issue of complex maps with Icon Highlighting.





[ZBXNEXT-832] Collect unmatched SNMP traps Created: 2011 Jul 04  Updated: 2014 May 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Rudolfs Kreicbergs Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: snmptraps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

ZBXNEXT-747 handles traps for specific interfaces. However, if a trap comes in from an unknown host, it can only be logged. There should be a global handling system for such traps.

There are several options how to implement this:
1) Fallback interface. "Forward" all unmatched traps to a fallback interface (unique for the whole system or each proxy/server) and parse it similarly as for any other interface.
2) Auto-registration for unknown traps. Create new hosts with SNMP interfaces for unmatched traps.
3) Create internal items for unmatched traps.






[ZBXNEXT-822] Separation table items, remove frequently changed fields Created: 2011 Jun 19  Updated: 2013 Dec 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Installation (I), Proxy (P), Server (S)
Affects Version/s: 1.9.4 (alpha)
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: items, patch, performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

PostgreSQL


Attachments: File zbx_part_items.diff     File zbx_part_server.diff    
Issue Links:
Duplicate

 Description   

Due to the fact that many items in the table fields that change frequently in the versioned database accumulates a lot of garbage + often blocked the necessary lines. The patch fixes this problem by changing some fields (such as lastvalue) made in a separate table.

At the moment, the changes are tested on the table items 7GB in size and the number of items about 800k.

You may need to refactoring the patch.



 Comments   
Comment by Alexey Pustovalov [ 2011 Jun 19 ]

I would like to know the opinion of the developers on this issue

Comment by Gurnish Anand [ 2013 Feb 22 ]

can this patch be applied on 2.0.2?
we still see deadlocks on items table.

6295:20130221:234529.230 [Z3005] query failed: [1213] Deadlock found when trying to get lock; try restarting transaction [update i
tems set name='Fax failed train for "4"',key_='rcProviderFaxFailedTrain["4"]',type=4,value_type=3,data_type=0,delay=120,delay_flex='
',history=30,trends=180,trapper_hosts='',units='',multiplier=0,delta=0,formula='1',logtimefmt='',valuemapid=null,params='',ipmi_sens
or='',snmp_community='public',snmp_oid='SNMPv2-SMI::enterprises.31232.1001.30.1.7.1.52',port='1161',snmpv3_securityname='',snmpv3_se
curitylevel=0,snmpv3_authpassphrase='',snmpv3_privpassphrase='',authtype=0,username='',password='',publickey='',privatekey='',descri
ption='',interfaceid=100100000034552,flags=4 where itemid=100100000596516;

Comment by Oleksii Zagorskyi [ 2013 Mar 27 ]

ZBXNEXT-822 ZBXNEXT-1689 asks about something related.

Comment by Alexei Vladishev [ 2013 Apr 01 ]

I think you mean ZBXNEXT-1689

zalex_ua ohh, indeed, it was a typo . thanks, fixed !

Comment by richlv [ 2013 Apr 13 ]

i believe ZBXNEXT-1689 should solve this - can we close this issue ?
dotneft I think we have to wait when ZBXNEXT-1689 will be implemented and if it'll help we'll be able to close the issue.





[ZBXNEXT-711] possibility to add textual item history to favorites Created: 2011 Mar 23  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 1
Labels: trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Only graphs for items with numeric data can be added to favorites. For those of us monitoring log files, it would be useful to add textual item history to favorites, too.






[ZBXNEXT-668] Configuration -> Template -> Items needs a select field Created: 2011 Feb 22  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: matthias zeilinger Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File select_field_itemconfig.JPG    

 Description   

it would be nice to have a select field in Configuration -> Template -> Items to select a template.
so that you can switch between the item-configuration of template much quicker






[ZBXNEXT-596] Integrate typeperf results into windows agent and web interface Created: 2010 Dec 31  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Mike Depot Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: perf_counter
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please consider the following feature request involving making better use of typeperf information on windows agents :

1) In the Windows agent, build in the ability to collect the results of "typeperf -qx" and pass that list back to the Zabbix server.

2) On the Zabbix server, in the web interface under a particular host, allow the admin to view this typeperf list.

That alone would centralize this very useful information so people don't have to check typeperf on individual machines prior to adding perf_counter Items.

Once that is in place, it can be taken a step further :

3) While viewing the list of typeperf results for a host in the web GUI, allow a number of individual items to be checked off, and then a button could be clicked to automatically add perf_counter Items for each checked off typeperf line. Default values could be used for many of the fields, which could then be individually edited later if desired.

This would allow fast creation of multiple perf_counter items, and since they would be based on typeperf collected right from the target machine, they should all work properly on that Windows host. It would also eliminate the manual entry of all those long string definitions and reduce the chance of typos.

Once this functionality is is place, it would be useful to be able to create a template based on that host. ( see ZBXNEXT-595 ).

For future thought: Once the concept of an agent collecting a list of available monitor targets and passing that list back to the Zabbix server for selection is in place, something similar could be done for other monitoring targets such as "netstat -l" (listening ports), available SNMP monitors, etc. These would also be applicable to Linux hosts.



 Comments   
Comment by richlv [ 2011 Jan 02 ]

"Once the concept of an agent collecting a list of available monitor targets and passing that list back to the Zabbix server for selection is in place"

actually, the concept has already been developed
see http://www.zabbix.com/documentation/2.0/manual/config/lldiscovery for more information

it should be already possible to write custom checks that return json of typeperf output (see the end of that documentation page)

so this feature request could be about windows agent supporting performance counters as discoverable objects (it's pretty much already supported for snmp)





[ZBXNEXT-638] AMQP support (alternative from zabbix_agentd) Created: 2011 Jan 27  Updated: 2019 Sep 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S)
Affects Version/s: 1.8.4, 1.9.1 (alpha)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: João Figueiredo Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any



 Description   

AMQP is proving itself as a reliable and efficient messaging system for near real time communication.
If subscribing to an AMQP broker was allowed,
Zabbix would gain an alternative metrics collection method.

Maybe something like http://pecl.php.net/package/amqp could be used.

As explained in
http://www.zabbix.com/forum/showthread.php?p=79272



 Comments   
Comment by richlv [ 2011 Jan 27 ]

php most likely not, as server is written in c.

more background info :

"Advanced Message Queuing Protocol"
Message broker: a server to which AMQ clients connect using the AMQ protocol.

see http://en.wikipedia.org/wiki/AMQP

although more aimed at general messaging, might be interesting.

one problem is fracturing of the community around it :
"On March 30, 2010, iMatix CEO Pieter Hintjens announced that iMatix (the original designer of AMQP) will be stepping out of the AMQP workgroup and will not be supporting AMQP/1.0 (if it ever emerges) in favor of significantly simpler and faster ØMQ."

thus it would probably be best to wait out all this

Comment by nelsonab [ 2011 Nov 18 ]

I'm going to take a crack at developing a patch for this.

I've been tasked with learning and getting up to speed with Red Hat's MRG product which uses QPID which is the Apache version of AMQP. The biggest challenge so far is that there are no C libraries for AMQP. Rabbit-MQ has one but from what I can tell it's not considered production stable and I wonder how actively developed it is. The best libraries are written in C+, and Java. Fortunately there is a way to interface C with C+, and that is the route I think I will take.

Looking long term adding AMQP support is a "no brainer" in my view. Fedora 16 has recently introduced Matahari, which is a systems management tool which uses AMQP, I would not be surprised if Matahari makes it way into RHEL 7. If that happens I speculate that RHN Satellite support would not be far behind. If Zabbix was able to tap this as a means for monitoring that would put it ahead of the competition. Also with AMQP it may be possible to introduce a framework to allow the Web Frontend to talk to the agent directly and query all of the available items.

In addition to the above, many "Cloud" offerings are built on Messaging systems such as AMQP. If Zabbix had AMQP support this would further give it a leg up on competitors by truly being a "Cloud Aware" monitoring system.

Comment by João Figueiredo [ 2011 Nov 18 ]

That would be great Nelson,
I do think there's future and interest in such a functionality.

Comment by Raymond Kuiper [ 2014 May 17 ]

Please have a look here ZBXNEXT-2308
I think MQTT might be a better way to go.

Comment by Vitaly Zhuravlev [ 2018 Apr 26 ]

This idea has big potential now (Zabbix 4.0+).

With Zabbix 4.0 and its HTTP agent ready, AMQP consumer (as item type) could be next built-in collector.

  1. Provide basic configuration parameters to connect to queue, exchange in Item configuration
  2. Connect from Zabbix server/proxy to rabbitmq/ activemq or other popular message brokers
  3. Collect messages with metrics described in JSON/ XML
  4. Use Dependent items in Zabbix if there are bunch of metrics in single message to split them
  5. Use JSON path / XPath preprocessing in Zabbix to get metrics values from the original message.
  6. ....
  7. Profit




[ZBXNEXT-541] Option to hide a lot of host groups on dashboard Created: 2010 Oct 22  Updated: 2019 Jun 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Niumar Andre Klein Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 1
Labels: dashboard, flexibility
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OpenSuse 11.1 - Zabbix Version 1.8.3
500 hosts
258.25 new values per second


Issue Links:
Duplicate
is duplicated by ZBX-7691 Dashboard filtering with exclude rule... Closed

 Description   

I need to create a lot of host groups to allow user access for specific hosts. These host groups are showed on the dashboard, resulting in a lot of repeated information.

I think that there could be an option on the host group configuration screen that allow the admin user define if the host group should appear or not on dashboard.

I know there are filter options on dashboard, but they need to be configured for a many users.

Regards.



 Comments   
Comment by richlv [ 2013 Jan 10 ]

ZBXNEXT-1399 will provide group exclusion feature, but only per user

Comment by richlv [ 2015 Feb 04 ]

ZBX-7691 might actually be about the same need





[ZBXNEXT-878] encoding conversion support for other item types Created: 2010 Sep 27  Updated: 2012 Oct 21

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: thierry regis Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: utf8, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 1.8.3 , posgres 8.4


Attachments: JPEG File UTF8 GUI WITH LATIN DB.jpg    

 Description   

Hi,

We are experiencing a significant problem on the zabbix server side.

We are working with a postgres 8.4 database.
the database is enoded in UTF8.

On the server logs , we get some : 31287:20100927:144440.030 [Z3005] Query failed: [0] PGRES_FATAL_ERROR:ERROR: invalid byte sequence for encoding "UTF8": 0x82

this error refer to metrics send in non UTF8 format.

this metrics are send from windows agent 1.4 , but also from windows agent 1.8.3 ( from agentd or zabbix_sender)

at this time we d'ont know how to solve this problem.

the cmd.exe are in chcp 850 , we have tried to encode the cmd in chcp 65001 before sending data , it works but will be heavy to deploy.

Does the agent et the zabbix_sender are not meant to encode data in UTF8.

have you any advices on this point?

il will push up the results of our tests in this issues , but any welp would be really usefull.

thanks in advance



 Comments   
Comment by richlv [ 2010 Sep 27 ]

what items cause these errors ?
if it's eventlog or log items, did you try setting item encoding as per zabbix manual ?

Comment by thierry regis [ 2010 Sep 27 ]

hi,

evrything kind of items can cause this problems.

  • Zabbix senders (result from sql queries)
  • or stdout of the userparameters.

What about items encoding ? haven't see this .

Comment by Oleksii Zagorskyi [ 2010 Sep 27 ]

Is no Zabbix problem. Is windows related problem, and it can be solved by introducing new future named for example "Support custom encoding(Code Page identifier) for UserParameter" same as for log[] key. IMHO.

Read very good topic in Russian if you can:
http://www.zabbix.com/forum/showthread.php?t=14879
additionally:
http://www.zabbix.com/forum/showthread.php?t=18552

Comment by Aleksandrs Saveljevs [ 2010 Oct 06 ]

Related issue: ZBX-3081.

Comment by thierry regis [ 2010 Oct 06 ]

I ,

regarding to this issue, we stil have this huge problem.

In order to pass througt the metrics from windows which don't comme up in zabbix .

We have migrate the database in LATIN. All metrics are recolted successfully now , but we are in a real complex situation.

Zabbix server is running in UTF8 , zabbix GUI is running in UTF8, and the database is in LATIN.

It is therefore impossible to simply copy a template wiwh contains accented character (éàô...) etc ... as the GUI responds that character are unrecognized.

We definitively need a support on this issue as it might be really difficult to reverse this situation.

as anyone a clue on this ?

do we have to try to play on the GUI encoding ? or try other DB encoding.

May be we have to go back to full UTF8 ( DB as well) and try to filter data containing accented character in front of the zabbix server.

We thought as well about get the cmd.exe convert in chcp 65001 but it won't be that easy to implement and won't be without any risk.

We néed to solve this situation either for zabbix agent, than to zabbix_sender , so the user'parameters solution does not cover this fiels.

Thanks in advance for any Help.

Comment by thierry regis [ 2010 Oct 06 ]

When copying template containing accented caracters we get errors like that.

Comment by thierry regis [ 2010 Oct 06 ]

ust another question.
is there a simple way to configure all the zabbix server in iso-8859-1 to work with a LATIN database.
I found it in the fr_fr.inc.php, change it to : 'S_HTML_CHARSET'=> 'iso-8859-1',
i modify it in the php.ini and the HTTPD.conf to set it as well as default_charset = ISO-8859-1
assuming that we are working with a postgres 8.3.4 version it seems that it is not suffiscient.
is there somewhere else that i need to parameter this.
We would like to go back to a full ISO-8859-1 mode, before resolving the UTF8 problem.
thanks in advance.





[ZBXNEXT-432] globally switchable concept "acknowledged trigger" Created: 2010 Jun 29  Updated: 2012 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: acknowledges
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

there's currently no global notion on what an acknowledged trigger means - in some locations it's all problem events, in some it's last problem event etc.

there should be a global switch to control what an acknowledged trigger is, and it should be obeyed by all locations (dashboard, macros in frontend & server etc)

maybe depends on bringing acknowledge state out on the trigger level ?






log time format improvements (ZBXNEXT-490)

[ZBXNEXT-487] additional log time format placeholder - textual month Created: 2010 Aug 25  Updated: 2017 Nov 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: Change Request (Sub-task) Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: logtimeformat
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2711 LOG ITEMS - Improvement on timestamp Closed
Sub-task
depends on ZBX-12986 Preprocessing log doesn't process Loc... Closed

 Description   

additional log time format placeholder - textual month - would be needed

multiple daemons (including apache) log using 3-letter textual month reference (Jan-Feb-Mar etc).

currently it does not seem that full or localised month name support would be needed



 Comments   
Comment by richlv [ 2012 Oct 05 ]

ZBXNEXT-1271 actually asks for localised month support, so apparently it is needed

Comment by richlv [ 2014 May 01 ]

ZBXNEXT-2288 suggests to use strptime (and has a patch)





log time format improvements (ZBXNEXT-490)

[ZBXNEXT-489] additional log time format placeholder - unix timestamp Created: 2010 Aug 25  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request (Sub-task) Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: logtimeformat
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

additional log time format placeholder - unix timestamp - would be needed. squid uses one to log data.

that would be a single character (maybe "U" ), which would then grab all digits starting from the first position.

while at that, maybe worth also adding millisecond placeholder (squid format is UNIX_TIMESTAMP.MILLISECONDS), as 2.0 will have fractional second support



 Comments   
Comment by Pedro G [ 2013 Aug 29 ]

This new feature would be really useful. Are there any plan for it ?





log time format improvements (ZBXNEXT-490)

[ZBXNEXT-488] multiple log time format support Created: 2010 Aug 25  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request (Sub-task) Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: logtimeformat
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

it would be nice if it was possible to specify and save multiple log time formats (name and format), similar how it can be done with value mappings.
this would allow to define common formats, like apache, squid, zabbix etc, then user could choose the one they need from a friendly and cute dropdown.






[ZBXNEXT-442] 2 and more links between two hosts on maps Created: 2010 Jul 05  Updated: 2022 Mar 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Konstantin Agafontsev Assignee: Unassigned
Resolution: Unresolved Votes: 38
Labels: connectors, maps, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File maps.inc.patch     PNG File two links between two hosts.png    
Issue Links:
Duplicate
is duplicated by ZBX-16357 after i add two trigger done but sti... Closed

 Description   

Hello.
At creation of 2 and more links between two hosts, links are superimposed against each other. It would be desirable that there was a possibility of mapping of 2 and more links between two hosts on an arc or a different way (whenever possible: a quick view items which is anchored to a link).



 Comments   
Comment by richlv [ 2011 Jan 26 ]

possibly also an offset or similar

keywords : map link connector offset

Comment by richlv [ 2011 Jan 26 ]

similar request about labels : ZBXNEXT-514

Comment by Andrey Zhozhin [ 2012 Apr 28 ]

Here is my patch for multiple links between two hosts, distance is hardcoded in function drawMapConnectors(&$im, &$map, &$map_info)

Comment by Andrey Zhozhin [ 2012 Apr 28 ]

Example of map with patch

Comment by Fahad Saleem [ 2012 Jun 20 ]

Will this patch work for Zabbix version 2 as well?

Comment by Germán Rivas [ 2018 Aug 09 ]

This request is very necessary. Currently on my map I have a Cisco router that connects to two HP switches and only lets me show the information of only one link, but if I want to add a second link to be shown on the map, it will not let me do it.

Comment by Anh Quoc Bui [ 2019 Jul 02 ]

7 years and do you have any update?

Comment by Aldin Osmanagić [ 2019 Nov 26 ]

It is possible to draw multiple links between two hosts on the map with a workaround. You need to upload a transparent image that will be used to route links via a different path. Recently I have migrated maps from Weathermap to Zabbix and wrote a tutorial on how to do that:

https://bestmonitoringtools.com/create-zabbix-maps-with-examples/

You can use that workaround until this feature is implemented.

Regards

Comment by Rodrigo P [ 2022 Mar 18 ]

Zabbix Team within next releases could focus on improvements for map features.





[ZBXNEXT-501] system.cpu.util[] on Windows should support types other than "system" Created: 2010 Aug 30  Updated: 2022 Feb 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: item, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently, system.cpu.util[] on Windows supports only type "system", like so: "system.cpu.util[,system,avg15]".

First of all, this is incorrect, because system time is time that an operating system spends for its own purposes.

Anyway, it would be nice to support other types like "user", "idle", "iowait", if possible.



 Comments   
Comment by Kim Jongkwon [ 2022 Feb 17 ]

The current system.cpu.util[] in Windows - from Performance counter: "Processor(_Total)% Processor Time"

In Windows, Performance counters are not provided like Linux platforms. Windows has a different concept from CPU resources provided by Linux OS. This feature request needs discussion about which is the "what is correct values" for Windows. but I think there is probably no correct answer for this right now.





[ZBXNEXT-418] customisable "overview" widget Created: 2010 Jun 19  Updated: 2024 Jan 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: overview, screens, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
depends on ZBXNEXT-4036 Introduce Table(Overview) view widget Open

 Description   

it would be nice to have a customisable screen/dashboard widget in the style of overview. customisability :

adding individual items to a table;
deciding what to show upon mouseover for each item (could be several latest values, could be graph);
ability to show multiple items in single table cell (for example, show loads for all cpus individually, but use only single table cell for that to conserve the space).

inspiration : http://pawlowicz.name/MyServers



 Comments   
Comment by Bet Row [ 2024 Jan 18 ]

Undfortunately the widget is very basic only. It needs to be advanced.:

  • We need filtering as-you-type.
  • Also there should be an option to change filled color based on text and an option not only to colorize one filed but the complete row.
  • Also please remove the unnecessary limits from this widget. There is no reason to limit its size and number of hosts to 100.




[ZBXNEXT-414] event timeline view Created: 2010 Jun 17  Updated: 2016 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 16
Labels: dashboard, events, usability, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-1905 event count in the graph Closed
is duplicated by ZBXNEXT-1498 Add triggers to graphs Closed

 Description   

event timeline would be a great feature.
for a great inspiration : http://users.suse.com/~coolo/opensuse_13.1/

zabbix event timeline could show event duration as lines and their endpoints as events (and maybe midpoints for unknown flapping ?). clicking on endpoints would provide a popup with major event details and access to other screens (full event details, graphs/data for related items etc).
first popup would also provide acknowledge details & way to acknowledge event from the same screen.

acknowledged events would be visually different from non-acknowledged events (check mark ?).

clicking on the line would provide a popup with a list of all involved events.

it should be possible to select scale for the timeline.
timeline would load event data on demand as user moves it. loading probably would be in blocks anticipating timeline movement. periods for which data is not loaded yet should be clearly indicated.

timeline does not invalidate event list view - it should be possible to use on the same screen timeline and time period slider, as well as see current event list. it should be possible to hide any of these three elements individually.

might also be coupled with graphs, showing graph below the timeline.

goes together with improved event filter ZBXNEXT-410



 Comments   
Comment by richlv [ 2010 Jun 17 ]

seems to be using http://www.simile-widgets.org/timeline/ - bsd licensed

...and it has dark & white themes already to match zabbix ones...

(to see events, drag that timeline back to 2013)

Comment by João Figueiredo [ 2010 Nov 17 ]

This would be quite helpful to identify problem trends.
Is this achievable in PHP?

Comment by Cristian [ 2013 Jun 02 ]

Some related feature request: https://support.zabbix.com/browse/ZBXNEXT-117





[ZBXNEXT-415] need ability to alert on positive events Created: 2010 Jun 18  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: alerts, events
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-1357 Why event is something bad? Closed

 Description   

While it is true that in the large environments we usually wish to monitor for problems, in small environments we might wish to be inventive and also monitor for positive, interesting events.

Consider the following two scenarios:

(1) Suppose we have a self-made bank account. When financial resources come in, a log entry is written to a file. So whenever that happens, it is good news and we wish to be alerted.

(2) Suppose we run a small advertisement business and we have a huge printer. It takes a lot of time to print a poster, maybe on the order of hours. Using SNMP, we wish to monitor the printer for activity and be alerted when it has finished printing, so that we can immediately start a new printing task and we do not have to check the printer ourselves every now and then.

It is possible to receive alerts on such events using everything we have in Zabbix right now. Namely, we would create triggers and define alerts. The problem is that the only way to receive repeated alerts based on triggers is to have triggers in the PROBLEM state, but in neither of the two scenarios above the events we wish to monitor for are problems. We could use the existing mechanisms, but the "good" PROBLEM triggers would interfere wish "real problem" PROBLEM triggers.

Scenario (1) can be solved, for instance, by either (a) introducing an ability to receive alerts whenever a new value comes in or (b) allow triggers to generate multiple OK events.

Unsure about what to do about scenario (2), but it might or might not be related to ZBXNEXT-45 or ZBXNEXT-379.



 Comments   
Comment by richlv [ 2010 Jun 18 ]

well, both could actually be solved by creating a couple of triggers
it would require overcoming mental block of calling those situations problems, though...
multiple ok events could be a possibility, but the added complexity should probably be weighted against the benefit of having them.

Comment by richlv [ 2010 Sep 01 ]

to clarify, these should be doable already :

1) have log monitored and enable multiple TRUE events (trigger could just check for .* or so).
2) just monitor the printer state & have a trigger on diff. if state changes, alert. or write a trigger "state idle = problem" and write a custom notification message that does not include word "problem"

Comment by James Wells [ 2010 Sep 01 ]

Greetings,

#1 above is actually pretty simple to do using a last(0)>prev(0) construct. This would generate an threshold violation when resources were increased, clear when resources were withdrawn or remained the same as the previous value. The only real issue with this is that it will show up as a problem. As Rich states it is simply overcoming a normal mental block about what a problem is.

Comment by Aleksandrs Saveljevs [ 2010 Sep 02 ]

Unfortunately, a trigger like prev(0)>last(0) does not work. Consider that the amount of dollars in our bank account sequentially takes on the following values:

$0
$200 (+$200)
$100 (-$100)
$300 (+$200)
$500 (+$200)

The trigger will fire when we get $200, spend $100, and get $200 again. However, since triggers cannot generate multiple OK events, we will not be alerted when the balance in our bank account increases to $500.

So one of the solutions is to write a trigger like last(0)>-INFINITY and set it to generate multiple problem events. The trigger will then always be in the problem state. As conscientious administrators, we want our network to always be in a perfect state, without any problems, so we never want to have problem triggers appearing in our GUI.

To clarify, the issue is not that alerts in such cases are technically impossible (they are possible), but rather that we do not usually call +$50 in our bank account a problem. Yes, we could live with the fact that both "good" problem triggers and "bad" problem triggers coexist in our GUI, but it would be nice if the design of Zabbix would not require us to do so.





minor, but incompatible changes for 2.0 (ZBXNEXT-419)

[ZBXNEXT-417] rename configuration parameters Created: 2010 Jun 19  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Change Request (Sub-task) Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Some configuration parameters are badly named. This is an umbrella issue for listing planned incompatible changes to configuration parameters.



 Comments   
Comment by Aleksandrs Saveljevs [ 2010 Jun 19 ]

Should rename CacheSize to ConfigCacheSize or ConfigurationCacheSize. Same should be done with CacheUpdateFrequency.

Comment by Aleksandrs Saveljevs [ 2010 Sep 27 ]

There is AlertScriptsPath, but ExternalScripts.

Comment by Aleksandrs Saveljevs [ 2010 Oct 08 ]

Maybe rename StartPollersUnreachable to StartUnreachablePollers?





[ZBXNEXT-419] minor, but incompatible changes for 2.0 Created: 2010 Jun 19  Updated: 2012 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Sub-Tasks:
Key
Summary
Type
Status
Assignee
ZBXNEXT-417 rename configuration parameters Change Request (Sub-task) Open  
ZBXNEXT-420 rename zabbix_get or zabbix_sender Change Request (Sub-task) Closed  
ZBXNEXT-467 update and rename net.tcp.dns and net... Change Request (Sub-task) Closed  
ZBXNEXT-485 simple checks should use the same syn... Change Request (Sub-task) Closed  
ZBXNEXT-868 Revise directory parameters in config... Change Request (Sub-task) Closed  

 Description   

This is an umbrella issue for minor, yet incompatible changes that we cannot make in 1.8. These changes are therefore scheduled for 2.0.






[ZBXNEXT-443] History view with lots of events and several items needs to be improved Created: 2010 Jun 28  Updated: 2016 Sep 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: eventlog, log, logmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

1.8.3


Issue Links:
Duplicate
is duplicated by ZBX-6384 "all" does not show all values for a ... Open

 Description   

this request as a continuation of the ZBX-2201

After I worked intensively with the monitoring of Windows events log, I decided to write a few serious request. This is the first of them

In most cases it is meant that the selected multiple items for display, but not only.
Also it is meant to display the history of windows events logs.

It would be useful at the bottom of the table to add statistics on how many lines from each items was displayed.
Also, if limitations defined in the "Search / Filter elements limit" is reached, then need to display a warning (at the bottom of the table) about the limits for each items, because without it is difficult to understand displayed all events or not from range of time and why displayed not all.

Also another problem: Set a limit of 1000.
Add in the history two items, which have more than 1000 events each in the selected time period.
At what first items has 1000 events in the early period, and the second - later towards the end.
You'll see that actually displays the event on only first item, because it triggered a limit of 1000 in the SQL-request and were returned only the first 1000 events (with a smaller 'id' in the table 'history_log'). This is bad - because quite understand why the events are not visible from the second and other items.

I propose to consider the proposal - to make individual requests for each item selected in the list. And set limit 1000 for each items individualy and not for all together.
It should be added the first column with a simple line number - this will facilitate the viewing of a large list and positioning.

Also very useful would be to add the ability to sort by user not only on the field "id", as well as the "clock" and "timestamp".
This needed because that under the influence of various factors (I will not dwell on them here) the events may come to the server, not in the same order as they created on Host, when viewing history will not show up in the real sequence.

And sometimes really, really need to see how events actually occur on the Host in real order with several journals simultaneously. Possibility of manualy user sorting by "clock" and "timestamp" should help in this.
Also, maybe sorting by default on the field "timestamp" more correct than on the field "id"? Please think about it.
Maybe position of column "Item" is best with ?3? Why it is between two columns of time? I do not see the logic in this.

Sorry for my english



 Comments   
Comment by richlv [ 2010 Jul 07 ]

these issues will be very hard to work on, because too many things are piled in them. numbered summaries would be helpful... in this case :

1. in log monitoring, showing stats for each added log would be useful (how many lines from each);
2. if search/filter limit is reached, a warning should be displayed;
3. if multiple items are added, limit is applied for them all together. it is suggested here to apply limit to each individual item.
4. ability to sort by clock & timestamp is requested
5. default sorting by timestamp is suggested
6. it is suggested to position column "item" as 3rd

Comment by richlv [ 2010 Jul 07 ]

...and my take on some of them

3. regarding this suggestion, it could cause problems - this limit is for performance reasons, and making it per item could result in lots and lots of data to be displayed. additionally, it might increase sql query count (just a guess)
5. might be undesirable, as this is only populated for windows eventlog

Comment by richlv [ 2010 Jul 07 ]

...and this is really a feature request, not a bug

Comment by Oleksii Zagorskyi [ 2011 Feb 13 ]

answers to Richlv:
2. very similar with a ZBX-3296
3. about performance reasons - i know about performance, but if i increase limit to the 10 000 (instead of default 1000), then i do not feel any discomfort.
Or you can to divide total limit by count of viewed items. And limit every item request to this new decreased limit.

Comment by Oleksii Zagorskyi [ 2015 Sep 16 ]

See also ZBX-9548





[ZBXNEXT-435] Add Oracle TNSNAMES connect support Created: 2010 Jun 25  Updated: 2019 Oct 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Pavel Danchenko Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: oracle, patch, trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Oracle Enterprise Linux 5.4.0.0
Oracle Database Enterprise Edition 11.2.0.0
Zabbix 1.8.2 with oracle


Attachments: File 0001-ZBXNEXT-435-Add-Oracle-TNSNAMES-connect-support.patch     Text File ZBXNEXT-435.patch    
Issue Links:
Duplicate

 Description   

??????? ?????????? ?????????? ???????????? ?????? EZCONNECT, ?.?. ?????? ???????? ?????? ??????????? ????:
//host:port/dbname

??? ?????? ?????? ???? ????? ??????????? ???????????? ? ?????????? ??????? ????? TNSNAMES, ????? ? ?????? ??????????? ?????????? ??????? ?????? dbname, ? ??? ????????? ????????????? ? tnsnames.ora ?????. ??? ???????????, ??????? ?????, ?????????? ????????. ??????- ???? ???????.

/zabbix-1.8.2/src/libs/zbxdb/db.c
--------------------
if (host && *host)

{ connect = zbx_strdcatf(connect, "//%s", host); if (port) connect = zbx_strdcatf(connect, ":%d", port); }

if (dbname && *dbname)

{ if (connect) connect = zbx_strdcat(connect, "/"); connect = zbx_strdcatf(connect, "%s", dbname); }

--------------------

/zabbix-1.8.2/frontends/php/include/db.inc.php
--------------------
case 'ORACLE':
$connect = '';
if (!empty($DB['SERVER']))

{ $connect = '//'.$DB['SERVER']; if ($DB['PORT'] != '0') $connect .= ':'.$DB['PORT']; }

if (!empty($DB['DATABASE']))

{ if (!empty($connect)) $connect .= '/'; $connect .= $DB['DATABASE']; }

---------------------

????????, ??? ?? ??????, ?.?. ?? ???? ? ?????????? ?????? ????????? ????.

???? ???????????? ??? ? ???? ?????:
https://support.zabbix.com/browse/ZBX-1578

??????????? ??? ???:
http://www.zabbix.com/forum/showthread.php?t=17563



 Comments   
Comment by richlv [ 2010 Jun 30 ]

maybe a duplicate of ZBX-1578. somebody should also translate it to english...

Comment by Alexey Pustovalov [ 2010 Jul 03 ]

Pavel Danchenko says, what current implementation connect to Oracle DB support EZCONNECT only, ie:
//host:port/dbname

but need support for TNSNAMES too.

Comment by Andrey Bondarenko [ 2014 Feb 27 ]

patch on top 2.0.11

Comment by Andrey Bondarenko [ 2014 Feb 27 ]

If repository is in Oracle with Data Guard, the patch allows to automatically reconnect to the database after switchover/failover. Also tnsnames may be stored in LDAP catalog. AFAIK EZCONNECT does not provide such functions.

Comment by Mikhail Grigorev [ 2019 Oct 16 ]

Hi, zabbix developers!

We use zabbix on oracle database 12c and use this patch, I prepared a finished patch file for the zabbix master branch, please review and accept it in the main branch.

The patch is correct and works without problems. Using a connection through tnsnames is a more flexible and proper way to ensure high availability of zabbix.

Thank's.

ZBXNEXT-435.patch





[ZBXNEXT-431] "Allowed Hosts" for trapper type items should verify input and allow subnets Created: 2010 Jun 28  Updated: 2022 Jan 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Dennis Jacobfeuerborn Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: trapper, validation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-7410 Introduce inline form validation Review QA fix

 Description   

I'm looking into using zabbix_sender right now and ran into the problem that the "allowed hosts" field doesn't seem to verify the input. One can for example enter "fdksfsl" and zabbix will happily accept that value. Zabbix should return an error when it cannot parse the input.

Also one should be able to enter a subnet like e.g. 192.168.2.0/24 so that you can re-use the item on multiple systems without having to modify the allowed hosts for each individual system.



 Comments   
Comment by richlv [ 2010 Jun 29 ]

"fdksfsl" might be a hostname, actually
so that's a valid input.

as for subnets, that's a feature request -> moved.

Comment by Dennis Jacobfeuerborn [ 2010 Jul 02 ]

Indeed that could be a hostname

However "192.168.2.0/24x" is also accepted and that is most certainly not a valid input.
"192.168.2.0/24" is accepted and while it is technically correct it should also be rejected as long as subnets are not supported.

Given that this is security related the validation should be pedantic and really only allow input that zabbix does understand.





[ZBXNEXT-403] exposing curl options for web monitoring Created: 2010 Jun 07  Updated: 2021 Aug 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 31
Labels: webmonitoring
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Sub-Tasks:
Key
Summary
Type
Status
Assignee
ZBXNEXT-22 Setting cookies just like POST parame... Change Request (Sub-task) Open  
ZBXNEXT-76 add checkbox in web monitoring to dow... Change Request (Sub-task) Closed  
ZBXNEXT-173 Make the Curl "Follow redirects" opti... Change Request (Sub-task) Closed  
ZBXNEXT-282 Setting http headers Change Request (Sub-task) Closed  
ZBXNEXT-373 'curl -NTLM' option in "Web Monitor" ... Change Request (Sub-task) Closed  
ZBXNEXT-763 [PATCH] Web monitoring: support for H... Change Request (Sub-task) Open  
ZBXNEXT-1064 ability to set referrer in web monito... Change Request (Sub-task) Closed  
ZBXNEXT-1777 Allow Posting of empty String Change Request (Sub-task) Open  
ZBXNEXT-1778 Digest Authentication for Web Monitoring Change Request (Sub-task) Open  

 Description   

for more flexibility various curl options could be exposed to be configured in zabbix web monitoring either on scenario, or step level. this will be the umbrella issue for such features.

to reduce the need of individually adding every option as a field in the frontend, ability to specify options in general, as might appear in ZBXNEXT-1816, would be great



 Comments   
Comment by Pimmetje [ 2021 Aug 14 ]

Please add ZBXNEXT-6344 as subtask





[ZBXNEXT-958] LDAP Anonymous binds not supported Created: 2010 Jun 13  Updated: 2017 Feb 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: nelsonab Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: authentication, ldap
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We recently migrated our server to another machine and distro. The previous combo was OpenSuSE 11.1 w Zabbix 1.8.2, the new system is CentOS 5.5 w Zabbix 1.8.2. In the process LDAP binds broke. I am receiving error messages saying:
"LDAP: can not bind anonymously"
Yet previously everything was working without issue, nothing changes in the underlying configuration as the MySQL DB was imported form the old system.

I will open other bugs with regards to the other parts that are now broken.

Needless to say I cannot log in to change the LDAP configuration because I cannot bind to ldap to check credentials... This is a Chicken and Egg problem. (Which came first, the Chicken or the Egg?)

It would be nice to have the ability for anonymous binds to LDAP.



 Comments   
Comment by richlv [ 2010 Jul 08 ]

a similar problem with dokuwiki reported at http://www.freelists.org/post/dokuwiki/LDAP-can-not-bind-anonymously,1

in that case solution was reported to be "entering 'ldap://ldaphost.domain.tld:389' as LDAP-Hostname"

Comment by Artem Suharev (Inactive) [ 2010 Jul 22 ]

Actually it tries to bind anonymously but it fails. Try to connect to ldap from that server by some other tool.

Comment by David Peacock [ 2010 Nov 12 ]

My IT department think it's absurd to need a particular user as a bind DN with a password to be able to use LDAP on Zabbix. I'm inclined to agree. Is this issue getting any attention?

Comment by Alexei Vladishev [ 2012 Oct 22 ]

Is this issue about making user name/password optional for LDAP access?





[ZBXNEXT-933] Notifications not being sent for errors on hosts that have more than one template Created: 2010 Jun 09  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Michael Fannan Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: actions, templates, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos 5 production



 Description   

Our Zabbix environment is setup so that all of our servers have multiple templates applied to them, one is generic and one is specific for the application of the server. In one instance, we have an alert rule created to send notifications to a particular group of users, these users do not need to receive alerts from the generic templates, only from the specific application template. We have setup the condition to alert <> generic_template. This results in no notifications going out on any server, because all of the servers have this template; however, the alert is being generated for the application template, and therefore, should send out a notification.

The workflow should be intellegent enough to note which template is generating the alert and to act accordingly; not apply a blanket condition to the host.



 Comments   
Comment by Brett Lentz [ 2010 Jun 09 ]

Michael is my co-worker. We're working on the same issue. Let me clarify the issue a bit...

We have an action that has this:

Hostgroup = foo
Template <> Template_bar

The expected behavior is that this action will be used for all alerts except from the triggers in Template_bar.

However, what is happening is that this alert used for all hosts that do not have Template_bar.

From a high level, we're an organization that has two different groups. We want group A to receive alerts from the triggers in most templates. We want group B to receive alerts from the triggers in a few select templates on a few select hosts, and not the rest.

So... either this is a bug in the way the logic of actions work or this is a problem where the documentation does not clearly describe what the action logic does.

Comment by richlv [ 2010 Jul 08 ]

so the action condition does not check where the trigger comes from, but what templates are linked to the host. maybe it should be split in two conditions, "trigger template" and "host template"





[ZBXNEXT-407] Fallback login option for LDAP Created: 2010 Jun 13  Updated: 2024 Feb 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: nelsonab Assignee: Unassigned
Resolution: Unresolved Votes: 48
Labels: authentication, fallback, ldap, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-3053 Multiple authentication backends Reopened
Sub-task
part of ZBXNEXT-4573 Single Sign-on using webserver Closed

 Description   

Presently there is no way to log into a Zabbix system configured to use LDAP should the LDAP connection fail. Other programs setup a "fallback" login which is used to log into the system with the same credentials as the administrator should LDAP fail for whatever reason.

Needless to say, LDAP is failing to work with my Zabbix instance and since I'm configured to use LDAP I cannot log in to change the LDAP settings. The only way around this is to directly manipulate the confg db table.



 Comments   
Comment by nelsonab [ 2010 Jun 13 ]

related to ZBXNEXT-958

Comment by richlv [ 2010 Jul 08 ]

wouldn't this be somewhat like setting login for zabbix administrators group to be internal ?

Comment by Marc Schoechlin [ 2011 Jun 20 ]

We use basic-auth managed by the webserver. We configure apache to do ldap auth and auth via "htpasswd" (Apache: Satisfy any).

Zabbix should be capable use more authentication-sources in parallel.
(i.e also or more LDAP servers)

Comment by Murat Koç [ 2013 May 01 ]

Caching credentials mechanism can be implemented in zabbix ldap authentication like pam-ccreds or winbind does.

owncloud has a nice ldap authentication mechanism (which also coded in php) with backup ldap server and caching credentials options.

http://doc.owncloud.org/server/5.0/admin_manual/configuration/auth_ldap.html

Comment by Yannick Moussette [ 2014 Jul 03 ]

Is this feature request still valid?

You can set up a user group with "frontend access" set to internal, and this will allow you to use a local, zabbix account to log in, bypassing the LDAP authentication for any users part of that group.

G.

Comment by richlv [ 2014 Jul 03 ]

this is slightly different - internal always uses zabbix db, this asks for "try ldap first, if that fails, fallback to internal"

Comment by Yannick Moussette [ 2014 Jul 03 ]

Ahh, I see... Thanks for the clarification!

Y.

Comment by Marc Schoechlin [ 2018 May 04 ]

Probably the following additional "Default authentication" named "LDAP+Fallback" might be easy but very useful:

  • alway use ldap auth it one of the ldap servers are available (provide a possibility to specify multiple servers)
  • after a successful auth with ldap always store the password hashed in the zabbix database with the time of the login
  • specify a stale_password_time in the php web configuration
  • if ldap login runs in a timeout, check the password against the backup password in the database and grant access if the password does not exceed the stale_password_time
Comment by Vitaly Zhuravlev [ 2018 Aug 01 ]

This should be resolved when ZBXNEXT-4573  is ready. A use case where LDAP is activated for  most of the user groups but some groups still use Internal auth will be supported.

Comment by Björn Michael [ 2023 May 11 ]

ZBXNEXT-4573 is ready. When can we expect this issue being implemented?

Comment by Alex Kalimulin [ 2024 Feb 29 ]

Is this request still a thing? Why not just set up a fallback internal user instead of falling back an LDAP one.





[ZBXNEXT-3974] API "trend.get" call doesn't support sorting Created: 2017 Jul 03  Updated: 2017 Jul 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 3.2.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Anton Alekseev Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Documentation says

The following parameters are supported by all get methods:

  • ...
  • sortfield
  • sortorder
  • ...

But using "sortfield" and/or "sortorder" in "trend.get" call has no effect:

Example 1. Sorting by clock doesn't work
Request:
{
  "auth": "...",
  "id": 1,
  "params": {
    "time_till": 1498710000,
    "time_from": 1498700000,
    "sortorder": "ASC",
    "sortfield": "clock",
    "itemids": [
      "26031",
      "26032"
    ],
    "trend": "0",
    "output": [
      "itemid",
      "clock"
    ]
  },
  "method": "trend.get",
  "jsonrpc": "2.0"
}

Response:
{
  "id": 1,
  "result": [
    {
      "clock": "1498701600",
      "itemid": "26031"
    },
    {
      "clock": "1498705200",
      "itemid": "26031"
    },
    {
      "clock": "1498708800",
      "itemid": "26031"
    },
    {
      "clock": "1498701600",
      "itemid": "26032"
    },
    {
      "clock": "1498705200",
      "itemid": "26032"
    },
    {
      "clock": "1498708800",
      "itemid": "26032"
    }
  ],
  "jsonrpc": "2.0"
}
Example 2. Descending sorting by itemid doesnt' work
Request:
{
  "auth": "...",
  "id": 1,
  "params": {
    "time_till": 1498710000,
    "time_from": 1498700000,
    "sortorder": "DESC",
    "sortfield": "itemid",
    "itemids": [
      "26031",
      "26032"
    ],
    "trend": "0",
    "output": [
      "itemid",
      "clock"
    ]
  },
  "method": "trend.get",
  "jsonrpc": "2.0"
}

Response:
{
  "id": 1,
  "result": [
    {
      "clock": "1498701600",
      "itemid": "26031"
    },
    {
      "clock": "1498705200",
      "itemid": "26031"
    },
    {
      "clock": "1498708800",
      "itemid": "26031"
    },
    {
      "clock": "1498701600",
      "itemid": "26032"
    },
    {
      "clock": "1498705200",
      "itemid": "26032"
    },
    {
      "clock": "1498708800",
      "itemid": "26032"
    }
  ],
  "jsonrpc": "2.0"
}

applyQuerySortOptions isn't used in include/classes/api/services/CTrend.php. Neither does ORDER BY SQL clause.






[ZBXNEXT-3804] Support wildcards in global search Created: 2017 Apr 19  Updated: 2017 Apr 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.8, 3.2.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ingus Vilnis Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: globalsearch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Add support of wildcards when searching for hosts in global search.

Use case. Customer has naming conventions for hosts names which includes the location and type of devices and some other info in between.
E.g. riga-01-router riga-02-router london-01-router etc.

Now it is impossible in the global search to list all routers in Riga.
Search: riga*router

riga-01-router
riga-02-router


 Comments   
Comment by tuor [ 2017 Apr 19 ]

We use groups for locations and server type. So for example I can filter by group "london" and name "router". But this is not the most beautiful Solution.

Comment by Marc [ 2017 Apr 19 ]

How about supporting operators instead?
Search: router & ( riga | london )

riga-01-router
riga-02-router
london-01-router




[ZBXNEXT-3779] Add optional HTTP proxy support for local builds by docker-compose Created: 2017 Apr 06  Updated: 2021 Aug 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: docker, docker-compose, httpproxy, svn
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File ZbxNext3779.diff    
Issue Links:
Duplicate

 Description   

The "...local.yaml" docker-compose files offer a way to build working Zabbix environments from scratch in a very easy manner - by firing a single command.

In many companies there is no direct internet access available. Instead one has to use a HTTP proxy.

Unfortunately it's not just about adding some "*_proxy" environment variables as the SVN protocol cannot be tunneled out-of-the-box through an HTTP proxy.
Obvious options to me are either switching from SVN to HTTP(S) or making use of an HTTP CONNECT tunnel application inside the containers.



 Comments   
Comment by Marc [ 2017 Apr 09 ]

Attached file ZbxNext3779.diff adds optional HTTP proxy support to local builds.
In order to do local builds behind a HTTP proxy, it just needs to properly set the shell variables http_proxy and https_proxy in advance of running docker-compose. The latter will be also used to tunnel Subversion connections.

Some explanations...

Consideration of http_proxy, resp. https_proxy environment variables:

--- a/docker-compose_v2_alpine_pgsql_local.yaml
+++ b/docker-compose_v2_alpine_pgsql_local.yaml
@@ -1,7 +1,11 @@
 version: '2'
 services:
  zabbix-server:
-  build: ./server-pgsql/alpine
+  build:
+   context: ./server-pgsql/alpine
+   args:
+    - http_proxy=${http_proxy}
+    - https_proxy=${https_proxy}
   image: zabbix-server-pgsql:alpine-local
   ports:
    - "10051:10051"
--- a/server-pgsql/alpine/Dockerfile
+++ b/server-pgsql/alpine/Dockerfile
@@ -5,6 +5,8 @@ ARG APK_FLAGS_COMMON="-q"
 ARG APK_FLAGS_PERSISTANT="${APK_FLAGS_COMMON} --clean-protected --no-cache"
 ARG APK_FLAGS_DEV="${APK_FLAGS_COMMON} --no-cache"
 ARG DB_TYPE=postgresql
+ARG http_proxy
+ARG https_proxy
 ENV TERM=xterm
 ENV MIBDIRS=/usr/share/snmp/mibs:/var/lib/zabbix/mibs MIBS=+ALL

Tunneling of the Subversion protocol via Netcat through a HTTP proxy:

@@ -41,6 +43,7 @@ RUN addgroup zabbix && \
             libldap \
             libcurl \
             openipmi-libs \
+            netcat-openbsd \
             libssh2 && \
     rm -rf /var/cache/apk/*

@@ -49,7 +52,19 @@ ARG ZBX_VERSION=${MAJOR_VERSION}.4
 ARG ZBX_SOURCES=svn://svn.zabbix.com/tags/${ZBX_VERSION}/
 ENV ZBX_VERSION=${ZBX_VERSION} ZBX_SOURCES=${ZBX_SOURCES} DB_TYPE=${DB_TYPE}

-RUN apk add ${APK_FLAGS_DEV} --virtual build-dependencies \
+RUN [ $https_proxy ] && { \
+      PXY_HOST=$( echo $https_proxy | sed -rn 's%^([^:]+://)?([^/:]+)(:[0-9]+)?.*%\2%p' ) ; \
+      PXY_PORT=$( echo $https_proxy | sed -rn 's%^([^:]+://)?([^/:]+)(:([0-9]+))?.*%\4%p' ) ; \
+      SVN_PROXY=${PXY_HOST}:${PXY_PORT:-3128} ; \
+      SVN_HOST=$( echo $ZBX_SOURCES | sed -rn 's%^([^:]+://)?([^/:]+)(:[0-9]+)?.*%\2%p' ) ; \
+      SVN_PORT=$( echo $ZBX_SOURCES | sed -rn 's%^([^:]+://)?([^/:]+)(:[0-9]+)?.*%\3%p' ) ; \
+      SVN_PORT=${SVN_PORT:-3690} ; \
+      ZBX_SOURCES=$( echo $ZBX_SOURCES | sed -rn 's%^([^:]+://)?([^/:]+)(:[0-9]+)?(.*)%\1127.0.0.1\4%p' ) ; \
+      SVN_PIPE=$( mktemp -ut svn-proxy.XXXXXXXXXX ) ; \
+      mkfifo $SVN_PIPE ; \
+      nc -klw3 3690 < $SVN_PIPE | nc -X connect -x "$SVN_PROXY" "$SVN_HOST" "$SVN_PORT" > $SVN_PIPE & \
+    } ; \
+    apk add ${APK_FLAGS_DEV} --virtual build-dependencies \
             alpine-sdk \
             coreutils \
             automake \
@@ -100,7 +115,8 @@ RUN apk add ${APK_FLAGS_DEV} --virtual build-dependencies \
     rm -rf /tmp/zabbix-${ZBX_VERSION}/ && \
     apk del ${APK_FLAGS_COMMON} --purge \
             build-dependencies && \
-    rm -rf /var/cache/apk/*
+    rm -rf /var/cache/apk/* && \
+    [ -e $SVN_PIPE ] && rm -f $SVN_PIPE

 EXPOSE 10051/TCP 162/UDP

Comment by Marc [ 2017 Apr 10 ]

For the record, the installation of netcat-openbsd is only required for Alpine based images.





[ZBXNEXT-3716] Empty response received from Zabbix server "localhost" when execute the default of ZBX scripts Created: 2017 Feb 23  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: carlgan Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: api, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ZXB 3.2.2 +Centos 7.1


Attachments: Text File debug info for ping cmd.txt    

 Description   

Empty response received from Zabbix server "localhost" when execute the default of ZBX scripts(e.g. ping, detect operating system, traceroure) from dashboard.
Details info:
Empty response received from Zabbix server "localhost". [scripts_exec.php:71 ? CFrontendApiWrapper->execute() ? CApiWrapper->__call() ? CFrontendApiWrapper->callMethod() ? CApiWrapper->callMethod() ? CFrontendApiWrapper->callClientMethod() ? CLocalApiClient->callMethod() ? call_user_func_array() ? CScript->execute() ? CApiService::exception() in include/classes/api/services/CScript.php:311]



 Comments   
Comment by richlv [ 2017 Feb 23 ]

could a misconfiguration of the server ip/port in the frontend.
worth discussing first in channels, listed at http://zabbix.org/wiki/Getting_help





[ZBXNEXT-3646] Allow custom groups for host prototypes in vmware discovery Created: 2017 Jan 04  Updated: 2023 Nov 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Cristian Mammoli Assignee: Unassigned
Resolution: Unresolved Votes: 34
Labels: vmware
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 3.2.3, CentOS 7, PostgreSQL


Issue Links:
Duplicate

 Description   

Actually using vmware.hv.discovery only allows to put the discovered hosts in static groups or in group prototypes defined at the template level.

We currently monitor lots of customers, each customer has his own group. What I would like to do is to place each customer hypervisors in the existing customer group.

Currently this is not possible unless you stop using the templates and configure each vCenter with his own static group.

Having lots (hundreds) of vCenters this is not the best way to go...

If only the group was "unlocked" once the template is applied I could set the correct group



 Comments   
Comment by Nicola Mauri [ 2017 Jan 21 ]

I had the same issue. As a workaround you can move the necessary Discovery rules to a new template. This template can be lately unlinked from vcenter host (without cleaning) making possibile to include Host prototypes in static hostgroups. This way you can limit the number of objects that are not linked to templates.

Comment by Cristian Mammoli [ 2017 Jan 21 ]

Thanks for the hint, but that's not a solution imho...

Comment by Stephen Jefferson [ 2018 Sep 20 ]

Same issue as original description. We are an MSP with hundreds of clients, each with their own host group. Need some way of assigning the discovered objects to the parent esx host's groups, enabling discovery objects to work with the Auto registration rules as all the esx hosts will be discovered by client aligned proxies, or worst case unlock the group for manual assignment, although that's not preferable.

Comment by Roberto Cremasco [ 2019 Jul 16 ]

Looks like you can't do anything with prototypes: no groups, no tags, no macros... this feature would be really useful.

Comment by James Kirsop [ 2020 Aug 26 ]

Just dropping in here to note that someone else has posted on the forums wondering if we're able to do this: https://www.zabbix.com/forum/zabbix-help/377082-passing-user-macros-to-host-prototypes-for-host-group-names

I'm also keen for this to be added for Hyper-V Failover Clusters, which have a similar requirement to be able to pass 'group' information each time a template is applied via a discovery.

Comment by Dirk Bongard [ 2021 Jun 29 ]

I have the same problem.
If I am able to use user macros in host prototypes. This should solve this issue...

Comment by Dimitri Bellini [ 2022 Apr 14 ]

@ZabbixTeam This problem is still present on Zabbix 6.0, do you think will be resolved on 6.2 with ZBXNEXT-7523.
Thanks so much

Comment by Cristian Mammoli [ 2022 May 24 ]

I hacked a Javascript preprocessing rule to add a user macro as a LLD macro:

Define as {$VMWARE.GROUP} as the group to add the Hypervisors to and configure the following preproc to the discovery item

json = JSON.parse(value);
if (("{$VMWARE.GROUP}".length) && ! ("{$VMWARE.GROUP}".match(/^\{\$/))) {
  json.forEach(function (data, i) {
    json[i]["{#HV.GROUP}"] = "{$VMWARE.GROUP}";
  });
};
return(JSON.stringify(json));

Unfortunately the host group must not exist beforehand

Comment by Felix [ 2023 Nov 14 ]

Is this feature still not implemented after five years? 

Zabbix is absolutely awesome and we are going to implement it as a MSP, same use case as Stephan Jefferson, however this is a bit of a disappointment for structuring our host groups properly. I can't seem to figure out how to dynamically set the VMware Hypervisor and VM hostgroups based on a pre-defined host group macro before running the low-level discovery. 

For now the only 'easy' solution seems to be to manually create a VMware template per customer? since it is possible to set the hostgroup for LLD host prototypes manually per template to already existing groups. However this to be a very inefficient way of managing things, because you'd then have hundreds of templates only for VMware. 

If anybody else here has a good idea of how to workaround this limitation I would appreciate the feedback!





[ZBXNEXT-3622] user.get and usergroup.get don't return LDAP users/groups Created: 2016 Dec 20  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: David Angelovich Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL 7



 Description   

user.get won't return users that use the "System Default" authentication when its set to use LDAP. Its returning only the internal users.
Specifying a known LDAP userid returns an empty result.

usergroup.get won't return groups Frontend access is System default when its set to use LDAP.

Documentation isn't clear whether there's a flag to work around this or if its intentional.



 Comments   
Comment by richlv [ 2016 Dec 20 ]

could you please clarify what exactly is "known LDAP userid" ?
please note that zabbix only validates the password against ldap, users must exist in zabbix for any purpose (logging in, getting their names over the api etc)

Comment by David Angelovich [ 2016 Dec 20 ]

I mean a user that has been already configured as a zabbix user, whose auth is against LDAP.





[ZBXNEXT-3440] Extend item proc.cpu.util with modes for 'min' and 'max' per period Created: 2016 Sep 15  Updated: 2016 Sep 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 3.0.4, 3.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: cpu, items, modes, newitemkey
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

ZBXNEXT-494 introduced a new Zabbix agent item function proc.cpu.util[*] - Process CPU utilization percentage.
The current implementation offers data gathering modes avg1 (default), avg5 and avg15.

How about extending the item function by also supporting modes min1, min5 and min15 resp. max1, max5 and max15?



 Comments   
Comment by Ronald Hoppe [ 2016 Sep 15 ]

Average mode doesn't Show the real Peaks.





[ZBXNEXT-3507] Dynamic Templates Created: 2016 Oct 20  Updated: 2016 Oct 24

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F), Server (S), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Radek Lisowski Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File dynamic-templates.png     XML File zbx_export_templates_os_disk.xml    

 Description   

Background

Since I started to use zabbix I am missing a feature to dynamically set items in templates.

Use cases

#. We have a template for a service like Redis server - it is ok, but what if we will use more than one instance? We would need to clone this template for each additional redis instance.

#. We have multiple servers with different partition layout. On some servers we have only one root partition ( /) which we want to monitor but on some others we have for example root partition( /), database partition(/mnt/database), and on some other we have additional parititon for log (/var/log). In all different cases we would need separate templates to configure it all.

#. In my particular case we have also occured to have multiple TCP ports to be monitored if they are working properly or missing. Our customers may want to define a new one (additional) so for each additional set of ports I would need multiple templates to use. Right this could be done with standard LLD and we could discover ports either from netstat or from configuration (this would be impossible in this case).

Limitations

I want to limit to minimum zabbix agent modifications (additional scripts, userparameters modification etc).

Solution

I have managed to find a solution for that problem. It is by using Low Level Discovery and specific MACROs layout. This required from me to extend MACRO length in database and frontend limitations in some cases, but I guess that more people may want to use this as a built-in feature. How it works is described on attached graph.

Example

We have a Macro in a format (I have used all available special characters I guess)

ROOT_PARTITION:/^1G^1^1^3600+DATABASE:/mnt/database^20G^1^1^3600

We are having autodiscovery key named:

custom.itemdiscovery[{$OURMACRO}]

. Zabbix agent uses a bash script to build up the response and response is in given format:

{#PARAM_NAME}: "ROOT_PARTITION"
{#PARAM_1}: "/"
{#PARAM_2}: "1G"
{#PARAM_3}: "1"
{#PARAM_4}: "1"
{#PARAM_5}: "3600"

So the format generally looks like:

PARAMETER_NAME:PARAM_1^PARAM_2

We can add multiple parameters by concatenating them with plus sign like:

PARAMETER_NAME:PARAM_1^PARAM_2+OTHER_PARAM:PARAM_1^PARAM_2

Drawbacks

It is still LLD. Trigger dependencies are hard, and items are discovered with given frequency. If it would be built in zabbix it could be generated automatically by server (without need zabbix-agent to respond to this query).

Expectations

I would like you to think about this as a new feature. I am not sure how it could be build into zabbix, don't want to suggest anything, because my way of thinking about it may be wrong. Do you have any suggestions, propositions or comments for this feature? It gives a lot of flexibility for Zabbix.

Attachements

userparameter_itemdiscovery.conf
UserParameter=custom.itemdiscovery[*],/etc/zabbix/scripts/itemdiscovery.sh $1
itemdiscovery.sh

#!/bin/bash


## CHECK IF ARGS
if [ $# -ne 1 ]; then
  echo "Not enough parameters"
  exit 1
fi

IN=$1

in_arr=$(echo -ne $IN | tr "+" "\n")

first=0

echo -ne "{\n"
echo -ne "\t\"data\":["

for x in $in_arr; do
  IFS=":" x_arr=($x)
  
  name=${x_arr[0]}
  params=${x_arr[1]}

  if [ $first -ne 0 ]; then
    echo -ne ",\n"
    echo -e "\t{"
  else
    echo -e "{"
  fi
  first=1

  echo -ne "\t\t\"{#PARAM_NAME}\":"
  echo -n  "\"$name\""
  i=0
  for param in $(echo $params | tr "^" ":"); do
    i=$((i+1))
    echo ","
    echo -ne "\t\t\"{#PARAM_$i}\":"
    echo -n "\"$param\""
  done
  echo ""
  echo -ne "\t}"
done

echo -ne "]\n"
echo -ne "}\n"

Please ask if something is unclear.



 Comments   
Comment by richlv [ 2016 Oct 20 ]

feature requests are in general expected to ask for a specific thing. could you please clarify what would be the exact functional need here ?

Comment by Radek Lisowski [ 2016 Oct 24 ]

I will try in next few days to create an example how I would see that implemented.





[ZBXNEXT-3473] Troubleshooting problem events Created: 2016 Oct 03  Updated: 2018 Sep 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sandis Neilands (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: correlation, macrofunction, tags, trigger, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It is impossible to troubleshoot problem generation and closing issues without resorting to developer methods:

  • why was the problem created:
    • why didn't global correlation rule apply and close the problem;
    • why didn't recovery expression close the problem (it is not evaluated if problem expression fires - e.g. there is an overlap between problem and recovery expressions so new problem is created - see (8) in ZBXNEXT-3274);
    • ...
  • why wasn't the problem closed:
    • error in regular expression (e.g. regex compiles but doesn't match the intended text);
    • error in macro, user macro or LLD macro (wasn't expanded or not supported in this context, quoting problems, etc.);
    • why didn't trigger level correlation close the problem;
    • why didn't the global correlation kick in;
    • error in formula;
    • ...

When encountering these errors with a trapper item that I had created for testing I had to resort to debug level logs, GDB, looking into SQL dirrectly to find out the root causes of the issues above. This is not practical in production and is unfriendly to the users.

Hence it is proposed to trace decisions for each event as it passes through Zabbix and show the trace in frontend accordingly.



 Comments   
Comment by Oleg Ivanivskyi [ 2018 Sep 04 ]
  • why didn't global correlation rule apply and close the problem;

How about to add a testing form for global correlation rules (aka triggers )? It should decrease possible misconfigurations.





[ZBXNEXT-3515] Add embedded script support to Web scenario steps Created: 2016 Oct 28  Updated: 2016 Oct 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Proxy (P), Server (S)
Affects Version/s: 3.2.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: JavaScript
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Web scenarios do not provide Real User Monitoring (RUM), where a scenario runs in a fully-blown Internet browser engine.
Any code supposed to be interpreted or executed in the browser on client side, as it is the case with JavaScript, will have no effect.

A web application with an authentication procedure that requires to get a salted hash POSTed connot be monitored by Zabbix.

E.g.:

var response = challenge + "-" + password;
jxl.setValue("uiResponse", challenge + "-" + hex_md5(response));

In the past I've seen things like these only now and then. Meanwhile, I'm encountering more and more web services that cannot be monitored with Zabbix.

So, how about adding embedded script support on step level?

PS: It seems reasonable to use JavaScript but I think other interpreters like for instance LUA could help here too






[ZBXNEXT-3461] Add more robust ODBC monitoring options. Created: 2016 Sep 27  Updated: 2016 Sep 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.2.14
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sandis Neilands (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: odbc
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

See ZBX-8489 -> ZBX-11213.

There are several risks related to the direct use of the ODBC API. Mainly - there is too much allowed variety. The driver developers can target different ODBC levels, implement different subsets of the API, interpret the API requirements differently. In addition, there can be mistakes in both our code and driver code.

As a mitigation for these risks (e.g. workaround) we could introduce hidden (by default) configuration parameters:

  • use isql binary directly instead of ODBC API;
  • user configurable maximum field width (e.g. revert changes for ZBX-8489 and use user-configured size in SQLBindCol() instead of MAX_STRING_LEN).





[ZBXNEXT-3465] Add Trigger Description to Problems View Created: 2016 Sep 28  Updated: 2016 Sep 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marcus Griesing Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: frontend, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu 16.04 - Zabbix 3.2.0



 Description   

Hello everybody,

we have an urgent requirement to display the Trigger Description as column in the "Problems" view. The background for this is that our NOC staff must use the description necessarily as a template for creating incidents. Currently the Trigger Description appears only in the Triggers view with the options "show" and "add". The Zabbix Version 3.2 introduced the view called Problems. This view should serve as the primary view for managing problems. It is mandatory in this view to access the Trigger Description.



 Comments   
Comment by Aleksandrs Saveljevs [ 2016 Sep 28 ]

Since this is urgent, you might wish to contact Zabbix LLC regarding http://www.zabbix.com/development_services.php .





[ZBXNEXT-3256] persian calendar Created: 2016 Apr 23  Updated: 2016 Apr 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: elham jahani Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

hi

our Linux team install and use zabbix for OS, hardware and business monitoring
now i want to add persian calendar in zabbix graph and screens and ...
but i can not
can you help me ?



 Comments   
Comment by richlv [ 2016 Apr 23 ]

looks like a feature request - please move it to the ZBXNEXT project

Comment by elham jahani [ 2016 Apr 23 ]

can you give me a link (URL) ?

Comment by richlv [ 2016 Apr 23 ]

you should be able to see a button at the top that allows to move this issue to the "ZBXNEXT" project - it might also be available by clicking the "More" button.

note that for community or commercial support you should still consult http://zabbix.org/wiki/Getting_help

Comment by Aleksandrs Saveljevs [ 2016 Apr 25 ]

I have moved the issue to the ZBXNEXT project.





[ZBXNEXT-3280] Zabbix protocol should prevent unnecessary data retransmission and data loss at the same time Created: 2016 May 18  Updated: 2018 May 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 3.2.0alpha1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Glebs Ivanovskis (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: loss, network, performance, tcp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-14341 Passively collected items may get man... Closed

 Description   

This issue covers low-connection-number-high-data-throughput cases (namely sender -> server/proxy, active agent -> server/proxy, proxy -> server communications). Related issue for high-connection-number-low-data-throughput cases is ZBXNEXT-3214.

Initially both agent and proxy were designed to send same data multiple times until they would get a reply that data reached destination and was processed. Then ZBX-2285 changed their behaviour to the opposite. They assumed that if data was written to socket server will eventually receive and process this data. Then (I couldn't find exact point in time) proxy's behaviour was switched back to prevent data loss and now ZBX-10176 effectively requests the do the same for agent.

Neither of these approaches is ideal. When client fully relies on TCP implementation data may be lost if server hits timeout when reading data from TCP buffer or even earlier if something bad happens on TCP implementation level. When client always waits for reply from server there is a possibility of hitting timeout on client side if server is busy. This leads to data retransmission by client and reprocessing by server which makes it really complicated for Zabbix to recover from network downtimes.

Ideally client should send a short request message and wait for server to respond before sending data itself. Server response should contain an estimate of how much data it will be able to process. Client should send the desired amount of data and wait for server to confirm that data was successfully received and processed.

This involves changes to Zabbix protocols. Since daemons will be spending more time communicating (or waiting for replies) timeouts will need some adjustment. This will negatively affect performance, so it's worth implementing a sort of connection manager at the same time.



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2016 May 19 ]

Relatively easy solution for 3.0 and later (thanks to (85) of ZBXNEXT-1263) is to check sock->peer in process_trap() and act accordingly. If sock->peer is "unknown IP" then client had already disconnected by the time server managed to accept connection. In such case it makes no sense to:

  • process sender data because unknown IP will not pass security check;
  • process proxy data because proxy is not going to get server response and will send same data once more;
  • send back proxy and active agent configuration data, obviously;
  • respond to frontend if it's not listening;
  • ...

It makes sense to process active agent's history to prevent possible data loss because we can't be sure about agent version and whether it will resend data or no.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Aug 07 ]

Actually, active agent does not change it's behaviour in case of no response from server, after it times out it keeps creating new connections and sending data. In case of overloaded trappers this may lead to anything from complete loss of data stored in agent's buffer (if trappers die before accepting agents connections) to parallel and potentially out-of-order processing of data by multiple trappers (if trappers manage to accept connections sooner or later). The latter is a root cause of ZBX-12186.





[ZBXNEXT-2982] Automatically create IT Services for the newly added hosts. Created: 2015 Sep 24  Updated: 2018 Oct 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Oleg Ivanivskyi Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: itservices
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be great to have some feature like servers added in one particular group (let's say "Production") should get automatically added in IT services. So we will not miss out any server from adding in IT services that has already been added in Monitoring. What we only require to fill up some fields like "Parent Service", "Acceptable SLA" and "Trigger".



 Comments   
Comment by richlv [ 2018 Oct 17 ]

What's the envisioned scope, would this affect hosts added by all means (manually through the frontend, server from discovery/autoreg, XML import...)?
What should happen if the trigger is not there at first, but the template is linked later (that is, maybe it's better to hook this onto template linkage instead)?





[ZBXNEXT-2998] New agent item to identify busy process(es) Created: 2015 Oct 02  Updated: 2015 Oct 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.2.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: cpu, newitemkey, proc.num
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Keeping per process CPU utilization in memory of the statistics collector should actually allow to identify whether a process consumes significant CPU time.

This request may sound similar to ZBXNEXT-88, ZBXNEXT-164 and ZBXNEXT-494.
But this it is primarily not about getting the top <n> busiest processes nor the aggregated utilization of a defined process (group).

The aim is to identify the one or several processes that by itself resp. by them selves consume more than <n> percent CPU time over a period.

Maybe something similar to this:
proc.num[<name>,<user>,<state>,<cmdline>,<cpumin>]
cpumin - each process consumes more than <limit> percent CPU (core) time for one minute.

Of course it could also become an enabler of ZBXNEXT-88, ZBXNEXT-164:
proc.cpu.limit[<limit>,<format>]
format - pid (return list of process IDs), name (return list of process names), full (cputime pid user cmdline)






[ZBXNEXT-2855] IPMI chassis/BMC monitoring Created: 2015 Jun 24  Updated: 2018 Oct 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: kylix.tan Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: ipmi, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

for Server's hardware monitoring, mostly by IPMI. the following feature missing from IPMI Agent just make it not optable.
1. no autodiscovery, external check scripts is needed to discovery sensor
2. macro is not fully supported, such as IPMI.IP, IPMI.USER, IPMI.PASS. In 3.0, some improvement appeared, such as sensor and unit support for LLD macro, that is very welcome
3. NOt fully support other IPMI item beyond "sensor", such as chassis,bmc

Zabbix is an amazing monitoring solution, hope you could make it better



 Comments   
Comment by Stefan [ 2015 Jun 24 ]

its similiar to ZBXNEXT-1799

Comment by Aleksandrs Saveljevs [ 2015 Jun 25 ]

IPMI low-level discovery is being tracked at ZBXNEXT-1423.

Comment by Aleksandrs Saveljevs [ 2015 Jun 25 ]

Request for {IPMI.IP} is being tracked at ZBXNEXT-1154. Macros {IPMI.USER} and {IPMI.PASS} are also there in the comments.

Comment by Aleksandrs Saveljevs [ 2015 Jun 25 ]

So it seems like the only thing that remains in this issue is support for monitoring chassis and BMC.

Comment by Branden [ 2018 Oct 19 ]

Up-vote for Chassis support as it would be great to have overall health status.

 

 





[ZBXNEXT-1481] Provide Agent binaries for Solaris 10 amd64 and Solaris 11 sparc Created: 2012 Oct 22  Updated: 2020 Mar 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Robert Parker Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: agent, binaries
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

At http://www.zabbix.com/download.php agent binaries should be provided for Solaris 10 on the amd64 architecuture and Solaris 11 on the sparc architecture.

Currently we are able to run the Solaris 10 sparc binary on Solaris 11 sparc without noticing any issues so far, but a specific binary would seem safer.

Meanwhile the Solaris 11 amd64 binary appears to crash on Solaris 10 amd64, so this is of more concern. If needed I can provide the log output shortly before it crashes, but it would seem likely a binary compiled against Solaris 10 amd64 may not crash in this manner.



 Comments   
Comment by Robert Parker [ 2012 Dec 18 ]

With the 2.0.4 release there are agents for Solaris 10 on both sparc and amd64 architectures, which is great to see.

So now the title of this issue should really be 'Provide Agent binaries for Solaris 11 sparc', and the description edited as such; I can't see a way to make such an edit.





[ZBXNEXT-929] Change acknowledge message data type from varchar to text Created: 2011 Aug 29  Updated: 2018 Dec 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Volker Fröhlich Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: acknowledges, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2135 increase length of message column for... Closed
is duplicated by ZBX-15218 Acknowledgment message and character ... Closed

 Description   

The length of a acknowledgment message is limited to 255 characters. This is not obvious from the GUI.

I think switching from varchar to text is an improvement without bad side effects.

Why not have a message longer than 255 characters?



 Comments   
Comment by richlv [ 2012 Sep 06 ]

ZBX-5490 adds a warning for some scenarios





[ZBXNEXT-892] Triggers should be filterable by Unknown status Created: 2011 Aug 17  Updated: 2016 Mar 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert Hau Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: filters, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File zabbix-2.2.0-ZBXNEXT-892-Filter-for-unknown-state-in-Monitoring-Triggers.patch    
Issue Links:
Duplicate
duplicates ZBX-5278 Change text "All" too "All (monitored... Closed

 Description   

It currently is impossible to sort for unknown triggers

We have a few branches with network disconnects often and items go unknown. An ops guy goes to click on the map and they see 45 pages of triggers. that are ok or problem. In order to find the unknown you must go through most of the pages to find it.

We need to have a filter for Unknown/Problem/Any.

I found a short term workaround in the tr_status.php.

$table->setHeader(array(
$whow_hide_all,
$config['event_ack_enable'] ? $header_cb : null,
make_sorting_header(S_SEVERITY, 'priority'),
make_sorting_header(S_STATUS,'status'), <----------------Added this line.
make_sorting_header(S_LAST_CHANGE, 'lastchange'),
S_AGE,
$show_event_col ? S_DURATION : NULL,
$config['event_ack_enable'] ? S_ACKNOWLEDGED : NULL,
is_show_all_nodes() ? S_NODE : null,
S_HOST,
make_sorting_header(S_NAME, 'description'),
S_COMMENTS
));

Now at least i can sort on the status column and get the unknown on either the first page or last.



 Comments   
Comment by Alexey Fukalov [ 2012 Jul 25 ]

For 2.0.x Monitoring->Triggers planned changes:
Triggers with "Not supported" items should be shown. Currently not shown.
Filter "Trigger status" should be expanded and contain options to show: all triggers, with OK value or with PROBLEM value.
New filter option should be added to filter for triggers which last event status is unknown.

Comment by Volker Fröhlich [ 2013 Dec 09 ]

This patch replaces the string "Triggers status" with "Trigger status". The value of the respective form variable is stored in the profile. The API request is appended a filter element for state = 1.

Comment by Volker Fröhlich [ 2016 Mar 23 ]

What's the status here?





[ZBXNEXT-875] a way to control z order of icons on a map (z-index) Created: 2011 Aug 09  Updated: 2021 Apr 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 10
Labels: maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2311 Configurable order elements may overl... Closed
is duplicated by ZBXNEXT-224 Overlapped hosts on maps Closed
Story Points: 0.5

 Description   

Issue ZBXNEXT-675 introduced a nice set of new icons for maps. One of them is a rack and there are also icons for rackmountable servers. However, since there is no way to control the z-order of icons, such icons are not very useful: a rack and rackmountable servers can be drawn in any order, and a rack can cover rackmountable servers. We need a way to put rackmountable servers in front and the rack in the back.



 Comments   
Comment by Aristoteles Rego de Araujo [ 2013 Jan 14 ]

It really would be interesting to do a control icons, avoid having to rebuild the entire maps by adding new racks or overlapping items. With version 2.0.x had to redo the map designer to put inside the racks. It could be something like open a list of icons and set the level of each.

Comment by Marc [ 2014 Aug 30 ]

This should be implemented for all elements including link indicators.

Comment by Vitaly Zhuravlev [ 2017 Aug 31 ]

Looks like it is implemented in 3.4?

Comment by Marc [ 2017 Sep 01 ]

seems so, yes

Comment by Vitaly Zhuravlev [ 2018 Jul 09 ]

No, it's not implemented for map elements, hosts for example. It only works for 'shapes'. So it's still impossible to move rack to the back

Comment by Denis [ 2021 Apr 23 ]

Hello, I am new here. How to vote for this?  I want to draw nice rack maps!

UPD: found! Voting...





[ZBXNEXT-946] add a way to browse configuration changes from templates Created: 2011 Sep 05  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ghozlane TOUMI Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: templates, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Right now, with a living zabbix installation, it can be hard to know exactly what's beeing tested on a server.
the fact that some configuration information can be changed from templates is a very powerful way to customise an installation, but it makes auditing the configuration specificaly hard, as there is no way of findig default data from non default ...

I would suggest :

  • adding another flag for items/triggers giving us the possibility of filtering in order to show the changed templated items /triggers graphs (of course filtering has to be implemented for triggers...). maybe the new filtering could be a 'changed template' added to the 'templated/non templated' list ?
  • adding at the list and at the edit level for items/triggers/graphs a visual clue telling us that the value has been changed from the template (a '*' or different color...)





[ZBXNEXT-666] Sum 2 graphs Created: 2011 Feb 18  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: nima Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 3
Labels: flexibility, graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi
Absolutely many of administrators worked with "cacti". in Cacti we can "sum" 2 or more graphs in one display.for example you can sum graph1 and graph2 on one display.
The only way I found to do this in zabbix is ,first create one new item as type calculated for item_1 and item_2.and then create graph for that new item!
According to reported problem in " https://support.zabbix.com/browse/ZBXNEXT-615 " topic this way is not very good for creating sum graph.
So the better way is sum graphs as same as cacti does.
If anybody see this feature useful please vote this requested feature.

Thanks in advance






[ZBXNEXT-597] Regexps should have a description field Created: 2011 Jan 01  Updated: 2015 May 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: globalregexps, regexps, trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Similarly to triggers that have comments and to item (planed it ZBXNEXT-511) and maintenances that have descriptions, Regexps should have descriptions too.

Why?
Name of regular expression is used elsewhere, so it is best to do a short one. It is not always possible in a short name to put a precise meaning.
And when the regular expressions is a lot, then you can get lost that is used for what purpose. In this situation, the description should greatly help.

This description can be displayed when view a list of all expression - there is enough free space.

It would also be useful when deleting the expression to check into how many items and triggers it is used. For example, as is done recently to value mapping. Is at your decision.



 Comments   
Comment by richlv [ 2011 Jan 02 ]

the idea about regexps having descriptions is a good one.
could you please file the request about checking where regexp is used as a new issue ? thanks

Comment by Oleksii Zagorskyi [ 2011 Jan 02 ]

Richlv, ok, idea about "checking where regexp is used" are registered as separate ZBXNEXT-598

Comment by Oleksii Zagorskyi [ 2014 Mar 19 ]

One more point - if add the description field, then I'd suggest in frontend rename "Name" to for example "Alias".

Because it's not just name which can be freely changed any time. It's a resource which used as reference in other places.
So the "Alias" term should indicate that this field should be changed carefully.

For example we use this term ("Alias") in user's profile.

Comment by richlv [ 2014 Mar 19 ]

nonono. the "alias" in user properties must be renamed to "user name", it is really weird naming there.

and for regexps we should not change name to alias either - long term we should have some proper validation, thus changing global regexp name would not be a breaking operation (maybe when all api is in server...)

Comment by richlv [ 2015 May 22 ]

description for :





[ZBXNEXT-741] Make graph color dependent on item value Created: 2011 Apr 12  Updated: 2021 Apr 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Raymond Kuiper Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In graph configuration it should be possible to define an item value threshold with an alternative color on a line.
When the item value goes beyond the threshold the graph line should the change color until it is on the other side of the threshold again.

This will allow better analyses of the item values.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 21 ]

I believe graph color should depend on actual problems linked to the item.

Comment by metal [ 2019 Dec 09 ]

I also have items with triggers, but the graph doesn't change its color according to the threshold values in the trigger.

Comment by Adam French [ 2020 May 01 ]

I also would like to see this feature as I monitor CPU temperatures for some of our kit, and it would be nice to have the line go red when it exceeds a set value, and I believe something to how the overrides work, whereby you can change an aspect of the graph but based on a condition.

For example: Base Colour = xyz, when item value is greater than x etc

Adding this as an extra tab to the graph options (Probably after the override tab) would be best, rather than forcing it on for everyone, since some people may not want this feature, but having it as an option and being able to configure a colour for a given condition would probably cater for most people who want this.

Comment by Brian van Baekel [ 2021 Apr 29 ]

I just stumbled across this (oldie) and would love to see this as well within zabbix!

Would that be possible?





[ZBXNEXT-607] Import of MIBs Created: 2011 Jan 04  Updated: 2019 Sep 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Michael Schwartzkopff Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: mib, snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All


Issue Links:
Duplicate

 Description   

Hi,

it would be a great feature if the Zabbix GUI could provide the feature to upload enterprise MIBs and make the enterprise OIDs useable in Zabbix, not only by numbers but also in human readable form.

This could the done via a separate administration entry in the GUI uploading the MIBs in question. Zabbix should check the syntax, store the data in ~/.snmp/mibs/

in the snmp.conf of the Zabbix process the GUI could add:
mibdirs +.snmp/mibs
mibs +ALL

In a more sophisticated step you could add a complete MIB management to Zabbix.

Michael Schwartzkopff.



 Comments   
Comment by Marc [ 2014 May 23 ]

What exactly is meant by [...]make the enterprise OIDs useable [...]?
The Zabbix-Server/-Proxy considers MIB files already, what allows the textual form of OIDs to be used in Items.

Without considerable effort in development, I believe an upload option for MIB files in Zabbix frontend might only make sense, when frontend and server run on the same host and no proxy should make use of uploaded mibs.





[ZBXNEXT-593] fping detection improvements Created: 2010 Dec 27  Updated: 2020 Sep 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: fping, icmpping, logging, trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBX-17848 Fix fping interval detection and conf... Closed
caused by ZBX-17060 Auto Registration changes from IP to ... Closed
Sub-task
depends on ZBX-17848 Fix fping interval detection and conf... Closed

 Description   

fping detection, introduced in 1.8.4, helps a lot - but there are some improvements still possible.

1. currently each pinger process detects fping capabilities separately - might be more efficient if server (or proxy) did that one upon startup and then just pass the result to all pinger processes.
2. currently there is no information with debuglevel 3 about detection status - would be very helpful if zabbix daemon could print in the logfile the detection status.



 Comments   
Comment by Volker Fröhlich [ 2013 Oct 20 ]

Connected to ZBX-4894





[ZBXNEXT-622] support for deltas at resolutions other than "per second" Created: 2011 Jan 15  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Will Lowe Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: items
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We have a lot of items which we like to trend but don't show up very well if set to "delta (speed per second)". For example, after application launches we'll often see an error rate of several per MINUTE, which averages out to less than 1 per second and therefor doesn't graph very well.

I wish we also had:

  • delta (speed per minute)
  • delta (speed per 5minutes)

I think at those resolutions we'd be able to monitor and trigger on items for which "speed per second" isn't the right granularity.



 Comments   
Comment by Aleksandrs Saveljevs [ 2011 Jan 17 ]

While there is no option for "speed per minute" setting the item multiplier to 60 should probably solve your problem.

Comment by Will Lowe [ 2011 Jan 17 ]

Thanks. We've actually tried this, but it seems there's a rounding error somewhere. It looks like Zabbix calculates this as:

value_delta = current_value - last_value
time_delta = current_value_timestamp - last_value_timestamp
speed_per_second = int( value_delta / time_delta ) // values > 1 become 0
plotted_value = speed_per_second * multiplier

... so in many cases it comes out as 0.

Comment by Aleksandrs Saveljevs [ 2011 Jan 18 ]

You are right, Zabbix calculates the value as you described. We will see how this can be improved, but for now setting the item value type to "Numeric (float)" instead of "Numeric (unsigned)" should make it work.





[ZBXNEXT-585] Value mapped Items meaning not displayed on Network map labels Created: 2010 Dec 16  Updated: 2013 Dec 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Grigory Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: maps, patch, trivial, usability, valuemapping
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

FreeBSD 7.3., Zabbix 1.8.3


Attachments: File items-value-map.patch     File maps-value-map.patch    
Issue Links:
Duplicate
is duplicated by ZBX-5384 Value mapping didnt work on maps Closed

 Description   

Currently there is not value mapped Items meaning displayed on Network map labels.

For example: if exist value mapping for upsBasicOutputStatus such as 2 -> OnLine, then that's Item value is displayed on network map label with

{UPS01:upsBasicOutputStatus.last(0)}

function as '2', not 'OnLine'.

Code for replacing value of user function with they real meaning in Zabbix's frontend (include/maps.inc.php) is not exist.

I would like to get meaning of mapped value on the label.

Actually i made a few changes in code of maps.inc.php, testing code in work sucessfully, and offer they to developers.

In maps.inc.php::expand_map_element_label_by_data() i was change a $label = str_replace(..., DATA, ...) strings to $value = DATA and append at end of foreach($matches[0]...) cycle small piece code

if($db_item['valuemapid']) $value=replace_value_by_map($value, $db_item['valuemapid']);
$label = str_replace($expr, $value, $label);

Now in my Network Map i have explained value of Item.



 Comments   
Comment by Javier Barroso [ 2012 Feb 03 ]

This patch make if sentence work again, before it was ignored (because a ";")

Comment by Javier Barroso [ 2012 Feb 03 ]

This patch is for show value as in mapping value in maps.

Comment by Javier Barroso [ 2012 Feb 03 ]

See updated patch for 1.8.10 version

Comment by Prostrelov [ 2012 Aug 01 ]

This changes didn't affect zabbix v.2.0.0

maps.inc.php didn't contain this strings

$value = $item['lastvalue'];
}

  • if ($item["valuemapid"] > 0 )
  • { - $value = replace_value_by_map($value, $item["valuemapid"]); - }

$label = str_replace($expr, $value, $label);
}

items.inc.php didn't have patch strings too.

Can u please create patch for zabbix 2.0.0





[ZBXNEXT-655] server should automatically restart hanged pollers Created: 2011 Feb 09  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: pollers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There are known cases (for instance, with SNMP and SSH checks) when pollers can hang. To keep monitoring working they should be restarted automatically.



 Comments   
Comment by richlv [ 2011 Feb 09 ]

being a very important case, this should be definitely logged.
as a first step to hopefully make logging levels usable again (right now pretty much nobody uses other modes except 3 - or 4 for debugging), this should go at debuglevel1

Comment by Alexei Vladishev [ 2012 Oct 22 ]

I do not think it is still the case. Besides we have internal monitoring which can probably catch such cases and warn Zabbix admins.

Comment by richlv [ 2012 Oct 22 ]

well, one known case is signal handler





[ZBXNEXT-576] Add to Template Option for Graph Created: 2010 Dec 07  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert Hau Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: graphs, templates, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be nice if you go to latest data and you click to view a graph that you could click "Save to template" and it would give you an option to save it to the group, so it would be available to all of the hosts.

view Processor Load on hostA

Save to Template for group "All hosts"

go to Host B and select Host B.



 Comments   
Comment by Robert Hau [ 2010 Dec 07 ]

it would be also nice to have a button add to existing template graph.

So you could go to host A and click on processor load and click add to existing template, and it would add it to the graph as another datapoint.





[ZBXNEXT-553] Datepicker for IT Services Created: 2010 Nov 08  Updated: 2021 Apr 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Jonathan Kelly Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 15
Labels: itservices, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Allow the user to use a datepicker to select an arbitrary date range to display the IT Services period.

The datepicker would replace the current (as of 1.8.3) period drop-down menu. The Zoom GUI control from the Graphs would do the job quite nicely.

This request is similar to ZBXNEXT-25, but I think it's a much more flexible and sustainable solution.

As I'm sure it's the case in many organizations, I need to provide monthly, quarterly and yearly SLA reports. Right now, unless I stay up until 23:59 of the last day of the month and select "last 30 days" in the period drop-down (and hope it's a 30-day month!) I need to do complex manipulations to get the data.



 Comments   
Comment by John Hayes [ 2013 Nov 23 ]

In addition to this (which would be great), I'd like to have some more predefined ones.

These would include, but not limited to

Last Week
Previous Week
Last Month
Previous Month
This Quarter
Last Quarter
Previous Quarter
Last Year
Previous Year.

Comment by Andris Bjornson [ 2015 Aug 17 ]

Just started using the IT services and I'm loving it! Great feature.

I really wish I had the datepicker / custom range as requested by this issue...without, the flexibility of the feature is significantly limited because I must run the report at specific times





[ZBXNEXT-551] Display a message when action is disabled automatically when we delete something it references Created: 2010 Nov 04  Updated: 2024 Feb 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2, 1.8.3, 1.8.4, 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Simon Assignee: Unassigned
Resolution: Unresolved Votes: 21
Labels: actions, conditions, consistency, unsquashable, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-7079 Add a warning on a Frontend object de... Closed
is duplicated by ZBXNEXT-1697 Notifications when deleting objects u... Closed
is duplicated by ZBXNEXT-1948 Issue a warning when deleting a trigg... Closed
is duplicated by ZBXNEXT-8982 Host group deleteing causes trigger a... Closed
is duplicated by ZBX-16687 Action is deactivated if hostgroup is... Closed
is duplicated by ZBX-10863 action disable auto at zabbix 3.0.3 Closed
is duplicated by ZBX-22477 No info in Audit log from System user... Closed

 Description   

If we delete a 'hostgroup' which is in an 'action', then the 'action' is disabled automatically. It's not stupid but i wasn't expecting this.
It would be nice to display a little message "action nameofaction is disabled" on the web interface when this happens.

ZBXNEXT-105 lists many more cases



 Comments   
Comment by richlv [ 2013 Dec 17 ]

(1) also templates should be handled the same way

Comment by richlv [ 2013 Dec 17 ]

(2) also hosts should be handled the same way

Comment by richlv [ 2013 Dec 17 ]

(3) also triggers should be handled the same way

Comment by richlv [ 2013 Dec 17 ]

ZBX-7202 deals with a possibility to leave an action w/o any operations

Comment by Pavels Jelisejevs (Inactive) [ 2014 Jan 31 ]

Just displaying a message may not be the best approach, because when deleting stuff in bulk, it may easily get lost in other messages.

Comment by richlv [ 2014 Mar 18 ]

ZBX-7948 asks for this to be documented for now

Comment by richlv [ 2014 Mar 18 ]

as for the message, ideally i'd like to see a separate confirmation page or popup, showing which actions are affected by the current deletion

Comment by Oleksii Zagorskyi [ 2015 Oct 08 ]

it's even worse for actions with custom expressions, see ZBX-9943

Comment by richlv [ 2016 Apr 03 ]

this seems to be more nasty than i thought initially. it might be a good idea to check your actions and see whether any important ones haven't been silently disabled

Comment by richlv [ 2016 Apr 15 ]

there was some interest on IRC in monitoring an important action by ID, and alerting if it suddenly gets disabled. a quick example on how that could be achieved (probably from cron) at https://github.com/whosgonna/Zabbix-Tiny.pm/blob/master/examples/example_check_action_by_id.pl

Comment by Oleksii Zagorskyi [ 2019 Mar 21 ]

Sad thing that it does NOT log to audit log too. (host group deletion, used in a condition).

Interesting that an audit message "Action disabled due to deletion of user." will be actually logged.
It happens if you delete an user/usergroup which was only one used in single operation of action.

UPDATE on 2023-10-26, using version 6.4.5.
Now frontend does not allow to delete such a user or a user group and produces error like:

User "udel" is used in "Report problems to Zabbix administrators del" action.

It happens also if the user/group is not the only recipient in the action, which is weird actually is wrong behavior.

Comment by dimir [ 2019 Sep 27 ]

Showing something in frontend wouldn't help when using API. I suggest not allowing to delete something that is referenced in action condition.

Comment by Oleksii Zagorskyi [ 2023 Oct 26 ]

Just confirming that using version 6.4.5 a host deletion silently disables the action and does not leave any sign in audit log too.

Comment by Michael Wery [ 2024 Feb 01 ]

As stated in ZBXNEXT-8982 it would be nice if :

  1. The deleted condition (host group, host, trigger, etc...) is the last remaining => Message appears indicating that it is still in use and the parent item must be deleted prior.
  2. There are other remaining conditions => Action remains enabled and a message appears indicating that the condition was used in this or that action.
Comment by dimir [ 2024 Feb 01 ]

There is already a reference check in the API:

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/ui/include/classes/api/services/CHostGroup.php#459

All that needs to be done is instead of disabling an action return an error.

Thanks to gcalenko for checking it.

Comment by dimir [ 2024 Feb 01 ]

Related issue: ZBX-23760





[ZBXNEXT-545] improved date() function Created: 2010 Oct 29  Updated: 2019 Apr 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: triggerfunctions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

trigger (and elsewhere) function date() could be expanded. currently it only returns date in YYYYMMDD format, which does not allow, for example, easily comparing something like date()<14

ideally it would accept format specifiers in the parameters, not unlike 'date' commandline utility



 Comments   
Comment by richlv [ 2012 Aug 09 ]

what would date()<14 do ?
digging in my memory, that would be duplicated by dayofmonth(). have to think a bit what else might be useful

ok, so accepting format specifiers would be the goal

Comment by Jacco Mol [ 2019 Apr 01 ]

Im monitoring monthly payments and have an alert on a minimum of those. Subscriptions can be started on any date and are extended every month. But as February only has 29 (or 28) days, the next month (March) on the 30th and 31th there are very little payments. I would therefore like to not have this alert trigger on the last days of March. Currently there is no Monthofyear trigger function, I would like to suggest either adding that or implementing this very flexible date format function which would allow me to use date('MMDD')<>'0330'.





[ZBXNEXT-529] Improve the view of configuration > screen page Created: 2010 Oct 09  Updated: 2015 May 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Niumar Andre Klein Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: screens, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OpenSuse 11.1 - Zabbix version 1.8.3


Issue Links:
Duplicate
is duplicated by ZBXNEXT-2067 Please add the possibility to create ... Open

 Description   

Enable the creation of a folder structure to allow a simple categorization of screens according to its type on the page setup screens. Example:

Screens:

--- Linux servers
|       |---- Load screens
|       |         | --- Load - Server1
|       |         | --- Load - Server2
|       +---- Network Traffic screens
|
+ - Windows servers
|
|





[ZBXNEXT-540] ZBX_NOTSUPPORTED from external scripts Created: 2010 Oct 21  Updated: 2018 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marcel Hecko Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: documentation, exitcodes, externalchecks, notsupported
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-1897 Return unknown (unsupported) value by... Closed
is duplicated by ZBXNEXT-2110 Empty string is valid return value Closed

 Description   

The zabbix agent native interface provides information whether the key is being supported or not outputting ZBX_NOTSUPOPRTED string to the zabbix server, which then reacts to the information and temporarily disables the key check for that particular host.

This funcionality does not seem to be implemented for external checks - keys calling external scripts in externalscripts directory. This is a very nice to have feature. We do have Oracle, Weblogic and LUSTRE fs monitoring implemented in Zabbix, however we would really appreciate to have this feature enabled in zabbix server.



 Comments   
Comment by Aleksandrs Saveljevs [ 2010 Oct 22 ]

As a workaround, you can make the script output nothing - in that case the external check will be treated as not supported.

Comment by Marcel Hecko [ 2010 Oct 22 ]

Great indeed! There is a secion in Zabbix documentation thought, that script should NEVER output nothing. This might be changed as this is a very important information In my case this solves the issue, however ZBX_UNSUPPORTED output recognition would be a benefit in zabbix monitoring infrastructure consistency. Thanks for a great work!

Comment by Alexei Vladishev [ 2012 Oct 11 ]

I believe it should be documented and closed.

Comment by richlv [ 2014 Mar 13 ]

for the record, external checks and userparams now may return empty values so this workaround probably will not help anymore

Comment by richlv [ 2015 Mar 13 ]

a patch suggestion at ZBXNEXT-2110

Comment by Filipp Sudanov (Inactive) [ 2015 Mar 13 ]

Similar for user parameters: ZBXNEXT-152

Comment by Glebs Ivanovskis (Inactive) [ 2017 Nov 09 ]

Exit code check was implemented in ZBXNEXT-1380, but was then reverted in ZBX-12594.

This piece of information may be of some interest for watchers.





[ZBXNEXT-535] Add an optional caption to complex screen items Created: 2010 Oct 15  Updated: 2013 Sep 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Sergey Syreskin Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: graphs, screens, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be nice to have an ability to add a caption to an item on complex screens.
For example, there is an ICMP Ping template attached to a lot of hosts. Hosts belong to groups according to their site or location. There is also a complex screen with ping graphs for a router of each site, lets say 100 graphs on a complex screen in total. Graphs are automatically named by Zabbix as "10.20.1.1: Ping Time" or something like this, we don't fill in "DNS name" field on the host configuration page. This caption doesn't say anything about host location, as it's very difficult to remember network addresses of a 100 of sites. So I request a feature to optionally add a line of arbitrary text above a graph or any other item of a complex screen.



 Comments   
Comment by richlv [ 2011 Feb 28 ]

similar to ZBXNEXT-154





[ZBXNEXT-531] Items system.swap.in[,count] and system.swap.out[,count] works on FreeBSD Created: 2010 Oct 13  Updated: 2017 Jan 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 1.8.2, 1.8.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Simon Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

FreeBSD 6.2 -> 8.1



 Description   

It would be great if these items works on FreeBSD systems.
Information is readily available :
sysctl -a | grep vm.stats.vm.v_swapin
sysctl -a | grep vm.stats.vm.v_swapout

Best regards



 Comments   
Comment by Marcin Gryszkalis [ 2017 Jan 19 ]

Would be solved by ZBXNEXT-773





[ZBXNEXT-509] Add and edit host group: adding and removing hosts should be organized differently Created: 2010 Sep 15  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Konstantin Buravcov (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBX-1425 'all' selection not available in grou... Closed

 Description   

configuration -> host groups -> open group
configuration -> host groups -> edit group

In this case, if we move a host from the "hosts in" box to "other hosts" with group selected, it seems as if the host will be added to that group, which is not true. the host is still displayed in that list - until we switch to another group, then back. in such a case also it's pretty hard for the user to figure out where did the host go, unless user knew before to which additional groups host belongs to.






[ZBXNEXT-565] allow use of arbitrary Items in Trigger desciption Created: 2010 Nov 22  Updated: 2012 Oct 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Cal Sawyer Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 2
Labels: macros, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be good to be able to source and display data from an arbitrary (but probably related) Item in the trigger desciption in Last 20 Issues to explain why a trigger fired, especially if the the trigger is based on a flag.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 15 ]

I believe it's a duplicate feature request.





[ZBXNEXT-446] alert depends on how many triggers are ON within host-group Created: 2010 Jul 08  Updated: 2014 Sep 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Anang Syarifudin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: alerts, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be nice if there's alert that depends on how many triggers are ON within host-group.
Let say if >5 hosts are unreachable then a new alert is sent



 Comments   
Comment by richlv [ 2010 Jul 08 ]

you could do that currently with some trigger expression like (

{host1:agent.ping.nodata(300)}

...

{host5:agent.ping.nodata(300)}

)>5

would that fit your need ?

Comment by Anang Syarifudin [ 2010 Jul 09 ]

But that will be hard if applied to a group with hundreds of hosts.

This feature will be useful for monitor a group of hosts that have dependency on same network component, but we can't monitor the dependent component.

Comment by v99glu [ 2014 Sep 12 ]

It's definitely a request to improve an item "zabbix[triggers]" in the following manner:
zabbix[triggers,<entity type>,<entity name>,<state>,<severity>,<status>, <last change>, <age>, <acknowledged>]
<entity type> - "host" or "hostgroup"
<entity name> - name of host or hostgroup
<state> - "enabled", "disabled" or "unknown"
<severity> - one of possible trigger severities
<status> - "PROBLEM" or "OK"
<last change> - [+|-]<time> to match triggers having "Last changed" equal, greater ( + ) or less ( - ) than <time>
<age> - [+|-]time to match triggers having "Age" equal, greater ( + ) or less ( - ) than <time>
<acknowledged> - "yes" or "no"

  • Number of triggers in Zabbix database belonging to host or hostgroup <entity name> and matching the rest of conditions.




[ZBXNEXT-463] Gauge and Meters available in Maps Created: 2010 Jul 29  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Paul Parcell Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I would like the ability to use a gauge graph or meter in a Map. It would be configurable to display (.last(0), ,avg(300)....etc for applicable item types. Management here pushes the use of dashboards. Dashboard functionality would be fullfilled by a Map that could display gauges, graphs and meters.






[ZBXNEXT-932] show y axis caption when both axis used Created: 2010 Aug 23  Updated: 2019 Jul 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert Hau Assignee: Unassigned
Resolution: Unresolved Votes: 12
Labels: axis, graphlegend, graphs, patch, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any


Attachments: File ZBXNEXT-932-30-axes_3.patch     File ZBXNEXT-932-34-axes_3.patch     File ZBXNEXT-932-axes_1.patch     File ZBXNEXT-932-axes_2.patch     File ZBXNEXT-932-axes_3.patch     PNG File axis_identification_r.png     PNG File better_axis.png     PNG File patches1-3.png     PNG File percentile_axis.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-758 show the orientation of y axis in gra... Closed

 Description   

Graphs that use both axis, you cannot distinguish which data set that its using.

For example

Graph Item 1 on the left and Graph item 2 on the right. How can you tell which axis is for which item.



 Comments   
Comment by richlv [ 2010 Aug 25 ]

maybe arrows could be added to legend, or some other way to identify axis (only visible if two axis are used)

Comment by Dave [ 2011 Feb 03 ]

Even just a text box on the graph configuration screen to allow the user to enter units for each of the Y axes. For example, Y1: processors, Y2: Jobs or Y1: megabytes, Y2: Processes. Essentially just 2 strings, one that is printed vertically at the left of the graph and one that gets printed on the right side. It's generally obvious by the series label which axis it applies to if the axes are labelled with units.

Comment by Oleksii Zagorskyi [ 2012 Feb 10 ]

I would say it would be AWESOME improvement

Comment by Oleksii Zagorskyi [ 2012 Feb 12 ]

Take a look to an attached picture "better_axis.png"
At the default graph it's not possible to understand without looking to the legend which value for which axis, I have to look to the legend and values (numbers) in the legend and it's realy hard.
I have to spend aprox. 5 second (really) to understand what where.

Several ideas suggested. Main goal - an user should NOT to look to the legend AT ALL to understand which value for which axis.
Maybe we even can combine both suggested ideas?

Would be happy to hear your opinion

Comment by Alexei Vladishev [ 2012 Mar 03 ]

I am not happy about proposed designs. Think about stacked graphs and graphs with disabled legend.

Comment by richlv [ 2012 Mar 03 ]

while on the one hand disabling the legend is kinda "you asked for it" situation, 3rd design by zalex takes care of that. the problem is that it's extremely cryptic and wouldn't really work if we don't have values go to the edge of the graph.

stacked graphs... now i got confused. i might be slower than usual, but what's the point of left/right axis for a stacked graph ? (except the ability to specify on which side the axis should be) - i would expect the axis to be exactly the same, thus this issue shouldn't apply there.

Comment by Oleksii Zagorskyi [ 2012 Mar 04 ]

> the problem is that it's extremely cryptic and wouldn't really work if we don't have values go to the edge of the graph.
Yes, I thought about this. See please again to the updated example (4th design).
In case when an item doesn't have data for render its line to the edge of parent axis, the small "line-marker" still could displayed using very first/very last available data point.
Yes, it can be considered as "dirty hack" but I do not see other solutions.
If data for an item missing at all then any "line-marker" should not be displayed.

I totally agree with Rich's opinion about stacked graph.
Additionally we have ZBX-2889 for stacked graphs.
Moreover I recall an issue when an user used different axises for different items in a stacked graph and we had a troubles to understand what's going on with the graph.
As result a thought appeared that ability to select axis individually per item for stacked graphs should be disabled, i.e. axis position for stacked graphs should be global option for the graph.

Comment by richlv [ 2012 Mar 11 ]

here's my take one possible approaches, showing axis usage in the legend.
first one shows signs separate from the coloured box and in a different colour from the text colour (here i went with grey - could have been a different one, of course).

second one shows darker sign, but attached to the coloured box - in one case, it's filled, in another it's empty. if filled, it could be in the colour of the box border or contents.

<zalex> Interesting options, thanks. Maybe for the legend it could be better solution than my suggestion.
I'd vote for coloured sign attached to the colored box - with the same colour. But I'd like to see the sing with a more acute angle. I think the angle in 90 degrees would be optimal.

<richlv> the benefit of having this in the legend is that it is always visible if legend is enabled and it is always denoted in the same location - user doesn't have to scan whole length of both axis and try to match coloured bit to some line in the graph itself.
in this case, i'd probably skip it for cases when legend is disabled

Comment by richlv [ 2012 May 02 ]

note that we already are displaying axis side for percentile legend, although i dislike this way and it would be more terrible with items and triggers (longer names, easier to mix up identification with the name itself)

Comment by Chris Kistner [ 2013 Sep 22 ]

Did someone by any chance write a patch yet for this - to like show arrows next to the block to indicate on which axis it is displayed?

Otherwise I'm going to attempt to write a patch for 1.8 (because our system is still on 1.8) when I have time again...

Comment by Oleksii Zagorskyi [ 2015 Sep 27 ]

I'm not PHP programmer, but don't have more patience to wait as it affects my everyday's work ...
Here is my humble patches based on frontend v2.4.6.

Bellow are 3 different variants, according to 3 different patches:

All 3 patches include a change for percentiles legend - suffix "left|right" is removed but the arrow will have different direction (instead of just up).

Short description of differences:
1st: text arrows <> are added, squares is one row.
2nd: squares in two different rows
3rd: squares are one row and extended by triangle, percentile and trigger legends aligned to position.

To apply one of the patch, cd to frontend directory and do:

# patch -p0 < ZBXNEXT-932-axes_N.patch
Comment by Chris Kistner [ 2015 Sep 28 ]

Very nice @ Oleksiy !

I quite like the Patch 3 that you made.

Comment by richlv [ 2015 Sep 30 ]

personally, i like the 3rd option the most

Comment by Andrei Gushchin (Inactive) [ 2015 Nov 04 ]

Agree with richlv personally for me, 3rd patch looks perfect.

Comment by Oleksii Zagorskyi [ 2016 Feb 14 ]

Patch #3 ported to 3.0.0 is attached.

Comment by Oleksii Zagorskyi [ 2018 Jan 21 ]

Existing 3.0 patch is compatible with 3.2

Attached updated patch for 3.4, which should be compatible with 4.0.
Recent 3.4 patch does not contain modifications for percentile in legend.

Comment by Kristian Rønningen [ 2019 Jul 05 ]

I personally prefer the idea of drawing the lines a bit outside of the graph box, crossing the Y axis they belong to. I think it gives the viewer a more instant idea of what belongs where, without needing to look at the legend at all.





[ZBXNEXT-563] New Acttion condition "proxy is alive" Created: 2010 Nov 18  Updated: 2013 Jul 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Florian Koch Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 5
Labels: nodata
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

-



 Description   

Hi,

i like to see a new condition for actions: "proxy [ name of the proxy] is alive". (is / is not)

Why?

If you monitor some hosts with a proxy, then the proxy fails , you get nodata messages from each of the host (if you have nodata check). if i have a action condition, i only get the message (from another action) proxy is down.
If you have ~1000 hosts and ~13 proxys (like me) and the firewall between zabbix server and proxy fails, you are not spamed with mails....

rgds flo



 Comments   
Comment by Florian Koch [ 2011 Feb 25 ]

Any news here?

Comment by Alexei Vladishev [ 2012 Oct 15 ]

We may also consider introducing more conditions for the nodata() functions, such as server/proxy is lost or not. The "Proxy is alive" sounds like a too broad definition to me.

Comment by richlv [ 2012 Oct 16 ]

wouldn't this be better solved with trigger dependencies ?

Comment by Florian Koch [ 2013 Jul 26 ]

trigger dependencies sounds good, maybe its possible to add such a dependencies automatically?

regards Florian





[ZBXNEXT-490] log time format improvements Created: 2010 Aug 25  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Sub-Tasks:
Key
Summary
Type
Status
Assignee
ZBXNEXT-487 additional log time format placeholde... Change Request (Sub-task) Open  
ZBXNEXT-488 multiple log time format support Change Request (Sub-task) Open  
ZBXNEXT-489 additional log time format placeholde... Change Request (Sub-task) Open  
ZBXNEXT-1271 Log Time Format : localized textual m... Change Request (Sub-task) Open Alexei Vladishev  
ZBXNEXT-1453 timezone offset for log time format Change Request (Sub-task) Open  
ZBXNEXT-1454 validate log time format Change Request (Sub-task) Open  
ZBXNEXT-2288 Use strptime for parse date/time in l... Change Request (Sub-task) Open  
ZBXNEXT-2304 Placeholder improvements Change Request (Sub-task) Open  

 Description   

umbrella issue for log time format improvements






[ZBXNEXT-2748] Jabber media type --> try another Jabber server if a first one is unreachable. Created: 2015 Mar 17  Updated: 2015 Mar 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleg Ivanivskyi Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dns, jabber, mediatypes
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

From the documentation (https://www.zabbix.com/documentation/2.2/manual/config/notifications/media/jabber):

Among Jabber SRV records, the one with the highest priority and maximum weight is chosen. If it fails, other records are not tried.

In case of two active XMPP servers:

_xmpp-client._tcp.jabber.domain.com. 28800	IN SRV	0 50 5222 server1.net.domain.com.
_xmpp-client._tcp.jabber.domain.com. 28800	IN SRV  1 50 5222 server2.net.domain.com.

Zabbix does not connect to the second one if the first one is unreachable. It would be great to have such functionality.






[ZBXNEXT-2772] Allow Filtering for "Screens - Host Group Issues" to exclude Acknowledged Trigger Created: 2015 Apr 10  Updated: 2018 Jan 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.8
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marco Hofmann Assignee: Unassigned
Resolution: Unresolved Votes: 17
Labels: acknowledgements, filters, screens
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian Wheezy


Attachments: PNG File Dash1.png     PNG File Screen1.png     PNG File Triggers1.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-2852 Ability to filter events based on ack... Closed

 Description   

Hello,
we use "Monitoring -> Screens -> Slide Shows" on different TVs in our office, to make the employees aware of current problems.

In the slide shows we use the predefined type "Host Group Issues" which no option to filter Acknowledged Triggers. (See File Scree1.png)

When I am on my laptop, I use "Dashboard" or "Monitoring -> Triggers".
In both views I'm able to set Trigger filter. (See Attachment Dash1.png & Triggers1.png) I set them to: "Acknowledge status -> With unacknowledged events" and "Minimum trigger severity -> Warning". This hides a lot of unnecessary information and I only see what really needs attention.

What I am searching for, is the same for the screens, so I can reduce the amount of information shown on the TVs. Is this possible?

I already tried to use Type "URL" in screens and linked to "Monitoring - Triggers" but that looks a lot worse than "Host Group Issues"

Thank you!



 Comments   
Comment by Filipe Paternot [ 2015 Apr 14 ]

Perfect description. Voted.

This helps greatly for operations

Comment by Jack Kelly [ 2015 Aug 26 ]

This was opened against on 2.2, how can it be made to be against all 2.2+ versions?

Comment by richlv [ 2015 Aug 26 ]

if an issue is reported against some version, it is supposed to be affecting that version and all later versions, doubly so for feature requests

edit : this has been asked about a few times, so documented it in https://www.zabbix.org/wiki/Docs/bug_reporting_guidelines#Reporting_an_issue

Comment by Sanjay F [ 2015 Dec 17 ]

Is it the same as ZBXNEXT-2699

Comment by Marco Hofmann [ 2015 Dec 17 ]

Yes, its the same. Except that I ask for two things. I ask primarily for the ability to Exclude Acknowledged Triggers from the "Screen - Host group issues". Second I ask for the ability to set the severity for the screens. So yes, that last part is the same.

Comment by Daniel Coelho [ 2016 May 24 ]

This is such an easy to implement feature, yet its impact would be huge for our NOC. Not only could we use the extra space for additional metrics we wouldn't be faced with non critical events.

Comment by Tony den Haan [ 2018 Jan 23 ]

I suppose they could be merged into "Please provide a filter like on the Monitoring->Triggers tab





[ZBXNEXT-2362] Use mmap on Linux to avoid the needed System V shared memory tuning Created: 2014 Jun 30  Updated: 2017 Feb 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Florian Koch Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: memory, shared
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

it would be nice if Zabbix uses mmap to avoid the System V shared memory tuning via sysctl .
Postgresql has done this with Verson 9.3
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=b0fc0df9364d2d2d17c0162cf3b8b59f6cb09f67

regards Florian



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2017 Feb 02 ]

I followed the link and there is this:

But it's not 100% clear how portable this is...

Is there any follow up information how portable it turned up to be? What do you mean by "tuning"? Permission to allocate huge amounts of memory for caches?





[ZBXNEXT-2952] "and" don't work in Actions->Discovery for the "Received value" Created: 2014 Jul 17  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Natalia Kagan Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: actions, conditions, networkdiscovery
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 6.4



 Description   

Hi,

doesn't work if I define in CONFIGURATION->Actions->Discovery conditions:

Received value like test1
and
Received value like test2

work only if I define "OR" or using different type,for example "Received value" and "Discovery check"

for example, the output : centos,jboss,qa

so I create action :

Received value like jboss,
and
Received value like qa

the operation : Add to "QA Jboss" host group

Thanks






[ZBXNEXT-2138] Vmware hypervisor low level discovery should add the virtual center server name as macro for assignment to hostgroups Created: 2014 Feb 01  Updated: 2014 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: 2.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Wolfgang Alper Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: hostgroups, lld, usability, vmware
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix server / proxy monitoring multiple Vmware virtual center server



 Description   

When using auto discovery rules to get hypervisor from virtual center servers, one gets macros like datacenters. So the detected hypervisors can be attached to hostgroups based on datacenters.
It would be great though, that theses detected hypervisors can (also) be assigned to hostgroups based on the virtual center server instance that detected them.
Right now, it is only possible to put the hypervisors a.) in groups based on datacenters or b.) in static groups like "All Hypervisors".
The same applies to deteced virtual machines.






[ZBXNEXT-2170] Add support for viewing internal events in the web interface Created: 2014 Feb 20  Updated: 2019 Oct 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Strahinja Kustudic Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: events, internalmonitoring, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently it is possible to create actions which send a notification when an internal event is triggered, but there is no way to view them in the web interface. It would be great if we could view internal events in the Triggers tab as well as the Events tab.



 Comments   
Comment by richlv [ 2014 Feb 27 ]

as per https://www.zabbix.org/wiki/Docs/specs/ZBXNEXT-1575, displaying them during the initial development was "Discussed but will not be included"
as far as i recall, the rationale was that we could just show them, but to show them properly we would have to redesign that page quite a bit, so it was decided not to show them at all...

Comment by Strahinja Kustudic [ 2014 Feb 28 ]

Thanks for the answer, but that was then, things maybe different now? I don't see why the Events tab would need to be changed that much to display internal events, but I'm more interested in being able to display all unsupported items, which from my point of view should probably be displayed in the Triggers tab. It is really great that we can get an email when an item becomes unsupported, but it would be even nice if we could view all unsupported items.

Comment by richlv [ 2014 Mar 16 ]

configuration -> hosts/templates, any item link, expand filter, set state to 'not supported' and clear host field

Comment by Strahinja Kustudic [ 2014 Mar 16 ]

That view is awesome! The only thing it's missing is to be able to filter by maintenance status.

Zabbix could really use a web front-end overhaul. It has so many great features which are hard to find, or never even discovered.

Comment by Marc [ 2014 Nov 02 ]

I'd appreciate to optionally see internal events in a chronological order with proper filter functionality. This helps to see what recently happened without the need to create actions that fire lots of operations just to get this information.

Beside the fact that it sounds a little bit cumbersome to use e.g. MUA filter functions to query recent internal events, the alerter is due to lack of ZBXNEXT-2442 blocked quite quickly.

Comment by Raymond Kuiper [ 2016 Jan 20 ]

Inclusion in "Monitoring -> Events -> Source: Internal" would be awesome

Comment by James Kirsop [ 2019 Oct 10 ]

This forum thread presents a good use case why it would be helpful to have this UI feature added.

Not having an easy way of viewing internal events means that problems with monitoring hosts and triggers on hosts themselves can't easily be identified and cleaned up, leading to other related issues.





[ZBXNEXT-2094] new item key: per-process I/O utilization Created: 2013 Dec 31  Updated: 2013 Dec 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: diskio, newitemkey
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux >= 2.6.20



 Description   

a new item, supported by agent, is desired - per-process I/O utilization
suggested key - proc.io[<name>,<user>,<cmdline>] (and maybe other params)

text borrowed from ZBXNEXT-494

See:
http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=7c3ab7381e79dfc7db14a67c6f4f3285664e1ec2
http://guichaz.free.fr/iotop/

Of course it would be nice to have this option available for any supported platform.






[ZBXNEXT-2116] Custom HTML map elements Created: 2014 Jan 18  Updated: 2017 Mar 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dmitriy Shevchenko Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: html, maplabels
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

web interface


Issue Links:
Duplicate
is duplicated by ZBXNEXT-2467 Network maps add text Closed

 Description   

Please add new type element in map editor - custom (user defined) html code with macros support



 Comments   
Comment by richlv [ 2014 Jan 20 ]

how would this actually work ? sure you meant maps not screens ?

Comment by Dmitriy Shevchenko [ 2014 Jan 20 ]

Screens not provide such flexibility as maps. It is impossible to arrange the elements at random location. Custom html element will provide great functionality: any size and colour text font, tables, images, dynamic content, graphs, maybe JS support, flash.
You can see how it may be realized in PRTG Network Monitor map editor

Comment by Oleksii Zagorskyi [ 2014 Jan 30 ]

ZBXNEXT-2133 (ZBXNEXT-154) asks for HTML support on screens

Comment by richlv [ 2017 Mar 26 ]

partially solved by ZBXNEXT-2031





[ZBXNEXT-2070] LLD graphs name truncated Created: 2013 Dec 12  Updated: 2023 Jun 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: 2.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrey Melnikov Assignee: Unassigned
Resolution: Unresolved Votes: 22
Labels: database, fieldlength, graphs, lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-7751 Cannot create graph - value is too long Closed
is duplicated by ZBX-9212 Increase graph name from 128 characters Closed

 Description   

128 byte field for graph name in sql database is not enough.
When I use LLD with graphs prototype defined as 'Traffic on interface {#SNMPVALUE} {{HOST.HOST}:ifAlias{#SNMPVALUE}.last(0)}'
when server expand #SNMPVALUE to real value 'D-Link DGS-3120-24SC R1.02.013 Port 24 on Unit 1' - graph name truncated.
Expanding row to 255 bytes helps.



 Comments   
Comment by Chris Reynolds [ 2016 Jul 19 ]

Is this just a case of changing the schema file supplied so the type is varchar (255)?

Comment by Shriharsh Thanvi [ 2016 Sep 16 ]

Can we identify the area / impact of the change in question ?
It looks very quick fix on the face of it.

Comment by Shriharsh Thanvi [ 2016 Sep 21 ]

I attempted to change the DB schema, along with the schema file.
I was able to create a trigger prototype with max 255 characters.
But unfortunately, the change in graph prototype was not reflected when we push the values.
It looks like some more validation is also done at the backend c-libraries, created at the time of compilation.

Comment by Kirill H [ 2017 Oct 12 ]

Frankly, I'd say, that it should be 512 char. Just to be safe. ISP/DC level switchport descriptions are impacted by it.

Comment by sbindley [ 2018 Feb 23 ]

I think it's because of this https://support.zabbix.com/browse/ZBX-5687 issue that is closed and won't be fixed?

It would be good to go ahead and create the graph and truncate the name at 128 characters, then instead of showing in the info column in the discovery rule that a graph was not created because of the length, that it was created but the name truncated. That way you at least get the graph without having to go create it manually with a shorter name.

Changing the column length doesn't do anything, it's coded somewhere to check the length and reject it over 128 characters.

Comment by Billy Farrington [ 2020 Aug 31 ]

We're in the process of implementing Zabbix across our network. Currently we have 1000+ devices in Zabbix with 8000+ more planned, and we're running into this specific issue. Going through thousands of devices and renaming interfaces to fit within the 128 character limit is a hard stop for us for two reasons:

1. It would negatively impact several departments who use these interface names to identify circuits

2. It would be a massive undertaking to log into all of these devices and rename interfaces, which defeats the purpose of LLD.

 

Manually identifying missing graphs and creating them by hand is equally problematic. Ideally these graphs could be added with a truncated name, as suggested by sbindley. We will have to consider alternative solutions without it.

Having looked at the source briefly it appears this is limited by GRAPH_NAME_LEN within include/db.h as well as the name column width in the database table definition. For now I'm going to do some experimentation and see what kind of issues we run into with increasing these values, but an official solution would be perferred.

Comment by Andrey Melnikov [ 2020 Aug 31 ]

> GRAPH_NAME_LEN within include/db.h as well as the name column width in the database table definition
No, you find only half part of iceberg. You must also hack 128 byte limit in src/libs/zbxdbhigh/dbschema.c and include/schema.inc.php - enjoy real-time validation!

> official solution would be perferred.
Four years official solution is "not a problem for us" (C)

Comment by Billy Farrington [ 2020 Sep 01 ]

Thanks. I had found include/schema.inc.php already but not the other one. I decided instead that it might be easier to come at the problem before it gets there. It's an ugly hack, but I'm working on having it truncate the initial snmp query response for ifAlias before it gets passed in. That way it avoids the character limit issue.

Comment by Josh Rogers [ 2023 Jun 06 ]

@Billy, I'm interested in your stop-gap solution of truncating the ifalias.  Were you able to get that working, and can you provide patch files?

Comment by Billy Farrington [ 2023 Jun 06 ]

@Josh, yes and no. Yes I was able to get it working and it has been doing well ever since, but no I don't recall exactly what it was I had done to resolve this particular error. I've made a bunch of other changes and added new views and API extensions since then to better suit our needs, so it's a bit hard to tell what is original and what isn't at this point. I'll do some poking around in it and see if anything refreshes my memory.

Comment by Billy Farrington [ 2023 Jun 06 ]

Looks like what I ended up doing was in /src/libs/zbxdbhigh/host.c and /src/libs/zbxdbhigh/lld_graph.c I checked the length of the graph name and truncated it if necessary right before the insert and update queries are generated. Someone else could very likely do a better job of it than I have, and it should be using the value from dbschema.c instead of a hard-coded length. I simply cut off the end and added a '...' to indicate that it was truncated. Obviously use this info at your own risk.

/src/libs/zbxdbhigh/host.c:

 

                if (strlen(name_esc) > 127) {
                        char *nCpy = malloc(sizeof(char) * 124);
                        strncpy(nCpy, name_esc, 124);
                        strcat(nCpy, "...");
                        strcpy(name_esc, nCpy);
                }
                zbx_snprintf_alloc(&sql, &sql_alloc, &sql_offset,
                                "insert into graphs"
                                " (graphid,name,width,height,yaxismin,yaxismax,templateid,"
                                "show_work_period,show_triggers,graphtype,show_legend,"
                                "show_3d,percent_left,percent_right,ymin_type,ymax_type,"

 

                if (strlen(name_esc) > 127) {
                        char *nCpy = malloc(sizeof(char) * 124);
                        strncpy(nCpy, name_esc, 124);
                        strcat(nCpy, "...");
                        strcpy(name_esc, nCpy);
                }

                zbx_snprintf_alloc(&sql, &sql_alloc, &sql_offset,
                                "update graphs"
                                " set name='%s',"
                                        "width=%d,"
                                        "height=%d,"
                                        "yaxismin=" ZBX_FS_DBL ","

/src/libs/zbxdbhigh/lld_graph.c:

                        zbx_strcpy_alloc(&sql, &sql_alloc, &sql_offset, "update graphs set ");
                        if (0 != (graph->flags & ZBX_FLAG_LLD_GRAPH_UPDATE_NAME))
                        {
                                name_esc = DBdyn_escape_string(graph->name);

                                if (strlen(name_esc) > 127) {
                                        char *nCpy = malloc(sizeof(char) * 124);
                                        strncpy(nCpy, name_esc, 124);
                                        strcat(nCpy, "...");
                                        strcpy(name_esc, nCpy);
                                }

                                zbx_snprintf_alloc(&sql, &sql_alloc, &sql_offset, "name='%s'", name_esc);
                                zbx_free(name_esc);
                                d = ",";
                        }
 

 





[ZBXNEXT-1842] Indicator/Event if log monitoring exceeds the lines per second threshold Created: 2013 Jul 28  Updated: 2013 Jul 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.0.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: events, logmonitoring, reliability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be nice to have some kind of (internal) event or at least an undisruptive visual indication if a log[*] or logrt[*] item exceeds MaxLinesPerSecond (maybe considering both s_count and p_count separately)

To me MaxLinesPerSecond is a very important feature and should be configured wisely for every log item individually.
The initial setting is based on best knowledge in most cases. But for assuring to get the right setting it's not sufficient to rely on recognizing delayed triggers or actions.






[ZBXNEXT-1484] allow merging/relinking of prototyped and not prototyped items Created: 2012 Oct 23  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.0.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ghozlane TOUMI Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: lld, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-8357 Low Level Discovery Fails when Existi... Closed
is duplicated by ZBX-6347 Filesystem auto-discovery prevents ma... Closed
is duplicated by ZBX-10244 Upgrading from normal items to lld items Closed

 Description   

Migrating from 1.8, I have a bunch of items I manually crafted to get filesystem usage.
When trying to create a low level discovery, I get an error stating that the Item already exist, which is the whole point.

Right now, The only way to migrate from manual to prototype is to remove the manual items, and lose historical data, or hack something within the database.

The lld should work the same way as templates do wrt already existing items :
they are relinked to the template, and lld should do the same, rebinding already existing items



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Oct 24 ]

Some issue in current server behavior (related to the requested feature) described here ZBX-5781.

Comment by Marc [ 2015 Feb 07 ]

Well, templates do not merge elements of same uniqueness criteria, they add a link that could also be easily un-linked.
When this is considered for implementation, then I'd appreciate to support converting a LLD element (pot. previously merged) to a regular one.

Comment by Marc [ 2016 Jan 08 ]

ZBXNEXT-2052 might help here too.

Comment by Javier Barroso [ 2016 Jan 08 ]

Thank you, for the moment I will live with such warnings, I hope it will not affect to zabbix performance

Comment by Javier Barroso [ 2016 Jan 12 ]

Has someone any "hack something within the database" script to help migrate with this issue ?

We are migrating screens from 1.8 to 2.4, but graphs on 1.8 were defined by hand and on 2.4 we would like to use graph prototypes, but we can't without lost data.

Any tip ?

Thank you !

Comment by Javier Barroso [ 2016 Jan 12 ]

I think I can follow the next approach:

Suppose you have items xx[yy.zz] which have conflict between prototyped and normal items, then:

1) Change item protoypes to "xx[yy,zz_not_supported]"
2) Wait until items not supported are created
3) Copy history and trends on bbdd, and rename items from xx[yy.zz] to migrated.$date.[yy.zz] (bash script below)
4) Rename item prototypes to "xx[yy.zz]"
5) Wait until items have became supported
6) Remove migrated.$date items

#!/bin/bash
fecha=$(date +'%F-%H%M')

echo 'select hostid_searched, itemid_searched, itemid_old from (
        select hostid as hostid_searched, itemid as itemid_searched,
                replace(key_,"_not_supported","") as key_searched,
                ( select itemid from items
                        where key_ = key_searched and
                        hostid = hostid_searched) as itemid_old
                from items
                where key_ like "%_not_supported%") as g
        where itemid_old is not NULL ;' |
mysql -N -h host -P 3307 -u zabbix24pre --password=xxx zabbix24  > info-tickets-$fecha.orig


while read hostid itemid_din itemid_stat
do
        echo "update history set itemid = $itemid_din where itemid = $itemid_stat;"
        echo "update trends set itemid = $itemid_din where itemid = $itemid_stat;"
        echo "update items set key_ = concat('migrated.$fecha.',key_) where itemid = $itemid_stat and key_ not like '%migrated%';"
done < info-tickets-$fecha.orig > updates-$fecha.txt


cat updates-$fecha.txt |
mysql -N -h host -P 3307 -u zabbix24pre --password=xxx zabbix24 &> updates-$fecha.log

Thank you very much . Please tell me if you see any fail , I will push into production, next week ...





[ZBXNEXT-1486] IP authentication support for active agent & trapper items Created: 2012 Oct 25  Updated: 2017 Aug 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 1.8.15, 2.0.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: alix Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: activeagent, authentication, patch, security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File ip-auth.1.8.14-2.dpatch     File ip-auth.1.8.14.dpatch    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-3123 Zabbix server and proxy strongly trus... Closed
is duplicated by ZBXNEXT-547 IP ACL on active agent items Closed
Sub-task

 Description   

Big environments sometimes can be a big pain to manage, especially when management is performed by hand. To save mental health and make life easier when investigating cases like two or more active agents with the same name simultaneously sending data to Zabbix server, I propose implementing an IP based authentication. It definitely isn't a security feature, but rather an additional handy restriction to remain in control.

This approach is applicable when host connectivity is configured using ip address, not domain name. IP authentication should be optional. When enabled, all direct connections (proxy-server connections must not be affected) from active agents are to be compared against ip address specified in host configuration/agent inteface. In case of mismatched addresses connection should be gracefully rejected.

Similar approach should also be implemented to protect trapper items. I'm aware of "Allowed hosts" field existence in trapper item configuration, but it doesn't really work when trapper items are templated due to ZBXNEXT-354. When "Allowed hosts" is empty, all trapper item incoming data should be authenticated the same way as suggested above. To override this default behaviour, user should be able to fill "Allowed hosts" field with required data manually.

Examples of connection rejects in server/agent log:

Failed attempt to request active checks list:
> 2138:20121025:110008.943 Sending list of active checks to [192.168.0.212] failed: host [TESTHOST] ip mismatch: expected 192.168.0.221, got 192.168.0.212

Failed attempt to send data:
2138:20121025:110008.943 Process data failed: host [TESTHOST] ip mismatch: expected: 192.168.0.221, got 192.168.0.212

I'm attaching a basic proof-of-concept-patch for 1.8.14. It unconditionally checks for matching ip addresses in host configuration-remote client pair, and rejects disallowed connections for active agent items and trappers.



 Comments   
Comment by Ricardo Santos [ 2012 Nov 27 ]

great patch, very useful feature.

Comment by alix [ 2012 Nov 27 ]

Thanks - it seems to work on my production servers without memleaks and crashes.
There was a typo in a message though which I'm correcting in this attach.

I've looked into extending the patch to make ip auth configurable in host configuration and actually succeeded, but decided to drop the idea, as I realized that I want ip auth enabled everywhere by default.





[ZBXNEXT-1276] Zabbix administration script for agent (active) Created: 2012 Jun 15  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexandru Nica Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 2
Labels: activeagent, consistency, globalscripts
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

With zabbix 2.0 you introduced the ability for administration scripts to be run on the agent. As far as I understand zabbix trapper functionality is used for this feature, making it mandatory to have a direct connection to the agent port.

This is great for agents and server in the same network, but with agents behind a NAT, zabbix trapper cannot be used and there is no possibility to run scripts on the host on demand.
An extension of the feature would allow for a new type of script (Zabbix agent (active)). Running this type of script would queue the operation for the specified host and wait for the agent to connect to the server (active checks). When the agent connects to the server it reads the script queue and executes them.

There could be a configurable timeout. When running this type of script, a dialog would stay opened with a message like "Waiting for agent to pickup script command..." and change into an error if the server was not contacted by the agent in the specified timeout.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 14 ]

I think it's a duplicate issue.





[ZBXNEXT-1305] Template with Linked Template (both with LLD) not export any data except the link to template Created: 2012 Jul 05  Updated: 2023 Jan 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Adail Horst Assignee: Unassigned
Resolution: Unresolved Votes: 27
Labels: discovery, export, lld, templates, xml
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CENTOS 6 With MySQL


Attachments: JPEG File ScreenHunter_03 Jul. 05 16.42.jpg     JPEG File ScreenHunter_04 Jul. 05 16.42.jpg     JPEG File ScreenHunter_05 Jul. 05 16.43.jpg     JPEG File ScreenHunter_07 Jul. 05 16.47.jpg     XML File zbx_export_templates_TemplateA.xml    
Issue Links:
Causes
causes ZBX-16526 Zabbix API does not allow import temp... Closed
Duplicate
is duplicated by ZBXNEXT-8104 ability to fix child template changes... Closed
is duplicated by ZBX-6364 Prototypes are not exported if they b... Open
is duplicated by ZBX-11999 Export templates - inherrited low-lev... Closed
is duplicated by ZBX-21931 modifications of inherited triggers m... Closed
is duplicated by ZBX-6482 Exporting Host Does Not Include Items... Closed
is duplicated by ZBX-13281 Item prototype missed in exported .xml Closed
Sub-task
depends on ZBX-15326 Dependent item is not exported if mas... Reopened

 Description   

I have:
Template A: Descoberta de Interfaces - Switch - LAN
Template B: Descoberta de Interfaces - Roteador WAN

Template B are linked to Template B.
Template A have many Items and Item Prototypes.
Template B have Template A data + new Items Prototypes

I try to export Template A: OK works
I try to export Template B: Works on interface, I open the XML and only link information and name of Template A and B is on the file. The new Items, Items prototypes, etc are missing.

I try this in Zabbix 2.0.1 and Zabbix 2.0.2rc with a build of today.



 Comments   
Comment by Adail Horst [ 2012 Jul 05 ]

This XML have the data from Template A (template A are linked to another template (template C) but this template C dont have prototypes and are exported without problems).

Comment by Alexey Fukalov [ 2012 Jul 06 ]

Yes such problem exists, but for now it works as designed, i.e we export only objects that are not inherited from template or are not dependent on inherited object.
Same can happen for example if you change dependencies for inherited trigger, or related applications for inherited item, these changes cannot be exported.

I move this to ZBXNEXT because it's improvement of current export functionality.

Comment by Kay Schroeder [ 2016 Jan 07 ]

I'm using this functionality of zabbix also to avoid generating items that will become unsupported. Unfortunately I working with two zabbix installations. One testing, where I develop Templates and the other one where I have the productional montoring installed. Unfortunately at the moment I have to create These templates twice.

Comment by Ivan Vanyushkin [ 2016 Sep 27 ]

Is there any workaround to export template with item/trigger prototypes, in case of linked discovery rules? I need to move my new item/trigger prototypes to other Zabbix server, but I see no way to export them.

Comment by Robin Roevens [ 2020 Feb 07 ]

This does not only apply to item/trigger prototypes but also on overrides of normal items/triggers.

For example:

  • Template A defines system.name
  • Template B inherits Template A, but overrides Update Interval, Storage Period and Inventory Field of system.name
  • Export Templates A and B
  • Import Templates A and B on a different zabbix server (or first delete templates A and B and then import them again)
  • Template B now just inherits Template A and all overrides on system.name are gone.

I've read that this is currently as designed but I think this is quite a flaw. When you export a configuration, you expect that it gets exported exactly as it is configured.

We also have 2 zabbix environments : dev and prod .. with an automatic export to git on dev and an automatic import from git to prod..

But now it turns out that those changes do not get exported .. so are not tracked in git and thus not imported in prod. Which currently even makes a few template imports fail due to overrides that should prevent conflicts are not exported..

If Zabbix wants their templates to be truly modular and world shareable, I think this issue should be addressed asap. As the only solution now is to start duplicating templates and/or integrating templates into each other to be able to define such overrides.

Meanwhile, I think the GUI at least should display a big fat warning that such things as changes on inherited items/triggers or discoveries won't be exported. As well as in de API documentation of configuration.export.

Comment by Grant Ashton [ 2020 Feb 07 ]

Completely agree with @robinr

We have the same issue, as templates are distributed via git. So overrides to inherited LLD or normal items/triggers do not get exported.

The workaround, we use, to this is unlinking but not clearing the template, but this means items/triggers are essentially duplicated. So this makes maintenance a nightmare, as we have to track this duplication.

This is a fundamental flaw in the export/import design. Essentially ruining the major benefit of template inheritance

Comment by Patrice Gautier [ 2020 Nov 18 ]

Another vote to fix this.

This limitation completely destroys the usefulness of the template inheritance concept, since there really is no clean way to transport the hierarchy to another system.

Distributing those templates to other people via git is also a non starter

 

Comment by Chris Brookes [ 2021 Mar 22 ]

Adding another vote. That the additional item & trigger prototypes are missing in an export of the child template is a) causing us lots of headaches, and b) going against reasonable expectations.

Comment by Bogdan Rudas [ 2021 Apr 27 ]

Configuration loss during template export and import is awful. While entire mechanics of inheritance is acceptable, any modern deployment need a staging environments for monitoring system. It is absolutely impossible neither do an automation nor manually move templates between hosts once we are using something added to Zabbix after 1.4.x series in templates.

Comment by Pierre Fagrell [ 2021 Jul 24 ]

This really hinders adoption of Zabbix with multiple servers.

If we want to export templates from one server and import on another we cannot use inheritance and overrides at all. Adding item prototypes to inherited discovery rules does not work either.

I really hope this can be fixed.

Comment by Mathew [ 2022 Apr 19 ]

Heres an unofficial fix.

https://github.com/X4BNet/zabbix/commit/c91d4d7266c50859b7da68dde854127385ac3458

I release this work commit into public domain. Do with it what you will under any licence or for any purpose. It comes with no guaruntees of completeness or finess of purpose.

 

Comment by Richard Ostrochovský [ 2022 Nov 16 ]

Update: ZBX-21931 modifications of inherited triggers missing in templates' configuration export - ZABBIX SUPPORT

Comment by Alexander Vladishev [ 2023 Jan 27 ]

As of version 6.4.0 the nested template functionality will be removed, but the reported problem will still exist in host export.





[ZBXNEXT-1166] zabbix_server.conf: Unable to specify multiple source IPs Created: 2012 Mar 27  Updated: 2021 Jan 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 1.8.11
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Schoechlin Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: agent, distributed
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu Linux 11.10



 Description   

In professional setups proxies and zabbix servers typically use a service ip which can be moved by a cluster management software (like pacemaker)
between two or more nodes.

Very often it is necessary to assign tow different vlans/networks/ip-addresses to a zabbix server. For example to monitor components in a management- and in the webhosting-vlan
zabbix server needs to get direct access to these networks.

The network setup could look like this:

# ip addr ls
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b8:ac:6f:8f:f2:44 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
    link/ether b8:ac:6f:8f:e2:48 brd ff:ff:ff:ff:ff:ff
4: eth2: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
    link/ether b8:ac:6f:8f:d2:48 brd ff:ff:ff:ff:ff:ff
5: eth3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
    link/ether b8:ac:6f:8f:d2:4a brd ff:ff:ff:ff:ff:ff
6: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether b8:ac:6f:8f:d2:48 brd ff:ff:ff:ff:ff:ff
    inet 10.1.2.29/16 brd 10.41.255.255 scope global bond0
    inet 10.1.2.101/16 scope global secondary bond0:1
    inet6 fe80::baac:6fff:fe8f:d248/64 scope link 
       valid_lft forever preferred_lft forever
7: vlan9@bond0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP 
    link/ether b8:ac:6f:ef:d2:48 brd ff:ff:ff:ff:ff:ff
    inet 10.13.5.221/24 brd 10.11.5.255 scope global vlan5
    inet6 fe80::baac:6fff:fe8f:d248/64 scope link 
       valid_lft forever preferred_lft forever

I the example - the ips 10.1.2.101 and 10.13.5.221 and the zabbix server processes can be floated between two physical machines for high availability purposes.
Unfortunately it is not possible to specify multiple ip addresses as source ip´s in the following way:

/etc/zabbix/zabbix_server.conf:
....
SourceIP=10.1.2.101,10.13.5.221
....

If i do not specify a address, zabbix uses sometimes the wrong ip addresses for sending requests.
(this is ugly because i have to add all possible addresses to all zabbix-agents)
If i only specify one of the addresses - one subnet cannot be monitored.

It should be possible to specify multiple source ips and zabbix should use the automatically the correct ip for local subnets.
For non local subnets the first ip should be used.



 Comments   
Comment by richlv [ 2012 Mar 27 ]

that sounds mighty complicated and more like reimplementing routing...
wouldn't it make more sense to set up proper routes on the zabbix server instead ?

Comment by Pavol Kobylan [ 2013 Feb 06 ]

I have the same problem. It can be good to select zabbix soureIP per Host or even per item.

Comment by Marc Schoechlin [ 2021 Jan 03 ]

@richlv i agree, we should not re-implement/enhance routing

Probably there should be more documentation for the SourceIP parameter:

  • what happens if it is not specified?
  • what a a user do to configure static communication addresses?

Otherwise:
Routing settings a system-wide setting, therefore it might also a good thing have the possibility to define source ip address for a target network.

<source-ip address> for <network>/<netmask>  

 





[ZBXNEXT-1264] daemon communication encryption: kerberos Created: 2012 Jun 13  Updated: 2014 May 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Java gateway (J), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: authentication, encryption, kerberos
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

daemon communication encryption: kerberos

encryption should be supported by all components :

server (also node-node);
proxy
agent
zabbix_get
zabbix_sender
java proxy

psk - ZBXNEXT-17
ssl - ZBXNEXT-1263



 Comments   
Comment by Raymond Kuiper [ 2014 May 17 ]

Related: ZBXNEXT-2308





[ZBXNEXT-1265] Show a tooltip on Dashboard with possible reasons why server trapper is not available. Created: 2012 Jun 13  Updated: 2013 Mar 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: dashboard, status
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Follow-up from (1) in a ZBX-3219 and ZBXNEXT-829
Would be great to have something similar on dashboard what already implemented in the ZBX-3219, see also some discussion in the ZBXNEXT-829

Note that it should be easy to implement because the frontend already has main required code (implemented in the ZBX-3219).

It would help a lot (IMO) for cases like:
http://www.zabbix.com/forum/showthread.php?t=26603
and others.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Nov 27 ]

Additional forum thread (in Russian) http://www.zabbix.com/forum/showthread.php?t=37862





[ZBXNEXT-1208] Conditions in calculated items Created: 2012 Apr 28  Updated: 2018 Aug 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Attilla de Groot Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 23
Labels: calculateditems, conditions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

For any number of reasons you might want a value not to be taken into account in the calculation. This can be accomplished by updating the item using the API, but this can be not flexible enough in some situation, because wrong values might be used in the calculation before the formula is updated.

I would like to have condition possibility in a calculated item. This allows us to ignore values of a certain item when the value of another item has a certain value (eg: state == "maintenance" or value > 100000).



 Comments   
Comment by Leonardo Savoini [ 2018 Aug 01 ]

Maybe this can be very easy if they add a function into zabbix -> if(condition, true, false)
Just like in a spreedsheet.
That will solve an issue when I need absolute values. ex: if(number < 0, number * -1, number)





[ZBXNEXT-1389] Collect unmatched zabbix_sender traps and auto register a host Created: 2012 May 07  Updated: 2015 Jun 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: David Lowes Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: autoregistration, discovery, zabbix_sender
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Add support for Auto-registration for unknown traps - add a rule in "Auto-Registration" - "Auto Discovery" to allow registration of unknown hosts upon recieving data for an unknown host using the zabbix-sender protocol.



 Comments   
Comment by David Lowes [ 2012 Oct 13 ]

I'd be glad to test any patches you have to resolve this issue.

Comment by richlv [ 2012 Oct 16 ]

currently there do not seem to be any implementations/patches of this feature

Comment by JamesH [ 2015 Jun 26 ]

This would be useful for autoregistering Docker containers as hosts without having to run one zabbix_agentd per container





[ZBXNEXT-1136] Remove disabled/inactive auto-registered hosts automatically Created: 2012 Mar 01  Updated: 2018 Dec 25

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.8.10
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Kleber Vinicius de Carvalho Domingues Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 12
Labels: actions, autoregistration
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OS Centos 5.7 64bits
DB Postgres 9.0


Issue Links:
Duplicate
is duplicated by ZBXNEXT-2609 Easier auto remove of retired hosts Closed

 Description   

I'm trying to find something to automate the deletion of my disabled hosts on my Zabbix Server.
Soma Action that delete inactive/disabled hosts after a certain time. Do you know somwthing that can be used in this issue?



 Comments   
Comment by richlv [ 2012 Mar 01 ]

what's your definition of "inactive" ?

Comment by Kleber Vinicius de Carvalho Domingues [ 2012 Mar 01 ]

Hosts that are some time without answering Zabbix Server requests. This is the opposite of Auto Discovery.

Comment by Oleksii Zagorskyi [ 2012 Mar 02 ]

"Remove host" operation is available for Discovery's actions.
Probably it should help.

Comment by richlv [ 2012 Mar 11 ]

as mentioned, if you are using network discovery, you can use host removal operation;
if you want to do that based on triggers only, you can run a script and deal with hosts via the api.

i don't think there's going to be anything more specific implemented -> closing

Comment by Oleksii Zagorskyi [ 2013 Jun 04 ]

I updated this feature request summary to reflect a main target - auto-registered hosts automatic removal.

Comment by Oleksii Zagorskyi [ 2013 Jun 04 ]

Any nice ideas how it could be nicely implemented are welcome
Just to discuss it.

Comment by Rob Langley [ 2013 Sep 08 ]

I'm currently using Auto Registration for load balanced servers I'm starting and stopping with Amazon's AWS auto scaling feature. So what would be useful is an operation to Disable Host after xx mins, then 'Delete Host' after xxx mins

For example when the server is terminated it could be disabled after 60 mins, then deleted after 240 mins.

Comment by Ionut Cadariu [ 2015 Mar 28 ]

@Rob, If you have found a way to deal with that type of issues please respond since I'm looking for a way to automatically remove hosts that are no longer available from zabbix.

Thank you

Comment by TonyFu [ 2015 Apr 14 ]

@Ionut Cadariu, I've rencently write a script with python to delete unactive hosts periodly. Call for zbx json-rpc with groupid, we get the status of hosts, then we can decide disable them after specific time and delete them. My zabbix version is 2.2.4, if you're interested, post an email:[email protected] to me.

Comment by JamesH [ 2015 Apr 14 ]

I'm using zabbix_sender called from the zabbix_agent init script upon shutdown to trigger a server-side API call which disables the host. Then a server-side script runs periodically and deletes disabled hosts greater than X days old through the API. It's working for us but I'd like to see this functionality built-in as ephemeral hosts is becoming more widespread.

Comment by Matt [ 2015 Jun 24 ]

@James Hammett

What is the syntax to send the disable signal for zabbix_sender??? I've been searching Google for the past 1.5 hours trying to find exactly that key and value and the best I've found is your comment saying you've done it...

PLEASE reply. PLEASE.

M.

Comment by JamesH [ 2015 Jun 26 ]

Google is no help as I haven't seen anyone else tackle this problem. I created an item named "disable-host" and I have zabbix_sender send the name of the host to it upon shutdown. I created a trigger that triggers upon each update of "disable-host". That triggers an action that runs a server-side script that hits the API disabling the host. Lots of moving parts but 100% reliable so far. Right now I'm working toward making this all work with Docker containers :^)

Comment by richlv [ 2015 Jun 26 ]

please consider using https://www.zabbix.org/wiki/Getting_help for discussion, and maybe even writing a howto on zabbix.org

Comment by Matt [ 2015 Jun 26 ]

@JamesH

Man, thank you. I am totally following what you are saying and am working on a Proof of Concept. I had gotten another idea working just late yesterday.

1) Wrote a "service": /etc/init.d/zabbix-disable-host
2) It phones home:

  • An "enable" at system boot
  • A "disable" at system shutdown
  • (also handles "status" which just queries the Zabbix front end for current status)
    3) The back end of it is a python script on the node itself.

I decided on this way because if the node crashes and burns, it never sends the "disable" back so it will go unreachable (and in turn sound the alert)

Currently, I'm trying to figure out how to get the date/time out of Zabbix when the node went disabled. This way we can retain usage history for the node for X days, then delete it. We don't want it deleted right away. Looking at the API docs, I don't see that Zabbix actually stores anywhere WHEN the node got / went disabled. :-\

M.

Comment by Matt [ 2015 Jun 30 ]

As a small follow up, it doesn't seem that Zabbix records the date/time a node was disabled.

So what I do now in my "service" file (/etc/init.d/zabbix-disable-host) on stop:

  • Sends the "disable (this) host" to Zabbix
    zapi.host.update(hostid=HOSTID, status=new_status)
  • Enables inventory in manual mode (so it doesn't try to populate it in "automatic mode" when we don't care)
    zapi.host.update(hostid=HOSTID,inventory_mode=0)
  • Writes an epoch stamp to "date_hw_decomm" (Date HW decommissioned)
    zapi.host.update(hostid=HOSTID,inventory={'date_hw_decomm': EPOCH})

Server side I scheduled a daily script to:

  • Check that specific inventory key of all disabled hosts
    for h in zapi.host.getobjects(status=1):
       host_id = h['hostid']
       result = zapi.host.get(
         withInventory=1,
         output=["date_hw_decomm"],
         hostids=host_id,
         selectInventory=["date_hw_decomm"])
    
    (after a little monkeying with the json back from Zabbix) you get the epoch stamp recorded when the node was disabled above.
    
    Whip a little math around comparing that stamp to "now" and get a "diff" (number days between "now" and "disabled date").
    
    
  • Whack hosts that were "decommissioned" greater than X days ago.

M.

Comment by richlv [ 2017 Jan 02 ]

might be solvable by ZBXNEXT-1387





[ZBXNEXT-1065] Support user macros in templated screens Created: 2011 Dec 29  Updated: 2013 Apr 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.9.8 (beta)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Nenad Opsenica Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: macros, trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be great if it would be possible to use macros within screens defined as part of host templates - e.g. in URL resource: I need to get external web page associated to one host, and have to be able to dynamically create URL.



 Comments   
Comment by Grzegorz Grabowski [ 2013 Apr 26 ]

Yes, it will be very cool to have URL on screen with data from Zabbix:

ex.
http://10.1.1.101/test.php?value=

{Zabbix server:system.cpu.switches.last(1)}

All phpcode you have in Map Label solution





[ZBXNEXT-1001] priority/severity translation in notification macros Created: 2011 Oct 18  Updated: 2012 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.8, 2.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Garth Dahlstrom Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: macros, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File 2keys.ca-trigger.bugtracker.priority.code-zabbix-trunk-22612M-2011-10-21.patch    

 Description   

My company (2Keys.ca) would like to use Zabbix + JIRA to track service problems and their resolutions. The basic concept is that Zabbix will send an email alert to a support team and a JIRA mailbox, the mail will contain the usual alert info as well as info which JIRA would use to identify the issue and create/update/resolve a ticket.

There are a couple of reasons why this is worth doing:

  • the problems become tracked in a permanent audit trail, to which support techs can add comments and managers can review details.
  • JIRA can be used later on to summarize problems and link them back to the software or infrastructure projects [also in JIRA] which triggered the problems for a proper resolution.

In addition to setting up JIRA (or bugzilla) to parse emails and create tickets using the email-to-ticket APIs, Zabbix will need to expose a couple of bits of data not currently available via macros:
1) the Origin Event ID (please see the patch I provided for ZBXNEXT-384)
2) the Bug Tracker Priority which is a string "Blocker", "Critical", "Major" .... which correspond to "Disaster", "Critical", "Average" trigger severities

Please take a look at the attached patches which add the capability for #2 and incorporate them upstream and/or provide feedback.
[www.2keys.ca assigns copyright for this code to zabbix.com for distribution under GPLv2 and any other licenses zabbix.com sees fit.]



 Comments   
Comment by richlv [ 2011 Oct 18 ]

to be really useful the mapping should be user configurable, though, as your jira priorities already are different from the ones used here

Comment by Garth Dahlstrom [ 2011 Oct 18 ]

@richlv... my bad, the stock JIRA priorities are supposed to map against the stock Zabbix severities (they do in the patch, I mistyped it in the original description)... Here's the corrected full mapping is:
Zabbix Disaster = JIRA Blocker
Zabbix High = JIRA Critical
Zabbix Average = JIRA Major
Zabbix Warning = JIRA Minor
Zabbix Information = JIRA Trivial

I do see in Trunk that the Zabbix values are now coming from the DB, and though it'd be a fair bit more work (changes to frontend + SQL), I'd be willing to undertake that work if you'll accept both the 1.8.x patch (as it is, since 1.8.x can't configure Zabbix severities anyway) and the new trunk patch once I've finished doing all the work.

Comment by richlv [ 2011 Oct 18 ]

it is unlikely for new significant features to appear in 1.8 branch at this time, and unfortunately the 2.0 roadmap is pretty fixed (mostly just to ensure it gets released at all...), so i don't see patches being integrated soon.

it would be mostly useful if the mapping was fully user customisable, as then it would also work with other trackers

Comment by Garth Dahlstrom [ 2011 Oct 21 ]

I've redone the patch against trunk with configurable mapping values found next to the severity configuration in Admin->General->Trigger Severity.

This patch replaces the other ones... maybe it can go into Zabbix 2.1?

Comment by richlv [ 2011 Oct 24 ]

oh, that's kinda awesome. while it's really hard to say what will happen after 2.0, this might be useful to get votes for to make it more visible to devs

in the meanwhile, if you have the time, you could take a look at https://zabbix.org/wiki/Docs/specs/coding_style , maybe there's some minor detail to improve





[ZBXNEXT-939] customisable font sizes in graphs Created: 2011 Aug 03  Updated: 2017 Feb 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Simon Kerckhof Assignee: Unassigned
Resolution: Unresolved Votes: 17
Labels: graphs, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian squeeze, mysql
Zabbix 1.8.5



 Description   

When you make Graphs destined for big screens in a NOC, the font that's hardcoded in Zabbix (i'm not a big fan of anything hardcoded) is just too small.
This also due to the issue described in ZBX-1121 (you put multiple graphs on one screen, the graphs are small, the legend however is massive)
(with the current version i have to fiddle with the php files)

The font for title, left, right and legend area should be fully adjustable in GUI and per graph.

The fact that 1.9.x has an optional legend is already an major improvement but this should be looked into further.



 Comments   
Comment by Grzegorz Grabowski [ 2012 Sep 29 ]

I voted.
Small work to do, big feature

Adopt, please.

Comment by Alexey Korepov [ 2017 Feb 09 ]

Here is workaround how to hack PHP code for change font size, before this feature will be implemented in new versions: https://www.zabbix.com/forum/showthread.php?t=8663





[ZBXNEXT-986] Allow web scenario to continue even if a step fails Created: 2011 Oct 05  Updated: 2016 Jun 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Pierre Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 3
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Web scenario is a great thing on Zabbix, but I would like to purpose some features :

  • Failed step : To monitor website latency, isn't logical if one step failed, all TestCase failed. Could you have the choise betwen failed steps or just a warning steps? It's really a drawback for us.
  • Response time Graph customization : Have the choise betwen stack or unstack elements on graph


 Comments   
Comment by Dmitry Podshivalov [ 2013 Sep 27 ]

I'd like to vote for this feature!

Comment by richlv [ 2013 Sep 27 ]

that's what the voting feature in the upper right corner is for...





[ZBXNEXT-942] keep labels always visible in "Monitoring => Overview" Created: 2011 Sep 02  Updated: 2015 Apr 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Schoechlin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: filters, overview, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu Linux 10.04 LTS



 Description   

The view "Monitoring => Overview" provides a good overview of the monitored values/triggers of a given host-group.

I have the following improvment ideas:

  • a possibility to use filters (by hosts/by Item item) would provide a better overview
  • the table-head and the first column should be always visible (no more hardcode scrolling)


 Comments   
Comment by richlv [ 2011 Sep 12 ]

filtering is a dupe of ZBXNEXT-484, let's leave this one only with "always visible labels"

Comment by richlv [ 2011 Sep 12 ]

this function should be 'runtime' switchable

Comment by Timo Veith [ 2012 Dec 06 ]

I second this. It would be great to see to which host or to which trigger a field belongs. It's not easy if the group of hosts that you have selected has a lot of members or/and if one host has a lot of triggers. If you click on a field you already get some info, but not the host name.

Maybe the page rendering would be faster if the top labels wouldn't be images, but just text in html which is rotated by css maybe.

Comment by richlv [ 2012 Dec 06 ]

btw, labels already are text instead of images in latest 2.0 (they were images because of msie6 support )

Comment by Volker Fröhlich [ 2015 Apr 10 ]

Connected to ZBXNEXT-1023





[ZBXNEXT-941] zabbix daemon log directly in items Created: 2011 Sep 02  Updated: 2015 Jul 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: logging
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

followup issue to ZBX-3683 which removed zabbix[log] item

it would be highly desirable to have items that would collect zabbix daemon (server and proxy) logs directly without relying on agent and a file.

preferably these items should have parameters that would control what is logged (debuglevel as a minimum, further customisation as per ZBXNEXT-136 desired as well).






[ZBXNEXT-604] New media type SNMP trap Created: 2011 Jan 04  Updated: 2016 Sep 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Michael Schwartzkopff Assignee: Unassigned
Resolution: Unresolved Votes: 15
Labels: mediatypes, snmptraps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All


Issue Links:
Duplicate
is duplicated by ZBXNEXT-3450 SNMP Trap Forwarding to the Upstream ... Closed
is duplicated by ZBXNEXT-1057 bult-in capability to send snmp traps... Closed
is duplicated by ZBX-11216 SNMP traps out of Zabbix Closed

 Description   

Hi,

could you please add the media type SNMP trap in one of the next releases of Zabbix. It would be very nice to notify other NMS about events in Zabbix.

For this you would perhaps have to apply for a enterprise number of the Zabbix project to generate specific traps.

Thanks.

Michael Schwartzkopff



 Comments   
Comment by Mike Mester [ 2013 Aug 25 ]

I agree this would be a great feature.

Comment by Marc [ 2013 Aug 25 ]

Hmm... Email, SMS and XMPP is somehow something most likely used individual-related. I believe it's not that common to have SNMP traps per (many) user(s).
Why is it not sufficient to use a custom alertscripts?

Comment by Dibyendu Paul [ 2016 Sep 21 ]

@Marc It is not quite comprehensive how to create a custom alert script to send snmptraps for each triggers. How the input for each trigger will come to snmptrapd? Any new action to be defined for creating a trap for each trigger? Not clear at all.

Comment by Dibyendu Paul [ 2016 Sep 21 ]

This is one of the required functionality and so many requests were raised but still open since 2011! I wonder why!

Comment by Marc [ 2016 Sep 21 ]

dibypaul,
not sure whether I understood you correctly. Zabbix allows to create a single action that escalates by a custom alertscript (sending a SNMP trap) for any trigger event - without having to specify triggers explicitly.

The answer to your second question is nobody has considered to (co-)sponsor development yet and 4 votes do not represent a high demand.

Comment by Dibyendu Paul [ 2016 Sep 21 ]

"not sure whether I understood you correctly. Zabbix allows to create a single action that escalates by a custom alertscript (sending a SNMP trap) by any trigger event - without having to specify triggers explicitly." ---> Didnt understand, could you elaborate?
How do I create a single action that escalates by a custom alertscript for a trigger.
what my script will contain? what will be the input? Pretty confusing.

How to create a poll for the demand of this feature?

Comment by richlv [ 2016 Sep 21 ]

please see http://zabbix.org/wiki/Getting_help for support options - it would be best to take such discussions to places like IRC etc.

there is no need to start separate polls, you can already vote on these issues as per http://zabbix.org/wiki/Docs/bug_reporting_guidelines#Reporting_an_issue - see the upper right corner.

Comment by Dibyendu Paul [ 2016 Sep 21 ]

@richlv http://zabbix.org/wiki/Getting_help , not quite helpful. I have already posted this multiple times, no response.

Comment by richlv [ 2016 Sep 21 ]

dibypaul, nevertheless, this issue tracker is not for support discussions - that only creates more noise and leaves developers with less time to create things. consider camping out on IRC for longer, somebody is bound to help you eventually.





[ZBXNEXT-625] enhance regmatch or create a function called regcount which returns the amount of occurences Created: 2011 Jan 17  Updated: 2016 Oct 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Frater Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: item, trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When seeing the function regmatch I thought it was strange it would only return 0 or 1 when it would also be able to return the amount of occurences.
I therefore created the function "regcount" using bash and an entry in zabbix_agentd.conf

http://www.zabbix.com/forum/showthread.php?t=20224

I think it would be useful to many (also other platforms than Linux) to have such a way to count the expressions in a file.

the syntax is:

regcount [-v] <file> <Eregexp>, [ <boolean whole file> ]

It will parse the whole file if the 3rd parameter is 1
If the 3rd parameter is 0 or omitted it will use 'logtail' to check only the difference between the last query

The 3rd parameter can also be higher than 1. In that case it means minutes. This is only useful for Linux logfiles and maybe not such a good idea to implement. It is however quite useful to me.

#!/bin/bash
#####################################################
# regcount
# returns the occurences of a regular expression in
# a file since its last run
#####################################################
# Uses logtail & readlink
# http://sourceforge.net/projects/logtail/
#####################################################
# echo 'zabbix ALL =(ALL) NOPASSWD: /usr/local/sbin/regcount' >>/etc/sudoers
#
# grep -iq 'UnsafeUserParameters' /etc/zabbix/zabbix_agentd.conf || sed -i -e 's/^Server.*/&\n\n# Allow regular expressions\nUnsafeUserParameters=1/' /etc/zabbix/zabbix_agentd.conf
#
# echo 'UserParameter=vfs.file.regcount[*],sudo /usr/local/sbin/regcount "$1" "$2" "$3" "$4" "$5"' >>/etc/zabbix/zabbix_agentd.conf
#####################################################
# 08-12-2010 by Frater
#
# The 3rd parameter (minutes) is optional.
# When 0 or empty, it will use 'logtail' which only checks the portion which hasn't been parsed before
# When minutes is 1, it will take the whole file
# When it's greater than 1, it will use 'lastmins' that will only output the last x minutes
#####################################################
# Use at your own risk!
#####################################################
export PATH=${PATH}:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin
offset=/tmp/regcount.

v=
while getopts v name
do
  case $name in
    v)   v='-v ';;
    ?)   printf "Usage: %s: [-v] <file> <Eregexp>, [ <boolean whole file> ]\n" $0
    exit 2;;
  esac
done
shift $(($OPTIND - 1))

[ ! -h "$1" ] && [ ! -f "$1" ] && exit 1
# [ -z "$2" ]   && exit 1

minutes=`echo "$3" | awk -F. '{print $1}' | tr -cd '0-9'`
[ -z "${minutes}" ] && minutes=0

if [ -z "$2" ] && [ ${minutes} -eq 1 ] ; then
  wc -l "$1" | awk '{print $1}'
  exit 0
fi

file2parse="$1"
if [ ${minutes} -eq 0 ] ; then
  fname="`readlink -f "$1"`"
  fname="`basename "${fname}"`"
  expression="`echo "$fname.${v}$2$3" | tr -cd '.0-9A-Za-z-'`"
  offset="${offset}${expression}.offset"
  ftmp1=`mktemp`
  logtail -f "$1" -o $offset >${ftmp1}
  file2parse=${ftmp1}
elif [ ${minutes} -gt 1 ] ; then
  ftmp1=`mktemp`
  cat "$1" | lastmins ${minutes} >${ftmp1}
  file2parse=${ftmp1}
fi

if [ -z "$2" ] ; then
  wc -l "$file2parse" | awk '{print $1}'
else
  grep $v -cE "$2" "$file2parse"
fi
rm -f ${ftmp1} 2>/dev/null
exit 0


 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2016 Oct 01 ]

ZBXNEXT-1250 added support for regexp in count().





[ZBXNEXT-683] delete individual values from db (spikes) Created: 2011 Mar 01  Updated: 2019 May 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: matthias zeilinger Assignee: Unassigned
Resolution: Unresolved Votes: 28
Labels: history, items, spike, trends
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File graph.jpg    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-1479 Easy deletion of individual latest da... Closed

 Description   

it would be nice to delete individual values from the db in the frontend.
so if you have a downtime for maybe 10 min, and then you collect data with "delta (simple check)", you will get a huge delta.
if you look than into the graph, it looks not very nice.

br matthias



 Comments   
Comment by Bart Verwilst [ 2012 Jul 15 ]

The way i envision this is by adding a delete button next to every value in the 'latest values' list of a single item ( through Monitoring -> latest data -> Value X -> Graph -> Values ). That would make it so much easier to delete inappropriate single values.

Comment by Oleksii Zagorskyi [ 2013 Feb 19 ]

Users time to time have this problem, just a confirmation:
https://www.zabbix.com/forum/showthread.php?p=126654

Comment by Strahinja Kustudic [ 2013 Nov 25 ]

This feature would be awesome to have and probably not that hard to implement.

Comment by Marcio Campos [ 2016 Aug 07 ]

Any news about this issue?

Comment by Dominique [ 2018 Nov 22 ]

I'm still waiting for this feature, too. Would be really cool instead of always manually querying the database.

Comment by Cesar Murilo da Silva Junior [ 2019 Apr 26 ]

I also need this feature, there is an undesirable traffic value of 27 Tbits which I want to erase from the history. Is there any problem in deleting this amount directly from the database?

Comment by Dominique [ 2019 May 06 ]

I once wrote a short tutorial for myself:

  1. Get itemid from graph URL (for example: /history.php?action=showgraph&itemids[]=444871)
  2. Access Zabbix database.
  3. Find out which type your item has (uint, text, str, log) to know in which history table you have to search for:
    • history_uint
    • history_text
    • history_str
    • history_log
  4. Search the appropriate table with the itemid for the spike:
    zabbix=# select * from history_uint where itemid=444871 order by value DESC limit 5;
     itemid |   clock    |     value      |    ns
    --------+------------+----------------+-----------
     444871 | 1543993500 | 29729269162576 | 606002333
     444871 | 1543964400 |    32170824376 | 384896023
     444871 | 1543965000 |    30664167112 | 514850665
     444871 | 1543964700 |    29971309024 | 862951334
     444871 | 1543965300 |    26845634240 | 455393174
    (5 rows)
    
  5. Simply remove the obviously wrong value from the table:
    zabbix=# delete from history_uint where itemid=444871 and clock=1543993500 and value=29729269162576;
    DELETE 1
    




[ZBXNEXT-671] Database content: breakdown size / what's filling my database? Created: 2011 Feb 24  Updated: 2015 May 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Gertjan Awater Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ZBX 1.4.4.


Attachments: PNG File baobab_fullscan.png    

 Description   

It would be nice to be able to drill down to the content of the Zabbix database, to see what is filling up the database, so we can make alterations to how often monitored items are stored. Like baobab is able to show disk occupation in a neat way, and is able to drill down further (http://linux.byexamples.com/wp-content/uploads/2007/04/baobab.png)
Alternative is wading through lists of items, hoping to find the item(s) responsible.



 Comments   
Comment by richlv [ 2011 Feb 24 ]

so putting this in zabbix terms, you would like to have some items that give you idea what takes up space in database (databases ? tables ? whatever stats db engine may provide...) and then display them in a pie graph ?

probably doable already, but requiring fair bit of configuration. a custom low level discovery in 2.0 might help to make this more automated

Comment by Gertjan Awater [ 2011 Feb 24 ]

hmm...not looking for items to do this, more like a frontend option, where clicking somewhere under "administration" would provide a drillable tree/pie graph, content of the graph could be gathered by the housekeeper

Comment by richlv [ 2011 Feb 24 ]

it would be quite unmaintainable to have custom approach to every corner of zabbix - so mapping this to existing infrastructure would be quite critical.

Comment by Gertjan Awater [ 2011 Feb 24 ]

Then please map this to exisiting infrastructure.

Comment by Raymond Kuiper [ 2011 Mar 07 ]

The Zabbix Queue overview is a seperate screen and also generates it's own items.
Maybe that is the approach we are looking for here?

Comment by Marc [ 2015 May 29 ]

ZBXNEXT-2449 might be another option (or even a duplicate).





[ZBXNEXT-1723] Add CSV export to graphs Created: 2013 Apr 24  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Robert Healey Assignee: Unassigned
Resolution: Unresolved Votes: 37
Labels: Zabbix7.2, csv, export
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-3178 CSV export button for history data Closed
is duplicated by ZBXNEXT-2531 Excel Export Support for Presentations Closed
is duplicated by ZBX-11361 How to export Graph to PDF/CSV Closed

 Description   

It would be highly desirable to be able to export the data used in creation of graphs as CSV format files, either as a button or drop down item. I imagine others might find use for XML or other formats but our needs are for CSV data files like our other monitoring/graphing software does.

It came as quite a surprise that this isn't already a part of the system.



 Comments   
Comment by Oleg Ivanivskyi [ 2013 Apr 24 ]

FYI ZBXNEXT-731

Comment by Robert Healey [ 2013 Apr 24 ]

Note: This request differs from ZBXNEXT-731 in that we'd like to extract info from arbitrary graphs, not just the last data sampled.

Example: Use a days worth of item samples to make a graph, then output the items plotted in the graph to a CSV to import into other apps/spreadsheets for planning/justification/issue reports etc. We do this all the time with our other monitoring packages and it would be great to do this with Zabbix as well.

Comment by richlv [ 2013 Apr 24 ]

would switching to "values" and clicking on "as plain text" work ?

Comment by Robert Healey [ 2013 Apr 24 ]

Re: Switching to values.
I'm new to Zabbix, could you elaborate on where "values" option is? Thanks!

It still would leave Zabbix not doing something the other packages its being compared to have done for quite a while.

Comment by Oleg Ivanivskyi [ 2013 Apr 24 ]

I'm new to Zabbix, could you elaborate on where "values" option is? Thanks!

The last screenshot, the right upper corner.

Comment by Robert Healey [ 2013 Apr 24 ]

Thanks for the pointer Oleg!

It's certainly closer to what we want/need but is still significantly different from what is produced by our other applications; i.e. manual cut/paste into a file, one item at a time rather than all graph data items at onces, etc.

It would be nice to have the values/plain text option available somewhere on the actual graph page; our other apps have a button or dropdown on the graph page to output the data used by the graph in CSV/XML/Excel/etc.

Comment by richlv [ 2013 Apr 24 ]

if you are interested in bulk data export, check out the api

Comment by Robert Healey [ 2013 Apr 24 ]

It isn't so much bulk data export as getting data items, usually multiple items per single graph, from a particular graph saved in CSV format files.

Our other platforms export it with a click from the graph area. It would be nice if Zabbix did as well, thus the feature request.

All the other monitoring programs we use, both open source and proprietary/internal, have this.

We were quite puzzled that Zabbix did not.

Comment by Ryan Armstrong [ 2014 Jul 22 ]

I'm trying to convince our security team to migrate away from Cacti but this issue is a big roadblock for them.
In Cacti they can select a region on a composite graph and export the values for that region to csv with the click of a button.

Would be very nice to have!

Comment by makemeasandwich [ 2015 Sep 08 ]

Is there anything done on this matter?

I think this option is pretty important!

Comment by James Cook [ 2015 Sep 08 ]

Im finding this an issue data centre team moving from their existing tool cacti as they to extract the data for their reporting system. This is one of the final hurdles for them and hopefully we can be rid of cacti and be a zabbix only site.

Comment by makemeasandwich [ 2015 Sep 08 ]

Ya same here

Comment by richlv [ 2015 Sep 08 ]

just a reminder that values for a simple graph can be easily accessed from the graph page, dropdown in the upper right corner.

also please note the discouragement of "me too" comments as per https://www.zabbix.org/wiki/Docs/bug_reporting_guidelines#Reporting_an_issue

and eventually, if you'd like to get some community advice or discuss some issue, everybody is highly welcome on irc - see https://www.zabbix.org/wiki/Getting_help#IRC for the detail

Comment by James Cook [ 2015 Sep 08 ]

Hi Richlv,

I have mentioned the separate simple graphs to the guys however they have composite graphs containing of all the data center air conditioners and ups devices information. This way on one graph they can see all the air conditioners in a location and whether the temperatures or humidity are consistent with each other or whether one of the units is spiking etc...

Regards
James

Comment by Kodai Terashima [ 2016 Mar 08 ]

Adding CSV export button to history data screen is nice feature as well, adding the button next to "As plain text".

Comment by richlv [ 2016 Jun 10 ]

it might be worth also considering other structured formats - maybe json, which could even match zabbix api output somewhat ?

ZBXNEXT-3301 asks for such a structured data transfer for configuration entities

Comment by Pavel [ 2020 Nov 30 ]

This is a traditional feature for quick analytics. As products and methods of analysis spread, they will become more and more in demand among users.
The data should be opened in one click without transformation or cleaning.

sorting the values by ascending time would also be nice.





[ZBXNEXT-1718] CountOutput ignores permissions in several APIs Created: 2013 Apr 22  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 2.0.6, 2.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Pavels Jelisejevs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: actions, api, maps, permissions, screens
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In several APIs permissions can only be checked by retrieving the object and then filtering them on the PHP side. Since countOutput returns the data right after it is retrieved from the DB, permissions for such requests are not checked.

The following APIs are affected by this problem:

  • action
  • map
  • screen

This should be fixed using the code added in ZBX-6407.






[ZBXNEXT-1724] organise the screens page Created: 2013 Apr 24  Updated: 2013 Apr 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Neil Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: graphs, screens, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File munin_screen_example1.png    

 Description   

I really like the screens page, but it's ease of usability starts to deteriorate once there are many rows and columns - it's cumbersome searching for a graph

Ideally i'd like to be able to group graphs onto a section of the page and with the group heading being shown in a contents page.
Also each graph should have some text allowing a quick search for the graph via the browser find command.

  • attached is an example of how this is done in Munin.

thx
Neil



 Comments   
Comment by Oleg Ivanivskyi [ 2013 Apr 24 ]

Partially duplicate ZBXNEXT-154.





[ZBXNEXT-1760] zabbix proxies should not keep more than one lld rule result Created: 2013 May 27  Updated: 2013 May 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: 2.0.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

zabbix proxies keep item history if server can not be reached.
when server is reachable again, proxies send all that information.
this is normally desired, but doesn't work too well with lld rule results - we are only interested in the last one, and we do not keep their history anyway.

this also causes performance issues, as server is over and over analysing & applying outdated discovery results






[ZBXNEXT-1562] Provide milli second time in Zabbix frontend Created: 2013 Jan 09  Updated: 2013 Mar 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Simon Tsang Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: millisecond, nanoseconds, timestamp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux



 Description   

As Zabbix 2.0 has already supported nanosecond, it would nice if the frontend can support time in the resolution of milli second instead of second.

Thank you.



 Comments   
Comment by richlv [ 2013 Jan 09 ]

this probably should be optional - maybe user profile setting, or some way to dynamically enable/disable it.
nanoseconds, of course





[ZBXNEXT-1540] Enable Monitoring of Multiple Instances of Application on one Host via Templates Created: 2012 Dec 11  Updated: 2018 Jun 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Rob Brucks Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: applications, instances, multiple
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL 5 x86_64 using PostgreSQL Backend DB



 Description   

We have the need to monitor multiple running installations of the same software on one host.

In my particular case, multiple running installations of PostgreSQL RDBMS on different ports, but it can also be true for other applications such as Java, or Apache, etc. There is no easy way to describe the one-to-many relationship in the Zabbix configuration for a template.

To add to the complexity, each instance of PostgreSQL can have many databases, and the database name can be identical on two different running instances of PostgreSQL on the same server.

There needs to be some hierarchical relationship capability in Zabbix to describe and monitor these multiple application instances on one host. I have about 100 DB servers and I don't relish the thought of having to manually configure each running PostgreSQL instance and all the DBs in it within Zabbix.

I have managed to partially work around it by using auto-discovery and including the port number and database name as parts of the key, but Zabbix seems to get "confused" when I try to create dynamic screens from the auto-generated graphs.



 Comments   
Comment by Rob Brucks [ 2012 Dec 11 ]

Just to clarify, the dynamic screens only allow a host to be selected, which prevents me from selecting which instance of PostgreSQL to select.

I have two instances defined using the port numbers as part of the name "PostgreSQL Cluster 5432" and "PostgreSQL Cluster 5433".

Thanks,
Rob

Comment by Alex P [ 2018 Jun 15 ]

Just wondering, the request was back in Dec 2012, 5.5 years ago. Any update on it? 

With all on-going Docker conterization (and not only), the feature pretty much is the must. 

For example, currently if one runs two or more Apache App containers via Docker, then there is an ability to monitor only one (with duplicating templates).

 

@alexei, any comments on it? 

update ps: hmm, why user mentioning doesn't work here?





[ZBXNEXT-1525] separate Item and Discovery selection in the API. Created: 2012 Nov 22  Updated: 2013 Jan 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 2.1.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Eduards Samersovs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: api
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

For example in CHostInterface->get() option "selectItems" return all types of items include discoveries. It must be another option "selectDiscovery" to get only discovery items.
Situation where called API::Item()->get() with option 'filter' => array('flags' => null) must be separated - Items get through API::Item(), discovery through API::DiscoveryRule()






[ZBXNEXT-864] Improve overall usability of Zabbix GUI page layout Created: 2011 Jul 27  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.9.5 (alpha), 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 2
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We have number of usability issues in the front-end, which can be fixed relatively easy. There are few problematic areas:

  • page layout is not optimized: plenty of unused space on top
  • page navigation: actions (like, Create Host) are not located properly
  • menu is difficult to navigate
  • mass actions require at least 3 click to execute and are hidden in a drop-down





[ZBXNEXT-991] Trapper Checks authorization Created: 2011 Oct 07  Updated: 2012 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: matthias zeilinger Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: trapper
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

my suggestion:
if the server receives a trapper value with a key, which is not registered, put this "item" into a authorization queue.
the admin can accept or deny this check by simple on click.
if accepted, trapper item is automatic created on the host

would reduce the time of creating trapper checks

lg matthias



 Comments   
Comment by richlv [ 2011 Oct 10 ]

this might be quite tricky to implement (especially taking into account a possibility of sending a huge amount of such requests).

currently automated item creation can be performed with xml import or api





[ZBXNEXT-514] Map Link Label Alignment on multiple linked hosts Created: 2010 Sep 19  Updated: 2022 Dec 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: hamid sfandiari Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: label, maps, trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

500host,3000 item ,FREEBSD,


Attachments: JPEG File Untitled-1.jpg     JPEG File Untitled-2.jpg    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-2113 Ability to set coordinations of link ... Closed
is duplicated by ZBXNEXT-2991 add ability to manipulate the positio... Closed

 Description   

As the link label alignment is set to center on Zabbix Map, if a host has two or more link get erorr which two label got printed over themselves.

if a drop-down menu exist which we could set alignment of Link-Label through it (choices such as : beginig of line, center of line and end of line) , alignment problem could be solved.



 Comments   
Comment by richlv [ 2011 Jan 26 ]

request about multiple link offset/non-overlapping : ZBXNEXT-442

Comment by Nick Baumber [ 2015 Sep 29 ]

When\Will this be looked at as the request has been open for 5 years now.
Thanks

Comment by richlv [ 2015 Sep 29 ]

it is currently not on the roadmap.
one way to make sure features are developed is to finance them - if you are interested, see the development services

Comment by Markus Ingalsuo [ 2022 Dec 05 ]

This would be a very nice to have feature, since it really does limit map constellations where one wishes to display link details as a label on the link. The details of the link help understanding the problem and it's now not possible to make a visually less messy constellation in a spine-leaf -topology with more than a few nodes.

I use Zabbix daily and my gratitude for developing and maintaining it as open source software is unmeasurable. Also wow, getting a call from 2010 was a big surprise

Thanks and regards,

Markus





[ZBXNEXT-505] support hex and octal conversion to text/character/string Created: 2010 Sep 08  Updated: 2023 Oct 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.2, 1.8.3, 1.8.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ruud Boersma Assignee: Unassigned
Resolution: Unresolved Votes: 43
Labels: hexadecimal, items, preprocessing
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

openSUSE appliance


Attachments: XML File SNMPv2c Printers use external script.xml    
Issue Links:
Duplicate
duplicates ZBXNEXT-1444 Zabbix Lua Master Ticket Closed
is duplicated by ZBXNEXT-1888 allow to force parsing values as hex ... Closed

 Description   

Referring to this thread:
http://www.zabbix.com/forum/showthread.php?p=71466#post71466
and this solved call:
https://support.zabbix.com/browse/ZBX-2452

Some oid have hexadecimal values with spaces. this is solved in the call mentionen above.
Zabbix defaults to recalcutate to the numeric system. But some OID's out there needs to be recalculated to a string.
(example) This website uses the right calculation http://www.string-functions.com/hex-string.aspx
It comes to the following example:
OID value is = 32 38 C2 B0 43 2F 38 32 C2 B0 46
Remove spaces and calculate to string = 28°C/82°F



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 11 ]

It could done in scope of ZBXNEXT-1444. For better performance it should be supported natively.

Comment by Raymond Kuiper [ 2013 Dec 05 ]

I'm seeing the same sort of problem here (running 2.2.0).
When I query an SNMP OID that should contain an IP address, the device in question reports back this HEX-string:

"0A 85 98 FF" Which translates to "10 133 152 255" (add the dots and you have an IP address).

It would be nice if Zabbix could translate this numeric hex into a human-readable IP address.

Comment by Pavel [ 2014 Jul 05 ]

The same problem with Juniper.
Oid jnxBgpM2PeerRemoteAddr (and others) returns Hex-STRING: D5 85 A0 B1 which means IP-address 213.133.160.177 (in this example).
With Zabbix 2.2.2 I have to create external script for discover BGP table and convert such hex values to IP-addresses. It's working but not very convenient and effective.
The same conversion could be done for IPv6 addresses, and those hex-strings are too long for store as numeric values.

Comment by Alexander G. [ 2016 Mar 23 ]

The same problem with some HP printers when retrieving the consumables (e.g. toners) using OID 1.3.6.1.2.1.43.11.1.1.6.1. The names of that consumables will be shown as hex string. This is annoying especially when using discovery rules since the items got that hex string names.

You can reproduce that with Net-SNMPs snmpwalk as shown here for a HP printer model LaserJet 500 color M551:
> snmpwalk -v2c -c foo ps27 1.3.6.1.2.1.43.11.1.1.6.1.1
SNMPv2-SMI::mib-2.43.11.1.1.6.1.1 = Hex-STRING: 42 6C 61 63 6B 20 43 61 72 74 72 69 64 67 65 20
35 30 37 58 20 48 50 20 43 45 34 30 30 58 00

For snmpwalk a work around will help. Just add option -Oa:
> snmpwalk -v2c -Oa -c foo ps27 1.3.6.1.2.1.43.11.1.1.6.1.1
SNMPv2-SMI::mib-2.43.11.1.1.6.1.1 = STRING: "Black Cartridge 507X HP CE400X."

Comment by Daniil Pimonenko [ 2016 May 10 ]

Is issue closed?

Comment by Alexander G. [ 2016 May 11 ]

For my opinion it is not closed yet. Did Zabbix provide any update, I didn't see yet? I'm currently running Zabbix 3.0.2.

I stay in contact with HP. But I'm afraid that HP wont fix the firmware of their printers. HP says that some SNMP agents interpret the data as hex decimal value while the others interpret the data as octet string. If your SNMP agent does interpret the data as hex decimal value, you are not a lucky guy.

The problem occurs with some HP printers, because they sent a trailing zero byte. See my last post. You can force the Net-SNMP command line tools, to interpret the data as octet string by using the -Oa option. Again see my last post. Since Zabbix using the Net-SNMP library as well, it must be a simple way, to tell Zabbix to force the Net-SNMP library to interpret the data as octet string instead of as hex decimal value.

Comment by Joakim Plate [ 2016 May 16 ]

I actually ran into the opposite issue with hrPrinterDetectedErrorState. It ends up being interpreted as string, and thus is incompatible with the numeric type it needs to be.

Thus ut requires the -Ox option to work properly.

$ snmpwalk -c public -v 1 segotppl001 hrPrinterDetectedErrorState
HOST-RESOURCES-MIB::hrPrinterDetectedErrorState.1 = STRING: "\""

$ snmpwalk -c public -v 1 -Ox segotppl001 hrPrinterDetectedErrorState
HOST-RESOURCES-MIB::hrPrinterDetectedErrorState.1 = Hex-STRING: 22

Comment by Ryan Wagoner [ 2017 Nov 01 ]

I upgraded from CentOS 6 to 7 and am running into this issue. snmpwalk on CentOS 7 returns Hex-STRING for printer supplies OID 1.3.6.1.2.1.43.11.1.1.6 where as CentOS 6 returned STRING. It would be great to have this option in Zabbix. It looks like my only option right now is to write a discovery script.

Comment by Alexander G. [ 2017 Nov 07 ]

Solving this issue would make Zabbix to a even better software. I use the following perl script as work around:

use strict;

# Configuration variables
my $snmpwalk_command = "snmpwalk -On -Oa";
my $consumable_names_oid = ".1.3.6.1.2.1.43.11.1.1.6.1";
my $usage = "Error! Need at least 3 arguments: SNMP version, SNMP community and host name or ip address. \n E. g.: $0 2c public printer1";

# Get command line arguments.
my $snmpversion = shift || die($usage);
my $snmpcommunity = shift || die($usage);
my $hostoraddress = shift || die($usage);

# Print beginning of the JSON data string.
print "{\n";
print "\t\"data\":[\n\n";

my $first_element = 1;

foreach my $output (`$snmpwalk_command -v$snmpversion -c $snmpcommunity $hostoraddress $consumable_names_oid 2>&1`) {
        if ($output =~ /^$consumable_names_oid\.([0-9]+) = STRING: \"(.*)\"$/) {
                print "\t,\n" if not $first_element;
                $first_element = 0;

                print "\t{\n";
                print "\t\t\"{#SNMPINDEX}\":\"$1\",\n";
                print "\t\t\"{#SNMPVALUE}\":\"$2\"\n";
                print "\t}\n";
        }
}

# Print end of the JSON data string.
print "\n\t]\n";
print "}\n";
Comment by Konstantin Ilyasov [ 2018 Mar 10 ]

So the only option to convert hex-string values to string is using scripts?
We used snmp discovery for supermicro motherboards, but in the latest versions of their boards they began to use the hex-string for description of sensors and our discovery template stopped working.

Comment by Dirk Bongard [ 2018 Mar 26 ]

I have the same issue like Alexander G..
Is it possible to add the -Oa extension native somewhere?

Comment by René de Groot [ 2018 Oct 08 ]

Hi Alexander, Thanks for the script, although I still have some troubles getting the actual values. Would you be so kind to share your template?

Comment by Alexander G. [ 2018 Oct 10 ]

Here comes the template:

SNMPv2c Printers use external script.xml

You can also call the script from command line like this: ./discover_printer_consumables.pl 2c public printer

Where 2c stands for SNMP Version 2c, public is the SNMP community string and printer is the ip address or name of the printer.

Please make sure, that you copied the script in to the right location as cofigured in zabbix_server.conf by the parameter ExternalScripts (e. g. /usr/lib/zabbix/externalscripts).

Hope that helps!

Comment by René de Groot [ 2018 Oct 10 ]

Hi Alexander, Thanks for your help! It works great! (Zabbix 4.0)

Comment by Ildar Davletov [ 2019 Jan 30 ]

I hope this bug will be fixed until we celebrate 10 years... really ashaming.
Item preprocessing is not acceptable solution because it oftenly used with LLD, so it is hard to tell value will be string or hex-string.

Comment by omavel [ 2019 Jul 09 ]

One moar 10 years old FR... Hope never dies.

 

updated

Comment by Raymond Kuiper [ 2019 Jul 09 ]

It's not a bug, i't's a feature request. As such it's open for sponsored development, send an email to [email protected] if you'd like to have this implemented.

That being said, in Zabbix 4.2 it might be possible to use a pre-processing javascript to handle this conversion (although I haven't looked into that topic yet). Any confirmation from the Zabbix devs that this would be possible or not?

Comment by Vladislavs Sokurenko [ 2019 Jul 09 ]

That being said, in Zabbix 4.2 it might be possible to use a pre-processing javascript to handle this conversion (although I haven't looked into that topic yet). Any confirmation from the Zabbix devs that this would be possible or not?

Yes, it's possible, please try something like this:

var out = "";

for (var i = 0, nums = value.split(" "); i < nums.length; i++) {
	out += String.fromCharCode(parseInt(nums[i], 16));
}

return out;
Comment by Vadim Chekirka [ 2019 Nov 11 ]

Vladislav, thank you for you script, but in my case it working only in test mode, I added it to preprocessing and got error - "Invalid discovery rule value:"

Also I found somewhere that use {} inside function Zabbix doesn't support.

Any ideas?

Comment by Vladislavs Sokurenko [ 2019 Nov 11 ]

It should work the same way as during the test, can you please show the test output ?

Comment by Vadim Chekirka [ 2019 Nov 13 ]

discovery{#SERIALRWNAME},1.3.6.1.4.1.3212.7.1.3.4.1.1.1.2

Discovered name is - "22 53 6C 6F 74 20 54 68 72 65 00"

When I run through the script I have expected name as -  "Slot Thre

 

But today when I tested discovery I got new error - Invalid discovery rule value: cannot find pair with name "{#IFNAME}" when I remove preprocessing script discovering works.

Comment by Michel van Son [ 2019 Nov 25 ]

Vladislavs'  scripts works fine for a single hex value. If you use that in an LLD, it'll only replace the first value found.

I wrote this script to correct that:

var out = "";
var regex = /{#SNMPVALUE}":"([0-9 A-F a-f ]*) "}/;
var m;

do {
  m = regex.exec(value)
  if (m) {
    var str = "";
    for (var i = 0, nums = m[1].split(" "); i < nums.length; i++) {
      str += String.fromCharCode(parseInt(nums[i], 16));
    }
    value = value.replace(m[1], str);
  }
} while (m);

return (value);

You'll need to fiddle with the regex, watch for whitespaces etc.

Comment by Eugene [ 2020 Sep 17 ]

Hello everyone, and thanks to the unsubscribed above. There is a little problem with 0x00 symbol in the SNMP answer, so there is a  little modified JS for converts HEX to String, for Zabbix data collectors prototypes and items.

For discovery group:

var regex = /"{#SNMPVALUE}":"([0-9 A-F ]*) "}/;
var m;
do {
  m = regex.exec(value)
  if (m) {
    var str = '';
    hex = m[1];
	hex = hex.replace(/ /g,'');
    for (var n = 0; n < hex.length; n += 2) {
        if (hex.substr(n, 2) != '00'){
			str += String.fromCharCode(parseInt(hex.substr(n, 2), 16));
		}
    }
    value = value.replace(m[1], str);
  }
} while (m);
return (value);

And for prototypes of items:

 var str1 = value;
  var hex  = str1.toString();  
  if (! hex.match(/\b[0-9A-F ]{6}\b/gi))
  {
    return str1;
  }  else  {
      
      hex = hex.replace(/ /g,"");
      var str = '';
      for (var n = 0; n < hex.length; n += 2) {
        str += String.fromCharCode(parseInt(hex.substr(n, 2), 16));
      }
      return str;
  }

 

 

Comment by Ed Driesen [ 2021 Jul 07 ]

@Eugene , thanks!

Sorry for the noobish question, but where exactly do you put those snippets in (i'm using 5.0 lts)

Is it in one place for all (where?), or somewhere more global?

Comment by Alex Kalimulin [ 2023 Oct 23 ]

For the most part, this should be solved by ZBXNEXT-8645, which introduces the new preprocessing rule UTF-8 from Hex-STRING. The only bit from the original request that is not covered is octal conversion. Is the octal conversion real deal these days?





[ZBXNEXT-470] Expand (return) support of the Severity levels displayed in history for eventlog (needs for custom syslog solution). Created: 2010 Aug 07  Updated: 2015 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: severity, syslog
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

last trunk


Attachments: PNG File 1_1.8.1_events_severity.png     PNG File 2_1.8.2_events_severity.png     PNG File 3_1.8.1_real_syslog_DEMO.png     PNG File 4_1.8.3_real_syslog_DEMO12G.png     File zbxlog-r1.5.tgz    

 Description   

Please return and expand support of the Severity levels displayed in the history.

In version 1.8.1 the history of items supported the following severity levels to display (i.e. there were 5 different severity levels):

After ZBX-2077 (added support of Failure / Success Audit eventlog severity) severity levels of events became exactly as in Windows. At the same time in revision 10518 interpretation of events has been lost with for severity levels 3 and 5:

I ask to return severities 3 and 5, plus add a severity for 6.
Naming them as:
3 - Warning
5 - Critical (perfectly suited for ZBXNEXT-427)
6 - Emergency
All these levels currently are free, and for the future they will be quite universal names.

Why I'm asking:
I use and want to publish a solution I made (a script that is very beautiful and interesting treats Syslog) (both from servers and from different hardware).
Using items with Type of information "Text" is ideal for this situation.

Later a "zbxlog" solution has been published, which is much more complete than mine, see comments below.

The result can be seen on next two pictures:

This request would be convenient to perform with ZBXNEXT-427

Just information:
According to RFC3164 supports the following severity levels:
0 Emergency: system is unusable
1 Alert: action must be taken immediately
2 Critical: critical conditions
3 Error: error conditions
4 Warning: warning conditions
5 Notice: normal but significant condition
6 Informational: informational messages
7 Debug: debug-level messages

I plan to combine 6 and 7 as well as 0 and 1. That will be enough.



 Comments   
Comment by Oleksii Zagorskyi [ 2010 Aug 07 ]

I am a little confused and mistaken - support for "3 - Warning" is not necessary. Now it is in the severity of "2".

If you agree, perhaps more easily and correctly, will realize the severity for example in the new range of 10-17 but 100% accurate according to the RFC3164.
http://www.ietf.org/rfc/rfc3164.txt

Comment by Oleksii Zagorskyi [ 2010 Sep 15 ]

My last suggestion (new range 10-17) coincides with this excellent solution - zbxlog.
http://www.zabbix.com/forum/showthread.php?t=19180
There are ready-made patches.

Attaching sources archive here (v 1.5), just in case.
Main site is http://www.alixen.org/projects/zbxlog/files

Comment by Oleksii Zagorskyi [ 2012 Aug 31 ]

Just a note - currently in 2.0.2 the page "history.php" shows all columns (as for windows eventlog) only for items with a key "eventlog[...]"
I checked that and I see that it has been changed from 1.8.5 release.

Just in case see ZBX-2932

Comment by Oleksii Zagorskyi [ 2013 Jun 23 ]

ZBXNEXT-1798 asks more severities for triggers

Comment by Oleksii Zagorskyi [ 2015 Aug 25 ]

Just to keep things linked - there is another (a bit similar to zbxlog, though) solution for syslog monitoring.
http://habrahabr.ru/company/zabbix/blog/252915/ (on Russian)





[ZBXNEXT-513] Script Menu Grouping Created: 2010 Sep 18  Updated: 2012 Oct 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert Hau Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any



 Description   

It would be nice if we could group script together

Example:

Group 1
Script A
Script B
Script C
Script D

This would be useful on a map view.






[ZBXNEXT-449] Add support to zabbix agent net.if.out[if,qlen] and net.if.bandwidth Created: 2010 Jul 09  Updated: 2012 Oct 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Petrov Vladimir Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All



 Description   

It's be good if you add support to zabbix agent new parameters
net.if.out[if,qlen] - return current network queue on interace if
net.if.bandwidth[if] - return network bandwidth on interface like 100mbs
or add net.if.utilization[if] - return network utilization on if






[ZBXNEXT-472] add 'invert' option for the item configuration filter Created: 2010 Aug 10  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: filters, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

in item configuration filter an option to invert the filter would be useful.
so instead of selecting all items with a specific application or part of the key, all other items could be selected instead






[ZBXNEXT-466] auditlog filter improvements Created: 2010 Aug 06  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: filters, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

it should be possible to filter auditlog by ip



 Comments   
Comment by Oleksii Zagorskyi [ 2012 May 03 ]

Additionally it would be useful to have ability select several "Action" types to filter events.
For example I use API a lot to perform daily changes, so I would like to exclude "login" records from the view.
I.e. drop-down list could be replaced to the list with check-boxes (can be expanded and collapsed). For example how it's implemented in the Pootle for search strings.





[ZBXNEXT-433] it should be possible to disable maintenance Created: 2010 Jun 30  Updated: 2017 Sep 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: flexibility, maintenance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2492 Enable disable switching function in ... Closed

 Description   

Suppose we have a maintenance that puts all servers in maintenance at 20:00 daily. But this evening, for whatever reason, we do not want that maintenance, so we wish to disable it like we can everything else (actions, discovery, etc.). Currently, we have no way of doing this except, e.g., entering an "Active till" date that is in the past, which is not a very elegant workaround.



 Comments   
Comment by Janne Korkkula [ 2017 Sep 13 ]

Still a good idea. The text status column could be a toggling link, setting or clearing the Disabled status.





[ZBXNEXT-1673] Possibility to manipulate SLA by adding corrections Created: 2013 Mar 19  Updated: 2021 Nov 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Server (S)
Affects Version/s: 2.0.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: itservices, patch, sla
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, CentOS-6.3, PostgreSQL 9.1.8, Apache HTTPD-2.2.15, PHP-5.3.3


Attachments: File zbxNext1673-2.2.9.patch     PNG File zbxNext1673-MonitoringServices.png     PNG File zbxNext1673-ServicesConfiguration.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-6999 Advanced SLA reporting Closed

 Description   

SLA calculation in IT-Services might become a powerful feature.
Beside some minor limitations which actually won't prevent using it seriously, there is one thing that is crucial -at least in my opinion.

If SLA calculation is taken to represent the real service levels and shall be used for reporting and potentially even used for penalty, then there has to be a way to subsequently add corrections for defined time periods.

Such a correction could be defined on trigger level with parameter like 'Trigger status', 'Time period(s)' and 'Comment/Reason'.
For the case of an error that has extensive impact of SLA calculation, it would also be nice to have the possibility to recursively add a SLA-/Trigger-correction on higher levels as well.

These corrections have to be audited and be visible.
For non-graph views this could be a visual indicator with link/tool-tip to/about the corresponding corrections.
In graphs this could be noticeable by different colors.

A correction may not change the data a SLA is based of, it rather should be a separate definition that gets taken into account for on-demand calculation and displaying of SLA.

By this feature it would be possible to correct incorrect SLA calculations based on missing data or any kind of malfunctions in the processes of data collection.



 Comments   
Comment by Oleksii Zagorskyi [ 2013 Mar 20 ]

ZBXNEXT-334 is a bit related.

Comment by Stephen Dayman [ 2013 Oct 31 ]

The current SLA calculation is very useful for us and helps as a leading indicator of our performance but the correction mechanism is a problem. I would like the SLA correction at a child to cause the recalculation of the availability of the parent recursively. Currently I update the parent with uptime/downtime but this affects the calculation since I loose any availability data of other children.

Comment by Marc [ 2015 Jun 07 ]

Attached patch zbxNext1673-2.2.9.patch is an attempt to implement this request without making deep cuts - as always it's quick'n dirty hacked together without much thinking and testing

The idea is to use additional service times to either overrule OK or PROBLEM SLA periods.

While such "Correction periods" affect SLA calculation completely, details may be identified in the availability report (reports3.php) view only:

If a correction takes place within a SLA period, this is indicated by appending the effective correction period in orange to the regular OK/PROBLEM period values. So the regular values consider corrections and the the orange values indicate how much time was corrected.
On mouse-over a popup with responsible correction time services is displayed.

Btw, the nice thing about using service times is that no data modification is necessary. SLA data remains untouched, just the on-demand calculation is affected.

Comment by Alexei Vladishev [ 2021 Oct 13 ]

Support of excluded downtimes is coming in Zabbix 6.0 LTS soon. We are working on it.

Comment by Alexei Vladishev [ 2021 Nov 16 ]

It is under development in ZBXNEXT-6999





[ZBXNEXT-1671] provide cli utility to list ipmi sensors Created: 2013 Mar 18  Updated: 2013 Mar 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: ipmi
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

our current ipmi discrete sensor documentation suggests to enable debuglevel4 to print out discrete sensors. this is not very user friendly... also not that easy to do, as it requires zabbix server restart and on a larger system - digging through hundreds of megabytes of logs.

it would be great to split out/reuse that code for a very simple cli utility to print out discrete sensors the way we need them

https://www.zabbix.com/documentation/2.2/manual/config/items/itemtypes/ipmi



 Comments   
Comment by Oleksii Zagorskyi [ 2013 Mar 18 ]

Isn't it possible to use any existing ipmi related tool ?

Comment by richlv [ 2013 Mar 18 ]

according to andris, they do not output data in the reliable format we need

Comment by Andris Mednis [ 2013 Mar 18 ]

For example, "ipmitool" shows about "CATERR" sensor:

$ ipmitool -v -U zabbix -H 192.168.xxx.xxx -I lanplus -L user sdr type "Processor"
Password: 
Sensor ID              : CATERR (0x68)
 Entity ID             : 3.96 (Processor)
 Sensor Type (Discrete): Processor
 Assertions Enabled    : Digital State
                         [State Asserted]
 Deassertions Enabled  : Digital State
                         [State Asserted]

or

$ ipmitool -U zabbix -H 192.168.xxx.xxx -I lanplus -L user sensor list all
...
CATERR           | 0x0        | discrete   | 0x0000| na        | na        | na        | na        | na        | na

Free-IPMI shows:

$ /usr/sbin/ipmi-sensors -l USER -h 192.168.xxx.xxx -u zabbix -P
ID | Name             | Type                   | Reading    | Units | Event
...
19 | CATERR           | Processor              | N/A        | N/A   | 'OK'

The output is nicely decoded and formatted but it was difficult for me to determine the value of "Reading type code" and "Sensor type code" without guessing. Even sensor name does not always have to be ASCII or UNICODE-encoded, according to IPMI specifications it could be a binary encoded string. Therefore I decided to show exactly numerical values of attributes in Zabbix logfile:

  8358:20130318:111122.170 Added sensor: host:'192.168.xxx.xxx:623' id_type:0 id_sz:7 id:'CATERR' reading_type:0x3 ('discrete_state') type:0x7 ('processor') full_name:'(r0.32.3.0).CATERR'

If we could find a utility which shows values precisely, the problem would be solved.





[ZBXNEXT-1009] Monitoring multiple application instances per server Created: 2011 Oct 24  Updated: 2014 Apr 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ivan Pozdeev Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

http://www.zabbix.com/forum/showthread.php?t=23408

The basic idea is to use a single template with different parameters

This is possible though:
1) Parametrized templates
2) A separate host entry for each instance



 Comments   
Comment by Ivan Pozdeev [ 2012 Oct 20 ]

I see someone finally got their hands on this subject. Unfortunately, I no longer work for the company I planned this for. (but still consider this a big improvement)

Comment by Rob Brucks [ 2012 Dec 03 ]

This would be huge for DB monitoring.

It is possible to have multiple instances of just about any RDBMS (DB2, MySQL, MS SQL, Oracle, and PostgreSQL) running on the same server but on different ports (and we frequently do here).

To make things even more complicated all of them (except Oracle) allow you to have multiple DBs in a single instance, which makes trying to set up monitoring a difficult task since there is no one-to-many relationships for templates.

If there was a way to be able to have some type of hierarchy of templates for a single host with parameterized templates this would make it far easier to set up monitoring.

I bet there are other applications that could also benefit, such as Java.

Thanks,
Rob

Comment by Nicola V [ 2014 Feb 13 ]

Hi, we'd also love to see this feature implemented.

Comment by Little Martian [ 2014 Apr 16 ]

Indeed this is what i'm looking for but i suspect Zabbix was designed from the hardware point of view (the host is the tree root for all the definitions, that is why the item name is unique per host) and seems to be very good at that. What I need is a Zabbix designed from the application point of view, where the tree top level is the application and not the host.

This can be accomplished but I suspect the Zabbix DB arhitecture needs some changes and possibly a lot of changes in the server logic.





[ZBXNEXT-865] permissions issue on maintenance and remote command configuration pages Created: 2011 Jul 28  Updated: 2019 Jan 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.5, 1.9.4 (alpha)
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Kodai Terashima Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: consistency, maintenance, permissions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   
  • HostA belong HostGroupA
  • HostB belong HostGroupB
  • HostA and B belong HostGroupC
  • UserX has "read/write" authority to HostGroupA and C, and "deny" authority to HostGroupB

In this situation, there is authority issue on maintenance and remote command configuration screen.

1. maintenance configuration screen

UserX can select HostGroupC in maintenance configuration screen, and the operation affect HostB though User X has "deny" authority to HostB.

2. remote command configuration screen

UserX can set "HostB:command" and "HostGroupC#command" and these commands are executed



 Comments   
Comment by richlv [ 2019 Jan 22 ]

Would the maintenance part be a duplicate of ZBX-2520?





[ZBXNEXT-1101] Windows Agent User Parameter Powershell variant Created: 2012 Jan 31  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Pierre-Emmanuel Turcotte Assignee: Unassigned
Resolution: Unresolved Votes: 16
Labels: UserParameters, agent, items, usability, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows 2003, Windows 2008,


Issue Links:
Duplicate
Sub-task
depends on ZBXNEXT-7021 Add new key for PowerShell commands s... Open

 Description   

Currently, it is possible to lauch powershell scripts using the User Parameter feature of a Windows agent. However, this works in a limited fashion since some parameters cannot be correctly passed through ??%systemroot%\system32\windowspowershell\v1.0\powershell.exe. For example, if we launch a script which requires a * somewhere in the parameters, it generates an error.

For example the user parameter would be:
UserParameter=oracle.10g.query[*],%systemroot%\system32\windowspowershell\v1.0\powershell.exe -nologo C:\Zabbix\Scripts\Zabbix_Oracle10gQuery.ps1 -TNS $1 -User $2 -Password $3 -IntegratedSecurity $4 -Query $5
The query parameter would be "SELECT COUNT FROM someTable". Although the script works fine directly called in a PS environment. It breaks when called through the CMD.EXE environment.

If we could have, say a User Parameter that uses the cmd.exe like we have now, AND a PSUser Parameter that directly invokes PS commands. This would be alot more powerful and would be much more geared towards the futur Windows environments.

Thank you alot for you time and all your efforts.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Feb 01 ]

Additional benefit could be in improvement of non-ASCII returned data.
Quote from http://www.zabbix.com/forum/showpost.php?p=69032&postcount=12 :
"Короче зацепило все же побороть проблему, вплоть до смены интерпретатора cmd на .... гммм... нет вариантов"

It's forum topic (in Russian) http://www.zabbix.com/forum/showthread.php?t=14879

Comment by Pierre-Emmanuel Turcotte [ 2012 Feb 02 ]

OK... I found a workaround. Not really a workaround, it is how I should've done it in the first place.

If I pass the SQL statement to powershell from cmd.exe inside single quotes, it works. And if I pass the single quoted statement to the zabbix agent inside double quotes, everything seems to work fine.

I am happy now. But I still beleive an independant PSUser Parameter would be awesome instead of jumping through hoops with the User Parameter to pass powershell commands would be awesome.

The finale configuration would be:

In the zabbix agent config file:
UserParameter=oracle.10g.query[*],%systemroot%\system32\windowspowershell\v1.0\powershell.exe -nologo C:\Zabbix\Scripts\Zabbix_Oracle10gQuery.ps1 -TNS $1 -User $2 -Password $3 -IntegratedSecurity $4 -Query $5

And the passed powershell command (argument $5) would be

"'SELECT COUNT FROM someTable'"

Again, single quotes inside double quotes seem to de the trick.

Comment by richlv [ 2013 Oct 07 ]

that sounds like basic rules about proper quoting in shells, seems to me that there's nothing to change here

Comment by Mārcis Lielturks [ 2015 Sep 09 ]

I would say that having Zabbix item that runs PS commands would be necessary ("system.run.ps[], system.psrun[] or whatever). Maybe CMD is not going away, but it is very inconvenient to use items like

system.run[powershell.exe -nologo ........ -command "somecommand where I have to double-escape quotes"


and PowerShell doesn't seem to be a temporary thing so adding item for running PS commands shouldn't hurt. Just assumption, but probably it would also speed up item polling, if agent wouldn't have to launch CMD just to launch PS from it.

Comment by Robin Hermann [ 2018 Jul 24 ]

any news?

please implement a function like system.run for powershell example = "system.run.ps"

It is really inefficient with "system.run[powershell.exe "command"]" (Zabbix Agent -> CMD -> PowerShell -> Command) and difficult because of the special charakters!





[ZBXNEXT-925] Improve low level discovery filtering with 'manual' filtering Created: 2011 Aug 26  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.9.5 (alpha)
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ghozlane TOUMI Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Right now, the low level discovery is fully automatic.
I 'd like away of dissociating the discovery from the creation of the items/graphs etc.

the Idea is at the discovery step,

  • allow for full automatic with filteging (same as now)
  • OR manual filtering : provide a selectable list of returned information from discovery, and allow creation of the subitems/grahs/whatever.

when factoring in ZBX-3286, you can imagine having in the list all discovered items and previously discovered items with some kind of status, and the ability to remove the items.






[ZBXNEXT-654] Smart Item Sampling - Item dependencies Created: 2011 Feb 08  Updated: 2013 Jul 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Michael Wojcikiewicz Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: dependencies, items, sampling
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, mysql


Issue Links:
Duplicate
is duplicated by ZBXNEXT-1834 Flexible intervals by trigger Closed

 Description   

Due to the size of our plant (50,000+ hosts to be monitored, along with applications and middleware) we are thinking of ways to plan for capacity on our historical zabbix servers.

Someone suggested the idea of "Smart Sampling" where you might have a a few items defined as such:

item1: proc.num[my_proc]

item2: proc.mem[my_proc] if item1 > 0

where the second item is only sampled, if the first item has a value > 0... This translates to only tracking application metrics, if the application is running, greatly reducing the need for storing those values if the application isnt running 24/7.



 Comments   
Comment by richlv [ 2011 Feb 08 ]

just writing down ideas

1. there have been requests before about dynamically changing item intervals, but that has been mostly about reducing intervals when some conditions are met;
2. low level discovery most likely won't do for this, because it might nuke history if app is not running for a while, and interval of discovery won't do (too large usually);
3. this might be currently hacked with trigger->action->api update, but maintainability & ease of use of such a solution would be dubious. maybe the old idea of a media type "api" that hooks back into zabbix config can work as a foundation here ?

Comment by Marc [ 2013 Feb 06 ]

This would also significantly improve scenarios like this:
Item1

UserParameter=openvz.ubc.update,/usr/bin/sudo /usr/bin/install -o zabbix -g zabbix -m 440 /proc/user_beancounters /var/log/zabbix/user_beancounters && echo 0 || echo 1

Item2 -> Item106

UserParameter=openvz.ubc[*],/usr/bin/tac /var/log/zabbix/user_beancounters | awk '/$1/{print $(NF-5+$2);exit}'

The items 2 to 106 are based on the information updated by item 1.
By the requested functionality items 2-106 are always and only determined after new information is available.





[ZBXNEXT-698] Able to draw links with corners in the map editor. Created: 2011 Mar 11  Updated: 2015 Apr 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Attilla de Groot Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 5
Labels: flexibility, maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux Debian


Attachments: PDF File AMS-IX-Platform-2010-H2.pdf     PNG File maps.png    

 Description   

When creating a map for a large network it becomes unusable, because links can only be straight lines. Please consider the two attached files. One is a partly setup map for the complete environment that you can see in the pdf.

As you can imagine, it won't be possible to put in labels for each backbone link without overlapping them. If I would be able to draw the links with a corner in it (als is possible in most drawing tools), this would be possible.



 Comments   
Comment by Raymond Kuiper [ 2015 Apr 03 ]

I'm currently using a 4 pixel transparent .png file as a connector to draw hard corners.
This is OK for a workaround, but it would be better to define corners or arcs directly.





[ZBXNEXT-1277] Would be nice to add to the GUI installation wizard to the 3-rd step ("Check of pre-requisites") check of the fact is Zabbix DB converted to UTF-8 or not Created: 2010 Aug 09  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: configwizard, installation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Would be nice to add to the GUI installation wizard to the 3-rd step ("Check of pre-requisites") check of the fact is Zabbix DB converted to UTF-8 or not.

If DB is not converted to UTF-8 then do not allow to continue the installation or show the warning message.






[ZBXNEXT-6564] Support Bearer Authentication for HTTP Agent Created: 2021 Mar 17  Updated: 2024 Feb 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Zhenua Prot. Assignee: Andris Zeila
Resolution: Unresolved Votes: 23
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Add bearer token support with keycloak / openid for HTTP Agent checks.

There are cases when data is received from the API and bearer authentication is mandatory. Therefore, we need to automatically receive a bearer token in zabbix server from the iam server before the API is called.

the solution can be represented as follows
a) add client_id, client_secret, (username/password are optional) to zabbix
b) add auth server url, realm name (example for keycloak https://iam.server/auth, which containts https://iam.server/auth/realms/RealmNameHere/.well-known/openid-configuration)
c) when http agent is running, zabbix sends a request to the iam server to receive a token and then connects to the destination point with this token
d) token has a lifetime and can be reused many times during its lifetime.
e) when the token expires - a request is sent to iam server to receive/renew a new token (for these purposes there is a refresh token, but it is also limited by the SSO session lifetime, at the expiration of which a new token must be obtained using credentials above)



 Comments   
Comment by Piotr Jesu [ 2023 Apr 21 ]

Bearer auth is also used with Microsoft Graph API services (https://learn.microsoft.com/en-us/graph/api/servicehealth-get?view=graph-rest-1.0&tabs=http)

Comment by Mateusz Pelpliński [ 2023 Jun 30 ]

Same issue here. We would like to avoid using external scripts to authenticate with MS Graph. I think it should be possible from Zabbix directly.

Comment by Ken Buska [ 2024 Jan 31 ]

our EMS API requires a token. This is a major issue, what have people done to work around this?

Comment by Nicola Mauri [ 2024 Feb 01 ]

Hi Ken, currently the only option is to create a Script item to manage token authentication with some javascript code. You can find some examples in recent official templates too.





[ZBXNEXT-6392] Introduce separate checkboxes for 'history' and trends' compression. Created: 2020 Dec 09  Updated: 2022 Nov 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 5.0.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Evren Yurtesen Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2020-12-09-20-22-30-528.png     PNG File image-2022-11-03-23-38-04-761.png    

 Description   

There is only 1 check box for `history` and `trends`

This is not very optimal because manual says:

https://www.zabbix.com/documentation/current/manual/appendix/install/timescaledb

In order to use partitioned housekeeping for history and trends, both 
these options must be on. It's possible to use TimescaleDB partitioning 
only for trends (by setting Override item trend period) or only for history (Override item history period).

However setting such setting seems to cause problems like this:
https://www.zabbix.com/forum/zabbix-troubleshooting-and-problems/411045-housekeeper-cannot-delete-data-compressed-timescaledb

zabbix_server.log

2344843:20201209:183048.122 [Z3005] query failed: [0] PGRES_FATAL_ERROR:ERROR:  cannot update/delete rows from chunk "_hyper_2_1761_chunk" as it is compressed
 [delete from history_uint where itemid=321560 and clock<1606926413]

postgresql

2020-12-09 16:31:58.036 UTC [378539] zabbix@zabbix ERROR:  transparent decompression only supports tableoid system column
2020-12-09 16:31:58.036 UTC [378539] zabbix@zabbix STATEMENT:  delete from history_uint where itemid=482471 and ctid = any(array(select ctid from history_uint where itemid=482471 limit 5000))

 

It would be desirable to have 3 different settings.

1- Compress trends (uint/float)

2- Compress history (uint/float)

3- Compress history (log/str/text)

The reason is, in many cases as uint/float values get into trends, the data amount gets less with some resolution loss. However the string history is lost completely. There is a distinct difference. One may want to keep string values stored longer (unless if there is a way to make some sort of string trends?)

Therefore the housekeeping for History items should also be divided into 2 sections. The items which can move on to trends vs the ones which can't (string).

It also should not be possible to disable housekeeping overrides before compression is disabled. Because doing so is fundementally incorrect.



 Comments   
Comment by Everaldo Santos Cabral [ 2022 Nov 04 ]

Do we have any news?





[ZBXNEXT-6467] LLD override of item and trigger descriptions Created: 2021 Jan 22  Updated: 2021 Jan 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrei Gushchin (Inactive) Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be great extension to add to the override feature an object - description for triggers and items.






[ZBXNEXT-6466] sudo for log item key Created: 2021 Jan 21  Updated: 2023 Mar 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N)
Affects Version/s: 4.0.27, 5.0.7, 5.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aigars Kadikis Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

By default, Zabbix agent under Linux environment runs under user 'zabbix'.

Most of the times when we need to monitor a log file, we need to add extra permission.

For example, to monitor 'oracle' related logs, we need to do is to assign user 'zabbix' to group oracle. This approach is relatively convenient.

But sometimes a log is not produced by a dedicated application user, for example, /var/log/messages, /var/log/syslog

Currently, one way is to have 'AllowRoot=1' in agent which is too much. We can whitelist and blacklist some agent keys starting with 5.0.

To go out from problem we can assign a custom user group for the file. chown zabbix:root /var/log/messages

Now it's also required to install a custom rule for log rotation

 

It would be nice to have an option (an override) to fork the log item key under 'sudo' environment.






[ZBXNEXT-6597] opnsense - Error ACTIVE CHECKS on port 10051 Created: 2021 Apr 01  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 5.0.9
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: maxquarta Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

1) When i Start the zabbix agent appear this Error in Log File

active check configuration update from [ip-server-zabbix:10051] started to fail (cannot connect to [[ip-server-zabbix]:10051]: [4] Interrupted system call)

2) Telnet ip-server-zabbix 10051 it's ok , if i try to execute telnet command on ssh console

3) my configuration file /usr/local/etc/zabbix_agentd.conf

#

  1. Automatically generated configuration.
  2. Do not edit this file manually.
                        1. GENERAL PARAMETERS #################

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogType=file
LogFile=/var/log/zabbix/zabbix_agentd.log

LogFileSize=100
DebugLevel=3

SourceIP=172.16.1.5

EnableRemoteCommands=0
LogRemoteCommands=1

Server=ip-server-zabbix
ListenPort=10050
ListenIP=0.0.0.0

ServerActive=ip-server-zabbix

Hostname=1863109c-5f32-4bf8-8cc7-5653ba1958db
HostMetadata=172.16.1.5_linux

StartAgents=3
RefreshActiveChecks=120
BufferSend=5
BufferSize=100
MaxLinesPerSecond=100

                        1. ADVANCED PARAMETERS #################

Timeout=10
AllowRoot=0
User=zabbix
Include=/usr/local/etc/zabbix_agentd.conf.d

              1. USER-DEFINED MONITORED PARAMETERS #######
                4) this path /usr/local/etc/zabbix_agentd.conf.d is empty


 Comments   
Comment by maxquarta [ 2021 Apr 01 ]

in another opnsense device ,in my Environment, i have installed and configured the same zabbix-agent 5.0.9 version and i don't have any problem

Comment by a7lan [ 2021 May 21 ]

Sorry, wrong ticket





[ZBXNEXT-6550] Customize trigger severity on discovered trigger Created: 2021 Mar 05  Updated: 2022 May 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 5.0.9
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: H.L. Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: lld, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

tl;dr: Please make it possible to customize trigger severity on discovered triggers.

Most IT systems are in inhomogeneous environments and therefore have differently important things to monitor. To keep costs and efforts low we use LLD as much as possible on all systems we monitor. But often it is important to be able to change the severity of a lld discovered trigger because there are things more important than others. Let's say you have a network switch with 200 interfaces, but some interfaces are just more important than others. And these important interfaces are different on almost every device. Or lets say you are monitoring different filesystems which are all discovered by LLD. But some filesystems on some hosts are just more important than others.

It is so frustrating not to be able to change the severity on these discovered triggers per host.

And no, changing the severity on prototype level, as suggested in ZBX-18582 is no alternative at all . This means I would either change the severity of all discovered triggers, which doesn't help here. So we need any filter criteria on device items to differentiate between important and not so important things combined with two or more low level discoveries. The problem is, you don't always have any filter criteria to differentiate. Some things are just more important because of topology and you can't say which one in an lld.

So, please make it possible to customize trigger severity on discovered triggers.

Thank you,

Holger

Steps to reproduce:

  1. Open a discovered trigger (from a discovery job) and try to change the trigger severity

Result:
Cannot change trigger severity, all options are greyed out
Expected:
Should be able to change trigger severity for each discovered trigger



 Comments   
Comment by H.L. [ 2021 Mar 10 ]

Today I have a host with a lot of VPN tunnel interfaces, all discovered by lld. Now there are some very unimportant VPN tunnels, which I would like to set to severity information . But there are also some very important VPN tunnels, which I need to set to severity high.

Now I have to create several regular expressions with a list of tunnel interface ids. Then I need to create several low level discoveries filtered on these regular expressions just to be able to have different trigger severities. And I have to do all this for every severity level which I would like to use. This is so utterly complicated.

If I could change the severity, I would click on the lld trigger of this host, change severity, update, done.

Comment by Sebastian V. [ 2022 May 23 ]

+1 for us here using Zabbix too.

We are using discovery rules to detect MSSQL databases. Some of these are really unimportant and we don't want to send out alerts to the DBA team for them. But important and non-important databases can reside on one host. Changing the trigger prototype is not a solution in any way.

I think for us this is by far the single biggest problem we have right now. I wanted to solve it with tags, but I can't even use tags to filter alerts from these triggers - they must be inherited.

Zabbix team, could you provide some more information about this? It would be greatly appreciated

 





[ZBXNEXT-6551] Whether the Zabbix network topology function can add elements to the map through the API Created: 2021 Mar 08  Updated: 2021 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 4.0.28
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: 苟亚材 Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. I created a map in Zabbix
  2. I want to add network devices to the Map through the Zabbix API
  3. I refer to the API documentation, and there are only a few methods about operating on the map, such as create, get, delete, and update
  4. May I ask whether Zabbix can realize this requirement at present

Result:

Expected:

 






[ZBXNEXT-6872] Increase max amount for StartPollers Created: 2021 Aug 27  Updated: 2024 Jan 19

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 5.0.14
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgars Melveris Assignee: Andris Zeila
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2024-01-18-16-02-43-909.png    
Issue Links:
Duplicate

 Description   

On certain environments with many slow devices it might help if more than 1000 pollers could be started.
For example we need to add an additional proxy only because existing proxy with 1000 pollers can only handle ~1000 NVPS. Above that pollers become 100% busy.
Problem is caused by slow devices, but being able to just start more Pollers could help in such scenario.



 Comments   
Comment by Edgar Akhmetshin [ 2021 Aug 27 ]

https://support.zabbix.com/browse/ZBXNEXT-4428
https://support.zabbix.com/browse/ZBXNEXT-5080

Comment by Craig Hopkins [ 2022 Jun 30 ]

Please, please can we have more pollers? My Zabbix server is highly under-utilised as the max pollers is limited to 1000. 

Comment by Yury Larin [ 2022 Nov 16 ]

Hi,

I have medium size Zabbix installation with a few proxies. I have to collect a lot of data via SNMP from Ciscos. But the issues - I hve mostly slow (5 kBit/s) Satellite links to them.

Right now I use 1000 StratPollers and it just enough for now. But we are growing and it would be really nice to be able to inscrease it to 5000 or better to 10000. The server has plenty of resources to do this. Installind additionall proxy only because of this limit is inconvienient...

Thanks.

Comment by David Parker [ 2024 Jan 18 ]

Adding my $0.02:  I ended up patching one of my proxies to allow > 1k pollers and it did in fact fix the problem I was having.

It's PR-5636 in the customer service desk titled "Max pollers on a proxy".  We have been running a patched 6.0 proxy like that for over a year with no issues.  I turned the value up to 2000 in my patch, but am actually running with this:

StartPollers=1500

It'd be really nice if you guys got this in before we upgrade to 7.0 - else we're going to have to by-hand patch again.

[edit added below]

The file to edit is src/zabbix_server/server.c in the source tree.

 

[second edit - added below]

The above is for the server - for the proxy modify proxy.c - looks the same.

 





[ZBXNEXT-2735] Liboping as an alternative to fping Created: 2015 Mar 06  Updated: 2015 Mar 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Evgenii Terechkov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: fping, icmpping, privilege
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

As a more scalable and robust alternative of (tricky) fping utility, consider support of Liboping or similar library. It will decrease resources usage by server and proxy and should avoid current problems with fping-s output parsing line-by-line.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Mar 07 ]

hmm, interesting of course.
What I found:

The liboping is existing long time already and seems is alive. It's good.

I tried an oping application - it demonstrates the library's abilities:
Next command just hangs after first echo reply (3 requests with 50 ms interval, no way to set timeout):

# oping -c3 -i50 zabbix.jp

I could not stop it by Ctrl+c - it doesn't react at all. Sent it to background by Ctrl+z and then killed with -9 level.
version is 1.7

Ok, this is just a demo application but we need the library.
Lib possibilities are here: http://noping.cc/manpages/ping_setopt.3.html
Looks like there is possible to set timeout but no way to set number of requests and interval between them.
So to support current zabbix icmpping* items - zabbix server will need to handle multiple requests and intervals in its own code.
Maybe it's not so bad as fping has its own strange things like mentioned in ZBX-5893 and I don't think they will be once resolved by fping's maintainer.

Also, the oping binary also has SUID flag enabled.
Maybe it's stupid, but question is - if use liboping with zabbix - would zabbix_server binary need to be run under root only to perform icmp check with allowed small values of interval etc ?
Probably not - but I'm not sure.

Comment by Evgenii Terechkov [ 2015 Mar 07 ]

I sure you are right about SUID bit on executables. Process needs to run under root user to create raw sockets and produce ICMP packets (on Linux kernel). It is apply to any such utility (ping,traceroute, mtr, fping, oping, ...). Usual way to handle such situation for long-running daemons is run under root, fork privileged process with just enough capabilities and drop superuser privileges in parent process (with further IPC with privileged helper). Obvious example for such method is openntpd daemon.

Comment by Oleksii Zagorskyi [ 2015 Mar 07 ]

Thanks!
Privileges separation (for agent) also was discussed in ZBXNEXT-195





[ZBXNEXT-2695] Filter option to group by trigger name Created: 2015 Feb 01  Updated: 2021 Jul 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.7
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: enterprise, filter, patch, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File zbxNext2695-2.2.9-2.patch     File zbxNext2695-2.2.9-3.patch     File zbxNext2695-2.2.9.patch     PNG File zbxNext2695-2.png     PNG File zbxNext2695-3.png     PNG File zbxNext2695.png    
Issue Links:
Duplicate

 Description   

How about having a filter option to group triggers by name to eliminate same triggers from several hosts?

This might significantly improve getting an overview, when monitoring tens of thousands hosts and making use of templated triggers.
Especially when somethings goes really bad and many triggers of many hosts fire.



 Comments   
Comment by Marc [ 2015 Feb 01 ]

Just to get the idea:

zabbix=# SELECT t.priority,
zabbix-#        t.value,
zabbix-#        max(t.lastchange) AS lastchange,
zabbix-#        count(*) AS hosts,
zabbix-#        t.description
zabbix-# FROM triggers t
zabbix-# WHERE NOT EXISTS
zabbix-#     (SELECT NULL
zabbix(#      FROM functions f,
zabbix(#           items i,
zabbix(#           hosts h
zabbix(#      WHERE t.triggerid=f.triggerid
zabbix(#        AND f.itemid=i.itemid
zabbix(#        AND i.hostid=h.hostid
zabbix(#        AND (i.status<>0
zabbix(#             OR h.status<>0))
zabbix-#   AND t.status=0
zabbix-#   AND t.value='1'
zabbix-#   AND t.flags IN ('0',
zabbix(#                   '4')
zabbix-# GROUP BY t.description,
zabbix-#          t.value,
zabbix-#          t.priority
zabbix-# ORDER BY lastchange DESC,
zabbix-#          t.priority DESC,
zabbix-#          hosts DESC,
zabbix-#          t.description
zabbix-# LIMIT 20;
 priority | value | lastchange | hosts |                                                                       description
----------+-------+------------+-------+----------------------------------------------------------------------------------------------------------------------------------------------------------
        2 |     1 | 1422817510 |     6 | Too many processes on {HOST.NAME}
        2 |     1 | 1422815495 |    17 | Free disk space is less than {$FS_SIZE_PFREE}% on volume /
        3 |     1 | 1422813851 |    11 | High RAM utilization by OpenVZ containers
        2 |     1 | 1422808513 |    14 | Unspecified Java-Exception occured
        2 |     1 | 1422808423 |     2 | Free disk space is less than {$FS_SIZE_PFREE}% on volume /admin
        2 |     1 | 1422800896 |     6 | The TDP for Oracle application client continues processing, but problems might occur later as a result of this warning
        2 |     1 | 1422800896 |     6 | The Tivoli Data Protection application client continues processing, but problems might occur later as a result of this warning
        1 |     1 | 1422758078 |    29 | TSM file system backup transferred more than 1 GByte of data
        1 |     1 | 1422757287 |     1 | TSM file system backup transferred more than 5 GByte of data
        2 |     1 | 1422754440 |    11 | No scheduled TSM event since two days
        1 |     1 | 1422743574 |     2 | Scheduled TSM event running
        2 |     1 | 1422634562 |     7 | Free disk space is less than {$FS_SIZE_PFREE}% on volume /opt
        3 |     1 | 1422631221 |     3 | High allocated memory utilization by OpenVZ containers
        3 |     1 | 1422626070 |     6 | Zabbix agent on {HOST.NAME} is unreachable for 5 minutes
        3 |     1 | 1422538769 |    22 | The TSM Backup-Archive Client encountered an error during processing. Processing might stop. User response might be required.
        3 |     1 | 1422440710 |    11 | The Tivoli Data Protection application client encountered an error during processing. Processing might stop. User response might be required.
        2 |     1 | 1422349914 |     4 | Free disk space is less than {$FS_SIZE_FREE}Byte on volume /
        3 |     1 | 1422328733 |    16 | At least one file could not be backed up by TSM due to unrecognised characters in file or path name.
        1 |     1 | 1422308402 |     9 | Local system time between Zabbix-Server and HSM differs more than five seconds
        2 |     1 | 1422305527 |    14 | The TSM Backup-Archive Client continues processing, but problems might occur later as a result of this warning.
(20 rows)

zabbix=#
Comment by richlv [ 2015 Feb 02 ]

this would probably make most sense as a separate widget/element in screens/dashboards

Comment by Marc [ 2015 Feb 02 ]

I like the idea of having a widget of that type. Such a widget might provide a more compact trigger overview in Zabbix screens and the dashboard.

Nevertheless, I'd still appreciate to have this option in Monitoring->Triggers too. That view is the primary place to identify what's going on and has to be addressed.
ZBXNEXT-2065 was created by the same intention - to keep Monitoring->Triggers usable when too much happens in large monitoring environments.

Having this feature implemented as widget only would indeed allow to use a screen instead of Monitoring->Triggers, when the latter becomes useless.
But that's the point. Since Monitoring->Triggers might became useless one looses the other important filter functionality and pagination needed to keep/get things under control.

Comment by Marc [ 2015 Mar 18 ]

Attached patch zbxNext2695-2.2.9.patch is a quick&dirty hack that adds a new report instead of extending filter options from Monitoring->Triggers view.

The report groups all active triggers by their hosts.
It allows to filter for minimum severity and host count.
Ordering is supported for each column.
Trigger names are hyper-links to Monitoring->Triggers having a filter set for triggers with that name.

This report makes no use of the Zabbix API at all.

This is just a PoC to see whether this is as valuable as expected and how it should be finally implemented.

Comment by Marc [ 2015 Mar 19 ]

Attached patch zbxNext2695-2.2.9-2.patch has a filter option to exclude triggers without unacknowledged events.
The hyper-link behind trigger names include now the respective severity and acknowledge selection as well.

Comment by Marc [ 2015 May 08 ]

Attached patch zbxNext2695-2.2.9-3.patch has an additional table column "Age" and slightly different table headings.

Comment by Marc [ 2018 Jan 11 ]

ZBXNEXT-4329 asks for Event correlation and problem deduplication.





[ZBXNEXT-2593] Allow to create host inventory in Zabbix API Created: 2014 Nov 14  Updated: 2016 Aug 03

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 2.2.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sergei Prutskikh Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: api, database, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In Zabbix API it is possible to create host with inventory, but if host is already created and inventory this host is disabled, it is not possible to update this host to create inventory.

in your API class CHost.php there is some additional code that restrict to create inventory while Host Update function.

Host update function actially call massUpdate function and here we see this code:

if (!isset($existingInventoriesDb[$hostId])) {
							$host = get_host_by_hostid($hostId);
							self::exception(ZBX_API_ERROR_PARAMETERS, _s(
								'Inventory disabled for host "%1$s".', $host['host']
							));
						}

Why you cant create new inventory for host if there is no inventory for host exists yet?



 Comments   
Comment by richlv [ 2014 Nov 14 ]

have you set "inventory_mode" to 0 or 1 as per https://www.zabbix.com/documentation/2.2/manual/api/reference/host/object ?

Comment by Aleksandrs Saveljevs [ 2016 Aug 03 ]

Is the problem still relevant for you?





[ZBXNEXT-2433] Smart self-health-monitoring to prevent falsely triggered events Created: 2014 Sep 02  Updated: 2014 Sep 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: falsepositives, monitor, nodata, timer
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

All the time working with Zabbix I wonder whether it could be possible to put some smart logic into the self-monitor/timer processes to prevent falsely generated events based on .nodata() trigger functions, when something goes terribly wrong - what is likely to happen due to the centralist approach

This could probably take internal events into consideration and/or be based on smart thresholds/profiles that may identify abnormal operation of Zabbix processes.

Now, the only way to achieve something similar to that (but by far not the same) is to create a central trigger that is based on internal items from which other nodata() triggers depend on.
I believe it's not necessary to explain the difference in usability, reliability and efficiency



 Comments   
Comment by Aleksandrs Saveljevs [ 2014 Sep 02 ]

Marc, could you please provide an example of a falsely generated event and how the suggested approach would solve that?

Comment by Marc [ 2014 Sep 02 ]

In theory everything that might lead time function based triggers to fire because of blocked or delayed processing in zabbix.

Zabbix knows what it does, resp. how busy it is very well. The idea is to give Zabbix the intelligence to use this information to differentiate between lack of data and possibly not yet available/processed data due to being overloaded or blocked.

I might be wrong but whenever I see for example a hystory-syncer or timer process being busy for longer than its respective maximum interval, it's likely to get alerts based on false-positives. At least for the elements that are assigned to the respective process.

Such a situation happened in the past by getting an unexpectedly high count of values (ZBXNEXT-2430) or maintenance expiration of lots of hosts (ZBX-8630). Just to name two scenarios.

There are lots of possible impacts. They could also be caused indirectly, for example by a bad performing database.
Anyway, I believe many of them, even when indirectly caused, could be identified by monitoring Zabbix internal items in connection with the knowledge about the data/process relations and its dependencies.





[ZBXNEXT-2523] Root permissions are required for item system.hw.chassis Created: 2014 Oct 19  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksey Chudov Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently root permissions are required for system.hw.chassis because the value is acquired by reading /dev/mem. It is very uncommon to run Zabbix Agent as root. So item system.hw.chassis is quite useless.

But the same information can be read from sysfs on modern Linux systems.



 Comments   
Comment by Aleksey Chudov [ 2014 Oct 19 ]

Sample output from my test server:

for file in /sys/devices/virtual/dmi/id/*; do printf "%-20s %s\n" "${file##*/}:" "$(<${file})"; done

bios_date:           07/11/2013
bios_vendor:         Dell Inc.
bios_version:        2.5.1
board_asset_tag:     
board_name:          1AM3CP
board_serial:        ..CN138415642GH0.
board_vendor:        Dell Inc.
board_version:       A02
chassis_asset_tag:   
chassis_serial:      D87C1Z1
chassis_type:        17
chassis_vendor:      Dell Inc.
chassis_version:     
modalias:            dmi:bvnDellInc.:bvr2.5.1:bd07/11/2013:svnDellInc.:pnPowerEdgeT110II:pvr:rvnDellInc.:rn1AM3CP:rvrA01:cvnDellInc.:ct17:cvr:
power:               
product_name:        PowerEdge T110 II
product_serial:      D89C5Z1
product_uuid:        4C4D4544-0038-3940-8044-C4C04F355A32
product_version:     
subsystem:           
sys_vendor:          Dell Inc.
uevent:              MODALIAS=dmi:bvnDellInc.:bvr2.5.1:bd07/11/2013:svnDellInc.:pnPowerEdgeT110II:pvr:rvnDellInc.:rn1AM3CP:rvrA01:cvnDellInc.:ct17:cvr:




[ZBXNEXT-2460] Container monitoring (docker, lxc) Created: 2014 Sep 16  Updated: 2018 Jun 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Jan Garaj Assignee: Unassigned
Resolution: Unresolved Votes: 23
Labels: container, docker, lxc
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Please provide support of container monitoring (not just docker, but some general solution) out of the box. IMHO containers can be handled like VM:

  • discovery of containers
  • CPU metrics: CPU user, CPU system
  • MEM metrics: ...
  • NET metrics: ...
  • IOP metrics: ....

Some metrics are available only if kernel is configured properly, otherwise metric can be unsupported. Also some of metric (network) can need root permissions - see resource 1.

Resources:
1.) gathering container metrics
http://blog.docker.com/2013/10/gathering-lxc-docker-containers-metrics/
2.) zabbix module docker (alpha release)
https://github.com/jangaraj/Zabbix-Docker-Monitoring
3.) google go implementation of container monitoring
https://github.com/google/cadvisor



 Comments   
Comment by Marc [ 2014 Sep 17 ]

ZBXNEXT-1947 asks for general virtual machine monitoring via libvirt.

Comment by Jan Garaj [ 2014 Sep 17 ]

Yes, ZBXNEXT-1947 seems to be the best solution. I voted for ZBXNEXT-1947.
I've found libvirt show stopper:

  • libvirt doesn't support docker by default, because docker doesn't use LXC, but libcontainer as the default execution environment from 0.9 - that's the reason, why I can't see my current containers
    http://www.infoq.com/news/2014/03/docker_0_9
Comment by Marc [ 2014 Sep 17 ]

So it's this feature request is about adding libcontainer API support and has nothing to do with is not related to LXC?

Comment by Jan Garaj [ 2014 Sep 17 ]

If libvirt supports libcontainer, then can be also problem with some metrics. You can measure CPU user and CPU system time per docker container. But I didn't find these metrics in libvirt documentation - only CPU time - http://www.libvirt.org/html/libvirt-libvirt.html#virDomainInfo.

IMHO libvirt can help with some tasks (e.g. discovery), but it doesn't cover all useful metrics - it's only general management tool.

This problem needs some deep investigation, but IMHO libvirt is not useful solution for Docker container monitoring at the moment.

Comment by Jan Garaj [ 2014 Sep 17 ]

Definitely this feature request is not about libcontainer, because it will be docker only solution. But it should cover container monitoring generally. It means docker, lxc, ...

For example CPU metrics are available for lxc in /sys/fs/cgroup/cpuacct/lxc/, for docker /sys/fs/cgroup/cpuacct/docker/. And they have the same format. This feature will implement processing of these metrics - it's similar as current CPU monitoring, but only system and user CPU time is available for container.

Comment by Marc [ 2014 Sep 17 ]

Well, when thinking about some other container based virtualization technology like AIX WPars, BSD jails, OpenVZ containers or Solaris zones which do not make any use of control groups, then I can hardly imagine how to commonly support them all - without implementing respective support individually, of course.

Comment by Jan Garaj [ 2014 Sep 18 ]

You're right. So I limit my request on container based on cgroups at least - they are very popular nowadays.





[ZBXNEXT-2457] Interfaceid shouldn't be mandatory for item.create Created: 2014 Sep 11  Updated: 2014 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 2.4.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Pavels Jelisejevs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: api, interfaces, item
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently to create an item, we always need to do a host.get request first to retrieve the ID of an interface first. In some cases it would be much more convenient if the "interfaceid" parameter for item.create was optional and would just take the main interface of the correct type.






[ZBXNEXT-2411] Smart response capturing of failed web scenario step Created: 2014 Aug 14  Updated: 2014 Dec 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.2.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: debugging, usability, webcheck
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This is very similar to ZBXNEXT-2172.

One major issue with more complex web scenarios is the fact that one is almost flying "blind".

You always only know at which step a web scenario failed and which criteria wasn't met.
But there is no information that might help (a frontend user) getting the root cause of an issue, which is often indicated by the web server's/application's response.
The upcoming feature of ZBXNEXT-101 may help but could only be considered as a work-around for privileged users and is of no added value to frontend users - what this issue is aimed to achieve

Well, capturing and storing the response of every response would be great, but is actually no option in terms of performance and efficiency. Even when having in mind that ZBXNEXT-844 is right around the corner

Storing the already buffered output/response into a corresponding item only for a failed step is what I currently think about.

An even more efficient approach could be to store the response only once the first time a step of a scenario failed.
For the time the scenario is in PROBLEM status, no further capture is stored.
A new capture of a failed step is only made when the web scenario previously recovered to OK status.



 Comments   
Comment by richlv [ 2014 Aug 15 ]

just wanted to note that "store the response only once the first time a step of a scenario failed." would not be good, as error could change and showing old, unrelated error would be terribly confusing

Comment by Marc [ 2014 Aug 15 ]

Yeah, the same came to my mind too. This could be circumvented by a reset option or by creating a smart hash that helps deciding whether something has changed and is worth to be stored.

From my point of view (at this site) saving the first n (k)bytes of every failed step would be totally fine.
Just had in mind that you folks have to keep in mind that things might work in much greater and more complex environments than the one at this place and wanted to make clear that any snippet of information would be great

Comment by richlv [ 2014 Aug 17 ]

we recently did something similar with agent item failure messages in the server log, so the principle should be clear to the devs (that is, to store latest content only if it's different from the previous failure)





[ZBXNEXT-2408] Add description field for host groups Created: 2014 Aug 12  Updated: 2022 Nov 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.3.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: thierry regis Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: description, hostgroups
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Frontend


Issue Links:
Duplicate
is duplicated by ZBXNEXT-6570 Add a 'Description' field to 'Host gr... Closed

 Description   

Hi

i am sure it as already been asked. but it would be great to had a description fiels also for Host Groups

It does not exist yet , and it could lead to many differents uses for extrenal script , external Front end , etc ....
Or simply for better identification of the role of the host group.

seems easy and really usefull for me.

Thanks again for great job.



 Comments   
Comment by Oleksii Zagorskyi [ 2014 Aug 13 ]

I believe this is a first time that such a feature is requested.

Comment by richlv [ 2015 May 22 ]

description for :

Comment by Nicola Mauri [ 2022 Nov 15 ]

Really sad that this feature has not been implemented yet.

It looks very easy to add, with minimal impact on database and other features.

In large installations we need to document the purpose of each hostgroup on external systems  (was it created for permissions? for alerting? for dashboards?) which is a real burden.

Zabbix configuration should allow some kind of auto-documenting.

 





[ZBXNEXT-2404] send multiple email notifications in one TCP connection to SMTP server Created: 2014 Aug 06  Updated: 2018 Jan 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Denis Volkov Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File mail.txt    

 Description   

Currently there are 2 problems with alerter:
1. For every alert it opens new connection. That means establishing new TCP session, SMTP negotiation (EHLO/HELO). For large volumes of emails that means lots of unnecessary actions. Many smtp servers allow to establish connection, issue EHLO/HELO and then generate more than one message thus reducing overhead (attached log of sending 2 messages over one session)

2. For every alert Zabbix generates separate message, while it can generate 1 message with lots of emails (I've seen such requests on forum). For example, we have 26 users in the group, they all got notified about problems in host group. If there are some serious problems in this group we got LOTS of emails. If the server uses public email server (gmail, aol, etc) for sending alerts it would be sooner or later banned for high volume of emails.
Zabbix has two variants for sending messages on trigger actions:
1) send message to specific user
2) send message to group of users
In the 1st variant there's no need to try to aggregate emails, Zabbix admin should think of it by himself
In the 2nd variant Zabbix do unnecessary and strange things - it parses group and creates separate notifications for every user. I guess this was done for unification of notification process, but I think it should be
But it could create one record in the alerts table: "notify group 7" and then alerter could do smth like: "select group_concat(sendto) from media where mediatypeid in (select mediatypeid from media_type where type=0) and userid in (select userid from users_groups where usrgrpid=7) group by mediatypeid;" (just plain dumb request, I think it could be written much better way). After this request we got list of recipients suitable for "To:" field in email.



 Comments   
Comment by Denis Volkov [ 2014 Aug 06 ]

Of course 2nd variant should be an option, as this variant suits perfectly for own mail server and often not suitable for public servers

Comment by Aleksandrs Saveljevs [ 2016 Feb 02 ]

The description currently mentions two separate ideas:

  1. sending several emails in one TCP connection;
  2. sending one email to multiple recipients.

These are likely to be solved independently, so let's move the 2nd idea to the recently registered ZBXNEXT-3126.

I shall update this feature request's title to reflect the 1st idea.

Comment by richlv [ 2018 Jan 04 ]

ZBXNEXT-4175 might have affected/implemented this feature request.





[ZBXNEXT-2396] Pretty URL's with mod-rewrite Created: 2014 Jul 30  Updated: 2014 Nov 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: tagwolf Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: url, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Right now it's very difficult to share graphs with people due to the URL structure.

Currently, URL's look like this: https://example.com/zabbix/charts.php?ddreset=1&sid=22be9c2b1000c012

I propose something like this: https://example.com/zabbix/chart/zbxsrv.example.com/

You could expand on it more too:

https://example.com/zabbix/[function]/[host]/[duration/item/etc]



 Comments   
Comment by tagwolf [ 2014 Jul 30 ]

FYI: This feature is heavily used in wordpress (which is open source) and is called "Pretty Permalinks"

Documentation is here: http://codex.wordpress.org/Using_Permalinks

Quote below:

Permalink Types
There are three basic types of WordPress permalinks:

Default: "Ugly"
The default looks like

http://example.com/?p=N
where N is the Post ID number. It works on all server environments, but it doesn't look as nice as some of the other options.

mod_rewrite: "Pretty Permalinks"
Using mod_rewrite or lighttpd you can produce much nicer permalinks (see Pretty Permalinks). There are many different formats, but the most common, and most versatile looks like

http://example.com/2012/post-name/
or

http://example.com/2012/12/30/post-name

Comment by Marc [ 2014 Jul 30 ]

Similar to ZBX-7059, isn't it?

Comment by richlv [ 2014 Jul 30 ]

7059 was specifically about excess sid presence, this is different.

Comment by Andrejs Čirkovs (Inactive) [ 2014 Jul 30 ]

This requires separate routing and refactored route generation strategy. Very complicated.

Comment by Marc [ 2014 Jul 30 ]

Yes, the intention is different.
But wouldn't almost any thinkable solution for one of them solve the other one as well?

I mean even when the proposed scenario goes a bit further, isn't the main issue for sharing the existence of this SID?

Comment by richlv [ 2014 Jul 30 ]

no, sid is inconvenient, but i can still manually share a link like https://zabbix.org/zabbix/screens.php?screenname=Zabbix%20development
this would allow something like https://zabbix.org/zabbix/screens/Zabbix%20development





[ZBXNEXT-2340] Translation help - Add link in Zabbix Trunk to source code Created: 2014 Jun 10  Updated: 2014 Jun 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.12, 2.2.2, 2.3.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Adail Horst Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: translation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Its a new feature to POOTLE used for translation



 Description   

Many times is simple impossible to translate the words without check the source code.
Now, we need to open pootle (https://www.zabbix.org/pootle/pt_BR/) select words... and translate... but...
when I found a translation of someting like: https://www.zabbix.org/pootle/pt_BR/Zabbix-trunk/translate.html#unit=394139

I found reference to two files and lines (report3.php:114 report4.php:145)

I think is better if have a link to this files in public repository (like... click on report3.php and open the a URL with source code).

Because in some times... is impossible to translate wihtout open the source code to undestand the cenario...



 Comments   
Comment by richlv [ 2014 Jun 10 ]

for the record, i'm not aware of a way to do that - if anybody has more info, please add it here

Comment by Oleksii Zagorskyi [ 2014 Jun 11 ]

See my comment https://support.zabbix.com/browse/ZBX-3326#comment-36923

Of course is supposes that you copy a string in browser and paste in Poedit in search form.
At least it help in sources navigation.

Not sure why previously "../../" worked, but now I have to specify the Base path as "../../../"
Then Poedit is able to open sources using right-click menu.

Comment by Oleksii Zagorskyi [ 2014 Jun 11 ]

I don't want to say that you have to use Poedit for translation.
I use it only for "sources navigation".





[ZBXNEXT-2363] DB Schema for MariaDB with TokuDB Created: 2014 Jun 30  Updated: 2017 Nov 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.2.3, 2.3.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Vadim Nesterov Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: db, tokudb
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 6.5, MariaDB 10.0.12 with latest TokuDB engine


Issue Links:
Sub-task
part of ZBXNEXT-3089 history* primary keys Closed

 Description   

We have converted zabbix db from 2.2 to MariaDB with TokuDB.

Benefits of TokuDB:

  • compression with several levels: we use highest LZMA and got result: InnodDB: 90GB (with partioning, housekeeper sitched off - no defrgamentation) -> TokuDB: 25GB -> bzip2 backup - 5GB
  • no replication lag
  • no locking during backup
  • quick inserts
  • faster queries
  • no fragmentation, no growing db, use housekeeper with no lose performance

We need special db schema for TokuDB with sevral rules:

On history tables, there is must only one primary index, but it must be CLUSTERING and COVERING fields item_id, clock
clustering index it is a table sorted another way, and this index includes all fields of each row, so it is a sorted table

Trend tables must indexed the same way

to get more perfomance on select queries some options must be set:

my.cnf:

[mysqld]
optimizer_switch=index_condition_pushdown=off

query cache must be enabled,
and event must me created:
CREATE EVENT flush_query_cache ON SCHEDULE EVERY 5 minute DO FLUSH QUERY CACHE;



 Comments   
Comment by richlv [ 2014 Jun 30 ]

hmm, what's the feature request aspect here ?

Comment by Vadim Nesterov [ 2014 Jun 30 ]

there is a db schema called mysql.sql in zabbix sources, so need to create new one tokudb.sql with different indexes than mysql, also this schema must be supported by zabbix server, when it auto updates with new versions.

TokuDB is another DB engine like Mysql, Oracle, Postgres, so I ask to support it.

Comment by richlv [ 2014 Jun 30 ]

according to our experience, tokudb doesn't perform that great for zabbix workload, thus supporting it might not be that useful... leaving this open for now, though

Comment by Vadim Nesterov [ 2014 Jun 30 ]

we have done all possible optimization to InnoDB and haven't got performance like TokuDB,
Our workload 30K items, 500 nps, we use large buffers, so we work 50 updates and 20 inserts.
Our managers like to use screens with a lot of graphs, we have 600 selects per seconds and more

Comment by Andrejs Čirkovs (Inactive) [ 2014 Jul 01 ]

I highly doubt query cache as it is done in Mysql / Mariadb is usable with zabbix (except there's someone pressing Ctrl + F5 constantly generating the same query).

Vadim, can you please attach schema generated? I'm a bit curious about the solutions like "and this index includes all fields of each row".

Comment by Tim Callaghan [ 2014 Jul 01 ]

(full disclosure, I work at Tokutek, creators of TokuDB)

@richlv, Can you share your past TokuDB experiences further? We continue to make improvements to the performance of TokuDB and I'd be curious to understand workloads that aren't performant.

@everyone, We'd be happy to see broader usage of TokuDB with products like Zabbix, and I'm happy to assist in this effort. I assume a large part of the Zabbix workload is time based insertion on tables with secondary indexes, so our ability to ingest at high rates of speed along with our built-in compression should be a great fit.

Comment by richlv [ 2014 Jul 01 ]

tim, there was some communication between tokutek/zabbix may 2012 - october 2013, maybe that allows to dig up more records.
admittedly, that's 2 years ago, maybe situation has changed significantly by now

Comment by Tim Callaghan [ 2014 Jul 01 ]

Yes, I remember the early portion of that timeline well. I'm confident that the current version of TokuDB will perform much better than back then, as is evidenced by the creator of this ticket. Please let me know if there is any way we can help.

Does Zabbix by chance have any benchmarking code to test their workload's performance? That would be a great place to start.

Comment by Vadim Nesterov [ 2014 Jul 01 ]

Lets begin deeply into TokuDB
@Tim, thank you for joinning us in this disscusion, I would like to get your recomendations and comparison of original mysql schema and my tokudb.

Here is:

CREATE TABLE `history` (
`itemid` bigint(20) unsigned NOT NULL,
`clock` int(11) NOT NULL DEFAULT '0',
`value` double(16,4) NOT NULL DEFAULT '0.0000',
`ns` int(11) NOT NULL DEFAULT '0',
KEY `clustering_idx_clock_itemid` (`clock`,`itemid`) `clustering`=yes,
KEY `clustering_idx_itemid_clock` (`itemid`,`clock`) `clustering`=yes
) ENGINE=TokuDB DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=48 `COMPRESSION`=TOKUDB_LZMA;
/*!40101 SET character_set_client = @saved_cs_client */;


-- Table structure for table `history_log`

DROP TABLE IF EXISTS `history_log`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `history_log` (
`id` bigint(20) unsigned NOT NULL,
`itemid` bigint(20) unsigned NOT NULL,
`clock` int(11) NOT NULL DEFAULT '0',
`timestamp` int(11) NOT NULL DEFAULT '0',
`source` varchar(64) NOT NULL DEFAULT '',
`severity` int(11) NOT NULL DEFAULT '0',
`value` text NOT NULL,
`logeventid` int(11) NOT NULL DEFAULT '0',
`ns` int(11) NOT NULL DEFAULT '0',
KEY `clustering_idx_clock_itemid` (`clock`,`itemid`) USING BTREE
) ENGINE=TokuDB DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=462 `COMPRESSION`=TOKUDB_LZMA;
/*!40101 SET character_set_client = @saved_cs_client */;


-- Table structure for table `history_str`

DROP TABLE IF EXISTS `history_str`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `history_str` (
`itemid` bigint(20) unsigned NOT NULL,
`clock` int(11) NOT NULL DEFAULT '0',
`value` varchar(255) NOT NULL DEFAULT '',
`ns` int(11) NOT NULL DEFAULT '0',
KEY `clustering_itemid_clock` (`itemid`,`clock`) USING BTREE,
KEY `clustering_idx_clock_itemid` (`clock`,`itemid`) `clustering`=yes
) ENGINE=TokuDB DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=93 `COMPRESSION`=TOKUDB_LZMA;
/*!40101 SET character_set_client = @saved_cs_client */;


-- Table structure for table `history_str_sync`

DROP TABLE IF EXISTS `history_str_sync`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `history_str_sync` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`nodeid` int(11) NOT NULL,
`itemid` bigint(20) unsigned NOT NULL,
`clock` int(11) NOT NULL DEFAULT '0',
`value` varchar(255) NOT NULL DEFAULT '',
`ns` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `history_str_sync_1` (`nodeid`,`id`)
) ENGINE=TokuDB DEFAULT CHARSET=utf8 `COMPRESSION`=TOKUDB_LZMA;
/*!40101 SET character_set_client = @saved_cs_client */;


-- Table structure for table `history_sync`

DROP TABLE IF EXISTS `history_sync`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `history_sync` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`nodeid` int(11) NOT NULL,
`itemid` bigint(20) unsigned NOT NULL,
`clock` int(11) NOT NULL DEFAULT '0',
`value` double(16,4) NOT NULL DEFAULT '0.0000',
`ns` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `history_sync_1` (`nodeid`,`id`)
) ENGINE=TokuDB DEFAULT CHARSET=utf8 `COMPRESSION`=TOKUDB_LZMA;
/*!40101 SET character_set_client = @saved_cs_client */;


-- Table structure for table `history_text`

DROP TABLE IF EXISTS `history_text`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `history_text` (
`id` bigint(20) unsigned NOT NULL,
`itemid` bigint(20) unsigned NOT NULL,
`clock` int(11) NOT NULL DEFAULT '0',
`value` text NOT NULL,
`ns` int(11) NOT NULL DEFAULT '0',
KEY `history_text_1` (`itemid`,`clock`),
KEY `history_text_2` (`itemid`,`id`),
KEY `id` (`id`),
KEY `clustering_idx_clock_itemid` (`clock`,`itemid`) `clustering`=yes
) ENGINE=TokuDB DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=125 `COMPRESSION`=TOKUDB_LZMA;
/*!40101 SET character_set_client = @saved_cs_client */;


-- Table structure for table `history_uint`

DROP TABLE IF EXISTS `history_uint`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `history_uint` (
`itemid` bigint(20) unsigned NOT NULL,
`clock` int(11) NOT NULL DEFAULT '0',
`value` bigint(20) unsigned NOT NULL DEFAULT '0',
`ns` int(11) NOT NULL DEFAULT '0',
KEY `clustering_itemid_clock` (`itemid`,`clock`) `CLUSTERING`=YES,
KEY `clustering_idx_clock_itemid` (`clock`,`itemid`) `clustering`=yes
) ENGINE=TokuDB DEFAULT CHARSET=utf8 AVG_ROW_LENGTH=48 `COMPRESSION`=TOKUDB_LZMA;
/*!40101 SET character_set_client = @saved_cs_client */;

Such indexes KEY `clustering_idx_clock_itemid` (`clock`,`itemid`) `clustering`=yes are wrong from my side, but we work now with it ok.

Cause deleting indexes in TokuDB locks tables, I kept them, beacause it almost recreation of table.
But creating of additional indexes goes online without locking.

As you see at history table, I deleted primary index on item_id,
and now KEY `clustering_idx_itemid_clock` (`itemid`,`clock`) `clustering`=yes is main index, and all history data must be indexed that way.

@Andrejs Čirkovs, let look at db files:

rwxrwx-x 1 mysql mysql 3.8G Jul 1 22:45 _zabbix_tokunew_history_key_clustering_idx_clock_itemid_11004aa6_3_1a_P_0.tokudb
rwxrwx-x 1 mysql mysql 3.2G Jul 1 22:45 _zabbix_tokunew_history_key_clustering_idx_itemid_clock_111663ae_3_1a_P_0.tokudb
rwxrwx-x 1 mysql mysql 4.1G Jul 1 22:45 _zabbix_tokunew_history_main_760_1_19_B_1.tokudb
rwxrwx-x 1 mysql mysql 64K May 22 04:22 _zabbix_tokunew_history_status_1d3_1_19.tokudb

Look at size of clustering indexes, they are almost the same as main table.

Here is the stat of Qcache:

show status like '%Qca%';
---------------------------------+

Variable_name Value

---------------------------------+

Qcache_free_blocks 432
Qcache_free_memory 20564792
Qcache_hits 11673529
Qcache_inserts 14238116
Qcache_lowmem_prunes 70327
Qcache_not_cached 10153185
Qcache_queries_in_cache 26980
Qcache_total_blocks 54475

---------------------------------+

Just try it and you will see that front end will respond much faster, don't forget about pushdown -> off

Comment by richlv [ 2014 Jul 02 ]

tim, unfortunately we don't have any public unified performance tests available at this time

Comment by Tim Callaghan [ 2014 Jul 02 ]

@vadim, I'll try to respond to your proposed schema and questions.

Clustering secondary index size
Yes, it is common for a clustering secondary index to be similarly sized to the PK index. It may be slightly smaller, depending on the number of fields in it's key as this will lead to better compression.

Clustering index advantages
You'd want to cluster a secondary index if you are querying it often, especially if you are querying ranges often (say > 10 rows). The reason for this is that a clustering index behaves like a covering index, in that it does not need to do additional work (IO) to get the columns needed for the particular SQL statement from the PK index.

Compression
I notice that you used LZMA compression for all tables. You might want to consider using zlib, which will mean less compression (but still very good) while requiring significantly less CPU for compression and decompression. Faster decompression means your queries will be faster as well. I'd suggest you try it and see. If you have a lot of unused CPU in your servers, then LZMA is likely fine.

USING BTREE syntax
This does nothing for TokuDB tables, and should be removed from your create table statements.

Replacing Primary Keys
I don't understand the point you are trying to make, or if you are asking a question. Can you elaborate?

Comment by Vadim Nesterov [ 2014 Jul 02 ]

@Tim,

Compression: we have 24 cores on server and we the load is very small, load average is about 2, we have 16GB RAM, and have 4GB free, tokudb is set to use 9GB. We woud like to have samller db.

KEY `clustering_idx_clock_itemid` (`clock`,`itemid`) USING BTREE - it is unchanged table from original zabbix schema.
mysqldump create this export.

Replacing Primary Keys - the main topic.

So if clustering is table, so I don't understand why to have secondary keys on history data?
In InnoDB - the PK is always clustering. (even if index was not created directly, it is created hidden)

So I think it is enough to have one PK clustering (item_id,clock) and don't have secondary indexes. Am I right?

Tim, another question: is it any value to use desc order while creating index (item_id,clock desc), cause I read that InnoDB don't look at it? What about TokuDB?

Comment by Tim Callaghan [ 2014 Jul 02 ]

@vadim.

So if clustering is table, so I don't understand why to have secondary keys on history data?
In InnoDB - the PK is always clustering. (even if index was not created directly, it is created hidden)
So I think it is enough to have one PK clustering (item_id,clock) and don't have secondary indexes. Am I right?

Good question. One potential reason to cluster a secondary index rather than just making what would be the clustering secondary index the primary key is insert performance. If you have a PK on an auto-incrementing column then you are always inserting on the right side of the index, which means inserts are very fast. The same is true if you don't declare a primary key, as the hidden PK is auto-increment. The reason these are fast is that a primary key must be unique, and the unique check can be expensive, as in require an IO, if the insert pattern for the primary key is random. The clustered secondary index doesn't need a unique check so TokuDB's Fractal Tree indexing technology is fast forever, as opposed to InnoDB's which will slow down significantly when your secondary indexes don't fit in the cache.

Does that help?

To continue this topic I'd need to better understand the particular table in question (lets take this 1 table at a time), and understand the insertion pattern as well as update/delete/select statements.

Is it any value to use desc order while creating index (item_id,clock desc), cause I read that InnoDB don't look at it? What about TokuDB?

There isn't value in declaring it desc, an index can efficiently be scanned in either direction.

Comment by Vadim Nesterov [ 2014 Jul 03 ]

So here is from zabbix 2.2.4 original schema:

CREATE TABLE `history` (
`itemid` bigint unsigned NOT NULL,
`clock` integer DEFAULT '0' NOT NULL,
`value` double(16,4) DEFAULT '0.0000' NOT NULL,
`ns` integer DEFAULT '0' NOT NULL
) ENGINE=InnoDB;
CREATE INDEX `history_1` ON `history` (`itemid`,`clock`);

Must be index history_1 be clustering? We talk only about for TokuDB.

Comment by Tim Callaghan [ 2014 Jul 03 ]

@vadim.

CREATE TABLE `history` (
`itemid` bigint unsigned NOT NULL,
`clock` integer DEFAULT '0' NOT NULL,
`value` double(16,4) DEFAULT '0.0000' NOT NULL,
`ns` integer DEFAULT '0' NOT NULL
) ENGINE=InnoDB;
CREATE INDEX `history_1` ON `history` (`itemid`,`clock`);

In TokuDB you can optionally make secondary indexes clustering. A clustered secondary index is much like the primary key in that a complete copy of the row is stored in the index, which means the following:

  • Since two full copies of each row are now being maintained (one in the PK and on in this index) you are using more space. TokuDB's compression usually makes this a non-issue as your on-disk size for both copies is generally much smaller than the on-disk size of InnoDB for the same data.
  • All updates to any row in the table will require updating the clustered secondary index. If your table is insert only (or mostly) then this is not important. Also, TokuDB is great at secondary index maintenance so I haven't seen users complain about performance related to updates in TokuDB with clustering secondary indexes.

Now on to the good stuff!

Since the clustered secondary index has a full copy of the row, any select that uses the index has all the columns in the row available to it without having to do a look-up into the primary key index to get the other columns. Both InnoDB and TokuDB have this "look the rest of the row up in the primary key" behavior (which TokuDB avoids if the secondary index is clustered). You can think of clustered secondary indexes as a better version of a covered index.

So, I think for the above table you'd be best off leaving the create table alone (keep the hidden PK), but making the index clustering, as in:

CREATE TABLE `history` (
  `itemid` bigint unsigned NOT NULL,
  `clock` integer DEFAULT '0' NOT NULL,
  `value` double(16,4) DEFAULT '0.0000' NOT NULL,
  `ns` integer DEFAULT '0' NOT NULL,
  KEY `history_1` (`itemid`,`clock`) CLUSTERING=yes
) ENGINE=TokuDB `COMPRESSION`=TOKUDB_LZMA;




[ZBXNEXT-2352] Cache and reuse EngineID to improve snmpV3 checks performance Created: 2014 Jun 24  Updated: 2024 Mar 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.2.4, 2.3.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 11
Labels: performance, snmpv3
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Described in first comment because of formating.



 Comments   
Comment by Oleksii Zagorskyi [ 2014 Jun 24 ]

Test performed with single poller configured in server config file.
Tested two snmp hosts: 1st - a Dlink swith, 2nd - snmp (net-snmp) daemong running of localhost.
To show captured packets I use customized columns set and snmp traffic is decrypted (Wireshark has such a feature).

Minor note:
Difference with D-link (agent) that it provides engineBoots engineTime which are =0 for first "usmStatsUnknownEngineIDs" report, so zabbix (manager) should perform additional get-request with correct engineID to receive real engineBoots, engineTime.
Local hosts provides real engineBoots, engineTime for first "usmStatsUnknownEngineIDs" report, so additional get-request is not required and is not performed.

Here and next I show 2 consecutive polls for a single item, divided by a line break.

Vanilla zabbix server, right after restart:

For D-link:

No.     Time               Source                Destination           Length Protocol Info                                                            SRC port   Engine-Boots Engine-Time Priv       Auth       Engine-MAC        Enterprise
     47 20:03:28.039796000 my-zabbix             snmp-3550-6           108    SNMP     get-request                                                     60977      0            0           Not set    Not set               
     48 20:03:28.047956000 snmp-3550-6           my-zabbix             148    SNMP     report SNMP-USER-BASED-SM-MIB::usmStatsUnknownEngineIDs.0       161        0            0           Not set    Not set    00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     49 20:03:28.048244000 my-zabbix             snmp-3550-6           176    SNMP     get-request SNMPv2-MIB::sysDescr.0                              60977      0            0           Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     50 20:03:28.057678000 snmp-3550-6           my-zabbix             182    SNMP     report SNMP-USER-BASED-SM-MIB::usmStatsNotInTimeWindows.0       161        12           1165647     Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     51 20:03:28.057927000 my-zabbix             snmp-3550-6           178    SNMP     get-request SNMPv2-MIB::sysDescr.0                              60977      12           1165647     Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     52 20:03:28.067628000 snmp-3550-6           my-zabbix             222    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        12           1165647     Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.

     99 20:03:38.132274000 my-zabbix             snmp-3550-6           108    SNMP     get-request                                                     43853      0            0           Not set    Not set               
    100 20:03:38.166511000 snmp-3550-6           my-zabbix             148    SNMP     report SNMP-USER-BASED-SM-MIB::usmStatsUnknownEngineIDs.0       161        0            0           Not set    Not set    00:1b:11:b5:d3:d2 D-Link Systems, Inc.
    101 20:03:38.166866000 my-zabbix             snmp-3550-6           178    SNMP     get-request SNMPv2-MIB::sysDescr.0                              43853      12           1165657     Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
    102 20:03:38.185150000 snmp-3550-6           my-zabbix             222    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        12           1165657     Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.

For localhost:

No.     Time               Source                Destination           Length Protocol Info                                                            SRC port   Engine-Boots Engine-Time Priv       Auth       Engine-MAC Enterprise
    153 20:03:50.260837000 127.0.0.1             127.0.0.1             106    SNMP     get-request                                                     41899      0            0           Not set    Not set               
    154 20:03:50.261015000 127.0.0.1             127.0.0.1             160    SNMP     report SNMP-USER-BASED-SM-MIB::usmStatsUnknownEngineIDs.0       161        9            124074      Not set    Not set               net-snmp
    155 20:03:50.261213000 127.0.0.1             127.0.0.1             190    SNMP     get-request SNMPv2-MIB::sysDescr.0                              41899      9            124074      Set        Set                   net-snmp
    156 20:03:50.261320000 127.0.0.1             127.0.0.1             254    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        9            124074      Set        Set                   net-snmp

    319 20:04:20.538908000 127.0.0.1             127.0.0.1             106    SNMP     get-request                                                     55691      0            0           Not set    Not set               
    320 20:04:20.539180000 127.0.0.1             127.0.0.1             160    SNMP     report SNMP-USER-BASED-SM-MIB::usmStatsUnknownEngineIDs.0       161        9            124104      Not set    Not set               net-snmp
    321 20:04:20.539618000 127.0.0.1             127.0.0.1             190    SNMP     get-request SNMPv2-MIB::sysDescr.0                              55691      9            124105      Set        Set                   net-snmp
    322 20:04:20.540077000 127.0.0.1             127.0.0.1             254    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        9            124104      Set        Set                   net-snmp

As we see in case of D-link after zabbix restart a zabbix process (for details see ZBX-8385) once learned by engineBoots, engineTime it will reuse them, so any next polls by this process will not perform second get-request to get the engineBoots, engineTime. 2nd and all next sessions will have 2 get-response pairs.
Localhost sessions shows 2 get-response pairs every time.

And here is a question - why do we spend some time to discover engineID?
Zabbix a daemon, it could cache and reuse it later!

What I did - I hardcoded engineID in zabbix sources (at start for "zbx_snmp_open_session" function, for snmpV3) to see what I can get in a result.

//		u_char engine_id[] = { 0x80, 0x00, 0x00, 0xab, 0x03, 0x00, 0x1b, 0x11, 0xb5, 0xd3, 0xd2 }; //D-link
		u_char engine_id[] = { 0x80, 0x00, 0x1f, 0x88, 0x80, 0x93, 0x4e, 0xde, 0x66, 0xfb, 0x80, 0x95, 0x53, 0x00, 0x00, 0x00, 0x00 }; //localhost
		session.securityEngineID = engine_id;
		session.securityEngineIDLen = sizeof(engine_id);

And I was happy to see success!

Patched zabbix server, right after restart:
hardcoded D-link's engineID:

No.     Time            Source                Destination           Length Protocol Info                                                            SRC port   Engine-Boots Engine-Time Priv       Auth       Engine-MAC        Enterprise
     17 14:36:18.073879 my-zabbix             snmp-3550-6           176    SNMP     get-request SNMPv2-MIB::sysDescr.0                              35757      0            0           Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     18 14:36:18.083926 snmp-3550-6           my-zabbix             182    SNMP     report SNMP-USER-BASED-SM-MIB::usmStatsNotInTimeWindows.0       161        12           714020      Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     19 14:36:18.084084 my-zabbix             snmp-3550-6           178    SNMP     get-request SNMPv2-MIB::sysDescr.0                              35757      12           714020      Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     20 14:36:18.094461 snmp-3550-6           my-zabbix             222    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        12           714020      Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.

     23 14:36:28.165773 my-zabbix             snmp-3550-6           178    SNMP     get-request SNMPv2-MIB::sysDescr.0                              38450      12           714030      Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.
     24 14:36:28.176490 snmp-3550-6           my-zabbix             222    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        12           714031      Set        Set        00:1b:11:b5:d3:d2 D-Link Systems, Inc.

hardcoded localhost's engineID:

No.     Time               Source                Destination           Length Protocol Info                                                            SRC port   Engine-Boots Engine-Time Priv       Auth       Engine-MAC Enterprise
      1 13:30:50.918574000 127.0.0.1             127.0.0.1             188    SNMP     get-request SNMPv2-MIB::sysDescr.0                              48864      0            0           Set        Set                   net-snmp
      2 13:30:50.918964000 127.0.0.1             127.0.0.1             176    SNMP     report SNMP-USER-BASED-SM-MIB::usmStatsNotInTimeWindows.0       161        20           2419        Not set    Set                   net-snmp
      3 13:30:50.919199000 127.0.0.1             127.0.0.1             189    SNMP     get-request SNMPv2-MIB::sysDescr.0                              48864      20           2419        Set        Set                   net-snmp
      4 13:30:50.919468000 127.0.0.1             127.0.0.1             253    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        20           2419        Set        Set                   net-snmp

      5 13:31:20.995176000 127.0.0.1             127.0.0.1             189    SNMP     get-request SNMPv2-MIB::sysDescr.0                              46660      20           2449        Set        Set                   net-snmp
      6 13:31:20.995528000 127.0.0.1             127.0.0.1             253    SNMP     get-response SNMPv2-MIB::sysDescr.0                             161        20           2449        Set        Set                   net-snmp

We can see that starting from 2nd session, both hosts have only one get/response pair to get a value.
Zabbix (manager) when initiating session just specified engineID, and library itself "on the fly" added correct (recalculated, according to RFC) engineBoots, engineTime to very first get request.

So traffic is decreased, time spent decreases, load on monitored device decreased!

I checked also bulk-get behavior (for several snmp items, starting from 2.2.3) - for 1st get-request zabbix sent the same 106|108 bytes packet, which contain empty "variable-bindings". So from 2.2.3 traffic and time "overhead" is not so big as previously, but still.

What we need is to to cache engineID-IP pairs and reuse engineID later.
Where cache it - maybe for example in zabbix configuration cache together with interfaces IP.

Just FYI - libnetsnmp have interesting functions:

  • free_enginetime(unsigned char *engineID, size_t engineID_len) - to remove particular engineID entry from the cache
  • free_etimelist() - to clean out etimelist cache completely.

During experiments I tried to use both - both are working as expected.
Maybe this function should be used as well for specific cases like host (with IP) has been removed from zabbix etc.

It can provide some more possibilities - for example detecting duplicated enineIDs and printing very nice error messages to zabbix log (and do not cache them of course) etc.

During investigation I used other functions as well, for example dump_etimelist(); (which requires net-snmp recompiled with --enable-testing-code option.)
So I was able to print to zabbix log (as library's STDERR) the etimelist and make sure that it works as I understand it.

Comment by Oleksii Zagorskyi [ 2014 Jun 24 ]

oh, btw, thanks to asaveljevs who helped me to construct correctly engine_id[] array after 2 hours of my own unsuccessful attempts

Comment by Vadim Nesterov [ 2015 Dec 22 ]

Can this be an option?
Like snmp bulk requests?

If option is not set, than zabbix per each request does discovering engineid and time ?

Comment by Oleksii Zagorskyi [ 2017 Jun 14 ]

Cross link - ZBXNEXT-3940 - asks to have ability to manually drop library's cache.

Comment by Alex Kalimulin [ 2022 Sep 12 ]

If Zabbix is aware of snmpEngineId at the daemon level it could expose it as an item. Then one could create a trigger on engineId change (e.g. to reload net-snmp cache).

Comment by Oleksii Zagorskyi [ 2023 Dec 18 ]

ZBXNEXT-8823 is related to this





[ZBXNEXT-1843] Possibility for limiting trapper items to maximum values per time period Created: 2013 Jul 28  Updated: 2014 Feb 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: limits, trapper
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Inspired by MaxLinesPerSecond available for log monitoring items I wonder if it wouldn't be a reasonable setting for trapper based items as well.
That would allow to limit possible throughput/input caused by malfunctions, mistakes or unexpected peak loads.

There are several implementations thinkable. The idea I've currently in mind - not really thought to the end:



 Comments   
Comment by richlv [ 2013 Jul 28 ]

a large problem is that there is no way for the sending entity to find out which values succeeded and which failed : ZBXNEXT-246

Comment by Marc [ 2013 Jul 28 ]

Yes, you're absolutely right. I totally forgot about ZBXNEXT-246.





[ZBXNEXT-1984] Configurable limitation for 'value like' searches in history Created: 2013 Oct 25  Updated: 2013 Oct 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 2.0.9
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: reliability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Would be nice if a maximum period for selection in history can be configured.
This setting may either enforce a maximum period or disable and ignore 'value like' filter.

Without such limitation a (relational) database may be overloaded easily.



 Comments   
Comment by richlv [ 2013 Oct 26 ]

wondering whether max graph period setting affects this (in defines.inc.php) - although here we don't have the benefit of selecting from trends

Comment by Marc [ 2013 Oct 26 ]

ZBX_MAX_PERIOD takes effect but a reasonable value for text based items is not necessarily sufficient for number based items.

Anyhow, the main problem is not the period and thus amount of (text based) data in general.
It's about the fact that "LIKE '%foo%'" queries are considerably more expensive and should be able to be restricted separately in some way.





[ZBXNEXT-1881] Require to improve error displaying in API, because now all errors, undefined index's and others, is intercepted by zbx_err_handler() and don't shows without Frontend. Created: 2013 Aug 28  Updated: 2013 Sep 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Eduards Samersovs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified





[ZBXNEXT-2014] Ability to Set Master Zabbix Server from a 2 Standalone Server Setup with Oracle RAC Created: 2013 Nov 13  Updated: 2013 Nov 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Colum Flannigan Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: zabbix_server
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

2 Standalone Zabbix Servers with Oracle Rac Solution. Where 2 Zabbix Servers have a Load balancer in front for any active connections



 Description   

Hey.
Is it possible to build a new feature within the zabbix server that will allow users to set a primary Zabbix server where emails/scripts/pollers/housekeeping and any other random actions taken by zabbix are executed from?

So where you have 2 standalone servers behind a loadbalancer and connected to an Oracle RAC solution it will ensure no deadlocks will occur from the systems, so that only emails etc.. will be executed from the zabbix server that is set as the primary? I did make a change like this to the alerter section that would send emails only from the primary server set in a new filed in the media_type table and it worked exactly the way it intended, but I forgot about the pollers and housekeeping sections, so my new compiled binary caused deadlocks and crashed the 2 Zabbix servers.

So not sure if this is something that is in the works, but if not is it something that can be designed in? I dont want to go down the road of multiple nodes as its more of an overhead for management, where 2 standalone servers will work perfectly well if this feature can be added.

Thanks
Colum






[ZBXNEXT-2019] new internal items to monitor value cache request hit/miss rate Created: 2013 Nov 14  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: valuecache
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

(i thought i already had reported this, but apparently not )

value cache has internal items to monitor hit/miss rates, but these only show values - so a single request could return 50 values which would show up as hit rate of 50.

while useful, maybe even more interesting would be items to show hits and misses for requests.

as there can be partial hits as well, there should be 3 internal items - request hits, misses, partial hits



 Comments   
Comment by richlv [ 2013 Nov 14 ]

also, we currently have items for requests and for value hits/misses - those can't even be meaningfully compared, so request result rates would be highly useful

Comment by Oleksii Zagorskyi [ 2016 Apr 06 ]

a calculated item to measure miss/hist ratio mentioned in ZBX-7920





[ZBXNEXT-4713] Change dependent item state to "Not supported" Created: 2018 Sep 05  Updated: 2020 Apr 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: dependentitems, notsupported
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Usually it is not required to change dependent item state to "Not supported" in case of preprocessing step is failed. For example, if JSON path or regexp are not found.



 Comments   
Comment by Michael Kolomiets [ 2019 Jan 24 ]

Hi
I think that also it is not need to write warning in log in this case.
I try to use regex preprocessing rule to filter values in parent item and extract only relevant values into dependent item.
Because not all values meet the filter condition I have a lot of warnings in log like this:

19726:20190124:143657.355 error reason for "host:app.oltp.execution_time[Authenticate]" changed: Item preprocessing step #1 failed: cannot perform regular expression match: pattern does not match, type "string", value "689800960:b0a790: GetSomeInfo #0 0.010189"

Comment by Nikolay [ 2020 Apr 14 ]

Exactly!

I have:

  1. an item in template with list of some objects.
  2. a discovery rule by this item
  3. a discovery item of this rule, which is dependent from template's item

Why I have a lot of error in error log like this?

152:20200414:203158.699 error reason for "gw-m1-1:bgp.state[bgp_megacom]" changed: Preprocessing failed for:     Routes:         1 imported, 813275 exported, 0 preferred.    Routes:         69 imported, 0 e...
1. Failed: cannot perform regular expression ".*bgp_megacom[\S|\s\n]*?(\d*)\simported.*" match for value of type "string": pattern does not match

Why it is processes? I expect that if it is not discovered anymore, it is shouldn't processed anymore.

Looks like zabbix understand that this item is not discovered...
The item is not discovered anymore and will be deleted in 29d 20h 14m (on 2020-05-14 at 16:26).





[ZBXNEXT-4678] Elasticsearch : Authentication header Created: 2018 Aug 07  Updated: 2021 Oct 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 4.0.0alpha8, 4.0.34, 5.0.16, 5.4.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Philippe Gauchy Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hi,

Zabbix server and frontend don't offer authentication header for Elasticsearch.

However, Elasticsearch X-Pack security "works with standard HTTP basic authentication headers to authenticate users. Since Elasticsearch is stateless, this header must be sent with every request:

Authorization: Basic <TOKEN>

The <TOKEN> is computed as base64(USERNAME:PASSWORD) "

 

it would be very usefull to have this in the 4.0 realse

Regards, philippe.






[ZBXNEXT-4605] Allow active agent to keep the data that could not be sent Created: 2018 Jun 25  Updated: 2018 Jul 12

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Kirill Varnakov Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: agent, metrics
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File zabbix_buffer.png    

 Description   

Hi. Zabbix agent has two perfect options: BufferSize and BufferSend, but it doesn't have another one. It must have options for buffer metrics, when it loss connection to server or proxy, for example BufferLostConnectionSize=65535. Can you add this function to agent?



 Comments   
Comment by Vjaceslavs Bogdanovs [ 2018 Jun 25 ]

Could you please explain the main difference between BufferSize and proposed BufferLostConnectionSize?

Comment by Kirill Varnakov [ 2018 Jun 27 ]

May be it is a bug... My settings for active agents:

BufferSend=5

BufferSize=65535

My host has 147 items and sends it every minute. I set BufferSize=65535 and thought, that if agent losts connection to server, it saves metrics for 65535/147=445 minutes in memory and after connection restored, it send metrics to server. But it doesn't work like I think.

I set my firewall for block packets to server at 11:23 and deleted this rule at 12:05. Please see screeshot, what happens.

Comment by Glebs Ivanovskis [ 2018 Jun 28 ]

Quoting documentation:

Parameter Mandatory Range Default Description
BufferSend no 1-3600 5 Do not keep data longer than N seconds in buffer.

With BufferSend=5 I wouldn't expect to get graphs without gaps...

Comment by Kirill Varnakov [ 2018 Jun 28 ]

May be add to this description: Even if lost connection to server... And more interesting will be if we would have BufferLostConnectionSize. How do you think?

Comment by Glebs Ivanovskis [ 2018 Jun 28 ]

I think it would be more interesting if people could read what's already there in documentation.

Even if lost connection to server...

...and what if not lost? Zabbix agent does not keep connection alive, there is actually no way to tell if connection was lost or not.

Comment by Kirill Varnakov [ 2018 Jun 28 ]

I think it would be more interesting if people could read from beginning of request. Ahaha )

Comment by Kirill Varnakov [ 2018 Jul 06 ]

Simply I want, that active agent can buffers metrics for a long time, if it loses connection to server and sends metrics constantly, if all good. But now, it is impossible. Why?

Comment by dimir [ 2018 Jul 06 ]

After discussion with vjaceslavs I propose to add option BufferKeep=<seconds> that would allow keeping unsent buffer for configured time.

Comment by Vjaceslavs Bogdanovs [ 2018 Jul 06 ]

We will have to incease max value of BufferSize as 64K is not sufficient to keep data when connection is lost.

Comment by Kirill Varnakov [ 2018 Jul 07 ]

Many thanks. Wait.





[ZBXNEXT-4619] Maintenance of IT services Created: 2018 Jun 29  Updated: 2018 Jun 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 3.4.11
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tatapoum Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: maintenance, productivity, services
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be great to add the possibility to put an IT service in maintenance, thus automatically putting the hosts with the dependant triggers in maintenance.

At the moment, when we have a planned maintenance, the operators have to expand all the IT service, searching for the related hosts. For complex services, it can clearly be a source of errors, and consequently false positives. This can really be difficult due to hard and soft links between IT services.

In the future, as it will be possible to put triggers in maintenance, it would be nice to look up for all the triggers defining the availability of an IT service, instead of the hosts.

 






[ZBXNEXT-4492] Add all request type in web monitoring Created: 2018 Apr 10  Updated: 2023 Feb 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Mohsen Mohammad Amini Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 22
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Web monitoring


Issue Links:
Duplicate
is duplicated by ZBXNEXT-5873 Web monitoring: Add posibility to use... Closed
Sub-task
part of ZBXNEXT-4358 Metrics for easy RestAPI data retriev... Closed

 Description   

Hi,
I want to monitor availability parameter for web services. But all of my web services should be monitor is using PUT method that you don't support it on web monitoring item.
I read your new features for version 4 and i know you are planning to put HTTP agent but it is useful just for getting value of web services and it is not possible to get availability parameters like response time, response code and ... .
I want to request you to add other request type like GET, PUT, DELET, UPDATE alongside of POST method to web scenario monitoring on your next alpha version.



 Comments   
Comment by Mohsen Mohammad Amini [ 2018 Jun 27 ]

Dears,

Would you please update?

Comment by dimir [ 2020 Apr 08 ]

No plans yet, as far as I heard. I assume it would be hard to push this issue forward because Zabbix was meant to be the tool that only monitors, never doing changes.

Comment by Florent Typiak [ 2020 Apr 08 ]

Hi dimir,

What do you mean by "never changing doing changes" ? Change = put/update/delete ? if that's the case, post is already doing changes.

From my point of view, the scenarios written in the supervision must be as close as possible to what our clients send on the service. So if clients send us http method which doing changes (like put, or update), we also have to set it in web scenario.

Florent

Comment by dimir [ 2020 Apr 15 ]

What do you mean by "never changing doing changes"

A typo, "never doing changes" (fixed).

Change = put/update/delete ? if that's the case, post is already doing changes.

Right, missed that part.

Comment by Денис Устинов [ 2020 Apr 15 ]

Hi!
Let me give you an example, with the help of web scenario I test the a web application, and in the end I need to log out, but I can not do this, because is an HTTP request with the DELETE method

Comment by Mohsen Mohammad Amini [ 2021 Jan 20 ]

is there any update?

There is PUT and DELETE Method of web service calling on http agent. but we can not use these methods in web sceanrios.

Would you please add these methods to zabbix?

Comment by Alessandro Sgolacchia [ 2023 Feb 01 ]

we also need the method DELETE to monitor a specific function on a document system.

Thx





[ZBXNEXT-4329] Event correlation and problem deduplication Created: 2018 Jan 11  Updated: 2018 Jan 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tatapoum Assignee: Andris Zeila
Resolution: Unresolved Votes: 6
Labels: eventcorrelation, problemdeduplication
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Global event correlation is a nice feature that helps to suppress unnecessary alerts. However, Zabbix has to do more on problem deduplication, and event correlation could be used for this purpose.

For the moment, global event correlation can only close old or new events, and when some events are closed, the open ones do not include any information about the others. Extending event correlation in allowing still open events to reference the others would be useful for problem deduplication and noise reduction.

Imagine for example a disk latency trigger positioned on all our servers. If for a reason the SAN or disk array experiences performance issues, this would trigger hundreds of alerts for hundreds of servers. With global event correlation, we could correlate these events, close the new ones and only keep the first event. However this means that only one event appears in the dashboard, with no information about the other servers. In the same way, only one notification is sent (for example one email), but it doesn't mention the other problems. This is good to avoid alert storms, but the support teams wouldn't be informed that a global issue is happening.



 Comments   
Comment by Marc [ 2018 Jan 11 ]

In regards to noise reduction, ZBXNEXT-2695 could be considered distantly related.





[ZBXNEXT-4262] Add full regular expression support. Created: 2017 Dec 03  Updated: 2018 Mar 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sergey Korchak Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-13126 not working g modifier in regexp Closed

 Description   

when i trying to add g modifier to regexp
i getting this error message at element
Item preprocessing step #2 failed: cannot perform regular expression match on value "47590;3172;0" of type "string": pattern does not match
regexp: /(\d+)/g
String: "47590;3172;0"
You can check here
https://regex101.com/r/jKLj7h/1
it should work but its not working in zabbix.

Now For backward compatibility reasons support for PCRE was added (ZBX-3924) in "compatibility mode" with POSIX ERE. So "g" is not one of those modifiers that can be specified in line.



 Comments   
Comment by richlv [ 2017 Dec 03 ]

curious, how would g work in item preprocessing ? do you have an example of what you are trying to achieve ?

Comment by Sergey Korchak [ 2017 Dec 04 ]

see above.

ok. i repeat:
i getting this error message at element
Item preprocessing step #2 failed: cannot perform regular expression match on value "47590;3172;0" of type "string": pattern does not match
regexp: /(\d+)/g
String: "47590;3172;0"
You can check here
https://regex101.com/r/jKLj7h/1
it should work but its not working in zabbix.

Comment by richlv [ 2017 Dec 04 ]

but what is your functional goal ? what do you expect zabbix would do instead ?

Comment by Glebs Ivanovskis (Inactive) [ 2017 Dec 06 ]

Dear malmstream, what richlv probably means is that /.../g pattern returns an array of matches and there is currently no syntax in Zabbix to use an array of matches somehow. Currently you can use sort of (\d+);(\d+);(\d+) and "\1", "\2", "\3" to put captured groups in output.

Comment by Sergey Korchak [ 2017 Dec 06 ]

Unfurtunaly it is not possible, Because pattern "(\d+);(\d+);(\d+)" must be used only if you exactly know now many matches can be.
In my case quantity of items is unkown.

Thats why i ask to add this functionality to zabbix.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Dec 06 ]

And what do you want to do with unknown amount of matches once you've got them?

Comment by Sergey Korchak [ 2017 Dec 06 ]

I will make 20 (for example) number of data elements. Each of them will match with number of each regexp group.

Those elements which not receive regexp group will be deactivated.

So I will get the same number of working data items as the number of elements in my string.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Dec 23 ]

Sounds like LLD...





[ZBXNEXT-5234] new runtime option - purge server's write cache Created: 2019 May 22  Updated: 2019 May 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: cache, writecache
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Sometimes, when we have troubles with a lot of values coming from active agents or from proxies etc, we would like to clean out server's write cache without restarting zabbix server itself.

It should help us to recover from disaster cases.

It's somehow related to ZBXNEXT-2449.

Just a note - similar, but for snmp's library cache - ZBXNEXT-3940






[ZBXNEXT-5263] Database query latest history data very slow Created: 2019 Mar 28  Updated: 2019 Jun 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aaron Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 10
Labels: database, history, latestdata, query
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Grafana-AP-Status.PNG     Text File Triggers.functions.lastvalue.txt    

 Description   

I'm querying the database directly to gather some information on the latest history data directly from a Grafana dashboard. It works dandy but the queries take a very long time to finish.

A simple query to gather the latest history item takes about 6 seconds on a 2740MB table (history_uint).

Here is the query (very simple one, the ones I'm doing require joins, that's when it get's messy):

 

zabbix=> select * from history_uint order by history_uint.clock DESC LIMIT 1; 
 itemid | clock | value | ns 
--------+------------+-------+----------
 188644 | 1553786344 | 1 | 94740072
(1 row)
Time: 6810,381 ms (00:06,810)

 

Here is the table size:

 

zabbix=> SELECT pg_size_pretty (pg_relation_size('history_uint')); 
 pg_size_pretty 
----------------
 2740 MB
(1 row)

 

One of the queries I'm doing to get the latest data on several items:

 

zabbix=> SELECT DISTINCT COUNT(items.name)
zabbix-> FROM history_uint
zabbix-> JOIN (SELECT 
zabbix(> history_uint.itemid, 
zabbix(> max(history_uint.clock) as max_clock
zabbix(> FROM history_uint WHERE history_uint.clock > extract(epoch from now()- INTERVAL '6 MINUTES')
zabbix(> GROUP BY history_uint.itemid) subselect_history_max_clock
zabbix-> ON (history_uint.itemid = subselect_history_max_clock.itemid) AND (history_uint.clock = subselect_history_max_clock.max_clock)
zabbix-> 
zabbix-> JOIN items ON items.itemid = subselect_history_max_clock.itemid 
zabbix-> JOIN hosts ON items.hostid = hosts.hostid 
zabbix-> JOIN hosts_groups ON hosts.hostid = hosts_groups.hostid
zabbix-> JOIN hstgrp ON hosts_groups.groupid = hstgrp.groupid 
zabbix-> 
zabbix-> WHERE (hstgrp.name = 'Amadores-Clusters') 
zabbix-> AND (items.name LIKE '%AP Status%')
zabbix-> AND (hosts.host LIKE '%VC%')
zabbix-> AND history_uint.clock > extract(epoch from now()- INTERVAL '6 MINUTES');
 count 
-------
 469
(1 row)
Time: 33019,439 ms (00:33,019)

 

This is on a server idling at the moment. If multiple users start using Grafana to check the dashboards it can get very messy very fast.

 

What I found:

 - There is no entry on the database that relates the history latest data besides the highest clock which isn't very efficient as it's not even pre-sorted

 - Other users have found this same issue

 - One of those users (dimir) came up with a solution and I think the fix is clean and simple

 

The fix:

It's stated here -> https://support.zabbix.com/browse/ZBX-13193?focusedCommentId=304714&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-304714

 

and here -> https://support.zabbix.com/browse/ZBX-13193?focusedCommentId=332045&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-332045

It would create 5 tables with the latest data gathered on each item/history* table, those tables wouldn't grow over time as it's as big as items has the history tables, so it's a very tidy and fast solution.

 

Could be this implemented on Zabbix?

 

Best regards,

Aarón

 

PS: IOPs spike when I do those queries, so I'm even maxing out the IOPs of the hard drives.



 Comments   
Comment by Glebs Ivanovskis [ 2019 Mar 29 ]

It is strange to hear that you are writing SQL queries while using Grafana. Why? Have you heard about Zabbix plugin?

Comment by Aaron [ 2019 Mar 29 ]

Hey Glebs,

I need the flexibility of a database query to be able to retrieve the info I'm using.

Here is an example. I have several wireless controllers. I do a discovery on each one to see what APs are on the controllers database  and check wether the APs are up (1) or down (2).

With Zabbix plugin I haven't managed a way to get a count of APs that are UP and APs that are DOWN. I could preprocess the status values to 1 = up and 0 = down but still, I have to be very careful with the Time Range. If it's too short I will miss values and if it's too large I will get too many.

AFAIK there is no way to get the latest value on a metric on Grafana, it's always time dependant and very hard to know where to set the limit, it really depends on when the data was written into the DB (clock).

 

I have attached a screenshot to explain it better. The AP status items are being being queried every 5 minutes so I configured the time range on the Zabbix datasource to 7 minutes getting 64 APs UP but there are really 111 APs UP (see the SQL output right beside it). It doesn't matter how I fiddle with the time range I can't get it to state the correct number of APs being UP so I figured it would be easier and more accurate to directly query the DB.

 

 

I hope I have explained myself properly!

 

Best regards,

Aarón

Comment by Glebs Ivanovskis [ 2019 Mar 30 ]

If I read your SQL query correctly, it selects latest value for all items in history_uint, no wonder it takes ages to complete. It would be more efficient to get the list of itemid's you are interested in and only then find out their latest values (where itemid in (...)).

Comment by Aaron [ 2019 Apr 01 ]

Hi Glebs,

I got the list of items I want to query and managed to query the history_uint for only those items, but I'm failing to keep the most recent values and also discern when an AP is UP or when it's DOWN.

Let me explain, if I want to see if an AP is down I would filter the query to see if value == 2. If an AP goes down (value == 2) and then it comes up (value == 1) I will always get a match on value == 2 even though the AP is already up...

It's very complicated to query the last value on multiple items, that's why I was asking for that fix above. I checked the documentation (https://zabbix.org/wiki/Docs/DB_schema/2.0/items) on the database there was a field on the items table called 'lastvalue' that would help me a lot but it was removed on version 2.2.

 

I don't want to modify Zabbix code so I will try to create a trigger that on the event of an INSERT on history_uint table, I will store the itemid/value/clock into a new table.

 

Cheers,

Aarón

Comment by dimir [ 2019 Apr 01 ]

The trigger sounds like a good idea. As to why it was removed from items table, it's because it was causing deadlocks and performance issues every time new values were to be added to the database and that decision was right. But I think we forgot to think of other possibilities to have latest data always available.

Comment by Aaron [ 2019 Apr 03 ]

Hello,

I did it just for history_uint but this is replicable to all history tables. I created two functions, one for inserting/updating and another one for deleting.

The new table 'lastvalue_uint' stores itemid, clock and value:

CREATE TABLE lastvalue_uint(
itemid bigint primary key,
clock integer NOT NULL,
value numeric(20,0) NOT NULL);

 

The insert/update is triggered whenever an item is inserted/updated in history_uint.

CREATE OR REPLACE FUNCTION lastvalue_uint_func() RETURNS TRIGGER AS $BODY$
 DECLARE
 BEGIN
 IF (TG_OP = 'INSERT' OR TG_OP = 'UPDATE' ) THEN
 INSERT INTO lastvalue_uint(itemid, clock, value)
 VALUES(NEW.itemid, NEW.clock, NEW.value)
 ON CONFLICT (itemid) DO
 UPDATE SET
 clock = NEW.clock, 
 value = NEW.value;
 END IF;
 RETURN NEW;
 END;
$BODY$ LANGUAGE plpgsql;
CREATE TRIGGER trigger_insert_lastvalue_uint
BEFORE INSERT OR UPDATE ON history_uint 
FOR EACH ROW EXECUTE 
PROCEDURE lastvalue_uint_func();

 

The delete is triggered whenever an item is deleted in the items table.

CREATE OR REPLACE FUNCTION lastvalue_uint_func_delete() RETURNS TRIGGER AS $BODY$
 DECLARE
 BEGIN
 IF (TG_OP = 'DELETE') THEN
 DELETE FROM lastvalue_uint WHERE itemid = OLD.itemid;
 END IF;
 RETURN OLD;
 END;
$BODY$ LANGUAGE plpgsql;
CREATE TRIGGER trigger_delete_lastvalue_uint
BEFORE DELETE ON items 
FOR EACH ROW EXECUTE 
PROCEDURE lastvalue_uint_func_delete();

 

So far the size of the table is slowly growing but I will have to wait a day or so to see that it matches the size of history_uint unique items.

 

Hope this helps someone!

 

Cheers,

Aarón

Comment by Aaron [ 2019 Apr 10 ]

After a week the solution seems stable, no tables have outgrown the history_* unique itemids so that's good.

I finally created a function to update/insert on lastvalue_* for each history_* and a function for every delete on items. Probably there is a better way to do this but having separate functions keeps it pretty simple and easier to understand.

I have attached the functions/triggers I'm using, now the queries take almost no time and are a lot simpler.

 

Comparison on number of itemids on history_uint vs lastvalue_uint:

 

zabbix=> select count(DISTINCT itemid) from history_uint ;
 count 
-------
 36736
(1 row)
zabbix=> select count(DISTINCT itemid) from lastvalue_uint ;
 count 
-------
 29667
(1 row)

 

 

Comparison on size of history_uint and lastvalue_uint:

 

zabbix=> SELECT pg_size_pretty( pg_total_relation_size('history_uint'));
 pg_size_pretty 
----------------
 7612 MB
(1 row)
 
zabbix=> SELECT pg_size_pretty( pg_total_relation_size('lastvalue_uint'));
 pg_size_pretty 
----------------
 4240 kB
(1 row)

Triggers.functions.lastvalue.txt

 

Even though it's working, it would be great if this could be added on future Zabbix releases.

 

Cheers,

Aarón

 





[ZBXNEXT-5154] The zabbix API for authentication should return an HTTP error code when the authentication fail Created: 2019 Mar 30  Updated: 2019 Apr 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.0.26
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andre Rodier Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Call the API 'user.login' and a wrong password with curl or any other tool
  2. The API returns 200, and a field "error" in JSON

Expected:

  • The API should returns 403 when the authentication fails.


 Comments   
Comment by Andre Rodier [ 2019 Mar 30 ]

Here a test using Ansible URI module

ok: [homebox] => changed=false 
  access_control_allow_headers: Content-Type
  access_control_allow_methods: POST
  access_control_allow_origin: '*'
  access_control_max_age: '1000'
  cache_control: no-cache
  connection: close
  content_type: application/json
  cookies: {}
  cookies_string: ''
  date: Sat, 30 Mar 2019 06:14:10 GMT
  expires: Thu, 01 Jan 1970 00:00:01 GMT
  json:
    error:
      code: -32602
      data: Login name or password is incorrect.
      message: Invalid params.
    id: '1'
    jsonrpc: '2.0'
  msg: OK (unknown bytes)
  redirected: false
  server: nginx
  status: 200
  strict_transport_security: max-age=31536000;
  transfer_encoding: chunked
  url: https://zabbix.rodier.me/api_jsonrpc.php

The status should be 403, not 200.

Comment by Arturs Lontons [ 2019 Apr 01 ]

Hi,
For now this is by design, so it's not necessarily a bug.
But using proper response status codes could be considered a feature request, so I'll change the ticket type and pass it onto the development team.

Comment by Andre Rodier [ 2019 Apr 01 ]

Thank you, I understand this is by design.

I am sure you'll find a way to make this compliant with REST API standards.





[ZBXNEXT-2696] Forecasting Graphs and Triggers Created: 2015 Feb 02  Updated: 2018 Feb 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ross Peoples Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: graphs, prediction, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

This is related to ZBXNEXT-922, but I'd like to make this more generic and easy to use. I'd like to see the graphs that Zabbix currently has display some forecasting of what future values might be. Being able to trigger based on these forecasts is also a great feature. This all falls under the "Capacity Management" scope.

I have a separate app written in Python/Django that gets values from the trending tables in the Zabbix database, displays the last 3 months worth of trends for an item, then displays (in a separate color) the forecast for the item over the next two weeks (variable time-frames). I did this using a Holt-Winters double exponential smoothing algorithm I found code for.

The result was fairly accurate for a forecast. Again, written in Python, but should be translatable to PHP. The method itself was pretty simple: pass a list of [clock, value] and it returns a list of [clock, value], where clock contains future dates and times.

I don't know how much work, if any, has been done in this area, but it would be a great feature to have, and one that I personally need. While I have a separate app that does this forecasting, it would be even better if it were built-in to Zabbix. I would be happy to provide any additional information, the Python code for the Holt-Winters algorithm, possibly even some time to implement this (though I haven't worked with PHP in a while).

Please let me know if there is work being done in this area, or if not, would this be a desired feature for anyone else.



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2015 Sep 07 ]

Hi! As you can see there is some progress on ZBXNEXT-922. For now forecasting will be implemented by the means of trigger functions. We want them to be as robust and easy to use as possible. Therefore we stick with such common extrapolation techniques like linear regression, polynomials, exponential, logarithmic and power functions. I hope this is just a beginning and as soon as we get feedback on this feature we will probably proceed with something more complicated.

It is very interesting that you use Holt-Winters method. As I can see, there are three-four parameters in this model. This is probably too much for an ordinary user to tune. And we would not want to provide "default" parameters because it is very hard to find parameter set which would suit everyone. Wiki says about exponential smoothing:

Such techniques have broad application that is not intended to be strictly accurate or reliable for every situation.

And this is what concerns us the most.

Anyway, I would be glad to hear more from you about your vision of forecasting in Zabbix and about your experience with Holt-Winters.

Comment by Ross Peoples [ 2015 Sep 08 ]

Hello,

The difference between ZBXNEXT-922 and what I'm proposing is that 922 uses triggers identify capacity issues as they emerge, whereas this one gives an estimation of when that might be. These two complement each other more than compete. While it is ultimately helpful to know when you are about to reach a potential capacity issue, sometimes you also need to answer a question similar to this one: "If we add another server, based on our current growth of application X, how long until we would need to add another server?" While triggers handle most of capacity management, this proposal handles capacity planning.

Being able to see forecasts in graphs allows you to plan for capacity, rather than react to it. It's great that there is some forecasting being done via triggers, now I think we just need to put that into graphs as well. If the extrapolation techniques used for triggers would be suited for graphing as well, then that's fine. I chose Holt-Winters at the time because it was recommended for forecasting things with fluctuations, like CPU usage.

Comment by Glebs Ivanovskis (Inactive) [ 2015 Sep 14 ]

Hi,

ZBXNEXT-922 will allow you to create predictive triggers which can act and prevent problem from happening in an automated manner. Of course, same trigger functions can be used in calculated items and plotted on graphs (but this does not look too pretty at the moment). There are plans to transfer prediction maths to graphs (purely on the frontend side) when trigger functions are done and polished.

Fluctuations are unpredictable by nature. Sometimes Holt-Winters is able to guess them surprisingly well, but sometimes all can go totally wrong.

Comment by David Lang [ 2016 Jan 05 ]

I'll point out that rrdtool implements Holt-Winters and is C code released under GPLv2 (or later), so the code can be directly copied into Zabbix.

for simple functions, calculating it on the fly as you access it can work, but for more complex things, it makes more sense to calculate it once and store the result the way you would any other data source.

looking at ZBXNEXT-992 it looks like it is an on-demand function to calculate the expected value now (or in the future with timeleft), but doesn't provide a way to have the history of the predictions short of running the calculation for each point on the graph as it's displayed.

Is there a way to have a predictive trigger create a data item that can then be graphed as you would any other item?

Comment by Ismael Ricardo Packer [ 2018 Feb 22 ]

Any update with this feature?





[ZBXNEXT-2825] User and user group description fields Created: 2015 May 22  Updated: 2023 Sep 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Installation (I)
Affects Version/s: 2.4.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: OdinZabbix Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: users
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-6570 Add a 'Description' field to 'Host gr... Closed

 Description   

Add user description field on the user creation screen and user group description on the user group creation screen.
It allows to describe the purpose of all users. For example, if I added some user for test purposes and want to inform my colleagues do not delete it for a couple of days.



 Comments   
Comment by richlv [ 2015 May 22 ]

description for :

Comment by Nathan Liefting [ 2022 Aug 19 ]

This is definitely a nice quick easy addition!

Comment by Galo Xucro [ 2022 Nov 16 ]

It looks trivial to add a description field, with minimal impact on database and other features.

In large installations, it's necessary to document the purpose of each usergroup and some users: why was it created for? permissions? alerting? dashboards? api access?.

Zabbix configuration should allow for some kind of auto-documenting, it'd make the life of Zabbix administrators easier.

Comment by sbindley [ 2023 Sep 07 ]

if not a description field, then a tags field. this would allow to add tags for short description, expiration dates, a temp flag, etc.





[ZBXNEXT-2650] loadable modules for adding new trigger functions Created: 2014 Dec 29  Updated: 2015 Sep 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 12
Labels: loadablemodule, newtriggerfunction, triggerfunctions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2954 Provide to a users with mechanism to ... Closed

 Description   

How about adding support for extending Zabbix with custom trigger functions like it is already done for custom items (ZBXNEXT-1550)?

Spec is drafted here: http://www.zabbix.org/wiki/Docs/specs/ZBXNEXT-2650



 Comments   
Comment by Michael Mol [ 2015 Jul 13 ]

I'd be in favor of this, so long as the custom functions are also applicable in calculated items.

Comment by Vladimir Ulogov [ 2015 Sep 14 ]

Initial specifications and proposed algorithm is done. Please review.

Comment by Vladimir Ulogov [ 2015 Sep 14 ]

The way how it is implemented with items is very "C"-centric. I do want to give a chance for the users to create a functions using whatever mechanism they choose. Including use of the embedded interpreters. If I define array of references name to a "C" functions (like it is done now with an items), I will not be able to achieve that easily.





[ZBXNEXT-2651] Loadable modules for item pre-processing Created: 2014 Dec 29  Updated: 2021 Oct 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: items, loadablemodule, valueextraction, values
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-3971 Possibility to extend item preprocess... Closed
is duplicated by ZBXNEXT-5523 Implement an API to add custom C modu... Closed

 Description   

How about adding support of pre-processing for item values by custom functions?
These could be provided via loadable modules like it is already done for custom items (ZBXNEXT-1550)?



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2016 Aug 11 ]

okkuv9xh, do you remember what was exactly meant by this request? Preprocessing on which dataflow stage?

Comment by Marc [ 2016 Aug 12 ]

I believe it was meant in the sense of ZBXNEXT-1443.

Comment by Alexei Vladishev [ 2021 Oct 15 ]

Since we have ability to extend pre-processing using JavaScript code, do we still need modules?

Comment by Glebs Ivanovskis [ 2021 Oct 15 ]

Your words:

Javascript is not a replacement of binary modules in any way!

Comment by Alexei Vladishev [ 2021 Oct 15 ]

Right, but the ticket is asking for custom functions in pre-processing, that's the use case. Why use modules (hard to deploy, incompatible templates) if requested functionality can be easily achieved with built-in JavaScript pre-processing? It is easy to use and templates with such pre-processing rules will work elsewhere as well.

Comment by Glebs Ivanovskis [ 2021 Oct 15 ]

the ticket is asking for custom functions in pre-processing, that's the use case.

Yes, but your original question seemed to be about modules in general. Excuse me, I have probably overreacted.

Why use modules (hard to deploy, incompatible templates) if requested functionality can be easily achieved with built-in JavaScript pre-processing?

I guess same can be said about modules vs. userparameters or modules vs. external scripts. This question was answered in ryan.armstrong's talk at Zabbix Conference 2016 (slide 19):

Modules, why bother?

  • Better performance
  • Simpler packaging
  • Smaller footprint

Speaking of "hard to deploy", I think it is a bit artificial. The situation can be improved, but this area has been getting zero attention from Zabbix team in the recent years.

Comment by Alexei Vladishev [ 2021 Oct 18 ]

I don't mind to keep this ticket open. I just think that the need for pre-processing modules was highly diminished by the introduction of custom JavaScript pre-processing. Now I believe most (if not all) use cases are covered and performance (IMHO the only potential benefit of modules) has never been an issue. At least I haven't heard about any performance-related issues with JavaScript pre-processing.





[ZBXNEXT-2587] zabbix Packages: error due seem autenticate like mysql when postgresql case for server Created: 2014 Nov 11  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: PICCORO Lenz McKAY Assignee: Kodai Terashima
Resolution: Unresolved Votes: 0
Labels: packaging
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

when deinstalled but with purge case the packages of zabbix-server postrm process do not remove the database:

dbconfig-common: dropping pgsql database zabbix.
dropping database zabbix: does not exist.
dbconfig-common: revoking privileges for user zabbix on zabbix.
revoking access to database zabbix from zabbix@localhost: failed.

i'll try to also post a solution here but i cannot see the problem when occurs.. so i only post the error when uninstall

for mysql case do not have errors... so this are my suspect.. i dont know why this poor dbms (related to scaled dbms such like oracle or postgres) have so support and do not take cares on cases such postgresql



 Comments   
Comment by PICCORO Lenz McKAY [ 2014 Nov 12 ]

umm i search something and i think in script uninstall of debian we must parse the db type as "psql" but i dont know where exactly..





[ZBXNEXT-2621] Support LLD for Web Scenario's Created: 2014 Nov 28  Updated: 2021 Jul 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Frank Assignee: Unassigned
Resolution: Unresolved Votes: 75
Labels: lld, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-3147 Add webcheck prototypes to Zabbix Closed

 Description   

It would be nice if LLD could be used for web scenario's allowing mass vhosting checks.



 Comments   
Comment by Marc [ 2014 Nov 30 ]

Just to get it right, you're talking about something similar to "Web scenario prototypes" for LLD, right?

Comment by Frank [ 2014 Dec 01 ]

Yes, I'd like to auto-detect vhosts (which I'm already doing for a "simple" item/trigger check) and automatically do webchecks on them.

Comment by Jon Beilke [ 2016 May 06 ]

Using the Zabbix API as a workaround for auto generating web scenarios for now, but would really like to see this integrated into LLD. Any updates on this feature request?

Comment by Marc [ 2016 May 06 ]

jrbeilke,
unfortunately it's not on the roadmap yet. Possibly see "(Co-)sponsoring development" for the fastest way to get it there

Comment by Evan Montgomery-Recht [ 2016 Oct 24 ]

Can you provide an example of how to add a web scenario via Zabbix API? Ideally it would be a multi-step scenario.

Basically we have a situation where we have about 60 web applications is various stages of the SDLC. We need a way to dynamically detect if a application has been deployed to one of our servers. This detection would occur based on a 'is-URL' present (or does it respond back to the right status code) in a template. If so, add application to be monitored. (Ideally we would need to be able to say, if down for at least a week, or some other defined timeframe, it's likely no longer deployed.)

Comment by Jon Beilke [ 2016 Oct 24 ]

Should be covered on the Zabbix doc site - https://www.zabbix.com/documentation/3.2/manual/api/reference/httptest/create

{
    "jsonrpc": "2.0",
    "method": "httptest.create",
    "params": {
        "name": "Homepage check",
        "hostid": "10085",
        "steps": [
            {
                "name": "Homepage",
                "url": "http://mycompany.com",
                "status_codes": 200,
                "no": 1
            },
            {
                "name": "Homepage / About",
                "url": "http://mycompany.com/about",
                "status_codes": 200,
                "no": 2
            }
        ]
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}

We're using Ruby as it allows us to fetch a JSON list of sites from an internal API and then add the necessary Web Scenarios to Zabbix with this zabbixapi gem - https://github.com/express42/zabbixapi

The readme for the zabbixapi gem includes an example for adding Web Scenarios (a.k.a. httptests). The steps are passed as an array to the API as part of the Web Scenario, and are ordered based on the number (no) property.

Comment by Vladimir Ulogov [ 2016 Oct 25 ]

But long-term solution for this, would be a support of the WebScenario prototypes in LLD. I am voting for this.

Comment by Eduard Muradov [ 2020 Feb 06 ]

Hey. Is there any news about this feature?

Comment by Ben Hanson [ 2021 Jul 15 ]

I can see that using web scenarios prototypes in LLD might be a bit counterintuitive, since scenarios would likely be individual to an apache/iis/etc application.  Maybe it would make more sense to have an improved HTTP agent item to do single URL checking, since that is already a prototype.

It's just so much easier to do a clean web scenario + trigger.

So is there a way to make an HTTP agent item that behaves like a single step web scenario?

Comment by Slash [ 2021 Jul 15 ]

LLD web scenario can be very useful when you need to monitor several websites on a reverse proxy cluster or even a single http server. You can also monitor several endpoints of a specific application.

Currently we have to create a userparameter with LLD to perform this action.





[ZBXNEXT-2572] Item Delete - Long periods of high internal housekeeper process usage Created: 2014 Nov 06  Updated: 2014 Nov 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dimitri Bellini Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: housekeeper
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Redhat Enterprise 6.x x64 - Percona MySQL 5.6


Attachments: PNG File zabbix_housekeeping_trouble.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-2571 Item Delete - Long periods of high in... Closed

 Description   

Actually the Zabbix Housekeeper is working very well with normal operations, cleaning item values but i can't say the same when we delete some prototype items or simple items.

During an official Zabbix issue we are now know the right meaning of the MaxHousekeeperDelete parameter, this variable only affect the amount of value of a deleted item per Housekeeper run.

For example if i have a template for Cisco Switches with some Item prototype related to the port metrics, you will probably face this numbers:
N.1 Item prototype expanded with 100 switch ports x 10 monitored Switches => 1000 Discovered Items x Update interval
In this case Zabbix Housekeeper wil try to remove n. MaxHousekeeperDelete (ex.500) x Total Discovery Items (1000) => 500k history value in a single run.

So the MaxHousekeeperDelete don't limit the query for a single Housekeeper run and in some case this logic can dramatically increase the workload of Zabbix Server.

Please provide a better documentation of the MaxHousekeeperDelete or much more Predictable logic of Housekeeper process operation.



 Comments   
Comment by richlv [ 2014 Nov 06 ]

i'm inclined to close this as a duplicate of ZBXNEXT-2570 - would you agree ?





[ZBXNEXT-2631] support strings in lld custom macros Created: 2014 Dec 04  Updated: 2015 Jun 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.7, 2.4.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tomasz Pawelczak Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: lld, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

According to ZBXNEXT-1286 values used in triggers, created from custom user macros by lld, are supported only in numeric form.
Please add also support for strings.

I want to create custom discovery script, that is returning data like:

{
    "data": [
        {
            "{#FSNAME}": "C:",
            "{#FSTYPE}": "NTFS",
            "{#FSWARN}": "{$FS_C_WARN}",
        }
    ]
}

where values in "{#FSWARN}" are created dynamically based on drive letter (by script).
Then I want to make trigger protetypes:

{IIS01:vfs.fs.size[{#FSNAME},pfree].last()}<{#FSWARN}

to get triggers looking like that:

{IIS01:vfs.fs.size[C:,pfree].last()}<{$FS_C_WARN}

My problem is that we have a lot of windows servers with different drives letters, and alerts thresholds. For now I manually add templates with correct drives letters and thresholds, but it will be really nice to discover all disks and only set correct values for macros.






[ZBXNEXT-2617] Triggers on multiple items with the same clock should be evaluated at the same time Created: 2014 Nov 27  Updated: 2016 Jun 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.4.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Strahinja Kustudic Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: dbsyncer, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File items.png    

 Description   

Currently in Zabbix if you create a trigger on two (or more) items, the trigger is evaluated when each item last value is changed, even if both items change their value at the exact same time (using zabbix_sender), which makes it impossible to compare values of more items in triggers.

I uploaded an example. In the graph you can see two items which have a trigger on them which checks if the green item is greater or equal to the red one, if it is, it will send a notification. These items were updated in Zabbix at the exact same time which you can see from the database:

zabbix=> SELECT clock,value from history_uint where itemid = 98532 and clock > 1417042800 and value = 70;
   clock    | value                                                                                                                                                                                                
------------+-------                                                                                                                                                                                               
 1417060938 |    70
(1 row)

zabbix=> SELECT clock,value from history_uint where itemid = 98522 and clock > 1417042800 and value = 65;
   clock    | value 
------------+-------
 1417060938 |    65
(1 row)

As you can see clocks are the same, but Zabbix evaluated this item 2 times in 6 seconds:

  • the first time it evaluated when the value of the green item changed to 65 (which triggered a notification in Problem state, since it didn't use a value 70 from the red item), but the old value, which was 64,
  • after 6 seconds it evaluated the trigger again for value 70 of the red item, which then sent a notification with OK state.

What Zabbix should do is it should evaluate this trigger only one time for all items which receive a new value at the same time.



 Comments   
Comment by Constantin Oshmyan [ 2015 Feb 25 ]

Hello,

I could confirm that we also had the same problem.

As a workaround we use a bit more complicated trigger expression.
In your example, instead of initial trigger expression

{host:green.last()}>{host:red.last()}

it is possible to use the following:

{host:green.count(30)}>0 & {host:red.count(30)}>0 & {host:green.last()}>{host:red.last()}

I.e. initial trigger expression (comparing green and red items) will be used only if both these items have a values updated during the last 30 seconds.
The timeout (30 seconds in this case) should be smaller than an update interval for both items, but big enough to have Zabbix-server chance to correctly process both new values even on a busy server.

Comment by Strahinja Kustudic [ 2015 Feb 25 ]

That is a really cool solution, but the problem is that when that trigger becomes true, on next item fetch it will become false because of the count expressions. For that trigger to work, you would need to use TRIGGER.VALUE, something like this (I didn't test it and I use the 2.4 syntax):

({TRIGGER.VALUE}=1 and not ({host:green.count(30)}>0 and {host:red.count(30)}>0))
or
({host:green.count(30)}>0 and {host:red.count(30)}>0 and {host:green.last()}>{host:red.last()})

But all of this is still a workaround which makes trigger expressions harder to read and understand. Zabbix should support this out of the box for items with the same timestamp.

P.S. In your example, if your items are refreshed every 30 seconds, shouldn't you use count(29)>0?

Comment by Constantin Oshmyan [ 2015 Feb 25 ]

Good point, thanks.

We use a long enough refresh interval for items (about 20 minutes), so 30 seconds for the count() function is a good timeout. It is just to be sure that item was refrshed "recently" (i.e. both item's values are "fresh").

Really, we need to check a trigger state and describe a different conditions for correct trigger opening/closing. It is possible; however, a very simple trigger expression is transformed to a difficult for understanding (and error-prone) hysteresis-like expression. Of course, it could be much better if we can simple and clear trigger expressions "out of the box" (without these tricks).

Comment by Oleksii Zagorskyi [ 2015 Oct 10 ]

Issue description doesn't mention several important points.
Many values may come to zabbix server during single second and that's ok. Fact also is that zabbix uses nanoseconds for time precision.
It's guaranteed (on agent or server side) that two values of an item cannot get identical unix timestamp and nanosecond when they comes into write cache.
Write cache (including triggers evaluation) then processed by history syncers.

I don't think it can be implemented at all, as we even cannot resolve ZBX-9201

Comment by Strahinja Kustudic [ 2015 Oct 10 ]

Wouldn't it be possible to delay trigger evaluations on triggers with multiple items (for a second or something like that). If zabbix_sender sends two items with the exact same timestamp and those items are used in one trigger, when the first item value is received in the cache, check if the other item's value is within a second, if not, wait a second and evaluate the trigger again. Of course I have no idea if this is possible to do, since I haven't read the Zabbix trigger evaluation code.

If above is not possible, could we maybe add a new function which would make these triggers easier to read, or for example add an additional parameter to last(), e.g.:

{host:green.last(0,3s)}>{host:red.last(0,3s)})

3s means that both green and red have a fresh value within the last 3 seconds.

Comment by Oleksii Zagorskyi [ 2015 Oct 10 ]

1. I'm not developer but I suppose it would not be possible, IMO. Remember please about systems with very high NVPS. I could not imagine there any delays.
2. Didn't really get the example

Comment by Glebs Ivanovskis (Inactive) [ 2016 Jun 01 ]

I would translate suggested fictional

{host:green.last(0,3s)}>{host:red.last(0,3s)}

into supported

{host:green.fuzzytime(3s)}=1 and {host:red.fuzzytime(3s)}=1 and ({host:green.last()}>{host:red.last()})

Or more sophisticated variant which preserves existing trigger state if at least one of item values is not "fresh":

({host:green.fuzzytime(3s)}=1 and {host:red.fuzzytime(3s)}=1) * ({host:green.last()}>{host:red.last()}) +
({host:green.fuzzytime(3s)}=0 or {host:red.fuzzytime(3s)}=0) * {TRIGGER.VALUE}
Comment by Strahinja Kustudic [ 2016 Jun 01 ]

I don't understand how would fuzztyime(3s) help in this situation, since it only checks if the difference between current time of the host and Zabbix server is more than 3 seconds.

Comment by Glebs Ivanovskis (Inactive) [ 2016 Jun 02 ]

Not between host time and server time, but between item value timestamp and current server time.

Comment by Strahinja Kustudic [ 2016 Jun 02 ]

Looking at the docs I would say fuzzytime only works with items which value is the timestamp, if it's not, it cannot be used. If items red and green are not timestamps, then fuzzytime won't do anything.

Comment by Glebs Ivanovskis (Inactive) [ 2016 Jun 02 ]

Yes, indeed. Sorry for being misleading.

Comment by Oleksii Zagorskyi [ 2016 Jun 02 ]

in ZBX-10360 we improved the fuzzytime function description in documentation and item key helper (for 3.0 only).
The doc currently says "item timestamp value", which looks a bit more correct than Gleb's "item value timestamp"

Comment by richlv [ 2016 Jun 02 ]

and it sounds like you might want to vote on ZBXNEXT-2045





[ZBXNEXT-2519] Move API to Zabbix Server Created: 2014 Oct 16  Updated: 2021 Sep 06

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 34
Labels: performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-10119 Method to go over all triggers given ... Closed

 Description   

There are number of drawbacks of current implementation of Zabbix API:

  • code duplication (C, PHP)
  • poor performance especially for template related operations
  • lack of bulk operations and in-memory cache
  • API code is too tied to front-end code (no clear separation)
  • API is not available without Zabbix front-end

It's proposed to move API to Zabbix Server side.



 Comments   
Comment by Marc [ 2014 Nov 15 ]

There should be a reliable mechanism (timeout?) to cancel or prevent expensive API requests.
Currently one can just restart the HTTP server. Restarting the Zabbix server is certainly no option.

Otherwise issues like ZBX-6763 might become a serious problem.

Comment by Marc [ 2014 Nov 15 ]

Btw, how about implementing this as a separate process accessing the shared memory of the server?

Comment by Andris Zeila [ 2014 Nov 21 ]

Yes, the current plan is to implement it as separate process(es). This will allow to partly re-use existing functionaly for some requests (for example template linking) and also will give access to configuration/value caches.

Comment by Oleksii Zagorskyi [ 2015 Aug 28 ]

Performance issue for template related operations discussed in ZBX-6118

Comment by OFN Team [ 2015 Nov 10 ]

We've had a number of comments from our developers that are creating micro services (which we'll run in application containers) that are looking for a restful end point to send metrics to. Will this be available on the proxy as well and will the API be expanded to allow updating item values?

Comment by Ross Peoples [ 2016 Feb 01 ]

Can we make this a separate component from the Zabbix server entirely so that it can be installed on a separate machine from the server? The reason I ask is this: the server already has a lot to do, ingesting data from the proxies, writing it to the database, monitoring anything not monitored by the proxies, calculating triggers and items, and running actions based on those triggers in addition to the other various tasks it has to do.

In a large enterprise environment, being able to horizontally scale is a requirement and thus far, we've been able to do that by adding proxies and additional web servers, but there can only be one Zabbix server. We are planning to start using the Zabbix API much more heavily in the next year, so being able to set up multiple API servers behind a load balancer would be extremely beneficial and take some load off the Zabbix server.

Comment by Ryan Armstrong [ 2016 Apr 03 ]

I agree with Ross. We definitely need to start separating the server into discrete, horizontally scalable micro-services. May need to look at memcached/redis for distributing in-memory caches between components.

I did consider prototyping a RESTful API written in C but it lead to another million new cool ideas and I couldn't decide where to start. For example, it really should sit in front of a shared Data Access Layer (or two: one for config, one for metrics) which could also be a discrete component with a RESTful/other API and then be used by the front-end, server, public API, etc.

So in summary, please don't move the API to the server binary; let's make it discrete and scalable.

Comment by Alexei Vladishev [ 2016 Apr 04 ]

Ryan & Ross, I totally agree with you. The API component must be as independent as possible and ideally shouldn't affect runtime processing of Zabbix Server. We may also give users a choice: run it as part of Zabbix Server or as a standalone process for those who prefer scalability. In both cases the API component shouldn't tightly coupled with Zabbix Server, there will be no shared resources at all.

From the other hand, having API on Zabbix Server side would allow interesting things like building distributed or HA Zabbix Server on top of the API or making all communications (server-agent, proxy-server) to be based entirely on API calls. Just imagine Zabbix Agent doing history.put or Proxy doing config.get. I like it, do you?

Comment by richlv [ 2016 Apr 04 ]

when decoupling the api, what about the server caches (value, configuration) ?
those would be very valuable to reuse for the api.
separate caching engines like redis could be considered, but the complexity of a zabbix deployment would increase massively

Comment by Ryan Armstrong [ 2016 Apr 05 ]

Yeah I think the caches are valuable to the API but do agree that redis/memcached/other would add install complexity.
Alexei, I definitely like it.

I understand this idea is turning into a complete redesign (Zabbix v4?), but if you will indulge me, I'd like to regurgitate the "million new cool ideas" that I feel may actually have value to you. Take it or tweak it or leave it I guess, but I feel some isolation and abstraction would make Zabbix stand out from the crowd.

In brief:

  • All shared memory caches are reimplemented as discrete services with private APIs (i.e. Zabbix implementation of redis/memcached/etcd)
  • Each worker process (currently discrete PIDs via fork()) migrated to a discrete service with private API (e.g. trapper, pinger, poller, trigger eval, action queue, etc.)
  • Two new Data-Access Layer (DAL) private APIs to abstract away the database (one for time series, one for config/other) to enable multiple backends (OpenTSB, MongoDB, etc.) without affecting other components. The config service could apply templates at runtime rather than storing duplicate data to disk (which is then expensive to update)
  • Use a message queue to improve API interconnects (pub/sub), atomicity of changes, producer/consumer load balancing, agent comms, delivery and queuing of metrics, actions, etc.
  • a watchdog service to make sure each component is started/listening
  • Public API is then a discrete service which leverages private APIs and DAL
  • Web front-end should exclusively use the public API ("eat your own dog food")

Advantages:

  • Improved (limitless?) scalability of each component (deploy as monolithic server or distributed micro-services (containerised?))
  • HA per component
  • Significantly improved extensibility (new DAL backends or event brokers would be so much easier!)
  • Improved topologies across network boundaries
  • Eliminate proxies (replace with ZabbixMQ or agent proxies like SCCM)
  • faster changes to templates via config API with updates published on the MQ (no bulk updates or syncers to DB)
  • Leverage service discovery protocols (e.g. consul)

Should I put together some sort of proposal on the wiki?





[ZBXNEXT-2486] Support for monitoring LVM thin pool usage Created: 2014 Sep 29  Updated: 2017 Feb 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.2.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Orion Poplawski Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux



 Description   

When using LVM thin provisioning it is important to keep track of the usage of the LVM thin pool, e.g.:

LV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convert
tpool vg_root twi-a-tz-- 200.00g 76.75

There does not appear to be a default way to do this in zabbix.



 Comments   
Comment by Orion Poplawski [ 2014 Sep 29 ]

This may be hard/impossible as it appears to require root privileges.

Comment by Orion Poplawski [ 2014 Sep 30 ]

Working around it for now with:

UserParameter=vfs.dev.lvm[*],/usr/bin/sudo -u root /sbin/lvs --noheadings -o $2 $1

Comment by Christian Affolter [ 2017 Feb 05 ]

Here are some user parameters and the related sudoers configuration, which might help for creating a template:





[ZBXNEXT-2439] Off-the-Record support for Jabber/XMPP Created: 2014 Sep 05  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: encryption, jabber, mediatypes, security, xmpp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

How about adding OTR support to Jabber media type?

This might allow to use public or private Jabber-/XMPP-Server (especially on receiving side) without bothering about the risk of exposing sensitive data.






[ZBXNEXT-2343] Active agent auto-registration - Replace or remove host groups Created: 2014 Jun 11  Updated: 2015 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marco Hofmann Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: actions, autoregistration, hostgroups, operations
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Server 2.2.2 on Debian 7
Zabbix Proxy 2.2.2 on Debian 7
Zabbix Agent 2.2.1 on Windows Server 2008 R2


Issue Links:
Duplicate
is duplicated by ZBX-9979 Auto registration. Host is still adde... Closed

 Description   

We startet using Active agent auto-registration instead of discovery. It works very well.
When I create the Auto Registration Action, I miss a feature in the Operations. I can add the new hosts to a host group, but I can't choose to replace or remove other Groups. So I end up having all new hosts in the Discovered Hosts Group.
In the Network Discovery this ist possible.



 Comments   
Comment by Alexander Vladishev [ 2014 Jun 11 ]

Moved to ZBXNEXT project.

Comment by richlv [ 2015 Jun 25 ]

ZBXNEXT-1387 might solve this





[ZBXNEXT-2366] Main menu is not accessible by keyboard (WCAG) Created: 2014 Jul 03  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.3, 2.2.4, 2.2.5, 2.3.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Paweł Seledec Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: frontend, menu, usability, wcag
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In WCAG 2.0 there is a Guideline 2.1 Keyboard Accessible: Make all functionality available from a keyboard.
http://www.w3.org/TR/WCAG20/#keyboard-operation

The main menu does not meet this guideline.

In my frontend I changed in the file include/menu.inc.php this line:

$mmenu_entry = new CCol($menu['label'], $menu_class);

into:

$mmenu_link = new CLink($menu['label'], $menu_url, 'highlight nowrap');
$mmenu_entry = new CCol($mmenu_link, $menu_class);

This solved the problem.



 Comments   
Comment by Ivan Good [ 2016 Feb 05 ]

I think, it would be also really great to have some hotkeys for the most common menu items. E.g. "c h" for Configuration/Hosts and "m l" for Monitoring/Latest data.
Would be highly appreciated





[ZBXNEXT-2330] Support of templates and macro expander - to create external reports Created: 2014 Jun 04  Updated: 2015 Jun 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Lukas Macura Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: cli, latestdata, reports
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-247 Built in feature to export reports an... Open

 Description   

It would be great to create some macro expander functionality with support of templates.
After it, it is relatively easy to create templates to output almost any content (svg, html, txt, tex, ...)
And it is possible to rewrite "latest data" page by embeding such results.

With this functionality, any user can make its own report and templates can be shared on zabbix wiki page.
Even more, anybody can write simple script which can create any output (pdf, png, ...)
There are many templating systems for PHP, like smarty or latte. Parameter of expansion would be hostgroup, host or item to expand hosts, items or latest data in loop.
Smarty example:

<table border="0" width="300">
  <tr>
    <th colspan="2" bgcolor="#d1d1d1">
      Host group {$hostgroupname}"</th>
  </tr>
  {foreach from=$hosts item="entry"}
    <tr bgcolor="{cycle values="#dedede,#eeeeee" advance=false}">
      <td>{$entry.description}</td>        
     </tr>
  {/foreach}
</table>

For start, it is enaugh to have zabbix_expand cli. Templating can be done later.



 Comments   
Comment by Oleksii Zagorskyi [ 2014 Jun 05 ]

Maybe suggested solution is fresh, but in general this is duplicate of ZBXNEXT-247, linked just in case.





[ZBXNEXT-2380] Zabbix-Server should support oracle failover connection strings Created: 2014 Jul 10  Updated: 2014 Jul 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.3, 2.2.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Christian Meissner Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: fallback, oracle
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix_server self compiled against oci api.


Attachments: File tnsnames.ora    

 Description   

we currently testing Zabbix with an oracle database backend. Here we have an oracle 11g cluster (rac-1.domain.tld) with an oracle 11g standby cluster (rac-2.domain.tld.
So we use in other application (servers) a failoverstring like this:

(description_list=(load_balance=off)(failover=on)( description=(connect_timeout=3)(retry_count=2)(add ress_list=(load_balance=on)(address=(protocol=tcp) (host=rac-1.domain.tld)(port=1540)))(connect_data=(service_n ame= zbxserv)))(description=(connect_timeout=3)(retry_c ount=2)(address_list=(load_balance=on)(address=(pr otocol=tcp)(host=rac-2.domain.tld)(port=1540)))(connect_data=(service_n ame= zbxserv))))

How i can connect this way to an oracle system. An automatic connect after a database failover will be great.



 Comments   
Comment by Oleksii Zagorskyi [ 2014 Jul 17 ]

Zabbix server reconnects to database if required (for a list of errors returned by db backend library).
Not sure your case "included" to the list.

Comment by richlv [ 2014 Jul 17 ]

when the failover happens, don't you have a virtual ip pointing at the current db ?
is your zabbix configured against that ip address ?

Comment by Christian Meissner [ 2014 Jul 18 ]

No, there is no virtual ip. In the above connection string you can find two host parameters, which are the both clusters. Each cluster has two nodes. In Cluster the connections will managed transparently to the application. But failover from active to standby database will lead to a hostname switch.
An alternative to connection string in configuration will be tnsnames.ora file there is the connection string mapped to an virtual name. I will attach such a file.

Comment by Christian Meissner [ 2014 Jul 18 ]

example tnsnames.ora

Comment by Christian Meissner [ 2014 Jul 18 ]

Ok, i got more information from my dba

1) Our two clusters hava a scan-name (rac-1 and rac-2)
1.1) each scan-name is mapped to three ip addresses (A-Records)
1.2) this three addresses will assigned to the nodes at cluster start.
2) Data guard manage replication and switchover from one cluster to another. The Switchover is done by hand by our dba
3) Application takes first host parameter an tries "retry_connect" times to connect to this scan-name. If connection is not possible the app tries the next host entry.
3.3) failover=on means that the application retry regulary reconnect to hosts in "address_list". So it's guaranteed that reconnect worked after cluster switchover





[ZBXNEXT-2260] Deprecated macros should be removed Created: 2014 Apr 14  Updated: 2020 Oct 21

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexander Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Support of deprecated macros like {IPADDRESS}, {HOSTNAME}, {TRIGGER.KEY}, {TRIGGER.COMMENT}, {STATUS}, {PROFILE.*} should be dropped.

Upgrade path should replace deprecated macros by supported analogs.



 Comments   
Comment by Juris Miščenko (Inactive) [ 2014 Apr 14 ]

Implemented in svn://svn.zabbix.com/branches/dev/ZBXNEXT-2260

Comment by richlv [ 2014 Apr 14 ]

(1) how exactly is this being done ? just by dropping the support ?
if so, this has a potential of massively messing up with existing users that are upgrading - they have huge amounts of items, actions and other configuration entities that will be broken now, and there is no way to easily fix them - they either have to find each instance manually in the frontend, or know all tables in the db where this should be changed and do direct sql.

that would be seriously, seriously bad.

sasha Will be introduced an upgrade patch. All deprecated macros will be replaced by supported analogs.

<richlv> HOORAY, thanks
we will need a nice spec, listing all macros and locations where they will be changed

jurism We need a specification that lists database tables and fields where the macros are stored and what macros can be placed in those fields.

jurism Database patch added.

Comment by Alexander Vladishev [ 2014 Apr 15 ]

(2) [PS] please review my changes in r44407.

jurism Reviewed. RESOLVED.





[ZBXNEXT-1903] Common usable class or framework for searching and filtering in frontend Created: 2013 Sep 10  Updated: 2013 Sep 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.8
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: filters, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There are a couple of ZBXs and ZBXNEXTs that suggest either adding filter functionality where it does not exist yet or extending the existing ones.
In reference to comments in ZBXNEXT-1861, I wonder if that might be an approach that is technically implementable.

I could imagine that a unified filter/search class, that's easy to integrate in existing and upcoming frontend sections, might be as valuable as timesaving.
In addition to that, it would provide a unified look for filters that might allow to be customized easily.

Feel free to toss this idea if it's too far from reality - in any way






[ZBXNEXT-2773] Manual graph disabling Created: 2015 Apr 10  Updated: 2015 Jun 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Jacek Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Can you add graph enable/disable functionality (similar way as it is done for triggers or items), which would prevent displaying unwanted graphs in dropdown menu on a graph tab?

On most of network devices I'm working with (routers, switches, cmtses) there is always lots of different phisical/virtual interfaces, which are being discoverd by lld rules. Same rules create graphs (ex. traffic) for every added interface. Usually it is a very inconvenient to find desirable graph, since there are no graph filtering options, search engine doesn't support finding graphs and dropdown menu is flooded with uneccesary graphs.

Using LLD filters to add only wanted graphs, in my opinion, is not an option, because, propably in the end, it would come to creating huge regexp matching only particular graphs.

Not showing graphs built on disabled items is not a solution as well, as ,for example, there can be a need to have an access to historical data on the interface, which is not used anymore.



 Comments   
Comment by richlv [ 2015 Apr 10 ]

it might be better to provide graph filtering / searching.

a very generic issue about that direction is ZBXNEXT-1201





[ZBXNEXT-2700] Avoid **unknown** in notifications send by triggers Created: 2015 Feb 05  Updated: 2017 Oct 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.4.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: callistix Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: macros, notifications
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Regarding Email Zabbix actions:

Because a trigger can refer to more than one item I use following format for mail notifications:

{ITEM.NAME1}: {HOST.NAME1}: {ITEM.KEY1}: {ITEM.VALUE1}
{ITEM.NAME2}: {HOST.NAME2}: {ITEM.KEY2}: {ITEM.VALUE2}
{ITEM.NAME3}: {HOST.NAME3}: {ITEM.KEY3}: {ITEM.VALUE3}

But when notifications arrive from a trigger that uses only one item, the unused ones are shown as *unknown*.
That looks IMHO a ugly and misleading - and apparently my Email client (Thunderbird) interprets ** as bold text, so the unknown items appear visually more important than the rest of the mail.

I have several proposals to solve this:

  • introduce special characters that evaluate the containing macro only if it is defined, e.g.: ?{ITEM.NAME2}? would return nothing if {ITEM.NAME2} is not defined
  • an interpreter, so we can use logic, e.g.:
    if {ITEM.NAME2} then print {ITEM.NAME2} end
    this could be covered by ZBXNEXT-1444
  • a function that returns a list of defined Macros, e.g.
    table({ITEM.NAME},{HOST.NAME})
  • make the returned string configurable, so instead of *unknown* we could choose to return an empty string





[ZBXNEXT-2483] Option to execute Web scenarios by Zabbix agent Created: 2014 Sep 27  Updated: 2020 Oct 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.2.6, 4.0.14
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: agent, newitemkey, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-3447 Ability to run webcheck from agents i... Closed
is duplicated by ZBXNEXT-3513 Web-checks on agent side Closed
is duplicated by ZBX-9405 web checks should be done from zabbix... Closed
Sub-task

 Description   

Due to the last couple of improvements in this area Web scenarios are becoming a unique selling point.
They enable End-to-End monitoring for almost any web based application with great flexibility and maintainability.

Recently I was asked whether Web scenarios might even be executed by hosts via Zabbix agent.
The intention was to check from front end web proxy hosts whether all redundant paths from there to application servers can be successfully used.

My answer to that question was "No", but one could put a dedicated Zabbix proxy on such DMZ hosts, which then can do web scenario checks.
While saying that I realize that this was actually not an ideal solution from several points of view. Especially when having in mind that there are several hundreds of such web proxies for different applications.
Then I briefly thought of some iptables magic to add kind of forwarding per path....quite in-transparent and actually pretty poor too.
Finally I though, why actually not?

Now, how about extending Zabbix agent by an active check for processing Web scenarios? Or possibly even better extending by a separate HTTP poller process?
An option on Web scenario level could allow to select whether a scenario should be executed on Server/Proxy or Agent level.

I'm aware that this needs significant developing in either way and would possibly break the ambition to have items available on every OS supported by Zabbix agent.

Anyway, I can imagine that this functionality would be valuable for many users.

I was sure there is already a ticket that requests an option to select whether a Web scenario is executed on Server or Proxy level. There I wanted to add this request actually - but I haven't found one



 Comments   
Comment by Marc [ 2014 Sep 27 ]

Implementing this as a passive check might allow to keep the work flow at server/proxy level and to avoid the transfer/storage of all the necessary information to/by the agent.
Although the additional connection might potentially cause inaccurate metrics and create new issues like conflicts regarding timeout settings.

Comment by richlv [ 2014 Sep 28 ]

this might be a fairly large development, as all the webscenario logic currently is in the proxy/server modules.

it might move towards merging agent and proxy

Comment by Marc [ 2014 Sep 28 ]

The very same concern lead me to think about a passive check implementation.
I'm not sure about the "right" solution. But I think the use case for such kind of functionality (however implemented) exists and is not a niche.

I highly appreciate the small footprint and dependencies of the agent. Even when a kind of "simple" configuration cache (think of ZBX-2112) or separate processes for active checks (think of ZBXNEXT-691) could be quite valuable, the agent should be kept as independent and small as possible.

Instead of extending the existing agent a new dedicated agent for that purpose could be another way too.

Anyway, for now it's just a functional request. Even though suggested by the ticket summary, it has not necessarily be implemented in the existing agent.

Comment by Oleksii Zagorskyi [ 2014 Sep 28 ]

ZBXNEXT-1816 is a bit related





[ZBXNEXT-2378] Agent for Android devices Created: 2014 Jul 10  Updated: 2019 Sep 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: JOSE LUIS DE PRAT Assignee: Unassigned
Resolution: Unresolved Votes: 13
Labels: android, arm
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Android operating system (rooted or not)


Issue Links:
Sub-task
depends on ZBXNEXT-5315 Add Zabbix Agent support for Android ... Open

 Description   

We use several Android devices (TVBox or simmilar) for applications like Digital Signage, etc... small boxes like http://goo.gl/ma4AGb (or other) with good funciontality and performance.

We would like an Android active agent + proxy so we can monitor android device and also "ping" (with proxy) other devices on same small network. Device can be rooted or not.

Current low cost devices are unique to provide new services at very atractive HW cost; while we are using several R-Pi, Odroid, etc.. (with Linux) for different services, Zabbix proxy, etc.. we would like to expand it for for Android devices.



 Comments   
Comment by Erwin Averdijk [ 2016 Sep 21 ]

Did you a solution for monitoring android devices? I want also monitoring android devices.

Kind regards,
Erwin

Comment by richlv [ 2019 Jul 11 ]

This issue has an "Epic Link" for "Continuous delivery", but that cannot be viewed.

palivoda Discussed on deisgn day: there is no point to port existing agent, instead we had to create new compatible with existing Zabbix protocol. Epic link removed. 





[ZBXNEXT-2375] We should use PHPDebugBar instead of our own debug handles Created: 2014 Jul 09  Updated: 2015 Jun 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Andrejs Čirkovs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: debugging
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We should change our debug to http://phpdebugbar.com/ because:

  • it is community-maintained
  • has more features than our code
  • looks prettier
  • MIT licensed





[ZBXNEXT-2376] Navigation on maps Created: 2014 Jul 10  Updated: 2014 Jul 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Vekli Sergey Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: automation, maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In our production we have network with ~100 nodes. Each node have some equipment(switches, ups, DSLAM. etc.) and geographically located in one place.One node correspond one group in zabbix and have one map with all items of node. For viewing all nodes we have one global map with "network group" items corresponding network nodes. Now we manually adding link on global map for going from global map to network node map after adding new node of network. It will be nice if in zabbix we have instrument for automatic linking between maps and tool for navigation.



 Comments   
Comment by richlv [ 2014 Jul 10 ]

with nodes going away in 2.4, such a feature would have to be proxy based

Comment by Vekli Sergey [ 2014 Jul 10 ]

Can you explain more detailed?

Comment by Oleksii Zagorskyi [ 2014 Jul 17 ]

Reporter probably did not mean "zabbix node" as it is.

I recall similar discussions here, but I don't think they have any chance to be implemented because it's too complicated and very specific.

Comment by Vekli Sergey [ 2014 Jul 17 ]

We plan to use custom script to automatic creation link from main map to others, now we testing it but after each update version of zabbix will need to check structure of database.





[ZBXNEXT-2308] Use MQTT as transport protocol for agent/server/proxy communications Created: 2014 May 17  Updated: 2019 Feb 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Raymond Kuiper Assignee: Unassigned
Resolution: Unresolved Votes: 28
Labels: encryption, mq, transport
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2536 Use an other transport protocol Closed

 Description   

Currently, the transport used by zabbix to grab metric data from the agents is based on it's own protocol.
I propose Zabbix starts to work towards using MQTT as the underlying protocol for all agent based communications.

Using MQTT would bring the following improvements to Zabbix (amongst others):

  • (Optional) encryption of communications via TLS (ZBXNEXT-767 / ZBXNEXT-17)
  • Authentication of agents, servers and proxies (username & password/certificate/PSK based) (ZBXNEXT-767)
  • MQTT has a builtin keepalive system, with a "Last Will and Testament" (LWT or Will) option allowing active feedback to Zabbix when an agent or proxy (or even server) goes away from the MQ (host/link down)
  • Better performance compared to the older polling based protocol (I think it should be on par with active)
  • Allows for scaling up Zabbix in the future (It will be easier to horizontally scale out the server when using MQ subs, and dividing workload amongst servers)

This request is in many ways similar to ZBXNEXT-638 (AMQP support) although I think MQTT will be a better match since it has been designed with embedded devices (low memory footprint) using unreliable transport networks (QOS, LWT) in mind. The LWT function might prove extremely valuable, and the added built-in functionality of auth and encryption is something the community has been waiting for for a long time.



 Comments   
Comment by Jan-Piet Mens [ 2014 May 18 ]

Disclaimer: I'm a complete newbie to Zabbix.

I've been studying on how to best accomplish this, and I've stumbled over loadable modules in Zabbix Agent. The good news is I have a minimal prototype working which is able to populate item data (is that the correct terminology?) with values obtained through an MQTT subscription.

A number of questions arise, though:

  • It doesn't seem possible to update the list of keys provided by a loadable module at runtime. (https://support.zabbix.com/browse/ZBX-8222). This means a module needs to know all potential keys Zabbix will ask it for, which means items will have to be queries with parameters/types (e.g. mqtt[f,temperature] for a float temperature.
  • Is it possible to actually create the items a user sees on the dashboard via a loadable module?

Comments, ideas, etc. are very welcome!

Comment by Marc [ 2014 May 19 ]

Creating entities like items or configuration in general, is intended to be done via the Zabbix API

Comment by Raymond Kuiper [ 2014 May 19 ]

Hi JP,

In this case the loadable module for the agent will not be of much use.
Preferably, we need a module for the zabbix servers that will allow subscribing to items that are published on the MQTT bus. Possible, we can have the zabbix server publish a list of items for the agent on the bus as well.

This would replicate the behavior of the current active items. The agent will need to be patched to support MQTT as a protocol, the loadable module on that end is only useful for gathering data, not sending it.

I'm in the works of building a 'zabbix-agent-to-mqtt' bridge in bash to demonstrate the behavior and possibilities.
Once I've got the basics working, I'll put it on github.

HTH,

Raymond

Comment by Tatapoum [ 2014 May 20 ]

+1 The message queue approach seems to be very interesting.

Comment by Jan-Piet Mens [ 2014 May 21 ]

I notice while using the Zabbix API, that it takes around 15 seconds before I can update (using zabbix_sender protocol) a (trapper) item which I've just created with the API.

Is that to be expected?

BTW, this largish screenshot documents the progres: on the right runs a Python program which subscribes to MQTT messages, creates the Zabbix items (if they don't yet exist) and updates them.

http://i.imgur.com/26duJ23.jpg

Comment by richlv [ 2014 May 21 ]

that's configuration cache - but such discussions are offtopic here, i would suggest irc

Comment by Raymond Kuiper [ 2014 Sep 13 ]

As noted in the IRC channel during #ZabConf2014, here are some interesting links that show some of the advantages.

http://mosquitto.org/man/mosquitto-tls-7.html <-encryption
http://mosquitto.org/man/mosquitto-conf-5.html <- authentication
http://mosquitto.org/man/mqtt-7.html <- QoS (guaranteed delivery) and Last Will (active notification of disappeared agent)

Comment by Antonie Vonk [ 2015 Apr 10 ]

In addition to this request to use MQTT as transport between agent, proxy and server, I think it would also be very nice to have a Zabbix native MQTT publisher as media/action and Zabbix Native MQTT subscriber for the hosts and items.
At the moment this is only possibly by external scripting.

Especially because there are more and more network connected sensors and actuators that uses MQTT.

Comment by Ryan Armstrong [ 2015 Sep 24 ]

I love that idea for media types Antonie. I've raised ZBXNEXT-2981.

Comment by viktorkho [ 2016 May 05 ]

MQTT can replace zabbix-trapper/sender as well. Just ONE item type instead of 4.

Comment by Stefan [ 2017 Dec 22 ]

any news or plans for this?

Comment by Raymond Kuiper [ 2019 Feb 02 ]

Related to ZBXNEXT-3950

 





[ZBXNEXT-2312] Option to postpone an action operation Created: 2014 May 21  Updated: 2014 May 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: delay, operations, period
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There can be scenarios where an action operation shall be postponed in case it would take place beyond a certain time period.
Using a regular action condition does not help here, since it would on the one hand consider the event time respectively step 1 only and on the other hand leads to ignore the event generally.

It would be nice, if it would be somehow possible to configure time periods per action operation, like it is currently possible in regular action conditions.
For example, when an operation would take place beyond such a time period, it would be postponed/delayed (not omitted) to the beginning of next defined period.
Potentially subsequent intervals/steps beyond specified time of an operation should probably be discarded.

I could also think of allowing to choose whether the operation should be postponed either beyond or within the specified time period(s).






[ZBXNEXT-2282] Monitoring Host Items by different proxys Created: 2014 Apr 27  Updated: 2014 Apr 30

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: 2.2.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Vadim Nesterov Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: proxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I have vmware cluster in datacenter. I use LLD to discover VMs. I get IP of Guest OS using VMWare Perl SDK. Zabbix Host is located in the datacenter too. But I need to monitor PING to every VM outside datacenter. Sure I can use proxy outside datacenter. But I don't want to monitor all VM keys by proxy.
So, it will be great if you add monitor not only host by proxy, but every item can be monitor by different proxy.






[ZBXNEXT-2238] use specific interface when linking template to a host Created: 2014 Apr 03  Updated: 2023 Nov 07

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Mickael Martin (Cyres) Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate
is duplicated by ZBXNEXT-1981 Named interfaces Closed

 Description   

I have an idea to solve this problem https://www.zabbix.com/forum/showthread.php?p=147817
If we can "tag" an interface like "WAN" in host configuration page, items on template can be assign only to interface named "WAN".
For example, I have one host, a pfsense with 3 interfaces, WAN, LAN, DMZ. I create this host and assign my ips to the interfaces (192.168.1.1 -> LAN, 95.x.x.x -> WAN, 192.168.2.1 ->DMZ).
So my template has 3 items named icmpping[LAN], icmpping[WAN],icmpping[DMZ] and all are checked on my host.

I know, I can use user macro to approach this functionality, but it's not easy for the user. IPs in "agent interfaces" are no sense if the user want use only template (and not item directly on host). Moreover, IPs are duplicate (and not linked !) between macros and IPs configuration.
Save the host can check if interface name correspond to the template items, if no one interface is named "WAN" and the host is linked with a template whose had an "item's WAN", the host can be saved.

I think it's a good feature for many users who want to check all (or more than one) interfaces on a host using host configuration (and not user macros...)



 Comments   
Comment by Marc [ 2014 Apr 03 ]

similar to ZBXNEXT-735

Comment by Oleksii Zagorskyi [ 2014 Apr 04 ]

mma, if your idea is different from ZBXNEXT-735, please add it as a comment there.

Closed as duplicate.

Comment by Mickael Martin (Cyres) [ 2014 Apr 04 ]

I think yes, a bit. My idea is applying an item of a template to a generic interface (linked by interface's name). It's not exactly the same idea with ZBXNEXT-735 where justin phelps want assign a template directly on an interface. I think the goal is the same but the way to solve our need is different.

Comment by Marc [ 2014 Apr 04 ]

mma, what about: [...] having an optional alias per host interface. This could then be set additionally in template items [...]?

Comment by Mickael Martin (Cyres) [ 2014 Apr 04 ]

My idea is more flexible but more difficult to implement I think, and more difficult to understand for the end-user.
You can have a template with many items witch have different interfaces assigned. Many templates has standard interfaces (WAN, LAN, DMZ) on Cisco Router or Gateway.

Comment by Mickael Martin (Cyres) [ 2014 Apr 04 ]

okkuv9xh, yes I haven't see with comment. Our points of view are similar. So you can close as duplicate this request.

Comment by Oleksii Zagorskyi [ 2021 Mar 09 ]

ZBXNEXT-735 was implemented in a limited way that current request is not a duplicate anymore.
So reopening and updating summary.





[ZBXNEXT-2227] Curl Max Redirects Option Created: 2014 Mar 27  Updated: 2020 Apr 22

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 1.8.21, 2.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: jchegedus Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All platforms that have libcurl enabled.


Issue Links:
Duplicate
duplicates ZBXNEXT-173 Make the Curl "Follow redirects" opti... Closed
is duplicated by ZBXNEXT-3554 Max redirects is set to 10, this is t... Closed

 Description   

When executing a webcheck against a server, if the server gives out a "slow" 302 , the Curl will keep following it eternally, without getting out of the loop. When this happens, we verified that one proxy (version 2.0.4) got stuck on that check and never resumed other checked. Resulting that, all the webchecks had no data and stuck, until the problem of 302 redirection loop was resolved, in two production occasions we have seen the loop go on for multiple hours, and all other webchecks were "stopped" and no more data was being collected.

After a bit of scrutiny, enabling some more debug from libcurl using CURLOPT_VERBOSE, we detected the error and thereafter we eneabled CURLOPT_MAXREDIRS setting to 5, which actually fixed the problem for good.

( http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTMAXREDIRS )

So we suggest that an option for Server and Proxy conf file could be added to control the max amount of redirections that curl must follow, in order to give him an option to detect a 302 loop (like a browser is able to).

We fix the problem adding:

CURLE_OK != (err = curl_easy_setopt(easyhandle, CURLOPT_MAXREDIRS, 5L)) ||

at line 332 from httptest.c, from version 2.0.4 – I also checkd the latest 2.2.2 version, and the option is not in place, then I decided to drop this request.



 Comments   
Comment by richlv [ 2014 Mar 27 ]

would be best implemented as part of ZBXNEXT-173

Comment by Aleksandrs Saveljevs [ 2016 Nov 15 ]

ZBXNEXT-173 did not seem to have implemented it, see ZBXNEXT-3554.

Comment by Andrey Zaslavskiy [ 2016 Nov 15 ]

I'm asking to raise CURLOPT_MAXREDIRS to 50, as it done in curl upstream.

Comment by Dimitri Bellini [ 2020 Apr 22 ]

Hi Guys,

as is usually we rise the exception... using the HTTP Agent with some EMC Unity RestAPI we need to follow the redirect more than 10 levels..

Please before is to late for Zabbix v.5.0, can you extende the limit to 50 (CURLOPT_MAXREDIRS)?

Thanks so much





[ZBXNEXT-2146] Allow to add automatically generated web screnarios graphs to screens Created: 2014 Feb 07  Updated: 2014 Feb 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Maxim Krušina Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: screens, usability, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Now, there are really great graphs generated automatically when adding web scenarion.
But unfortunatelly, there is no way how to include those graphs into Screens.
I would like to add web scenario graphs to my server screens, so I can compare things like CPU load, MySQL load etc with website response times...
Thanx!






[ZBXNEXT-2098] Creation of loadable modules using script languages/subagent mechanism Created: 2014 Jan 06  Updated: 2019 Oct 30

Status: Elaborating
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Schoechlin Assignee: Vadim Ipatov
Resolution: Unresolved Votes: 7
Labels: externalchecks, loadablemodule
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Sprint: Sprint 14, Sprint 15, Sprint 16, Sprint 17, Sprint 18, Sprint 19, Sprint 20, Sprint 21, Sprint 22, Sprint 23

 Description   

I really welcome the possibility to create loadable modules for zabbix - this might make solutions like https://github.com/digitalmediacenter/mysql_extend obsolete
(which reduces the overhead of fetching hundreds of measurement items by using shared memory segments).

Typically sysadmins are good in writing code with script languages - therefore it would be great to integrate new monitoring functionality by using script languages.
So why not supporting loadable modules which are written in script languages?

MySQL_Extend is a good example - a external check which invokes the mysql commandline hundred times needs a lot of resources at the database server and
provides some other difficulties. The implementation of mysql_extend was a bit too complex for the needed purpose, future enhancements of this tool like parsing the output of "SHOW ENGINE INNODB STATUS" is a real pain if your write this in c. If there is a possibility to write this in python is dramatically more easy

It might be great if zabbix would embed a python, ruby, perl or php interpreter to for implementation of custom modules.
But a old feature request (ZBXNEXT-701), which is closed by this request, requests the implementation of a "subagent protocol" which utilizes a forked process and communication by STDIN/STDOUT to allow a simple implementation of new monitoring mechanisms.

From my point of view this is smarter, because:

  • Agent, Proxy and Server do not have to be linked with a scripting language interpreter
  • There is no no need to care about which language is used by the module (Sheebang is enough)
  • The forked process does not influence the stability of proxy-, server- or agent-processes


 Comments   
Comment by richlv [ 2014 Jun 30 ]

not quite that, but ruby support implemented as a loadable module : https://github.com/BlueSkyDetector/mruby_module_for_zabbix_agent

Comment by Marc [ 2017 Jul 21 ]

In the sense of richlv's comment, these two are possibly worth to mention as well:

Comment by Marc Schoechlin [ 2017 Oct 27 ]

Its nice to have the mruby module - python might be my fist choice

I still think that the invocation of a subprocess would be a really good thing (i described the reasons above) and would boost the capabilities of zabbix dramatically.
I you need someone to discuss implementation ideas or the reasons this feature, please do not hesitate to contact me directly by mail.
(you get my mail address at https://github.com/scoopex)





[ZBXNEXT-2186] Permission problem with user type "Zabbix Admin" in auto-registration action page Created: 2013 Dec 06  Updated: 2014 Mar 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Dimitri Bellini Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: actions, autoregistration, permissions, template, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux Centos 6.5


Attachments: PNG File zabbix_acl_issue_maps.png     PNG File zabbix_acl_problem_user_permission.png     PNG File zabbix_acl_problem_usergroup.png    
Issue Links:
Duplicate

 Description   

I have notice a problem related to a user configured as "Zabbix Admin" grant and Read ONLY permission to Template group.
If I try to create an action type "Auto registration" and i try to link a template i can't able to select any template, using Zabbix 2.0.9 i don't see this kind of problem.
If i set the user with Read/Write permission i can link the correct template.
If you need other info please ask me.

PS: The strange thing is i was able to create a new host with linked template with the same "user" with Template privilege set to readonly...



 Comments   
Comment by Dimitri Bellini [ 2013 Dec 09 ]

Update: I have notice the same issue on "Trigger Action" when i try to select a condition "template".

Comment by Dimitri Bellini [ 2014 Mar 04 ]

I still report ACL problem also on Zabbix v.2.2.2, i have attached some picture to show also a problem on MAPS page.
Please check this problem.

Comment by Dimitri Bellini [ 2014 Mar 04 ]

MAPS with ACL problem

Comment by Dimitri Bellini [ 2014 Mar 04 ]

User permission configuration

Comment by Dimitri Bellini [ 2014 Mar 04 ]

UserGroup permission configuration

Comment by Oleg Ivanivskyi [ 2014 Mar 04 ]

It seems that relates to ZBX-3534.





[ZBXNEXT-2080] Positive dependencies, logic Created: 2013 Dec 19  Updated: 2013 Dec 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Janne Korkkula Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dependencies, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In addition to "muting", dependencies could also be a very convenient way to trigger higher level alerts.

if Trigger1+Trigger2+Trigger3, activate MotherOfAllTriggers.

Support for grouping and logical operators would be a nice extension - partly described in ZBXNEXT-1547.






[ZBXNEXT-2046] Add ASLR support in Zabbix agent on Windows Created: 2013 Nov 27  Updated: 2015 Feb 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleg Ivanivskyi Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows


Issue Links:
Duplicate

 Description   

zabbix_agentd.exe not using Microsoft's ASLR (Address space layout randomization) exploit mitigation technology.
Please add ASLR support for Windows.






[ZBXNEXT-3233] More controlled exit (server, proxy) Created: 2016 Apr 06  Updated: 2017 Nov 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Sandis Neilands (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: exit
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
part of ZBX-11295 Only main process unloads modules Reopened
Epic Link: DEV-591
Story Points: 15

 Description   

If one server or proxy process quits then the main process notices this and kills all remaining processes with SIGTERM and then synchronizes history and trends.

This approach is simple but not very safe. A better approach would be to let the processes finish whatever they were doing. Most likely pollers would have to be terminated first and history syncers - last.

This issue is related to ZBX-10410.



 Comments   
Comment by Oleksii Zagorskyi [ 2017 Nov 07 ]

Maybe would be good to remove sock files on exit as well?





[ZBXNEXT-3273] new action condition for internal events - "Error message like/not like" Created: 2016 May 09  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 2.0.17, 2.2.12, 3.0.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: actions, conditions, internalmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Such condition could be used for various cases, first of all for trigger based internal events.
For example if new host just has been added, zabbix server restarted, host became unavailable etc.
Should be available to be used for items/lld-rules/triggers.

Together with ZBXNEXT-3140 (new macros to indicate error message of item/lldrule/trigger in internal monitoring alerts) such part of internal monitoring should become much more usable.



 Comments   
Comment by Oleksii Zagorskyi [ 2016 May 09 ]

Some inconveniences with internal events monitoring described in ZBX-10767.
Current feature would help to workaround them.





[ZBXNEXT-3228] Graph tree Created: 2016 Apr 02  Updated: 2016 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: itnihao Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File graphtree-2.png     PNG File graphtree-3.png     PNG File graphtree-4.png     PNG File graphtree-5.png     PNG File graphtree.png    

 Description   

Zabbix graph tree can show all graphs and log in one page



 Comments   
Comment by itnihao [ 2016 Apr 02 ]

https://github.com/OneOaaS/graphtrees
cd

{3.0.1-web}

wget https://raw.githubusercontent.com/OneOaaS/graphtrees/master/graphtree3-0-1.patch
yum install -y patch
patch -Np0 <graphtree3-0-1.patch

Comment by Ryan Armstrong [ 2016 Apr 05 ]

This is one of the strengths of Cacti, especially in dealing with thousands of servers across multiple resolver groups.

Some thoughts:

  • root level tree nodes could replace hostgroups
  • hosts should continue to be able to be members of multiple groups or tree nodes
Comment by itnihao [ 2016 Apr 05 ]

Ryan Armstrong
root level tree nodes is the hostgroup: graphtree-3.png
groups all grpahs support page: graphtree-4.png
hosts all grpahs support page: graphtree-5.png

Comment by Taufik Hidayat [ 2016 May 25 ]

hi,

i have an error on zabbix 3.0.2 like this :
Argument 3 passed to getPagingLine() must be an instance of CUrl, none given, called in /usr/share/zabbix/graphtree.right.php on line 251 and defined [graphtree.right.php:251 → getPagingLine() in include/func.inc.php:1471]

anyone know the problem?

Comment by itnihao [ 2016 May 26 ]

It's a bug,you can fix the problem like this:
cd ${You PHP PATH}
mv graphtree.right.php graphtree.right.php-old
wget https://raw.githubusercontent.com/OneOaaS/graphtrees/master/web/graphtree.right.php

graphtree also support 3.0.1/3.0.2/3.0.3

Comment by Gian [ 2016 Oct 21 ]

hi

does graphtree also support zabbix 3.2.1?
just tried it but i get http error 500 if i navigate to Monitoring > Graphtree and can find no errors in the log files

thank you and greez
Gian





[ZBXNEXT-2644] Zabbix server should inform user, if proxy major version differs from server's version Created: 2014 Dec 17  Updated: 2017 Feb 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Filipp Sudanov (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: proxy, troubleshooting, upgrade, version
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently Zabbix server allows older/newer proxies to connect and work without any warnings. Also some advanced users might want to do this intentionally, normally this would mean that the user does not realize that proxy's major version should match server's.

Zabbix should inform user about this sitiation, at least in server's (and proxy?) log files, better also in proxy list in the front-end.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Sep 16 ]

I'm thinking about new item keys for internal monitoring like zabbix[version] similarly a we have currently agent.version for agent.
For proxies we could extend existing key with additional value for 3rd param - zabbix[proxy,<name>,version].
But the same key for zabbix and proxy - looks better desition for me.

Then compare received values with regexp() trigger function for the same/several global regexp.

Note that we support already such a key for java proxies - zabbix[java,,version]

https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/internal

Comment by Oleksii Zagorskyi [ 2015 Oct 28 ]

cross reference - ZBXNEXT-2805

Comment by Marc [ 2017 Feb 26 ]

Could be (also) nice to have a "Version" column in Administration -> Proxies.





[ZBXNEXT-2548] Low level discovery of the proxies Created: 2014 Oct 27  Updated: 2017 Sep 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexander Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: lld, proxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
depends on ZBXNEXT-4106 zabbix proxies LLD. Closed

 Description   

Moved from comment in ZBXNEXT-2279

I think that new zabbix should provide special key which will generate json string which can be used on add monitoring of zabbix[proxy,<proxy_name>,lastaccess] over LLD .. if something like this is not implemented yet.
Without this probably will be quite hard to maintain proxies availability monitoring in environments where set of proxies is not static.



 Comments   
Comment by Aleksandrs Saveljevs [ 2015 Jan 15 ]

ZBXNEXT-2321 introduces support for low-level discovery through ODBC SQL queries and https://www.zabbix.com/documentation/3.0/manual/discovery/low_level_discovery#discovery_using_odbc_sql_queries documents a way to use that feature to solve this problem.





[ZBXNEXT-2561] Zabbix :One host Multiple ip Created: 2014 Nov 04  Updated: 2020 Oct 23

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.0.12
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Emerson Fagundes Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux Red Hat 6.5, interface AWS , 1 vcpu, 1 GB men.


Attachments: PNG File MultipleIP_OneHost.png    

 Description   

Zabbix does not recognize multiple hosts configured in the agent interface to register the host screen, it points only to an ip and can not see the secondary.



 Comments   
Comment by richlv [ 2014 Nov 04 ]

could you please provide a specific example on what the problem is ?
is it displaying the ip addresses in some specific location ?

Comment by Emerson Fagundes [ 2014 Nov 04 ]

Yes I can, if I have a cluster of services, however this cluster has two different ips to reference a single instance, eg the cluster is pointing to the ip and this ip xxx.xxx.xxx.1 are setting the reference and with zabbix is also XXX.XXX.XXX.2 ip, ip xxx.xxx.xxx.1 fall happens, the problem that it does not change the automatic ip 2.

Comment by Marc [ 2014 Nov 04 ]

Not sure whether I understand you right. In case you expect Zabbix to failover monitoring of items from Agent host interface 1 to Agent host interface 2, then this is not the intention by this.
Having multiple host interfaces of same type allows to address different agents in parallel. Items are always bound to one of these interfaces only.

Comment by Anthony Martinet [ 2018 Oct 11 ]

We have the same need here.

Our agent are running on desktop machine that can connect either by wire or wireless.

Dynamic-DNS is not possible so we add multiple agent interface, one with the fixed ip of the wire connection and one with the fixed ip of the wireless connection.

It would be nice to have some kind of failover.

Comment by Alex King [ 2020 Oct 23 ]

You should be able to add two iPs in the answer section of a regular bind9 style dns A record, and/or if you've got something like f5/netscaler dns, add both to a pool, and associate that pool to the A record. dynamic dns is for a different use case for when a system has 1 DHCP given address that can change, not to flip between 2 ip addresses. If you can't do this with DNS it might be possible with keepalived, but that usually requires both ips to be in the same subnet, i think. That may make the connectivity to your system(s) more stable for well beyond just the zabbix use case.





[ZBXNEXT-2611] Add action to "Database monitor" item if query result is empty. Created: 2014 Nov 21  Updated: 2015 Jun 25

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.4.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Denis Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: odbc
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

It would be very nice to have option, to add additional action in case if database monitor query (via ODBC) returns empty result.

Before "databse monitor" item I was monitoring Oracle with Orabbix which did this job by himself substituting empty results with "none", "empty", FALSE, or whatever else.

Now when I have switched to monitoring databases with ODBC, it's not always trivial to manipulate selects so they will return single value "none" instead of empty result especially when it's empty, multi-column result.



 Comments   
Comment by Aleksandrs Saveljevs [ 2014 Nov 21 ]

How about a notification when an item goes unsupported ( see https://www.zabbix.com/documentation/2.4/manual/config/notifications/unsupported_item )? Although filtering possibilities only include "Application" condition, but not item type.

Comment by Denis [ 2014 Nov 24 ]

I don't need actions on unsupported items. and items I'm talking about aren't "unsupported". They just in some periods of time return empty results, and other time they return some result.
E.g. Oracle users Audit query item looks like:

select username "username",
       to_char(timestamp, 'DD-MON-YYYY HH24:MI:SS') "time_stamp",
       action_name "statement",
       os_username "os_username",
       userhost "userhost",
       returncode || decode(returncode, '1004', '-Wrong Connection', '1005', '-NULL Password', '1017',  '-Wrong Password', '1045',  '-Insufficient Priviledge', '0', '-Login Accepted', '--') "returncode"
  from sys.dba_audit_session
 where (sysdate - timestamp) * 24 < 1
   and returncode <> 0
 order by timestamp

And of course if there are no items in this table i returns empty result which should be logged in zabbix host data as "empty", "none" or whatever else.
In SQL to write such statement if empty result return simple row/column with result "empty" is quite difficult.
Orabbix was doing it by himself sending whatever result to zabbix trapper.
I think programmatically it should be quite easy to implement such "conditional check"

At this time I have 4 such problematic queries, on of them was solved like this:
Locked users probe, solved because it returns only one column and can be "solved" within SQL:

SELECT username || ' ' || lock_date || ' ' || account_status as res
  FROM dba_users
 where ACCOUNT_STATUS like 'EXPIRED(GRACE)'
    or ACCOUNT_STATUS like 'LOCKED(TIMED)'
union
select 'none'
from dual where not exists 
(
SELECT username
  FROM dba_users
 where ACCOUNT_STATUS like 'EXPIRED(GRACE)'
    or ACCOUNT_STATUS like 'LOCKED(TIMED)'
)

--------------- Problematic:
==Tablespaces

SELECT *
  FROM (select '- Tablespace ->',
               t.tablespace_name ktablespace,
               '- Type->',
               substr(t.contents, 1, 1) tipo,
               '- Used(MB)->',
               trunc((d.tbs_size - nvl(s.free_space, 0)) / 1024 / 1024) ktbs_em_uso,
               '- ActualSize(MB)->',
               trunc(d.tbs_size / 1024 / 1024) ktbs_size,
               '- MaxSize(MB)->',
               trunc(d.tbs_maxsize / 1024 / 1024) ktbs_maxsize,
               '- FreeSpace(MB)->',
               trunc(nvl(s.free_space, 0) / 1024 / 1024) kfree_space,
               '- Space->',
               trunc((d.tbs_maxsize - d.tbs_size + nvl(s.free_space, 0)) / 1024 / 1024) kspace,
               '- Perc->',
               decode(d.tbs_maxsize,
                      0,
                      0,
                      trunc((d.tbs_size - nvl(s.free_space, 0)) * 100 /
                            d.tbs_maxsize)) kperc
          from (select SUM(bytes) tbs_size,
                       SUM(decode(sign(maxbytes - bytes), -1, bytes, maxbytes)) tbs_maxsize,
                       tablespace_name tablespace
                  from (select nvl(bytes, 0) bytes,
                               nvl(maxbytes, 0) maxbytes,
                               tablespace_name
                          from dba_data_files
                        union all
                        select nvl(bytes, 0) bytes,
                               nvl(maxbytes, 0) maxbytes,
                               tablespace_name
                          from dba_temp_files)
                 group by tablespace_name) d,
               (select SUM(bytes) free_space, tablespace_name tablespace
                  from dba_free_space
                 group by tablespace_name) s,
               dba_tablespaces t
         where t.tablespace_name = d.tablespace(+)
           and t.tablespace_name = s.tablespace(+)
         order by 8)
 where kperc > 98
   and tipo <> 'T'
   and tipo <> 'U'

== User locks

select sn.USERNAME || '@' || sn.machine,
       '|SID->' || m.SID,
       '|Serial->' || sn.SERIAL#,
       '|Lock Type->' || m.TYPE,
       decode(LMODE,1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share',  5, 'S/Row-X (SSX)',  6, 'Exclusive') lock_type,
       decode(REQUEST, 0, 'None', 1,  'Null',  2, 'Row-S (SS)',  3, 'Row-X (SX)',  4,  'Share', 5, 'S/Row-X (SSX)',  6, 'Exclusive') lock_requested,
       '|Time (Sec)->' || m.CTIME "Time(sec)",
       '|ID1->' || m.ID1,
       '|ID2->' || m.ID2,
       '|SQL Text->' || t.SQL_TEXT
  from v$session sn, v$lock m, v$sqltext t
 where t.ADDRESS = sn.SQL_ADDRESS
   and t.HASH_VALUE = sn.SQL_HASH_VALUE
   and ((sn.SID = m.SID and m.REQUEST != 0) or
       (sn.SID = m.SID and m.REQUEST = 0 and LMODE != 4 and
       (ID1, ID2) in (select s.ID1, s.ID2
                          from v$lock S
                         where REQUEST != 0
                           and s.ctime > 5
                           and s.ID1 = m.ID1
                           and s.ID2 = m.ID2)))
 order by sn.USERNAME, sn.SID, t.PIECE
Comment by Aleksandrs Saveljevs [ 2014 Nov 24 ]

If your SQL queries return empty response and the corresponding items do not become unsupported, I presume they just contain an empty string. If so, why don't you use strlen() function to check that the result is empty and alert on that?

Comment by Denis [ 2014 Nov 24 ]

They do become unsupported when SQL queries return empty results.
I don't want alert or action, It should be considered like proper data received from monitored host, and logged in it's history (latest data) like "empty".
I've released my initial template_v1 on github:
https://github.com/denissss/zbx_oracle_odbc

Comment by Aleksandrs Saveljevs [ 2014 Nov 24 ]

According to https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/odbc_checks#important_notes , only the first column of the first row is used. Why don't you simply add "union select 'none'" to all the queries? The "select from dual where not exists ..." part does not seem to be necessary in the second example above.





[ZBXNEXT-2517] Please add the possibility of online viewing log files in the web interface Created: 2014 Oct 15  Updated: 2014 Oct 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.4.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Nikolay Korelov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: frontend, logmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello.

Please add the possibility of online viewing log files in the web interface
I think it will be convenient if the log files can be watched in the web interface in real time.

Example.
On the server running zabbix syslog . Syslog sever collects log with network device.
In the web interface zabbix look in real time what is written in this file.
Excellent if will Pause function (suspend the conclusion of new posts) and Play (Reactivate output messages)

It is useful to be able to filter the output messages by IP or
several configurable arbitrary parameters. for example according to Alerts; Critical; Errors; Warning etc.....



 Comments   
Comment by richlv [ 2014 Oct 15 ]

not quite sure what this request is about - should the data be stored in an item or not ?





[ZBXNEXT-1967] resolving {HOST.*} macros in graph name Created: 2013 Oct 14  Updated: 2018 Mar 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.1.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: hamid sfandiari Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: graphs, macros, name
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos 64 bit


Issue Links:
Duplicate
is duplicated by ZBXNEXT-2955 Macros is template graphs names Closed

 Description   

Although we can use some macros in graph description but ZABBIX GUI is still unable to use some of other macros like

{HOST.DNS}

{HOST.HOST}

at description of graphs



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Sep 15 ]

I've changed "graph description" term to "graph name" one, as actually we don't have descriptions for graphs.

Also, extended suggestion to all HOST.* macro.

Comment by Oleksii Zagorskyi [ 2015 Sep 15 ]

Take into account ZBX-6675.
How to expand the macros if I'll use items from several hosts? - I don't have a good answer.

Maybe it could be supported as it was previously working before 2.4 - expand macros from a host of first added (or first manually sorted?) item on the graph.

Comment by Oleksii Zagorskyi [ 2015 Sep 16 ]

ZBXNEXT-2767 asks to expand user macros in graph names

Comment by Branislav Brna [ 2015 Sep 23 ]

If anyone interested I found little workaround to achieve this:
You can create external script like zbxhostname.sh with line echo $1
Then create in template new item eg. Zabbix hostname set type to external check and as key set zbxhostname.sh["{HOST.NAME}"]
Then you can call this item in template graphs with

{{HOSTNAME}:zbxhostname.sh["{HOST.NAME}"].last(0)}

I am guessing same can be applied to other right now not supported system macros in templates. And yeah I know its not exactly elegant, but it gets job done at least for now.

Comment by Tomasz Kasperczyk [ 2017 Apr 10 ]

I'd like to remind everyone that this issue is still unsolved. Let's say that I have 100 network switches added to Zabbix. I want to create traffic graphs for every single one of them. In order to do that, I create a template in which I define all items, triggers and graphs. Then I add all the switches to this template. As a result, each switch has its own set of graphs. The only problem is that I can't customize the names of these graphs! This is really frustrating because every time I look at a graph called "Network traffic on port 25" (a name specified in the template), I need to log into that switch and look up the 25th port description. If I could use user-defined macros in graph names, I could change the graph names to something like "{$NETWORK_TRAFFIC_25}" and then define these macros for every host which needs a custom name for certain graphs. So here's how it would look like:

  • Template DLINK-3420
    User macros:
    {$NETWORK_TRAFFIC_25} ---> "Network traffic on port 25",
    {$NETWORK_TRAFFIC_26} ---> "Network traffic on port 26",
    ...
    Graphs:
    Name: {$NETWORK_TRAFFIC_25}
    Name: {$NETWORK_TRAFFIC_26}
    ...
  • Host 1 assigned to Template DLINK-3420
    User macros:
    {$NETWORK_TRAFFIC_25} ---> "P25 1Gbps WDM: CEO's office"
    {$NETWORK_TRAFFIC_26} ---> "P26 10Gbps WDM: Uplink to NY"
    etc.
Comment by Alexander [ 2018 Mar 28 ]

I support this!

Comment by Alexander [ 2018 Mar 28 ]

I support idea to add macros support in graph name.





[ZBXNEXT-1947] libvirt support for general virtual machine monitoring Created: 2013 Oct 03  Updated: 2014 Sep 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.2.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: virtualization
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

What about implementing libvirt (http://libvirt.org/html/libvirt-libvirt.html) for general monitoring support of virtualization technologies?
Most major players are represented: http://libvirt.org/drivers.html

Just an idea - feel free to close this issue if it conflicts with ZBXNEXT-1633



 Comments   
Comment by Raymond Kuiper [ 2014 Sep 17 ]

I assume this should be built on top of Low Level Discovery? (LLD)

Comment by Marc [ 2014 Sep 17 ]

Actually not, at least not directly.

What I think of is enabling or adding Zabbix pollers to natively query a libvirt API with focus on its monitoring functions.
Of course, having new action operations available that may do some orchestration would be awesome too - but that would probably be a separate ticket.

Once having libvirt support in Zabbix the addition of some nice LLD item keys should be a finger exercise





[ZBXNEXT-3453] Zabbix and timezone management Created: 2016 Sep 23  Updated: 2016 Sep 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Sowinski Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: timezone
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi everybody
When deploying zabbix agents/proxies in different localization and timezone, it's difficult to understand event, maintenance, scheduling aspects cause timezone is not taken into account.
For instance if a proxy and agents (connected to this proxy) are in a different timezone, if an event occures it's displayed with zabbix central timezone which is sometime different.
A solution could be to enrich the event time with the proxy or agent timezone
Another exemple, with version 3.2 we have now possibilities to run item at a specific time (many thank's to this feature), but when we have proxy/agents around the world, it's difficult to manage this in template.
A solution could be to add a flag in the item to take into account of host/proxy timezone. So when we deploy template on all hosts, the scheduling is automatically set to correct local timezone.
And last but not least exemple is regarding maintenance configuration that should take into account of host timezone.

Finally, at the moment, the only workaround I found, is to create as many template/maintenance as different timezones we have, not very conveniant.
Hope it's clear
Thank's a lot for your work and support
Marc



 Comments   
Comment by richlv [ 2016 Sep 23 ]

timezone-related issues :





[ZBXNEXT-2737] Inventory fields populated by discovery items Created: 2015 Mar 10  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.2.7, 2.2.8
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Higher Information Group Assignee: Unassigned
Resolution: Unresolved Votes: 23
Labels: Zabbix7.2, inventory, lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-336 ability to customise inventory fields Open

 Description   

I see several other suggestions hinting around the same general purpose, and if I missed this suggestion elsewhere, I apologize.

I would love to be able to have discovery items (more specifically item prototypes) in templates populate inventory fields, or even create 'on-demand' fields, so to speak. The most obvious situation I've run into that this would be an ideal solution for would be stacked switches monitored by SNMP. I currently use discovery items to pull serial numbers, ROM versions, etc. from every switch unit in the stack. If we could populate an inventory field named with, say the {#SNMPINDEX} macro, it could create serial number and software version inventory items for every unit of the stack without having to create items/templates specific to the number of units in each deployed stack. It could also accommodate stacks with more than 2 units (Since there is only Serial Number A and B currently, and our current switches can stack up to 12 units) without having to dump info into the larger text fields (like notes).

I am sure there would be other uses using the agents or user parameters, but that was the single most impacted situation I've been trying to work around currently.

This would be very closely linked to customize-able inventory fields (which I know I've seen other posts for).



 Comments   
Comment by James Kirsop [ 2018 Nov 12 ]

I've got a different use case but requiring the same underlying principle.

I'm using LLD to discover the hosts on a Failover HyperV Cluster. I can pull the node (i.e. the physical host), but I'd like to put this into the inventory on discovery, so we can (using the API) search for hosts on a particular node and pull their statistics. Given that the host could move between nodes, we would update this upon each LLD run.

Comment by Guilherme de Sousa Caria [ 2020 Jan 23 ]

I'm facing the same obstacle. I have created a rule with Network Interface Discovery and an item prototype to search for the MAC Adresses for each network interface and I needed that information into the Inventory. So sad to see that it is impossible even to intervain manually in each item created by this rule pointing it out where the information need to go into the Inventory.

Comment by thomas [ 2021 Sep 16 ]

Same need here : it would be nice to automatically populate the inventory for a host with multiple cards or modules to get all serial numbers and part numbers.

Comment by Nathan Liefting [ 2022 Jan 19 ]

Very usefull and as mentioned especially if we have an implementation of ZBXNEXT-336 available. If we do discovery on Serial numbers for example and then populating just two fields would be kind of a limitation.

Just want to put it out there that it should be considered (and I think preferred) to implement customisation to inventory fields together with this one  

Comment by Alexei Vladishev [ 2022 Feb 04 ]

An option to select inventory field in item prototypes will cover only a few limited use cases. I think it should be addressed under ZBXNEXT-336 to have a proper complete solution.





[ZBXNEXT-2335] The message size of alert on IBM DB2 is too small. Created: 2014 Jun 08  Updated: 2017 Aug 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I), Server (S)
Affects Version/s: 2.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleg Ivanivskyi Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: alerts, db2, messages
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

IBM DB2


Issue Links:
Duplicate

 Description   

The "message" (alerts) and "value" (history_text) field type on MySQL and PostgreSQL are "text", on IBM DB2 - varchar(2048).

The field type on IBM DB2 could be fixed.



 Comments   
Comment by Aleksandrs Saveljevs [ 2014 Jun 10 ]

ZBX-8328 is related, but asks for proper UTF-8 character support in varchar(N).





[ZBXNEXT-2339] Proxy cascading Created: 2014 Jun 10  Updated: 2021 Mar 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: 2.2.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andreas Franke Assignee: Unassigned
Resolution: Unresolved Votes: 16
Labels: dm-nextgen, nested, proxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-3898 Proxy to proxy communication Closed
duplicates ZBX-16466 2 proxies between Zabbix and the agent Closed
is duplicated by ZBXNEXT-6518 does zabbix support two levels zabbix... Closed

 Description   

it would to be nice, when i could cascading proxys:

ZBX Server -> ZBX Proxy active -> ZBX Proxy passive -> DMZ Host XYZ



 Comments   
Comment by richlv [ 2014 Jun 10 ]

"next gen dm" would be a better fit for this functionality, but i can't find an issue about it right now - if it's found, this should be closed as a duplicate

Comment by Oleksii Zagorskyi [ 2014 Jun 11 ]

I don't recall already existing issues about "next gen dm".

Probably it's time to create and use new label
I think "dm-nextgen" should be ok.

Comment by Christian Anton [ 2017 Apr 06 ]

Actually, this would be an absolute killer feature! I often stumble over desired setups where it would be very benefitial to have, say a Zabbix server in a natted network, a proxy having a public fixed IP address and then other proxies, again behind NAT devices. Also, larger organization structures with networks spread over the world would benefit from this feature quite a lot.

Comment by Marc [ 2017 Apr 06 ]

I'm a bit concerned about the increased delay by DataSenderFrequency resp. ProxyDataFrequency of each proxy in the chain.

When it's just about breaking the TCP connection, then this can likely justified by a reverse proxy like HAProxy:

Zabbix server --> HAProxy --> Zabbix proxy <--> Zabbix agent
Zabbix server <-- HAProxy <-- Zabbix proxy <--> Zabbix agent

When it's on the other hand about a connection direction change, then there's indeed something new required. Something that may act like a configuration cache and data queue or data transceiver, depending on the proxy mode:

Zabbix server --> Queue       <-- Zabbix proxy <--> Zabbix agent
Zabbix server <-- Transceiver --> Zabbix proxy <--> Zabbix agent

Where I'd actually limit it to the latter, the Zabbix transceiver. But I think now I'm slightly off-topic

Edit: Transceiver does not appear appropriate. Mediator is possibly a better term.

Comment by Christian Anton [ 2017 Apr 06 ]

Yes, it's usually the second setup that I see a need for, and the "Queue" and "Tansceiver" is actually exactly what the Proxy does, but unfortunately not in such a chain. Sure you would have to set your DataSenderFrequency accordingly, but it should be OK to just take a little longer until agent configuration drops through the chain of proxies.
Btw for the first of the scenarios (with HAProxy), do you have an example config on how this could look like on the HAProxy side?

Comment by Andrew [ 2017 Sep 06 ]

I have some hosts that are in a remote DC and have some nodes connected via a VPN to those hosts. I monitor the remote hosts via a proxy and want to start monitoring the far nodes but don't have a direct connection to them (so would like to connect

zabbix server -> DC proxy -> system (with zabbix-proxy) ->
remote vpn nodes with no direct route (zabbix-agent)

Comment by Fred Blaise [ 2017 Nov 17 ]

Hi all,

I stumbled upon that, and as a matter of fact, I always thought that chaining proxies in any way was not supported. Currently running 3.2.7.

However, I have a setup that's like this:

zabbix agent <-- zabbix proxy in DMZ (passive) <-- zabbix proxy internal network (passive) <-- zabbix master

It seems I am getting values for all, no error. Everything looks fine.

Am I just getting lucky? Or that configuration is actually supported?

Thank you.

Comment by Tomasz Zieliński [ 2018 Jul 20 ]

@Fred, as far i understand Zabbix Master sends configuration to zabbix proxy internal, so you setup it on zabbix gui,  but in what way zabbix proxy in DMZ receive configuration from proxy Internal ? How do you setup it ? can you share some config ?

 

Comment by Marcos Machado [ 2021 Feb 28 ]

My main take on this one is regarding security. Zabbix server often has lots of key to many kingdoms (e.g. ssh keys for remote commands) and creeps me out letting its server port opened to the world. One single vulnerability in a publicly available 10051 could be a catastrophe.

A passive proxy in a DMZ consolidating all the data from agents and other proxies could avoid exposing the server to the world entirely.

                ,-------------,
ZBX server ---> | ZBX passive | <--- ZBX remote active proxy <---> ZBX active/passive agents
                |   proxy     | <--- ZBX active agents
                `-------------`

My approach so far is to restrict access to the zabbix server based on source IPs of the proxies, but this is cumbersome, specially in environments where active proxy resides behind failovers and can arrive from many source IPs (some backup links are dynamic)

 





[ZBXNEXT-2367] There are no alternative texts for graphs and maps (WCAG) Created: 2014 Jul 03  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Paweł Seledec Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: graphs, images, maps, wcag
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File alt.diff    

 Description   

All maps and graphs have titles that can not be read in another way, for example, speech processor.
There are no alternative texts for these elements.

I attach my solution (diff from my CVS server).



 Comments   
Comment by richlv [ 2017 Mar 26 ]

this might be solved by ZBXNEXT-2031 - do you have a chance to test this ?





[ZBXNEXT-2884] trunk automake dist target fixes and other automake cleanups Created: 2015 Jul 19  Updated: 2017 May 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 2.5.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tomasz Kłoczko Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: compilation, packaging, sourcecode
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File zabbix-am_dist_fixes.patch    

 Description   

Attached patch contains automake fixes for:

  • missing ")" in src/libs/zbxdbcache/Makefile.am
  • replaces all @foo@ by $(foo)
    as long as @foo@ macro is replaced by exact string is not possible to compile whole tree by sending different automake variable on compile time by for example "make sysconfidir=/etc/app/zabbix all"
  • fixes for dist target
    Seems from 1.8 time "make dist" never been working and attached fxes at last provides working this target.

I've tested above by execute "make dist" target and with generated tar ball I've tested it by building rpm package

Obsoletes: zabbix-suckerd zabbix-trapper-inetd zabbix-trapper-standalone
Checking for unpackaged file(s): /usr/lib/rpm/check-files /var/tmp/BUILDROOT/zabbix-2.5.0-0.1.el6.x86_64
Wrote: /home/tkloczko/rpmbuild/SRPMS/zabbix-2.5.0-0.1.el6.src.rpm
Wrote: /home/tkloczko/rpmbuild/RPMS/x86_64/zabbix-2.5.0-0.1.el6.x86_64.rpm
Wrote: /home/tkloczko/rpmbuild/RPMS/x86_64/zabbix-agentd-2.5.0-0.1.el6.x86_64.rpm
Wrote: /home/tkloczko/rpmbuild/RPMS/x86_64/zabbix-frontend-php-2.5.0-0.1.el6.x86_64.rpm
Wrote: /home/tkloczko/rpmbuild/RPMS/x86_64/zabbix-get-2.5.0-0.1.el6.x86_64.rpm
Wrote: /home/tkloczko/rpmbuild/RPMS/x86_64/zabbix-proxy-2.5.0-0.1.el6.x86_64.rpm
Wrote: /home/tkloczko/rpmbuild/RPMS/x86_64/zabbix-sender-2.5.0-0.1.el6.x86_64.rpm
Wrote: /home/tkloczko/rpmbuild/RPMS/x86_64/zabbix-server-2.5.0-0.1.el6.x86_64.rpm


 Comments   
Comment by Tomasz Kłoczko [ 2015 Jul 19 ]

Seems dist-check target still does not work.
dist generated usable tar ball bat probably it does not generates exactly the same content which is provided in official tar balls. More fixes in auromake files needs to be added to provide the same content.
IMO in source tar ball should not be distributed windows binaries. Those files should be in separated distribution achives.

I've checked dist size of tar.gz and tar.xz (by execute "make dist dist-xz"). Seems xz is ~2 times smaller:

[tkloczko@solaris001 trunk]$ ls -lh zabbix-2.5.0.tar.gz zabbix-2.5.0.tar.xz
-rw-r--r--   1 tkloczko staff        12M Jul 19 11:58 zabbix-2.5.0.tar.gz
-rw-r--r--   1 tkloczko staff       5.7M Jul 19 12:01 zabbix-2.5.0.tar.xz
Comment by richlv [ 2015 Jul 19 ]
  • hmm. "make dist" works just fine for me - it's just that you are expected to run dbschema/gettext (and css in trunk) manually first.
  • your patch seems to remove dbschema target, which does not seem to be that good.
  • src/libs/zbxdbhigh/Makefile.am file seems to be left w/o trailing newline

overall, it seems to mix a bit too many issues in a single patch... i'd probably suggest to split them up in individual patches/issues, otherwise this is unlikely to be investigated

Comment by Tomasz Kłoczko [ 2015 Jul 19 ]

your patch seems to remove dbschema target, which does not seem to be that good

It works for you because you are not working on fresh source tree.
dbschema targets are removed from main Makefile.am and everything is moved to database/Makefile.am as files dependencies so on building zabbix in fresh tree "all" target will automatically generate those .sql files. By this this dbschema* targets are not needed anymore.
"make dist" in fresh tree will fail on missing sql files and on missing src/libs/zbxdbhigh/discovery.c (if you will will checkout fresh source tree and execute "./bootstrap.sh; make dist").
In patching of src/libs/zbxdbhigh/Makefile.am you can find proper dependency between src/libs/zbxdbhigh/discovery.c which needs to be generated before it will be compiled or regenerated if perl script will be changed.

Again .. above reorganization in .am makes dbschema* targets not needed and all changes in source files are automatically tracked by make. If any source file will be changed or per script will be changes all .sql files and src/libs/zbxdbhigh/discovery.c will be automatically regenerated, and if it will be anything wrong errors instantly will be displayed. As well it will be no mistakes by using not regenerated .sql or src/libs/zbxdbhigh/discovery.c files.

Still "make distcheck" target needs to be fixed. distcheck target is using dist.

So on final generation dist tarballs should be used at last "dist" in fresh tree if not "distcheck".
https://www.gnu.org/software/automake/manual/html_node/List-of-Automake-options.html

Comment by richlv [ 2015 Jul 19 ]

i do a clean checkout, but i do run a couple of things first - that's kinda expected

removing dbschema target is no good as developers do use it

on top of that, your patch seems to mistake dbschema.c for discovery.c. most likely zabbix won't compile when that patch would be used

Comment by Tomasz Kłoczko [ 2015 Jul 19 ]

removing dbschema target is no good as developers do use it

Really try it. With my patch no one will need to remember to run this target. Plain "make" in top directory or in directory where should be scheas and everything will be generated.

on top of that, your patch seems to mistake dbschema.c for discovery.c. most likely zabbix won't compile when that patch would be used

Such mistakes would be possible to find instantly if distcheck target would be working
This is why I'm trying to turn your attention on correct using automake

Really guys pleas keep everything correct to have working distcheck target.
Will try to have look on what needs to be fixed to make this target working

in Makefile.am you can add "check:" target extensions so if on generating final source "distcheck" will fail on one of those tests will not produce final tar ball.
Test on everything can be started by using check target in top dir or in subdirectories.

Most of the people hates automake but mostly because they don't understand what is possible to do with this framework.
Lack of knowledge usually raises fear or anger

Comment by richlv [ 2015 Jul 20 ]

i'm not talking about remembering to run it - when developers make changes to database files and want to quickly test them, it's much faster to run 'make dbschema'

as for distcheck, xz compression - sure, those are definitely good things to aim for and have

Comment by Tomasz Kłoczko [ 2015 Jul 20 ]

i'm not talking about remembering to run it - when developers make changes to database files and want to quickly test them, it's much faster to run 'make dbschema'

OK, with my patch you need to run only "make" so I think that it is even shorter and you don't need to go to project root directory

But seriously: really creating additional targets instead make dependencies is not proper way of building make automation.
Keeping this additional target as well still is causing that dist and distcheck targets would be broken
If you have other proposition how to fix those targets that is fine, hover I think that my proposition provides simplest solution.

Comment by richlv [ 2015 Nov 02 ]

similar to ZBXNEXT-761





[ZBXNEXT-7600] SLA report according to Services tree structure Created: 2022 Apr 01  Updated: 2022 Apr 01

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Constantin Oshmyan Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: SLA, regression, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Previous versions of Zabbix (before v6.0) had a screen "Monitoring" -> "Services".
This screen could provide a report (current Status, SLA / Acceptable SLA) for all services grouped according to the Services tree structure.
It was possible to select a needed time period using a drop-down list: "Today", "Last 7 days", "This month", etc.

Unfortunately, this functionality has been completely lost in v6.0.
The only existing kind of reports now is by a single SLA object (possibly, additionally filtered by a single service).
However, it's impossible to take a report grouped by services structure (as before).
Moreover, if some services used to have a different SLO levels, then such report could be a non-trivial task now (as in v6.0 they use a different SLA objects).

Nevertheless, this kind of reporting is very actual; as it is a functionality lost in the new version. There should be both: a reports and a dashboard widget; ideally – with an additional possibility to filter services by a tag (to display a report by a some subset of services only – for example, for a higher 2 levels of services tree).

ZBXNEXT-7392 describes a similar problem; however, that ZBXNEXT relates to the current state screen, but this one – to the reports.






[ZBXNEXT-7664] Widget with horizontal Gauges/Indicators for host/hosts Created: 2022 Apr 29  Updated: 2022 Apr 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.4rc1, 6.2.0alpha2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In addition to 'Top hosts\ it would be convenient to have widget with ability to show items from single/multiple hosts.

For example: Zabbix Server and all Utilisation* (internal processes) items.

Why this needed: NOC/Dashboards, observability - much easier/faster to check indicators with some thresholds, instead of manually reading raw values or graphs with 10+ items, especially on large screens.



 Comments   
Comment by Brian van Baekel [ 2022 Apr 29 ]

Are we looking at something like ZBXNEXT-743 and/or ZBXNEXT-463 ? in that case: Yes this is very very much wanted!





[ZBXNEXT-7688] Add grouped items widget Created: 2022 May 09  Updated: 2023 Mar 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Waleed Mortaja Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: frontend, usability, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Add a widget to show grouped items data.

For example, the Proxmox Template discovers "Nodes" using LLD. Now we have the following items (among others) for each discovered node:

proxmox.node.cpu{#NODE.NAME}

proxmox.node.memused{#NODE.NAME}

 

If you can provide a widget that shows a row for each {#NODE.NAME} and a column of proxmox.node.cpu{#NODE.NAME} and proxmox.node.memused{#NODE.NAME} that would be very great! (i.e., group the user-selected columns using key id or maybe LLD macro)

If the items value could be displayed using "Bar" and/or "Indicators" (as in "Top hosts" widget) that would be much greater!

 

Note: Proxmox Template is given as an example. The widget request can be generalized to any LLD items in any Template.

 

Very thanks!



 Comments   
Comment by Adriano Trindade [ 2022 Jun 23 ]

I also would like this functionality, I use it a lot on Grafana.

Comment by ES [ 2023 Mar 16 ]

I third this one with a slight addition. The ability to manually input items from different hosts.

Eg, make a Top Hosts widget for selected data stores throughout my environment.

Or

Eg, add the ability to make have better indicators on Plain Text as it can already do the above

Currently I need a separate widget for each which takes up a lot of real-estate. 

 





[ZBXNEXT-7957] Add support for externalTrafficPolicy in ZabixProxy service - Helm chart Created: 2022 Sep 02  Updated: 2022 Sep 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Artur Witek Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-09-02-14-05-25-548.png    

 Description   

By default K8S overwrites source client(host) IP with IP from kubernetes internal network.

Because of that when host is registered in Zabbix, it has k8s network IP instead of registred host IP.

To change that, externalTrafficPolicy option should be set to Local in K8S service, but official Zabbix helm chart does not supporting such option currently.

More informations:
https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#annotation-to-modify-the-loadbalancer-behavior-for-preservation-of-source-ip






[ZBXNEXT-7810] Open Widget in a new/current tab/window. Created: 2022 Jun 21  Updated: 2022 Jun 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Miroslav Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In the old screens, I could click on a graph and open it then perform zoom on the specific graph.

In the new Dashboards I can't do it. I can't open a specific graph or zoom on a specific graph. When I zoom, all graphs are zoomed on the same Dashboard.

There's no way of opening a specific widget in a new tab/window to perform zooming on it.

This is a very important aspect of using Dashboards. Please add this function that worked great in the old Screens.

 

Thanks.






[ZBXNEXT-7808] Enhance system.sw.packages to auto-add template to an host with auto-registering Created: 2022 Jun 17  Updated: 2023 Jan 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 6.0.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Zeiko Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 1
Labels: agent, api, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

 

Currently auto-register only use metadata field limited to 255 char to filter hosts.

 

This is usefull to filter between windows and linux but very limited if you want more automation.

 

Auto-register working with agent active, I would be nice to have another field that use system.sw.packages to auto add template to hosts. Currently theres no easy and automated way to add template to host

 

The process could be something like :

 

Host register to server => Server detect windows/linux metadata and filter on that (if auto discover rule is set) => Server filter on system.sw.packages and add template to hosts (with rules added in autoregister action).

 

Regards



 Comments   
Comment by Zeiko [ 2022 Jun 17 ]

I setted up the priority by looking at the "?" if it is not the correct one you can change it !

Comment by dimir [ 2023 Jan 05 ]

Sorry, could you please elaborate what exactly is asked here and provide a complete use case.

Comment by Zeiko [ 2023 Jan 06 ]

Hi,

 

Sorry, English is not my main language so I might be unclear.

The goal here is to automatically add templates to a server when specifics packages are detected.

 

Currently (well in 6.0, I didn't work on this since) auto-registration does not give a way to simply add templates to a server whithout manual actions or specific API scripts (I might be wrong but this is what I concluded after some research)

 

We can simply use a variable to get the OS type (Linux/Windows) and add the server to the correct group with auto-registration.

 

It could be nice to add a way to filter on system.sw.packages and with autoregister rules, add templates to a server when a packages is detected.

 

Simple example :

 

Installing zabbix active agent with auto-registration on nginx server :

  • Zabbix active agent do the registration process
  • Zabbix server get the OS metadata and add the server to linux group
  • Zabbix server get the packages list, find nginx -> Add server into nginx group and add nginx template

 

Is this easier to understand ?





[ZBXNEXT-8028] Zabbix sends large- than-MTU packets which causes fragmentation Created: 2022 Oct 11  Updated: 2022 Oct 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alex Le Heux Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Zabbix has a tendency to send SNMP packets that get fragmented. This causes major issues with any firewalls or control plane policers that are in the path.

Please add a knob to Zabbix that stops it from sending fragments.






[ZBXNEXT-4774] Add support to maximize (drop down to) for dashboard widgets Created: 2018 Sep 28  Updated: 2022 Nov 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Vitaly Zhuravlev Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: dashboard, widgets
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 1.png     PNG File 2.png     PNG File 3.png     PNG File 4.png     PNG File 5.png     PNG File maximeGraphWidget-PoC.png    
Issue Links:
Sub-task
depends on ZBXNEXT-4770 New graph widget is not resized with ... Open

 Description   

There are no dropdown links to elements inside the widget. How do I open a map inside map widget in one click(I saw a mistake on the map and I want to correct it)?  Same with graph If I would want to open it full screen(note: classic graph dropdown is supported in 4.0.0beta2 if the legend is clicked?)

Suggestions:

  • Add maximize button(but only in gray! ) for all widgets except:
    • Clock widget
    • System information
    • Favorite X
    • Map navigation
  • When clicked widget must be resized to fit all dashboard visible space.
    • All other widgets must become hidden/inactive with any refresh/processing in them paused.
    • Focused widget maximize icon must be changed to 'minimize'  or 'back to dashboard' icon
    • Map widget when resized to full screen must show control panel:

       (or Edit map button must be available to the widget all the time, discuss)
    • Classic Graph/Simple graph widget, when resized to full screen, must show control panel:

       (here, view as is interesting to have available)
      • If 'view as' is changed to Values then it is reset back to Graph when user returns to the dashboard
    • (In the future) After we will introduce ability to save problem filters( ) - problem filter configuration in widget must be dropped. Only link to saved filter must be provided in widget configuration. When problem widget is maximized, configuration of the applied filter must be shown. With ability to change and save it. This will help to unify problem view and problem widget.


 Comments   
Comment by richlv [ 2018 Sep 28 ]

Images in the issue description are broken.

Comment by Verde [ 2022 Nov 04 ]

Hi guys,

Is there any news about this feature?, the new graph widgets on dashboards are great but it's hard for some users to use them since widgets can't be expanded to a full screen, and creating as many new dashboards (for only one graph)  as graph widgets you have, doesn't sound efficient.

it would be good to have a button to expand the widget popping over the dashboard to full screen, and be able to minimize the widget to its normal size and position on the dashboard.

 

 

Regards,

 





[ZBXNEXT-4670] Support for HTTP 2.0 Created: 2018 Aug 06  Updated: 2018 Aug 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: rs.ckpl Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File image-2018-08-08-12-06-36-478.png    

 Description   

It would be nice if Zabbix Frontend would feature support for HTTP 2.0. Currently it does not and, in order for every option to work in the GUI, HTTP 2.0 need to be disabled in reverse proxy options.

This causes another issue. For example for nginx, due to construction of processes, one cannot simply disable HTTP 2.0 for one virtual host only. See https://stackoverflow.com/questions/40987592/can-i-enable-http-2-for-specific-virtual-hosts-only-on-nginx for details.

Had Zabbix supported HTTP 2.0, everyone's life would be easier, I guess.



 Comments   
Comment by Alexey Pustovalov [ 2018 Aug 06 ]

I think it is completely web-server configuration side feature, do you face some issues with Zabbix if disable/enable the feature?

Comment by rs.ckpl [ 2018 Aug 06 ]

Yes I do. With HTTP 2.0 enabled for Zabbix Fronted virtual site some graphs do not load properly. With HTTP 2.0 disabled those graphs load just fine.

Comment by Alexey Pustovalov [ 2018 Aug 06 ]

Please show us screenshots, logs... anything with some information, errors related to these graphs.

Comment by rs.ckpl [ 2018 Aug 06 ]

For obvious reasons I cannot share any data coming from the production instance. Let me create a test environment and replicate the issue so I can share screenshots, logs etc. It will take some time - I will get back to you.

Comment by rs.ckpl [ 2018 Aug 08 ]

Managed to replicate the issue, so far only with screens / graphs coming from Percona MySQL Server Template. The problem looks like on the screen above. Nginx virtual host configuration as below (no other default nginx setting was changed):

server {
        listen 443 ssl http2;

        client_max_body_size 2M;
        client_header_buffer_size 16k;

        ssl_certificate     /etc/nginx/apache.pem;
        ssl_certificate_key /etc/nginx/apache.key;

        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/run/php/php7.0-fpm.sock;
                fastcgi_index index.php;
                include fastcgi.conf;
        }

        root /usr/share/zabbix;
}

When "http2" is removed from configuration, graphs are displayed properly.
I see no logs that could help in zabbix-agent, zabbix-server log fles.

Environment:

  • Debian 9.5
  • nginx-light 1.10.3-1+deb9u1
  • zabbix-agent, zabbix-frontend-php, zabbix-server-mysql 1:3.0.7+dfsg-3
Comment by Alexey Pustovalov [ 2018 Aug 08 ]

Thank you! What about graphs? What about some standard templates, like Linux or Template App Zabbix Server, screens are also unavailable?

Comment by rs.ckpl [ 2018 Aug 08 ]

= works fine
= does not work properly

With HTTP 2.0 enabled:

  • Percona MySQL Server Template graphs
  • Percona MySQL Server Template screens (in one of the previous comments I called them "graphs" since they are called so, but in fact those are screens, not graphs)
  • Template OS Linux graphs
  • Template OS Linux screens
  • Template App Zabbix Server graphs
  • Template App Zabbix Server screens




[ZBXNEXT-4668] Change history per object in corresponding configuration views. Created: 2018 Aug 02  Updated: 2018 Aug 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.4.12
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: actions, audit, changelog, customgraphs, discoveryrule, hostgroups, hosts, items, maintenance, services, templates, trigger, webscenario
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File ChangeHistory.png    

 Description   

The Audit log report may reveal when an object like Host groups, Hosts, Items, Triggers... you name it, was changed by whom.

The Audit log is only available to users of type Zabbix Super Admin - for good reasons of course. Further, it is rather useful to find out who did what, resp. to walk over the traced actions as a whole.

In a multi-user environment, it is valuable to users to see who has changed what, when, on a particular object.

So, how about extending all the configuration views available to users of type Zabbix Admin, with another tab showing the audit log for the currently edited object?

This list should of course only list actions of users sharing the same user group. The list should also not reveal a user's IP address.

Extending the scope to configuration objects only available to Zabbix Super Admin users might be worth to think of too.






[ZBXNEXT-4412] Media usage restriction on media type level Created: 2018 Mar 08  Updated: 2018 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.0.15
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: control, mediatypes, severity, timeperiod
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Support of diverse media types provides great flexibility to Zabbix users. However, in larger organizations there may exist policies that restrict the use of certain media types to certain severities resp. periods of time.

Lack of such control mechanism likely leads to not configure such concerned media types at all - what could be a real loss to users!

How about adding similar control methods on Media type level like the already existing ones for User media?






[ZBXNEXT-4115] OOM Killer Item Created: 2017 Sep 21  Updated: 2018 Jan 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Schoechlin Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Sometimes linux systems are under memory pressure due to unexpected behavior of software. In this situation the builtin ooom killer of the linux kernel kills processes to resolve the memory pressure situation.
To monitor this is important, because systemd and upstart simply restarts killed processes and sometimes the operators of the system were not aware that the problem occurred.

It would be nice to have zabbix items which provide information about the behavior of the oom killer - i.e.:

  • how many ooms where invoked which zabbix agent is running?
  • the commandline and pid of the killed process
  • what was the reason for the oom killer? (if it is easy to have a low number of concrete situations)

Probably this can be a active item, which is sent directly when the situation appears.
To implement this, it might be an option to to use the event interface described at https://www.kernel.org/doc/html/v4.12/media/uapi/v4l/dev-event.html



 Comments   
Comment by Marc Schoechlin [ 2018 Jan 24 ]

Created a workaround:

https://github.com/scoopex/zabbix-agent-extensions/blob/master/extension-files/tools/zabbix_check_dmesg





[ZBXNEXT-3969] Import / Export support for a leaf in IT Services Created: 2017 Jul 12  Updated: 2017 Aug 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.0.9
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Heðin Ejdesgaard Møller Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: ITServices, Import/Export
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

3.0 LTS


Issue Links:
Sub-task
part of ZBXNEXT-85 Add a CLONE functionality in IT Services Open

 Description   

IT Services would be even more awesome if we got the ability to export/import a leaf and it's children, such that on import, I would point each of the non-trigger defined leafs to a host, where it's expected that the same trigger condition is located as child-leafs.
A use-case for this could be exporting a leaf that contains all relevant components for the LAMP stack.
Each deployment of the LAMP stack would only require a leaf import, pointing at the newly deployed hosts.

In this scenario i'm assuming that everyone configures the it services tree like this:

Service

  • Server(s)
    • Trigger(s) on server(s) to deliver said parent service.


 Comments   
Comment by Vitaly Zhuravlev [ 2017 Aug 03 ]

Maybe better implement this as as Clone feature like that:
ZBXNEXT-85





[ZBXNEXT-3963] Zabbix Server should restart terminated subprocesses instead of dying Created: 2017 Jul 05  Updated: 2017 Jul 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Asemov Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When any of Zabbix Server subprocesses (poller, trapper, whatever) dies, Zabbix server master process terminates all other subprocesses and dies deliberately.

There are some serious drawbacks to this:
1) Zabbix Server restart on large installations causes severe CPU usage on networking devices due to lots of SNMP requests
2) Zabbix Server restart on large installations can take several minutes for pollers to make it catch up with all the data due to lots of hosts offline, not coping with the initial load, etc.

So why not to have restart procedure for died subprocess instead of killing the whole server?

Also, if subprocesses are restarted, this can be used as a last resort means to fight with transient memory leaks by 'reloading' Zabbix server, effectively gracefully killing all subprocesses and restarting them back while retaining caches and stuff.






[ZBXNEXT-4762] Install Zabbix agent 3.2 on Solaris 10 zone Created: 2018 Sep 27  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Shashank Lokeshwar Assignee: Rostislav Palivoda
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Solaris 10



 Description   

Hi,

Please send across the steps to install Zabbix agent on a Solaris 10 zone.

Regards,

Shashank

 



 Comments   
Comment by dimir [ 2018 Oct 15 ]

palivoda, any idea if we will provide pre-compiled agents for Solaris?

https://www.zabbix.com/download_agents

Comment by richlv [ 2019 Oct 20 ]

Was also asked in ZBXNEXT-4632.





[ZBXNEXT-4694] Preprocessing rule for UTF8 encoding Created: 2018 Aug 20  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PDF File Preprocessing for UTF8 encoding 1.0rc1.pdf    

 Description   

Since Zabbix assumes all incoming data in UTF8 it makes accepting of non-UTF8 values cumbersome.  It would be great if Zabbix supported a preprocessing rule for encoding data into UTF8.



 Comments   
Comment by Alexei Vladishev [ 2018 Aug 20 ]

Hey all! Please have a look at the attached acceptance criteria document that describes proposed enhancements for UTF8 encoding. It has all chances to be implemented in Zabbix 4.2.

Let me know what you think. Is there anything to improve? I appreciate any feedback.

Comment by Glebs Ivanovskis [ 2018 Aug 29 ]

Use case is unclear to me.

Preprocessing is done by server. Server gets data from proxies, Java gateway, active agents and sender using JSON-based protocol. JSON format implies that string values are encoded in Unicode. Therefore this feature will only help in case non-UTF-8 data is produced by passive agents, SNMP and IPMI devices, external checks, HTTP agent checks, etc. executed by server itself. Or in a hypothetical scenario when non-UTF-8 data is produced in the middle of preprocessing pipeline.

Am I missing something?

Comment by Vladislavs Sokurenko [ 2018 Aug 29 ]

Good point cyclone for checks executed on Zabbix proxy, preprocessing must only be done on Zabbix proxy.

Comment by Vitaly Zhuravlev [ 2018 Aug 29 ]

cyclone, didn't you describe enough use cases?
The main use case is to change encoding of CSV files

Comment by Glebs Ivanovskis [ 2018 Aug 29 ]

Dear vzhuravlev, where do you get CSV file from?

Comment by Vitaly Zhuravlev [ 2018 Aug 29 ]

external script for example or from agent userparam

Comment by Glebs Ivanovskis [ 2018 Aug 29 ]

My point is that if this external script is executed by proxy, then:

  1. proxy won't be able to save its result in its database because the database uses UTF-8 encoding;
  2. proxy won't be able to send its result to server because communication protocol uses plain JSON strings for item values.

And in case if agent userparameter there will be a similar protocol issue if agent is active. Even in the case of passive check there could be issues because of a special meaning of 0 byte in passive check response (it separates value and error message).

This is basically the reason why agent items dealing with files (log*, vfs.file.contents, etc.) all have encoding as a parameter.

Comment by Vladislavs Sokurenko [ 2018 Aug 29 ]

Currently it looks like this task needs preprocessing on Zabbix proxy and agent specific preprocessing on agent to be implemented ?

Comment by Vitaly Zhuravlev [ 2018 Aug 29 ]

Thanks Gleb for valuable feedback.

Comment by Glebs Ivanovskis [ 2018 Aug 29 ]

You are welcome!

I hope this can be a motivation to make specifications publicly available once again.

Comment by Alexei Vladishev [ 2018 Sep 21 ]

Gleb, we are working on it!





[ZBXNEXT-4755] Introduce syslog uniq ident Created: 2018 Sep 25  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Michael Veksler
Resolution: Unresolved Votes: 1
Labels: logging, syslog
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently syslog ident is hard coded in Zabbix components. It is better to have possibility to customize such idents, for example, in cases when multiple instances are running on one server.

For example:
MySQL: https://dev.mysql.com/doc/refman/5.7/en/server-system-variables.html#sysvar_log_syslog_tag
PostgreSQL: https://www.postgresql.org/docs/9.5/static/runtime-config-logging.html






[ZBXNEXT-4097] Add trigger colors to Latest data Created: 2017 Sep 12  Updated: 2019 Feb 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.2.7, 3.4.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Nicola Mauri Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: frontend, items, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File proposal2.png     PNG File triggers on latest data - filter.png     PNG File triggers on latest data 2.png    
Issue Links:
Duplicate
Sub-task
part of ZBXNEXT-957 Latest Data - Highlight items when a ... Open

 Description   

It would be useful to show wether items listed in Latest data have related triggers in problem state, in a way similar to Monitoring > Overview.
This could quickly let the user detect issues.



 Comments   
Comment by Nicola Mauri [ 2017 Sep 13 ]

Clicking or mouse-hovering on a data cell could popup details about triggers related to item.

Cell background color would be set according to maximum severity trigger.

Of course, extra queries could impact page performance, so a "Show problems" option should be provided in Filter section to disable trigger visualization.

Comment by alix [ 2019 Jan 23 ]

Related: https://support.zabbix.com/browse/ZBXNEXT-957





[ZBXNEXT-3988] Improve distribution of item next checks Created: 2017 Jul 22  Updated: 2019 Oct 15

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 3.0.10
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 4
Labels: algorithm, performance, snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File SuboptimalNextCheckDistribution.png     PNG File screenshot-1.png    
Issue Links:
Sub-task
part of ZBXNEXT-4103 provide a way to work in BULK mode fo... Need info
Sprint: Sprint 21

 Description   

The current approach of distributing item checks may lead to peaks of data collection occupying all poller processes, while idling between peaks.

The following graph shows the poller busy time together with an 'Zabbix agent' item of a random number collected every second:

The peaks are caused by a lot of SNMP GET requests with an interval of five minutes. During the peaks the poller processes are too busy to process other item types.

It would be nice if Zabbix could ensure to use poller processes more efficiently. That's to say, avoiding peaks as much as possible.



 Comments   
Comment by Samuel [ 2017 Sep 12 ]

I am experiencing similar behaviour on istallation, which has mostly SNMP devices. On the proxy performance graph I see peaks to 700 vps (average is about 150 vps) in 5 minute interval, which is consistant with our update interval (5m). All SNMP interfaces have enabled bulk requests.

Comment by Oleksii Zagorskyi [ 2017 Nov 03 ]

I suppose these installation are new ones. have not that much hosts/items and all them have identical pool interval settings. So, current approach does not have enough "room" to spread out polling.
In realistic installation (more hosts, different polling etc) it's better.

Comment by Marc [ 2017 Nov 13 ]

Dear zalex_ua, the installation is pretty old and the affected Zabbix proxy has quite some hosts. However, it's true that there are a couple of hosts (around 30?) that have each thousands of LLD generated SNMP items.

Comment by Oleksii Zagorskyi [ 2018 Jul 12 ]

Just want to leave here a note as for my statement "data size the SNMP device should reply by"

Here is an example output of "show snmp" management command of cisco switch:

Router# show snmp

Chassis: 01234567
37 SNMP packets input
    0 Bad SNMP version errors
    4 Unknown community name
    0 Illegal operation for community name supplied
    0 Encoding errors
    24 Number of requested variables
    0 Number of altered variables
    0 Get-request PDUs
    28 Get-next PDUs
    0 Set-request PDUs
78 SNMP packets output
    0 Too big errors (Maximum packet size 1500)
    0 No such name errors
    0 Bad values errors
    0 General errors
    24 Response PDUs
    13 Trap PDUs

SNMP logging: enabled
    Logging to 192.168.1.1.162, 0/10, 13 sent, 0 dropped.
SNMP Manager-role output packets
    4 Get-request PDUs
    4 Get-next PDUs
    6 Get-bulk PDUs
    4 Set-request PDUs
    23 Inform-request PDUs
    30 Timeouts
    0 Drops
SNMP Manager-role input packets
    0 Inform response PDUs
    2 Trap PDUs
    7 Response PDUs
    1 Responses with errors

SNMP informs: enabled
    Informs in flight 0/25 (current/max)
    Logging to 192.168.1.1.162
        4 sent, 0 in-flight, 1 retries, 0 failed, 0 dropped
    Logging to 192.168.1.1.162
        0 sent, 0 in-flight, 0 retries, 0 failed, 0 dropped

note please this part:

78 SNMP packets output
    0 Too big errors (Maximum packet size 1500)

looks like it says about what I supposed initially - if prepared reply will be more than 1500 bytes(it depends on values, whose length is variable/unpredictable), snmp device will reply with tooBig error.
Not because of OIDs number, but because of reply size in bytes!

Comment by Marc [ 2018 Jul 25 ]

zalex_ua, isn't it supposed to be managed by Path MTU Discovery if a packet exceeds the limit?





[ZBXNEXT-4052] In memory cache of latest debug logs Created: 2017 Aug 25  Updated: 2017 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 4.0.0alpha1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Glebs Ivanovskis (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: logging, troubleshooting
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Information of DebugLevel 4 and 5 is very helpful when investigating complex bugs or simply troubleshooting certain processes in Zabbix lacking user-visible error messaging. I cannot overestimate the usefulness of the runtime control of logging level on process type and individual process level. Unfortunately, on highly loaded environments it's not really an option. Especially when the issue being investigated is quite rare, unpredictable and can only be detected some time after inception. Enabling additional logging would slow down the system and produce too much information to analyse.

My suggestion is to introduce a cache for the most recent logs of all possible levels and a runtime control option to dump this temporary storage into logs on demand. Basically, same strategy is used in flight recorders with great success.






[ZBXNEXT-4949] More granular housekeeper control Created: 2019 Jan 09  Updated: 2019 Jan 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sean Nienaber Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: housekeeper
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We're in the process of preparing for an upgrade from v3 to v4 and have an 80GB DB, this is going to take about a day of downtime to upgrade the DB.

When digging into the data, we've found massive amount of data in the history and events tables which we can remove by reducing the overrides in the web interface.

The housekeeper however runs hourly at a minimum and clears out only a 4 hour window at a time.

I would like to see the following added to either the web interface for server conf:

  • HousekeepingDeleteWindow - Sets the window for delete window, useful values between 1h and 24h
  • HousekeepingFrequency - Change this from hourly to minutes, allowing values between 0 for running continually and 1440 for daily.

Thanks,

S






[ZBXNEXT-4897] Add relocate option to zabbix rpms during installation Created: 2018 Dec 04  Updated: 2019 Mar 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: 3.0.23
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Adrian LIN Assignee: dimir
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File zabbix.spec    

 Description   

By default, zabbix rpms are only allowed to be installed at default path. It follows the basic Linux file system standard. But for certain customers, the zabbix assets are preferred to be installed in customized directory.

So we add Prefix option in zabbix.spec file and some steps in post & postun phases to enable the relocate option during the rpm installation. The spec file modification is based on 3.0.19 version. And hope this could be added as a default config since no harm to logic.



 Comments   
Comment by Adrian LIN [ 2018 Dec 06 ]

Hi,

Since I can only find it at repo: https://repo.zabbix.com/zabbix/3.0/rhel/7/SRPMS/  as a rpm.

Any way I can find an official link to the source code of this?

Comment by dimir [ 2018 Dec 06 ]

svn://svn.zabbix.com

Comment by Gergely Csatari [ 2019 Jan 10 ]

Can you please tell us in which Zabbix release will this change be available?

Comment by dimir [ 2019 Mar 25 ]

From the Fedora docs:

The use of RPM’s facility for generating relocatable packages is strongly discouraged. It is difficult to make work properly, impossible to use from the installer or from yum, and not generally necessary if other packaging guidelines are followed. However, in the unlikely event that you have a good reason to make a package relocatable, you MUST state this intent and reasoning in the request for package review.

Thus I'm not sure we should do it.

https://docs.fedoraproject.org/en-US/packaging-guidelines/#_relocatable_packages

Comment by Adrian LIN [ 2019 Mar 26 ]

The real reason for this is that some users only grant permission of a single directory to zabbix. They prefer all content from zabbix are placed at the same place, not spreading out  as the default configuration. They will use the rpm installation instead of yum.

So it would be appreciated to keep the option, though may not be used commonly.  





[ZBXNEXT-4816] Conditional addition of a tag to an event Created: 2018 Oct 19  Updated: 2018 Oct 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.14
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: Configuration, Triggers, regularexpression, tags
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

How about optionally supporting the addition of a tag (or tag+value) to an event only, if the corresponding value resolves to a non-empty string (not NULL)?

This way one could limit tags (or tag+values) added to only those, that are derived from the triggering item value.






[ZBXNEXT-5629] Implement filter on closed by correlation problems. Created: 2019 Dec 09  Updated: 2023 Oct 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alex Klimov Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 17
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Untitled.png    
Issue Links:
Duplicate

 Description   

Implement filter on closed by correlation problems. If i widely use correlations, problems dashboard become useless, because of tons of closed by correlation rules triggers.



 Comments   
Comment by Alex Klimov [ 2019 Dec 09 ]

Make this filter available in API

Comment by Joachim Vertommen [ 2021 Mar 11 ]

Hello,

Are there any plans it implement this yet?

Because this poses a really big problem to us. Today again I am confronted with an incident that floods the history table with tens of thousands of alarms in a few hours time.

 

For your information I'll describe an example of a use-case on how we use trigger-based event correlation and how this can generate lots of correlated alarms: 

  • We monitor our network mainly with SNMP polling. 
  • Host availability is monitored using ICMP ping. 
  • So periodically we check: the availability of a host, the status of the interfaces on the host, the status of the BGP sessions of the host with other hosts, the status of the MPLS LSPs of the host with other hosts, etc. 
  • When host_A is down we trigger an alarm “host_A: Unavailable” with the tag “Unreachable: host_A”
  • All other hosts who have a BGP session with host_A will trigger an alarm because their BGP session with host_A is down.    
    On hosts host_B, host_C, host_D, host_E, etc. this will trigger following alarms:
    • “Host_B: BGP peer to host_A Down” with tag “bgp_to: host_A” 
    • “Host_C: BGP peer to host_A Down” with tag “bgp_to: host_A”      
    • “Host_D: BGP peer to host_A Down” with tag “bgp_to: host_A”      
    • “Host_E: BGP peer to host_A Down” with tag “bgp_to: host_A”      
    • … 
  • Under Event correlation we have 2 rules to correlate the “Host_X: BGP peer to host_A Down” alarms.   
    The reason that we have 2 rules is because with SNMP polling there is no way to know which alarm will be triggered first: “host_A: Unavailable” or “Host_X: BGP peer to host_A Down”.
    • The first rule is meant to correlate the events in case the alarm “host_A: Unavailable" is raised before the alarms “Host_X: BGP peer to host_A Down” are raised.
      • Condition: Old event tag Unreachable equals new event tag bgp_to
      • Operation: Close new event    
      • => As a result of this rule all new events with tag "bgp_to: host_A" will be closed.
    • The second rule is meant to correlate the events in case the alarm “host_A: Unavailable" is raised after the alarms “Host_X: BGP peer to host_A Down” have been raised.
      • Condition: Old event tag bgp_to equals new event tag Unreachable
      • Operation: Close old events
      • => As a result of this rule all old events with tag "bgp_to: host_A" will be closed.

The overall result of this is that all “Host_X: BGP peer to host_A Down” alarms are resolved by the correlation rules. (See attachment)
Only the “host_A: Unavailable” alarm (the root cause) will remain open.

This works very well except for one thing: 

  • The alarm is closed by the correlation rule. Perfect. 
  • But:
    • If host_A is still down at the next polling interval for the BGP sessions then the alarm “Host_X: BGP peer to host_A Down” will be triggered again.
    • These alarms are then immediately closed again by the correlation rules.
    • This continues over and over again until host_A is available again and the BGP sessions are re-established.
    • As a result thousands of these correlated alarms can be triggered and found in the history view.

For the Recent problems view this is annoying, but it is workable.
For the Problems view this isn’t a big problem because the alarms that are resolved by the correlation rules are immediately closed and as a result the duration is 0. So the alarms won't appear in the Problems view.
But for the History view this is the biggest problem. When a host is down the history will be swamped with correlated alarms that are triggered, resolved by the correlation rule, triggered again and so on. This makes investigating the history very difficult.

 

Therefore it would be very helpful if it was possible to filter out correlated alarms.

Comment by Ingus Vilnis [ 2023 Oct 10 ]

In addition to the above, extend this filter to show duration greater / less than X seconds. At least greater than 0 seconds, which will then filter out both correlation problems as well as other 0 second events. (yes, users create such find&nodata trigger combos.)

Another use case why "Duration less than X" is important - to filter and fix annoying short duration problems which contribute to alert fatigue. 

Comment by Joachim Vertommen [ 2023 Oct 10 ]

Now that since Zabbix 6.4 we have cause and symptom problems this issue could be easily solved by and extra operation in the event correlation rules.

Next to "Close old events" and "Close new events" we need two more operations:

  • Make old event symptom
  • Make new event symptom




[ZBXNEXT-4116] Zabbix displays "OK" status for unknown triggers in "Overview" Created: 2017 Sep 22  Updated: 2018 Jan 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.4.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleg Ivanivskyi Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: notsupported, overview, trigger
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 3.4


Attachments: PNG File overview.png     PNG File unknown.png    
Issue Links:
Duplicate

 Description   

From the documentation (https://www.zabbix.com/documentation/3.4/manual/web_interface/frontend_sections/monitoring/overview):

The Monitoring ? Overview section offers an overview of trigger states or a comparison of data for various hosts at once.

In "Overview", Zabbix displays "OK/Green" state for triggers with "Unknown" status which is misleading. Zabbix should probably use a different color to highlight them (e.g. white/grey). Also, it would be great to be able to hide them by using a filter.






[ZBXNEXT-3992] Allow {HOST.NAME} or {HOST.HOST} to be used in group prototype Created: 2017 Jul 25  Updated: 2017 Jul 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S), Templates (T)
Affects Version/s: 3.0.9, 3.0.10, 3.2.6, 3.2.7
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aviram Alter Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There needs to be a way to use the

{HOST.NAME} or {HOST.HOST} macros in the Group Prototype fields.

Use case:

Discover all docker containers on a host, create each container as a host in Zabbix Server, have each container in a group with the name of the host it was discovered in ({HOST.NAME}

or

{HOST.HOST}

)






[ZBXNEXT-6229] Zabbix proxy delete statement MYSQL server has gone away Created: 2020 Sep 30  Updated: 2020 Sep 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File single_delete_statement.txt    

 Description   

Proxy can be affected by impossibility to complete big delete queries in certain situations: single_delete_statement.txt, in this case - configuration update.

It would be great, to solve this with in example an option in config similar to servers - MaxHousekeeperDelete






[ZBXNEXT-6218] Template for IBM MQ Created: 2020 Sep 25  Updated: 2022 Oct 08

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Mike Assignee: Aleksandre Sebiskveradze
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Create template for IBM MQ. Monitoring MQ Managers and MQ Queues in Zabbix with discovery.






[ZBXNEXT-6175] Add opeion for Results tag to remote commands in Action Created: 2020 Sep 01  Updated: 2020 Sep 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Shawn Burkit Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

There needs to be an ability to see the data from a remote command from the operations in an action.  If validation in the command out put is needed, right now a custom API needs to be built to return the data, which is insufficient






[ZBXNEXT-6174] Action Operations Steps enhancement Created: 2020 Sep 01  Updated: 2020 Sep 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Shawn Burkit Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Configuration
  2. Actions
  3. New action
  4. Operations
  5. Recovery/Update operations
  6. add

Result:
No opten for steps

Expected:
simular features as operations section.  Recoveryoptions at a minimal should have options to provide steps for instances where multiple operations are needed in a specific order based of the results of previous actions.






[ZBXNEXT-6169] Make "Execute Now" available in other masks Created: 2020 Aug 28  Updated: 2022 Jul 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marco Hofmann Assignee: Valdis Murzins
Resolution: Unresolved Votes: 16
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 10 Buster amd64
Zabbix 5.0.3


Attachments: PNG File image-2020-09-18-16-58-15-539.png     PNG File image-2020-09-19-12-56-44-904.png    
Issue Links:
Duplicate
duplicates ZBXNEXT-4768 Check now button available in 'Latest... Closed
is duplicated by ZBXNEXT-6188 "Check Now" function in Problem Dashb... Closed

 Description   

I've always wondered, since Execute Now (Check Now) was introduced in 4.0.0, why this button isn't available in Monitoring -> Problems View?

Often I fix event problem of an item that only checks every 1h or more. Then I want to check the item value after my fix, so the problem Event will resolve.

Sadly it is only available in the Items Administration.

I would like to see this button also in the Views:

  • Monitoring -> Latest Data
  • Monitoring -> Problems


 Comments   
Comment by sancho [ 2020 Sep 18 ]

It would be great something like this:

If possible... ?

 

Comment by Marco Hofmann [ 2020 Sep 19 ]

Hi sancho, thank you for supporting my Feature Request. Sadly I disagree with you MOC. If you would add Execute Now to the Host Context Menu, you would be unable to control which item exactly receives the command. As it's implemented currently, you explicitly select the item(s) you want to check.

I would like to see it implemented like this: You view the list of problems, solve some of them administrative, and you know that the item will only get checked again sometimes in the next 1-6h for example, so you want to get the values NOW:

Comment by sancho [ 2020 Sep 22 ]

Hi Marco,

You are absolutely right, your option is more logical.

Hopefully they can implement it, it would save a lot of steps and time.

A greeting.

Comment by richlv [ 2021 Feb 11 ]

Partially duplicate of ZBXNEXT-4768.
Note that in Monitoring -> Problems a problem/trigger could easily reference multiple items, this functionality in that case is a bit more tricky - should all included items be forced?
What if some can be forced, some not (like trapper items)?

Comment by Marco Hofmann [ 2021 Feb 15 ]

All items possible should be checekd, most important Zabbix Agent passive items.
Green: If there are multiple items in a problem, all of them should be checked.
Yellow: If there are supported and unsupported types mixed, Zabbix agent active and/or Trapper, check only the supported ones (but should this be displayed with a yellow message instead of a green, where it states: Partly executed?)
Red: If there are only unsupported item types, present a red message: Execute now not possible with this item type.

Comment by Joachim Vertommen [ 2021 Feb 16 ]

Ideally we should also be able to set the permission to do an "Execute now" in the User roles.

Comment by Marco Hofmann [ 2021 Feb 16 ]

joachim.vertommen Yes, this becomes necessary due to the changes in the permissions in Zabbix 5.2.

Comment by Mickael Martin (Cyres) [ 2022 Jul 01 ]

Hello,
Linked with https://support.zabbix.com/browse/ZBXNEXT-4768, so maybe Zabbix Team can close it ?

Comment by Marco Hofmann [ 2022 Jul 01 ]

Excuse me? This might sound similar, but it's a different request. It might have been added to "Latest data" in the meantime, but I would like to see it in Monitoring -> Problems View. This hasn't changed afaik, so this request is still unresolved.

Comment by Joachim Vertommen [ 2022 Jul 01 ]

I agree with Marco. An operator should be able to request an update of all underlying items of a problem without having to know which items.

It's a totally different use case.

Comment by Mickael Martin (Cyres) [ 2022 Jul 01 ]

Yep, I understand, sorry. For your information, there is a new role for admin and user to get the last value via "Check now".





[ZBXNEXT-6048] Add ability to filter events/problems by actions and actions status Created: 2020 Jul 07  Updated: 2023 Oct 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Unassigned
Resolution: Unresolved Votes: 12
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

This would be very useful when you have a big list of events and you want to view, select, or extract ONLY the EVENTS that followed a certain Action.



 Comments   
Comment by Mickael Martin (Cyres) [ 2023 Oct 09 ]

Hello,

Very good idea !





[ZBXNEXT-5576] Host maintenance delay more than 3 minutes Created: 2019 Nov 16  Updated: 2019 Nov 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.0.15rc1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: redking Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

centos 6.9


Attachments: PNG File image-2019-11-16-17-29-04-158.png     PNG File image-2019-11-16-17-29-51-286.png    

 Description   

System information:

Number of hosts: 5450

Number of items:1050243  ;Number of triggers:563019

new values per second: 10555.39

zabbix-server.conf

LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=100
DebugLevel=3
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=X.X.X.X
DBName=zabbix
DBUser=zabbix
DBPassword=******
HistoryStorageURL=http://ZabbixDataElasticsearch.XXX.com:9200
HistoryStorageTypes=uint,dbl,str,log,text
StartPollers=270
StartPreprocessors=10
StartPollersUnreachable=5
StartTrappers=80
StartPingers=360
StartDiscoverers=8
StartHTTPPollers=8
StartTimers=700
StartEscalators=20
StartAlerters=5
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
HousekeepingFrequency=0
MaxHousekeeperDelete=0
CacheSize=3G
CacheUpdateFrequency=320
StartDBSyncers=60
HistoryCacheSize=2G
HistoryIndexCacheSize=900M
TrendCacheSize=200M
ValueCacheSize=5G
Timeout=6
AlertScriptsPath=/etc/zabbix/alertscripts
ExternalScripts=/etc/zabbix/externalscripts
LogSlowQueries=2000
AllowRoot=1

 

can you help me ? I'm crazy!!!! 

For example:

I‘m create one maintenance at 16:30  .Active since: 2019-11-16 16:30,Active till:2019-11-16 16:40 。

But ,I have to wait more than 3 minutes for the host to enter the in maintenance mode ,

At 16:34, the host status changes  in maintenance。

This is not an individual phenomenon. I tried many hosts。
 
maintenance



 Comments   
Comment by redking [ 2019 Nov 16 ]

About the maintenance, Maintenance period star time at 16:30 also。
 





[ZBXNEXT-5451] extended search capabilities Created: 2019 Sep 19  Updated: 2019 Sep 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Harri Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

For working with a large set of hosts to monitor I need some way to search for the hosts I am interested in, e.g. all hosts on a proxy p1 and manually assigned template xyz that are not in host group abc. Something like that.

I cannot speak for Zabbix 4.2, but in Zabbix 4.0 searching for the hosts to work with appears to be very limited. Very often I have to use ^F in the browser to search for the items I am interested in. This could be improved.






[ZBXNEXT-5364] Sort/Filter columns from tables Created: 2019 Aug 11  Updated: 2019 Aug 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.2.4, 4.2.5, 4.4.0alpha1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Francine SAUVAGE Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Improve table capabilities with sort / filter abilities (like kendo-ui) for each column






[ZBXNEXT-5304] Large UX issue Created: 2019 Jul 03  Updated: 2020 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.10
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Boris Johnson Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2019-07-03-15-15-20-413.png    

 Description   

When adding permissions (Or any other page that features layered add functionality)

If you will press Update without pressing Add you will loose your progress.

As a Zabbix user I would like to be either informed about my unsaved progress or to have it saved when Update is pressed.



 Comments   
Comment by richlv [ 2019 Jul 03 ]

That' s a very old problem.
ZBX-7341 describes how it is also inconsistent across the UI, and there likely are some other issues, explicitly talking about unsaved changes (think action operation editing).





[ZBXNEXT-5290] new dashboard widget - dashboards navigation tree (needed especially for kiosk mode) Created: 2019 Jun 25  Updated: 2019 Jun 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: dashboard, widgets
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File grafana-example.png    
Issue Links:
Duplicate

 Description   

Take a look to attached picture. That's Grafana.

We need something similar to be able easily and quickly navigate across many (expect ~1000) dashboards.

Possibility to switch between dashboards should be possible in Kios mode too.

Maybe it could be some CSS+HMTL insert form or so.






[ZBXNEXT-5625] allow new graph widget to filter by a host group Created: 2019 Dec 05  Updated: 2024 Jan 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dima Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-5712 Host group filtering option in Modern... Closed

 Description   

Today I can only select hosts by name. I have 100s of hosts and some of them are production and some of them are development. I want to be able to use a graph and select * for hosts. Then I want to limit the selection to a group. Either a global dashboard filter or a local chart filter will do.

Maybe it is already possible and I just don't know how? I am a new user

 



 Comments   
Comment by gofree [ 2021 Aug 10 ]

I donth its possible. This is indeed needed in my opinion as well. Basically every time I add a host in to hostgroup ( manually or discovery ) the dashboard needs to be updated. Its kinda non-effective when thinking about the purpose of the dashboards - high level overview for anybody ( an/or managers ). 

 

If hostgroup is no option tag filtering could help as well, honestly Id like to see both hostgroups and tags.

 

Thanks

Comment by patrik uytterhoeven [ 2021 Dec 01 ]

duplicate of https://support.zabbix.com/browse/ZBXNEXT-6727

Comment by gofree [ 2021 Dec 01 ]

dont think so thats a duplicate - just imagine that you dont know the naminch schema of hosts in a specific hostgroup you will not able to write a regexp to it you can 100% rely on - in my opinion this option is a must have in addition to regexps functionality , nice to have would be tgas as well as the host can be tagged

Comment by Travis Johnson [ 2023 Mar 28 ]

We would also like to see this added, hopefully in a near future release. We have hundreds of servers, network devices, and Vcenters that we organize with host groups.

Comment by Dave Johnson [ 2024 Jan 26 ]

I'm really hoping this will be added one day too please. My example is I have a whole dashboard page filled with graphs for 35 Zabbix proxies, Every time we add a new proxy/server i have to go through each of the 30 graphs and add this 1 new server in, when it could just pull hosts from the Zabbix Proxies host group i created.

Ideally I'd like to have a dashboard page for each of the 35 sites we manage but there is too much room for human error and i think it would quickly become outdated especially as I'm not the only one creating new hosts in my organization. 





[ZBXNEXT-5359] Provide a way to reset alerts queue Created: 2019 Aug 08  Updated: 2019 Aug 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.0.11, 4.2.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: alerter, alerts, queue
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently if alert manager received alert list it is impossible to cancel sometimes unnecessary alerts. It would be great to have a way to reset alert manager queue and force reload alert queue from database.






[ZBXNEXT-5363] Export table to CSV Created: 2019 Aug 11  Updated: 2019 Aug 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.2.4, 4.2.5, 4.4.0alpha1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Francine SAUVAGE Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Improve table capabilities in a generic way (like kendo-ui)

<table> grids are too basic => add an export to csv button to each table as a generic button

 

see https://stackoverflow.com/questions/16078544/export-to-csv-using-jquery-and-html

 

for me, it is definitely a major improvement






[ZBXNEXT-5259] Ability to customise colour and transparency of problem overlay in new graph widget Created: 2019 Jun 05  Updated: 2019 Jun 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Mark Hatton Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Create a new graph widget on a dashboard
  2. Set up an item to graph using a red colour
  3. Set up problems for the host to be displayed on the graph

Result:

Since problems are overlayed on the graph in red with no option to choose another colour, it can be very hard to see red-coloured graph items as the reds all merge together visually. It becomes increasingly difficult to see these items as more problems get overlayed at the same time.

Expected:
Facility to adjust the colour and transparency settings of the problem overlay, just like we have for graph items. Ideally, this should allow continuing to show the problem bar underneath the graph's x-axis as now, but without any colouration being applied to the main graph body.






[ZBXNEXT-6310] Zabbix Script Item should support other Script Languages like PowerShell (Core) Created: 2020 Oct 30  Updated: 2020 Oct 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: 5.2.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marco Hofmann Assignee: Valdis Murzins
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 10 amd64



 Description   

Zabbix 5.2.0 introduced the new item type "Script", and like the pre-processing feature it only supports JavaScript.

IMHO JavaScript is nothing a typical IT system administrator like me, working at a Microsoft centric manage services provider (MSP) is capable of. I cannot write a single word of JavaScript as a Citrix and Microsoft Server Administrator, nor can my co-workers. I have co-workers which are web-developers and they can write JavaScript, but they aren't system administrators. My point is: Typical administrators can write PowerShell, Python, Perl, Bash. but not JavaScript.

I personally can write very good PowerShell 7 scripts on Linux.
PowerShell 7 is available on many Linux Platforms:
https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7

So my request is as following:

Please add support to insert any script into the code field other than JavaScript and let me just choose the interpreter as an additional drop-down field in Zabbix Frontend. So the Zabbix server administrator is responsible to install the language needed on Zabbix Proxy/Server like perl, python, PowerShell, or whatever for the script interpretation.



 Comments   
Comment by Marco Hofmann [ 2020 Oct 30 ]

Maybe I should've created this ZBXNEXT with a slightly different focus, not especially about adding PowerShell, but advancing the "External Scripts" feature, which is unchanged since quite some time.

Especially with the background that Zabbix focuses more and more on making templates exchangeable between Zabbix installation. External Scripts make this quite complicated.

Maybe the external scripts, should be manageable from Zabbix Frontend.





[ZBXNEXT-5788] 有没有 zabbix4.0.14的 template_db_redis.xml Created: 2020 Mar 02  Updated: 2023 May 11

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 4.0.17
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: maohuanzhang Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix server 4.0.14 导入 template_db_redis.xml 报错


Attachments: JPEG File 微信图片_20200302124835.jpg    
Team: Team A

 Comments   
Comment by dimir [ 2020 Mar 05 ]

This is an international issue tracker and the language is English. Please care to provide proper issue title and description in English or we'll have to close the ticket.





[ZBXNEXT-5793] Template for Device-Mapper devices on Linux (multipath, lvm) Created: 2020 Mar 03  Updated: 2020 Mar 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: DeviceMapper, LVM, linux
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please provide template for the device-mapper subsystem on Linux OS. Base level:

  1. Multipath devices: path members, io, bw stats;
  2. Logical volumes/Physical volumes: disk members, allocated size, io, bw stats;
  3. Logical thin volumes: real allocated size, sparse size used, io, bw stats;
  4. Logical RAID volumes: level, members, io, bw stats;

All types supported:

  1. linear;
  2. striped;
  3. mirror;
  4. snapshot и snapshot-origin;
  5. error;
  6. zero;
  7. multipath;
  8. crypt.

Regards,
Edgar






[ZBXNEXT-5860] LLD Capability Enrichment Created: 2020 Apr 02  Updated: 2023 May 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ali DURSUN Assignee: Michael Veksler
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-3035 Ability to filter LLD triggers creati... Closed

 Description   

There must be a way to set template for host after lld. It is possible to do it from discovery actions. However, it is restricted on only port and IP checks. It would be a great feature to assign a host to a templates after a service or path on disk is discoverd by lld.



 Comments   
Comment by Marco Hofmann [ 2020 Jun 07 ]

I believe it's already there. As long as a Zabbix agent is on the system, you can check for every item. For Windows like service.state[spooler] and if it's ture, link a Printserver template.

Comment by Michael Veksler [ 2020 Jun 08 ]

You can do it after ZBXNEXT-3035

Comment by Markus Fischbacher [ 2020 Aug 27 ]

There are multiple FR open for this type of thing even from myself. So I vote for this too.
Not having dynamic template assignment after so many years is still a pain.





[ZBXNEXT-5987] Mass Update for item property "Populates host inventory field" Created: 2020 May 27  Updated: 2020 May 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.4.8, 5.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marco Hofmann Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 10 Buster amd64
MariaDB 10.4
Zabbix server 4.4.8
&&
official appliance 5.0.0



 Description   

Today I played around with the Zabbix inventory feature. For that purpose I wanted set some item properties from different templates to Populates host inventory field via Mass update. But I had to discover, that Mass update doesn't offer the possibility to change the Populates host inventory field property of any item.

This is a limitation I would like to see addressed.

This is limitation is also visible here:
https://www.zabbix.com/documentation/current/manual/config/items/itemupdate






[ZBXNEXT-5770] Multi-server dashboard support Created: 2020 Feb 21  Updated: 2023 Jan 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hello,

Due to possible environment restrictions, strict setups or other exceptions, there sometimes is a need of having separate Zabbix servers for each of the environments, while retaining the possibility of centralized overview of monitoring as a whole.

An effective solution would be a dashboard that would i.e. show data from Zabbix server A in combination with Zabbix server B, but not just performance data, as it is possible already, but a broader one, that would show problems from both or more servers and perhaps even make possible to access data and graphs from mentioned servers.

Please consider implementing this feature.

Best Regards,
Aleksandrs






[ZBXNEXT-5681] docker images requires root permission Created: 2020 Jan 10  Updated: 2020 Jan 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Appliance (L)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: dakol Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

create container without root permission from one the image provided by https://www.zabbix.com/container_images

docker container create --user 5000

or in Openshift (which execute container with a "arbitery" user id)

Result:
the container failed to start because docker-entrypoint.sh modify files belonging to root

/etc/nginx
/etc/apache
/etc/php*
/var/log/*

Expected:
A docker image which can run without root permission

 






[ZBXNEXT-5682] Required Zabbix Agent for Power Linux Created: 2020 Jan 13  Updated: 2020 Jan 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 4.4.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Sharif-uz-zaman Shakil Assignee: Michael Veksler
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Red Hat Enterprise Linux



 Description   

Dear Team,

I have required to install Zabbix Agent for Power Linux Kernel: Linux 3.10.0-229.el7.ppc64.

Can you please help how can i get the mention agent.






[ZBXNEXT-5640] Retrieving Data from Web Scenaries Created: 2019 Dec 11  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F)
Affects Version/s: 5.0 (plan)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrey Ivanov Assignee: Michael Veksler
Resolution: Unresolved Votes: 2
Labels: agent, frontend, items, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Getting data through REST API Web scenarios in the step



 Description   

Hello!

When we use "Web scenarios", then we have no way to extract the data received from a POST request through the regexp.
We ask you to include the functionality of the new release will allow us to retrieve data through the regexp on the steps of "Web scenarios".

 






[ZBXNEXT-5408] Optionally make agent single-namespaced Created: 2019 Sep 09  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 4.2.6
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Evgenii Terechkov Assignee: Michael Veksler
Resolution: Unresolved Votes: 0
Labels: agent, namespace,, namespaces,
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Machines with systemd-nspawn / docker containers.



 Description   

Now, zabbix agent return information regardless namespaces. So, on machines with userspace containers it may give "wrong" data (ie. proc.num[] return number of processes in all namespaces, not in his own namespace). It is very inconvient to monitor container's host machine with such behavior.

 

Can you make optional switch for agent to look up only in his own namespace for all returnted data (proc.num/proc.mem/...)?






[ZBXNEXT-5335] Change Oracle table schemes NVARCHAR2/NCLOB column types Created: 2019 Jul 25  Updated: 2024 Feb 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Gatis Rumbens Assignee: Michael Veksler
Resolution: Unresolved Votes: 8
Labels: database, oracle, rdbms
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL7, Oracle 19.3


Issue Links:
Causes
Duplicate
Sub-task
part of ZBX-19604 Error cloning template "Template DB O... Closed
Team: Team B

 Description   

If you try to create in Oracle RDBMS Zabbix users, table space i.e from provided Zabbix creation scripts on modern Oracle RDBMS (let say starting from 12c (12.2) and have not read the related Zabbix documentation that we need a 1-2byte unicode (UTF-8) on Unicode national characters probably You will fail with error like that.

description nvarchar2(2048) DEFAULT '' ,
*
ERROR at line 5:
ORA-00910: specified length too long for its datatype

The NVARCHAR2 datatype was introduced a long time ago by Oracle for databases that want to use Unicode for some columns while keeping another character set for the rest of the database (which uses VARCHAR2). The NVARCHAR2 is a Unicode-only datatype. It was actual with RDBMS version < 10. Theoretically it was more relevant in old RDBMS versions where used non-Unicode encoding on DB - but instead use national encoding. For an example: BLT8MSWIN1257 (Baltic states 8 bit windows-1257 code page).

Starting with Oracle Database 12c Release 2 (12.2), the default database character set of a database created from the General Purpose/Transaction Processing or the Data Warehousing template is Unicode AL32UTF8 and Unicode national character set is AL16UTF16 by default. Oracle recommends that you use Unicode AL32UTF8 as the database character set and AL16UTF16 as national character set.

The NVARCHAR2 column, which uses the NLS_NCHAR_CHARACTERSET which will almost always be AL16UTF16 for now is really only useful in a couple of cases. The first, and by far most common, is when you have a legacy application whose NLS_CHARACTERSET doesn't support Unicode and cannot be migrated to Unicode but where you want to support Unicode data in a handful of columns. That's not the case here. The second would be when the database does support Unicode but you want to use the UTF-16 encoding for some reason such as the ability to store primarily Japanese and Chinese data using mostly 2 bytes per character in UTF-16 rather than 3 bytes per character in UTF-8. But if you do that, you're still (barring 12.2 and the ability to have 32k VARCHAR2 columns) limited to 4000 bytes (2000 characters in a UTF-16 column). Hence the error when you try to define NVARCHAR2(4000) which would need at least 8000 bytes to store 4000 characters. If you do need to store more than 4000 bytes of data and you're using Oracle 11.2 or later, you'd have to use a LOB data type (NCLOB).

If your NLS_CHARACTERSET is AL32UTF8, any VARCHAR2 column will support Unicode (via the UTF-8 encoding). In 99.9% of cases, you'd never want to create an NVARCHAR2 column at all now days.

So but what to do if You still want to use Zabbix provided scripts on already working root container CDB database. Thanks Oracle that now we can use different encoding in a root container database (CDB) an pluggable database (PDB). So we can create another PDB with NLS_NCHAR_CHARACTERSET=UTF-8 - there is no problem.

But what to do when You can't do that or Your DBA will not do that. Is it possible change current (working CDB) from AL16UTF16 to UTF-8?

It's possible...but do it on your own risk. I'm recommend that you perform a full database backup before changing the national character set!!! It is always not better choice to use 'ALTER DATABASE' command to change the character set

Like the database character set, the national character set is defined when the database is initially created and can usually no longer be changed, at least not easily or without involving quite a lot of work.

One of the options:

[oracle@ora19 root]$ rlwrap sqlplus / AS SYSDBA
SQL> select parameter,value from v$nls_parameters where parameter='NLS_CHARACTERSET' or parameter='NLS_NCHAR_CHARACTERSET';

PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
NLS_CHARACTERSET
AL32UTF8

NLS_NCHAR_CHARACTERSET
AL16UTF16

SQL> Select owner, table_name, column_name from dba_tab_columns where (data_type = 'NCHAR' or data_type = 'NVARCHAR2' or data_type = 'NCLOB') and owner != 'SYS' and owner != 'SYSTEM';
TIP for information

If there are no table columns of the types NCHAR, NVARCHAR2 or NCLOB on the database, you can change the national character set without encountering any problems. However, if the database contains tables with NCHAR data type columns, you should perform a check to see whether these columns also contain data. You have an option ALTER those columns to non national encoding, remove data etc. So if there is no data ALTER DATABASE NATIONAL CHARACTER SET UTF8 will work.

SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0 SCOPE = MEMORY;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0 SCOPE = MEMORY;
SQL> ALTER DATABASE OPEN;
SQL> ALTER DATABASE NATIONAL CHARACTER SET UTF8;

If there is no Errors like:

ALTER DATABASE NATIONAL CHARACTER SET UTF8
*
ERROR at line 1:
ORA-12717: Cannot issue ALTER DATABASE NATIONAL CHARACTER SET when NCLOB, NCHAR
or NVARCHAR2 data exists

Regarding to TIP - read it what to do.

Otherwise You could try to do the following in this place:

SQL> update props$ set value$='UTF8' where name in ('NLS_NCHAR_CHARACTERSET');
SQL> commit;

After:

SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;

Let's check again:

SQL> select parameter,value from v$nls_parameters where parameter='NLS_CHARACTERSET' or parameter='NLS_NCHAR_CHARACTERSET';

PARAMETER
----------------------------------------------------------------
VALUE
----------------------------------------------------------------
NLS_CHARACTERSET
AL32UTF8

NLS_NCHAR_CHARACTERSET
UTF8

We are done!

But instead of this all - my recommendation could be change NVARCHAR2 and NCLOB column data types to VARCHAR2 and CLOB.

cd /zabbix/install/scripts/with/oracle/scheme
sed -i 's/nvarchar2/varchar2/g; s/nclob/clob/g;' *

Oracle recommendation is that you create your database with the AL32UTF8 database character set, and move all your national character set data to normal VARCHAR2 and CHAR columns



 Comments   
Comment by Rostislav Palivoda [ 2019 Dec 18 ]

For versions older that Oracle Database 12c Release 2 (12.2) we could reduce field length to 2000.





[ZBXNEXT-5297] Action with condition like "Trigger1 and Trigger2" Created: 2019 Jun 28  Updated: 2019 Jun 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: actions, conditions, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

At the current moment it is impossible to execute an operation based on two triggers with AND condition, as only one trigger can be processed by action. Action with condition like "Trigger1 and Trigger2" will never be executed.


This feature request is a request to change this limitation in a way, so that multiple triggers could be processed by an action and the according action could be executed.

 

Issue was discussed earlier in ZBX-9660, and as a solution it was decided to add a sanity check on the frontend side to forbid storing of incorrect expressions (as per ZBX-9888). But maybe it is possible to review this issue and a find a better solution, which will not limit, but expand the possibilities of action by widening conditions and unloading the complexity of triggers.






[ZBXNEXT-5909] Aggregate checks by host Created: 2020 Apr 23  Updated: 2020 May 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Stanislav Yaroshevskiy Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: items
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Add the ability to aggregate checks on multiple items to the same host using the PCRE regular expression

Example:

It is necessary to get the amount of free space on host data storage

Items:

  • vmware.hv.datastore.size [\{$ URL}, \{HOST.HOST}, _ds1_r10_6hdd_, free]
  • vmware.hv.datastore.size [\{$ URL}, \{HOST.HOST}, _ds2_r0_1ssd_, free]
  • vmware.hv.datastore.size [\{$ URL}, \{HOST.HOST}, _ds3_r10_6hdd_, free]
  • vmware.hv.datastore.size [\{$ URL}, \{HOST.HOST}, _ds4_r10_4hdd_, free]

or

  • vmware.vm.vfs.fs.size [\{$ URL}, \{HOST.HOST}, _C:_, free]
  • vmware.vm.vfs.fs.size [\{$ URL}, \{HOST.HOST}, _D:_, free]

or

  • vfs.fs.size [ C:, used]
  • vfs.fs.size [ D:, used]

Problem:

  1. When using grpsum, you cannot use sampling only by Host.
  2. The key element can change the name

Possible Solution :

Extend functionality to
groupfunc ["host group or THIS", "item key or regular expression", itemfunc, timeperiod]

The resulting item will look like this:

grpsum [THIS, "vmware \ .hv \ .datastore \ .size \ [\{\ $ URL}, \{HOST \ .HOST}, (. *), free ]",last]
grpsum [THIS, "vmware \ .vm \ .vfs \ .fs \ .size \ [\{ $ URL}, \{HOST \ .HOST}, (. *), free ]", last]
grpsum [THIS, "vfs \ .fs \ .size \ [(. *), used \]", last]



 Comments   
Comment by Stanislav Yaroshevskiy [ 2020 May 14 ]

there is a solution?





[ZBXNEXT-5652] Zabbix User "All Group Read Only" Created: 2019 Dec 16  Updated: 2020 May 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dario Messina Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: groups, user
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File user_group.png    

 Description   

Hi,

is possible have in "Permissions" tab of "Create User" an "User Type" with all groups in read-only mode?

I create continuasly "Host Group" and is a problems insert it into in a User Group definition.

 

Regards,

Dario



 Comments   
Comment by Alexei Vladishev [ 2020 Jan 31 ]

In other words you want to have some simple way of creating users having read-only permissions to all host groups, correct?

Comment by Dario Messina [ 2020 Feb 06 ]

Hi Alexei,

yes, is correct, I want read-only permissions to all host groups so if a host group is added I don't have to make any changes to the permissions.

Regards,

Dario

 

Comment by Alexei Vladishev [ 2020 Feb 06 ]

Perhaps we should support a default host group so that if a host is created it will be automatically linked to the group. In this case we could control what permissions are set for the default host group and thus all new hosts.

Comment by Dario Messina [ 2020 Feb 24 ]

Hi,

the important thing is that you can use all host groups in the search filter for host groups.

 

Regards,

Dario

Comment by Gabriele Armao [ 2020 May 21 ]

could this be a duplicate of the historical ZBXNEXT-369?





[ZBXNEXT-5478] Screen: Auto Add Graphs For Each Hosts That Uses A Template Created: 2019 Oct 01  Updated: 2019 Oct 12

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Abhishek Dasgupta Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screen Shot 2019-10-01 at 2.56.09 AM.png    

 Description   

We have a template with an item and associated trigger and graph.

Currently to see the graph for each host that uses that template in a screen, we need to manually add the graph for each host.

Considering our ecosystem is in AWS with numerous dynamic hosts, it's really painful to keep updating this screen manually each time the host set changes.

 

We would like to see an option to add a graph from template. Then the screen will find out which all host uses that template and show its corresponding graph. Something similar to how graph prototype works for a single host.

 

Following is an example of manually created screen -

 



 Comments   
Comment by dimir [ 2019 Oct 02 ]

Closing as duplicate of ZBXNEXT-927

Comment by Abhishek Dasgupta [ 2019 Oct 02 ]

How is this a duplicate? That one talks about same host, this one spans across multiple hosts and has nothing to do with LLD. This request is purely to add a feature to create screen with graph from template. And then screen automatically figure out which all hosts using that graph and render them.

Comment by dimir [ 2019 Oct 03 ]

Oh, sorry. Misunderstood the description.

Somewhat similar issue ZBXNEXT-927 - asks for grouping graphs of items created from LLD. 

Comment by Abhishek Dasgupta [ 2019 Oct 12 ]

Any plan so far to get this implemented anytime soon? We are migrating to latest version (4.4) and creating all these screens is very tedious without this proposed solution.





[ZBXNEXT-5469] [Trigger acknowledge] Ability for zabbix_agentd to set trigger to acknowledge Created: 2019 Sep 25  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 4.2.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dario Sindicic Assignee: Michael Veksler
Resolution: Unresolved Votes: 0
Labels: acknowledgement, automation, trigger, zabbix_agentd
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be great if a user on some machine could set the trigger to the acknowledge if the trigger was from that machine. That would be cool, because it wouldn't require any chnages in our structure, or aditional rules in firewall. If that user is testing some services, and he is starting and stoping it, he probably doesn't want that others get email notification. So if we would add remote command wall which would print message to all user which are logged on. The next step in trigger action would be email, with 60 seconds delay of remote command. In that case the user would be able to say ok, I know what I am doing, and he would set acknowledge. I think that would be a really really great and wonderfull feature. 



 Comments   
Comment by Dario Sindicic [ 2019 Oct 07 ]

update





[ZBXNEXT-5423] Host management is recommended to support multi-IP or multi-host name search Created: 2019 Sep 12  Updated: 2019 Sep 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: wei Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Sub-Tasks:
Key
Summary
Type
Status
Assignee
ZBXNEXT-5439 Hosts management is recommended to su... Specification change (Sub-task) Closed  

 Description   

Hosts management is recommended to support multi-IP or multi-host name search






[ZBXNEXT-5383] Use trigger naming variable in MAP Created: 2019 Aug 27  Updated: 2019 Aug 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.2.4, 4.2.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: GASCA Sylvain Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: macros, maps, templates, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

MAP WEB INTERFACE


Attachments: PNG File image-2019-08-27-09-57-07-697.png     PNG File image-2019-08-27-09-57-43-205.png     PNG File image-2019-08-27-10-05-15-358.png     PNG File image-2019-08-27-10-06-41-308.png     PNG File image-2019-08-27-10-08-44-492.png     PNG File image-2019-08-27-10-18-58-350.png    

 Description   

Could be interesting to use the naming variable used to create trigger and items from the template.

in my context :

i have done a picture of a switch and i created each status icons for it :

So if we could use Variables from the template to dynamicly name label or Urls we could do something like this :

in template {#IFNAME} and {#IFALIAS} for example int the interface 12 of my switch result as  as Ten-GigabitEthernet1/0/12  and P4530G3NEW-NODE03 vmnic1

So if we could  put thos variable/macros in the URLs name part of the map object :

The result in the map would be :

The feature would be useful when you have switchs with detailed description

Like RJ45 wall outlet wit int the office :

in my case i have in the port description (ifAlias) :

interface GigabitEthernet2/0/21
 description Office A202 - 15
interface GigabitEthernet2/0/22
 description Office A202 - 16

So you will see quiclky with the map where is plugged each port of the switch.

and of course you can use this for any other context depending the description.






[ZBXNEXT-5299] Decoding HTML for macros/variables in web scenarios Created: 2019 Jul 03  Updated: 2019 Jul 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 4.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tracy Briscoe Assignee: Andris Zeila
Resolution: Unresolved Votes: 3
Labels: Macros, web-scenario
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In web scenarios it is possible to extract data returned from a webpage in to a variable which is used in a later step.

What is not possible is to html decode the webpage data, to be able to post this back later.

 

For example using the following HTTP response:

 

<html><head><title>Working...</title></head>
<body>
<form method="POST" name="hiddenform" action="https://opac.stpeters.school.nz:443/">
<input type="hidden" name="wctx" value="rm=0&amp;id=passive&amp;ru=%2f" /><noscript><p>Script is disabled. Click Submit to continue.</p><input type="submit" value="Submit" /></noscript>
</form>
<script language="javascript">window.setTimeout('document.forms[0].submit()', 0);</script>
</body></html>

 

 

It is possible to extract out the form action and the value of the wctx input:

{action}=regex:<form .action="([^"])"

{wctx}=regex:name="wa"[\s]value="([^"]*)"

 

The problem is when in a following step I try to post back wctx, the POST data appears as:

 wctx=rm%3D0%26amp%3Bid%3Dpassive%26amp%3Bru%3D%252f%253fsr%253dsso%2526sr%253dsso

which is invalid.

 

Currently there are the macro functions {{macro}.urlencode()} and {{macro}.urldecode()} which will URL encode and decode (https://www.zabbix.com/documentation/4.2/manual/web_monitoring) a string.

There are also the macro functions  {{macro}.regsub(<pattern>,<output>)} and {{macro}.iregsub(<pattern>,<output>)} which do regular expression substitutions, however these are not supported against web scenario variables (https://www.zabbix.com/documentation/4.2/manual/config/macros/macro_functions).

 

Hence this request is for two new macro functions: {{macro}.htmlencode()} and {{macro}.htmldecode()}.  These functions would HTML escape special characters in macros and remove the escaping respectably. A list of characters to be escaped can be found at http://www.htmlhelp.com/reference/html40/entities/special.html

 

The following forum post also discusses the exact issue I’m having and the reason for requesting these functions: https://www.zabbix.com/forum/zabbix-help/51074-html-entities-in-web-scenario

 

A related but not identical feature request is: ZBXNEXT-4452 Edit macro variables values extracted from web page in successive POST request using function "replace(<what>,<to_what>)"



 Comments   
Comment by nick [ 2019 Jul 16 ]

+1 for this. I have a need to htmldecode a variable and url encode it as a post.

As a workaround I made a simple php file hosted on the zabbix server that will take the post of the entity encoded and spit back out the decoded using
html_entity_decode





[ZBXNEXT-5284] Триггер для формы (shapes) на карте Created: 2019 Jun 25  Updated: 2019 Jul 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Rustam Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: font, maps, shapes, trigger
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Temp_01.png     PNG File Temp_02.png    
Issue Links:
Duplicate
duplicates ZBXNEXT-5317 Change shape appearance on trigger st... Open

 Description   

Возможно ли в следующих версиях zabbix в картах, для форм (shape) добавить триггер?Хочется допустим что бы при срабатывании триггера, текст шрифта менялся в размере и в цвете.

Пример на скриншоте немного подредактирован.






[ZBXNEXT-5264] new preprocessing type - "Discard with heartbeat", ignoring value changes Created: 2019 Jun 08  Updated: 2022 May 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 4.2.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: newpreprocessing, preprocessing
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-6941 Introduce rate-limiting for trapper/S... Open

 Description   

Purpose is to use single Master item for really polling data, which can be used for LLD and for polling data for discovered items.

For example on a video https://www.youtube.com/watch?v=XcztWztGjZA the expert uses a single Master item with update interval 5 seconds for both: perform LLD and as a Master item for discovered items.

The small update interval in 5 seconds (or for example 60 seconds) is fine for discovered items, but it's bad for LLD rule, as it's too often.

Of course it's possible to create one more Master really polling data item, to separate polling and discovering intervals. But that's not an elegant way .

 

What if single Master item could have small update interval, but based on it, we could create a dependent item with preprocessing step "Discard with heartbeat" and a value with, say, 1 hour?
And then use this dependent less-frequently-updated item as another Master for LLD rule?

It looks to me like a quite smart approach.
We just need the new "Discard with heartbeat" step.

I think it's easy to implement - copy an existing function for "Discard unchanged with heartbeat" and simplify it a bit.

 



 Comments   
Comment by Oleksii Zagorskyi [ 2019 Dec 10 ]

Looking to new modular templates, for example in "Template Module Linux block devices by Zabbix agent" we see 2 processioning steps on a LLD rule "Block devices discovery" (dependent type):
1. JSONPath "$.lld"
2. "Discard unchanged with heartbeat" in 1h

So, while master is polled each 1 minute, LLD engine actually is not stressed by unneeded work too often.
In results it's the same what I wanted to reach by current ZBXNEXT.

But, to achieve this, we would need to trim out possible "runtime" data in received JSON of master item. And in current case it's luckily easy to do it by simple preprocessing step JSONPath.

But in my original case I would need to write some JavaScript preprocessing step, which would not be so easy and it would make additional load by frequent execution of JavaScript step.

So, this ZBXNEXT is still makes sense and is valid .

Comment by Sergey Simonenko (Inactive) [ 2021 Jul 08 ]

It would be also very nice to have this as a 'rate-limiting'.

I. e., to allow the user to define both the value count threshold and the units of time.

Comment by Dimitri Bellini [ 2022 May 27 ]

Hi DevTeam,
the "relative new" Discard preproc feature is very good but in most of the case create a "misunderstand" or "problem".
The BIG problem from my point of view is related to:

  • User perception: The graphs have dots without clearly understand that this item have a "discard option activeted"
  • Technical issue: The item will not fire the "Trigger process" until a change will happen during the collection. This is the most critical point from my point of view.

I would suggest to still preserve the "discard" preproc feature but please implement a more "smart" concept similar to "deduplication" concept.
What I mean is to still not save the values if there is no changes but Zabbix Server must still know the latest "value" and when we collect the latest value in RAM/Cache and using this Volatile information is able to evaluate the Trigger and maybe fill the Graphs.
Thanks so much





[ZBXNEXT-336] ability to customise inventory fields Created: 2010 Apr 29  Updated: 2024 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 204
Labels: Zabbix7.2, inventory
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-03-28-16-33-50-288.png    
Issue Links:
Causes
Duplicate
is duplicated by ZBXNEXT-2154 Location for devices and mapping for ... Closed
is duplicated by ZBXNEXT-2737 Inventory fields populated by discove... Open

 Description   

it would be great to customise available profile fields - current hardcoded list is very inflexible.

if implemented, it should be considered how to tie that into permission system (maybe some users shouldn't see all data) and possible custom lists per some grouping (hostgroup ? templates ?)



 Comments   
Comment by richlv [ 2010 Apr 29 ]

depends on this : ZBXNEXT-337

Comment by Admin [ 2012 May 25 ]

This is something I'd be very interested in. It's good to see the improvements in 2.0 - with the automatic inventory. But half the things we've collected from the agents. e.g CPU spec, RAM spec, HD spec, graphics card, BIOS version, motherboard spec etc have no use! The only one I've currently got in use is OS.

It would also be good to be able to customise the inventory overview screen (rather than the specific host), to only view certain types of information.

Comment by Doug Irvine [ 2012 Sep 12 ]

This is something we would use.

We are using VB scripts to get inventory information back from windows systems, but I'm having problems inserting the received data into the correct title. For example we can pull back information about memory DIMMs but don't have a relevant name to assign it to (at present I use Type)

Being able to configure the overview screen would be great too as differing teams have different requirements for looking at data.

Another good idea would be to be able to use the .csv output feature in this screen so you can provide reports.

Zabbix V2 is great, I really appreciate the new features.

Regards,

Doug

Comment by Marc [ 2013 Mar 05 ]

I think that would also greatly simplify connections to CMDBs like i-doit or iTop .

Comment by Karsten Tröß [ 2014 Feb 14 ]

This is the feature what we need too.
For us, the names of the fields for inventory are not useful.

Our server are (nearly all) virtual. We don't need an location, contact, single software fields or so.
What we need are fields for CPU, RAM, IPs,...

A good topic is if is possible to delete unnecessary fields.

An important thing: we use ubuntu server mit zabbix from repo -> the changes must be available after an update!
Thanks.

Regards
Karsten

Comment by Alain Ganuchaud [ 2014 Sep 04 ]

As a workaround, we use translation for Host Inventory fields customization ... off course, limitation is obvious, you don't see same fields names depending on the choosen langage.

Comment by daniel.lin [ 2014 Nov 25 ]

+1 for this, you know, ability to customize is the key to make automation for the service management more fancy!

Comment by Micha Slezak [ 2016 May 30 ]

Very usefull feature and as I said in othe feature request. Good idea is to od as crowdfunding page for each feature request and contribute on this feature as we need.

I found nice page http://www.zabbix.com/development_services.php where on the bottom of this page is possibility to Contribute on specific feature. I think that it can be way how to promote some feature requests and to do something like crowdfunding on specific feature. Zabbix dev setup price and we can contribute on this feature I think it can be good way how to pay for each feature and to to pay whole development by one customer.

Comment by Shriharsh Thanvi [ 2017 Jul 14 ]

+1. This is a very old request and can turn out to be most useful feature like LLD.
Hope to see it soon !

Comment by Micha Slezak [ 2017 Aug 01 ]

I agree. Very useful feature still missing in Zabbix.

Comment by Marc [ 2017 Aug 01 ]

It is good practice to express wanting a feature by voting instead of commenting
However, if this does still not feel expressive enough, there's still the option of (co-)sponsoring development.

Comment by Henrique Goncalves [ 2018 Mar 02 ]

Outstanding suggestion.
Today we achieve this by manually editing php files, but it creates problems when we need to update zabbix's version.
We just started to use Zabbix Server and Zabbix Web inside containers, and without the ability to customize Inventory fields by GUI and store that configuration in MySQL, in every version change we need to customize it again.

Comment by Vinicius Henrique Silva Bastos [ 2018 Dec 13 ]

Any news about this?

Comment by Gutsycat [ 2020 Feb 26 ]

Yes, hardcoded fields does not fit our need at all.

Comment by dimir [ 2020 Feb 26 ]

Meanwhile, for those who haven't seen it, here's another request for this feature

https://www.youtube.com/watch?v=BcLyy6xoZjM

Comment by Nathan Liefting [ 2021 Oct 29 ]

Just wanted to add my 2 cents here. Love the inventory in Zabbix, literally always set it up. But if you've ever worked with a switching stack of 7 switches and you want to add all of their Serial Numbers then what?

Well, you can use the Software application fields maybe? Because there is only two Serial Number fields. Shouldn't be too much of an overhaul to add a feature for anyone that wants more than 2 serial numbers or any other possible input field.

 

Time to allow us the ability to choose our own fields and field names!

Comment by Frederick Loucks [ 2022 May 27 ]

A feature 12 years in the making here...
We love you Zabbix...please don't leave us out in the cold! We use Zabbix for AV Device monitoring...AV devices have odd static data (inventory fields) that we need to capture and that doesn't make sense to be in items/time series, yet we're stuck keeping it there and there alone. Pleeeease give us custom inventory defined at the Template level? While you're at it, maybe let us dynamically set some fields and manually set others...not all or nothing. A checkbox next to the field would do!! I'm speaking at the premiere AV industry conference on monitoring in AV and will be demo'ing Zabbix for this use case, and I'm excited to continue having great reasons to choose Zabbix

Comment by Nathan Liefting [ 2023 Mar 28 ]

👀 Looks like it's on the roadmap again 

Comment by gofree [ 2023 Oct 11 ]

guess it's been moved to 7.x release - see page 40

Comment by Midas Wollinger [ 2023 Dec 12 ]

On the  Roadmap the feature is planned for 7.0 and "in design" and on the Keynote for 7.x.
What is the planned release for this feature?





[ZBXNEXT-307] Will be nice to have possibility to scale Screens filter to Trends retention period. Created: 2010 Apr 19  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: screens
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Will be nice to have possibility to scale Screens filter to Trends retention period.
Screens should adapt the timescale to the longest trends value for all items in the Screen.






[ZBXNEXT-337] comments for more entities Created: 2010 Apr 29  Updated: 2022 Apr 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 27
Labels: hostgroups, items, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

currently it is only possible to add comments to triggers.
it would be also useful to add comments to other entities :

items (for example, cautioning against too short intervals, explaining needed permissions on agent side etc);
templates (explaining it's usage and impact);
hostgroups (adding general group contact info etc).

ideally, this would be coupled with host inventory, so that these entities might gain multiple fields instead of a single 'comment' field.

in that case, ability to customise profile fields would be mandatory - ZBXNEXT-336



 Comments   
Comment by Anthony [ 2010 Sep 20 ]

Really, REALLY need a comment (note) field.

Comment by Matthias Baur [ 2013 Oct 17 ]

We also would really appreciate if this could be build-in. Especially for items!

Comment by tagwolf [ 2014 Jul 30 ]

Is this still planned? It's a prerequisite for adding custom inventory items and kinda a big feature!

How can I help? I'm good with relational DB's and php.

We already edited our custom fields to store different information. But we need an ability to add comments / relational data so that inventory fields, etc, can be administered via the dashboard.

Comment by richlv [ 2014 Jul 30 ]

item description is already available; template, host and proxy descriptions are coming in 2.4

from that list, hostgroups seems to be the only one missing

Comment by Marc [ 2014 Jul 30 ]

Wouldn't that perfectly fit into 2.4 too

Comment by richlv [ 2014 Jul 30 ]

...to make it come out in 2018

Comment by Marc [ 2014 Jul 30 ]

Common, we're talking about a comment box without macro support/resolving in first place. Macro support might then be a candidate for sponsoring

Comment by Alexey Korepov [ 2016 Jul 18 ]

Also will be good to see comments (description) for Map Icons!

Comment by richlv [ 2016 Oct 22 ]

ZBXNEXT-3511 asks for action comment/description

Comment by Jan Ostrochovsky [ 2018 Jul 03 ]

voting for this, especially for hostgroups - to describe what hostgroup is for what purpose, to differentiate it from other hostgroups...

Comment by James Cook [ 2022 Apr 20 ]

ZBXNEXT-2770 asks for descriptions on individual periods within a maintenance period.





[ZBXNEXT-345] Need to improve the possibility to use custom CSS also for the login page (index.php) when Guest use is disabled Created: 2010 May 06  Updated: 2016 Oct 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: css, login
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Need to improve the possibility to use custom CSS also for the login page (index.php) when Guest use is disabled.
This doesn't work when Guest user is disabled in the Zabbix frontend.
Need to impove it.



 Comments   
Comment by richlv [ 2016 Oct 17 ]

ZBXNEXT-3502 asks for an easier way to modify css





[ZBXNEXT-283] Add ability to mass update "Event Generation" on multiple triggers Created: 2010 Mar 30  Updated: 2016 Dec 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Paul S Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 2
Labels: massupdate, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2477 Trigger massupdate multiple PROBLEM e... Closed

 Comments   
Comment by richlv [ 2016 Dec 02 ]

ZBXNEXT-3584 asks for trigger comment/description massupdate





[ZBXNEXT-314] Will be nice to have "Last 20 Issues" as a component that can be added to a screen. Created: 2010 Apr 21  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: dashboard, screens, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Will be nice to have "Last 20 Issues" as a component that can be added to a screen.






[ZBXNEXT-352] Generic screens associated to Template:graph Created: 2010 May 11  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Maxence Dunnewind Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: screens, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Zabbix is able to have generic graph by associating a graph to a template.
It would be really interesting to be able to generate a "generic" screen by defining the template:test, ans say, for exemple (2 cols per row, n -rows), so that the screen generated will contains all the graphs generated for all hosts using this template.

Ex :
I define a template "Template_custom", I define an item "cpu load" and a graph "cpu load graph" associated to the template "Template_custom".
When I link an host "foo" with the Template_custom, a graph "cpu load graph" is generated for host "foo".
When I link an host "bar" with the Template_custom, a graph "cpu load graph" is generated for host "bar".

I would create a screen, say "displays all 'cpu load graph' of hosts linked to 'Template_custom'", and that's all.

My idea behind this is to be able to have a fully automated process (discovery -> action -> link to template(s) -> generate graphs -> display graphs in a screen, so that I always have a screen "cluster server CPU load" with 1 graph per server.



 Comments   
Comment by richlv [ 2011 Mar 04 ]

trunk has ability to define screens in a template, and then all hosts linked to that template get that screen.
does that fulfill this feature request ?

Comment by Jens Berthold [ 2012 Feb 20 ]

As far as I understood he wants a template screen that shows a specific graph (e.g. "cpu load") for each host of a template.
So the only definition/element in the screen is something like:
"displays all 'cpu load' graphs of hosts linked to 'Template_custom'".

The effect would be that if more and more hosts are linked to the template, the screen would fill with the 'cpu load' graph of each of the hosts.

Comment by Maxence Dunnewind [ 2012 Feb 20 ]

You're right Jens, the idea is not to create screen in a template, but to create a "templated" screen which automatically fills with all the graphs with name "xxx" (with some filtering on hostgroup for exemple)

Comment by Jens Berthold [ 2012 Feb 20 ]

I see, it doesn't make sense to connect this kind of screen to a template, as there is only one "instance".
So it has to be a special screen type instead.





[ZBXNEXT-359] updating appliance Created: 2010 May 14  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Tom Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: appliance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be great to be able to update the vmware appliance when new fixes and patches are released.



 Comments   
Comment by richlv [ 2011 Nov 10 ]

this might be somewhat possible no in 1.8 series with zypper up, and i've performed it a few times successfully (although zabbix repo is unsigned and upgrading is officially untested and totally unsupported )





[ZBXNEXT-271] In graphs, make 'stacked' type for individual parameters, and not for the whole graph Created: 2010 Mar 11  Updated: 2018 Aug 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: sn Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 24
Labels: graphs, stackedgraphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 1.8.1


Attachments: PNG File wish_stacked_graph_enh.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-1303 Stacked and normal items mixed in one... Closed
is duplicated by ZBXNEXT-1524 Combine stacked and normal items in g... Closed
is duplicated by ZBXNEXT-962 "overlaying" of several graphs on sin... Closed
is duplicated by ZBXNEXT-964 combining stacked graph with simple one Closed
Sub-task
depends on ZBXNEXT-4588 New Graph Widget Closed

 Description   

Make 'stacked' type for individual parameters, and not for the whole graph.
i.e. possibility to make a graph like one in an attached image.
Desperately need this feature
It should be relatively easy to implement without serious DB/GUI redesign.



 Comments   
Comment by Volker Fröhlich [ 2012 Oct 02 ]

Related to ZBXNEXT-964

Comment by Fabian van der Hoeven [ 2013 Jun 03 ]

Is there any progress on this "new feature"? It would be very usefull. I'm also looking for something like this.

Comment by Sander Cornelissen [ 2013 Aug 21 ]

The status is RTD (Ready to discuss?). Is this about priority?

Comment by richlv [ 2013 Aug 21 ]

this is not on the roadmap at this time. if it would be considered, there would be a need to discuss how it could be implemented

Comment by Denis Volkov [ 2014 Aug 26 ]

Too bad it is not in the roadmap. There could be many use cases for this. For example, router statistics on one graph - uplink traffic (normal item) and stacked downlink traffic for multiple downlink interfaces

Comment by Igor Ivanov [ 2015 Mar 31 ]

Any news?
I'd be very useful to have this new type of graph.

I had to make external script, that get resourceids of graph, then get last() of them, sum them anf return total value.





[ZBXNEXT-259] Optional feature: IGNORE NODATA PERIOD in GRAPH Created: 2010 Feb 27  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Adail Horst Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 4
Labels: graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any system



 Description   

I already talk with many Zabbix Users in Brazil and all guys like to have a optionaly new feature:

  • Add checkbox in "item for the graph" to select "ignore nodata period".

This option will prevent "hole" in graph when have problems in monitoring. Note: is a OPTIONAL and NOT DEFAULT feature, so not will affect any user like holes in your Graphs to detect monitoring problems.

In case of HOLE the graph need to use the last data value to create the graph.

Example:
Moment | Value
1/1/2010 10:00 - 200
1/1/2010 11:00 - 250
1/1/2010 12:00 - 230
1/1/2010 13:00 - [nodata]
1/1/2010 14:00 - [nodata]
1/1/2010 15:00 - 260
1/1/2010 16:00 - 230
1/1/2010 17:00 - 220

Normally we have a HOLE between 1/1/2010 13:00 and 1/1/2010 14:00. With this new feature enabled zabbix will make:
Moment | Value
1/1/2010 10:00 - 200
1/1/2010 11:00 - 250
1/1/2010 12:00 - 230
1/1/2010 13:00 - iif([nodata],[lastvalidvalue],[value])
1/1/2010 14:00 - iif([nodata],[lastvalidvalue],[value])
1/1/2010 15:00 - 260
1/1/2010 16:00 - 230
1/1/2010 17:00 - 220

With this soluction we will no have a hole.

Motivation:

Currently in my enviroment we have one dashboard for each application deployed to users and this dashboard is available for END USERS.

We have some graphs with informations from 3... 4 machines IN CLUSTER... so, currently, if one of this machines is down the Graph apear with HOLE and we need to explain to a LOT OF USERS "this not impact the enviroment... we have 4 machines to answer... bla bla bla" ... This is only ONE of examples...

My Director use some graphs to show to MINISTER OF EDUCATION of Brasil to show disponibility of important systems and a graph with HOLES is not acceptable for him.

Please, another monitoring tools already make this (like cacti) its important for me and for another users.






[ZBXNEXT-289] improved trigger function/expression chooser Created: 2010 Apr 01  Updated: 2018 Jun 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 2
Labels: expressions, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-14413 "create trigger" GUI and Zabbix trigg... Closed

 Description   

current expression chooser is very limited - dropdown descriptions are cryptic, each function has many entries (<, >, =, #) - it should be improved.

as a minimum, action condition-like chooser for comparison should be introduced, thus reducing choice count 3-4 times.

preferably, functions get separated in categories, each also has function name itself listed and has an expandable description with examples.



 Comments   
Comment by Aigars Kadikis [ 2018 May 31 ]

+1 vote. "functions get separated in categories" is a must. For example: by pressing [Add] button in the expression field and after selecting an item, there should be a list of radio buttons placed horizontally: avg, change, count, diff, fuzzytime, iregexp, nodata, ..

After choosing the radio button, the dropdown list appears as it is in current 3.4 release.

It would be nice to have radio button list which will always calculate what type of functions is supported by the item chosen.

Regards,

Comment by Harri [ 2018 Jun 02 ]

I really like the reference manual listing all the trigger functions, but if you have to use the GUI to create a new trigger, then it is pretty difficult to find the right entry in the "Function" drop down menu, matching the documentation in the reference manual.

Example: Which entry in the Function list to I have to select to get the "count" trigger function? And what does "T" mean?

It would help a lot if the GUI and the reference manual could use the same terminology. A common line is missing.





[ZBXNEXT-242] Support user macros in graph names Created: 2010 Feb 18  Updated: 2023 Nov 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 47
Labels: graphs, macros, patch, usermacros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

tested on Oracle, maybe for other DBs need correct SQL query.


Attachments: File CMacrosResolver_zabbix3.diff     File CMacrosResolver_zabbix4.diff     File graph-name-macros.diff     File graph-name-macros_fixed.diff     File graph_macros.diff     File macros_graphs.diff    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-893 User macros in graph titles Closed
is duplicated by ZBXNEXT-2767 expand user macros in graph names Open
is duplicated by ZBX-4486 Expanding user macros on graphs Closed
is duplicated by ZBX-8973 Macros do not work Closed
is duplicated by ZBX-17597 You can support me "User macros" for... Closed

 Comments   
Comment by Alexey Pustovalov [ 2010 Feb 24 ]

added support for templated macros

Comment by richlv [ 2010 Feb 24 ]

similar to ZBXNEXT-1

Comment by Alexey Pustovalov [ 2010 Feb 24 ]

now thise patch now executes queries. using API

Comment by richlv [ 2010 Apr 29 ]

similar issues :
ZBX-1538
ZBX-2168
ZBX-2397

ZBXNEXT-205
ZBXNEXT-278

Comment by hamid sfandiari [ 2010 Jul 08 ]

in zabbix 1.8.3 the following differ line is not exist which differ file pointed to them:

– charts.php >> $db_data = reset($db_data);
– charts.php>> $db_graphs = CGraph::get($options);
order_result($db_graphs, 'name');
foreach($db_graphs as $num => $db_graph){

Comment by Jeroen Simonetti [ 2011 Feb 11 ]

New patch for 1.8.4. based on previously attached patch.

Only applying host-level macro's (seems to loop forever if template macros are also checked). Using CGraph API.

Comment by richlv [ 2011 Dec 26 ]

another patch provided in ZBX-4486

Comment by Ian babrou [ 2011 Dec 27 ]

Is there any chance to get it fixed somehow? 3 patches and no progress.

I tried to use common conveniences from zabbix php frontend in my patch, so maybe it looks more organic?

Comment by richlv [ 2011 Dec 27 ]

given how overdue 2.0 is, this one most likely won't be tucked onto it. it will be re-evaluated later

Comment by Vance Turner [ 2012 Jan 05 ]

This is hurting the perception of the product in many areas, and should not be put off.

Comment by Hasitha Lalinda [ 2012 Jul 09 ]

I've created a new patch for version 2. (Attached graph-name-macros_fixed.diff)
This resolves macros in graph names on;

  • Monitoring graphs page.
  • Configuration of graphs page.
  • Favorite graphs section in dashboard.

This patch has been tested with version 2.0.1.

PS: A bug was found in previous diff file graph-name-macros.diff. Fixed version attached: "graph-name-macros_fixed.diff".

Comment by Benjamin Goodrich [ 2013 Feb 15 ]

Is this still currently being planned for inclusion in a future release?

Comment by Eugene [ 2014 Jan 09 ]

User macros are very important for the universalization of the templates. For example, I used the basic template for a variety of devices (routers and switches) through user macros, but the names of the graphs have the same value - port 1, port 2, ... instead Fastethernet or Gigabitethernet depending on the device - this is inconvenient.

Comment by Tomasz Kłoczko [ 2015 Jan 28 ]

I'm looking for updated patch which enables use macros in graphs.
Anyone can share such patch for zabbix 2.2.8?

Comment by Alexander [ 2016 Oct 05 ]

Have a nice day!
What about this features?
This is good idea, very needed for effective use of monitoring nodes with user items names.

Comment by Alexander [ 2016 Oct 06 ]

Hi all!
For example, in zabbix v3 macros support contexts, and this very usable for many sub-items in snmp tree (with Discovery).

In my case Discovery rule configured with:
SNMP OID -> discovery[

{#OID}

,x.x.x]
Items name: {$SLA_NAME.{#SNMPINDEX}}

On the host macros redefined:
{$SLA_NAME:1} -> Tunnel name 1
{$SLA_NAME:2} -> Tunnel name 2

Macros on the host {$SLA_NAME:1} work for Items, Triggers, but not for Graphs names.

Comment by Victor Vislobokov [ 2019 Jan 22 ]

I added support user's macros for Graph names. See patches for zabbix3 and zabbix4.

Unfortunately, I'm not PHP programmer, only sysadmin with a little skill with PHP programming. May be, I mistaken somethere, but it works for my Zabbix installation.





[ZBXNEXT-394] Working Hours Bar report Created: 2010 Jun 02  Updated: 2018 May 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: hamid sfandiari Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: barreports, dashboard, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

BSD, 1000+ host



 Description   

dear all
we are carrier level class user o zabbix,. we use customized working hours Bar report by executing database query .
this process is to hard to develop and must grant access for executer of query,

parameters for that query are> itemid(i.e. average number of a link bandwidth),start day(YYMMDD),end day(YYMMDD) ,working hours( 8-16)
returned values> average bandwidth of working hours from start day to endday

this graph is very usefull for capacity planning of our company



 Comments   
Comment by richlv [ 2010 Jun 07 ]

could you please clarify the functional requirement ?
is it for limiting bar graph report to show/consider only data between specific hours ?

Comment by hamid sfandiari [ 2010 Jun 07 ]

we use this mysql query :

SELECT itemid, value_avg, from_unixtime(clock, "%Y-%m-%d")as Date, from_unixtime(clock, "%T")as Time
FROM zabbix.trends_uint
where itemid=22178 and
from_unixtime(clock, "%Y-%m-%d")>'2010-06-05' and
from_unixtime(clock, "%Y-%m-%d")<'2010-06-11' and
from_unixtime(clock, "%T")> '07:00:00' and
from_unixtime(clock, "%T")< '19:00:00';

this is different from bar report of zabbix, because this report gets the average trend value between working hours(i.e . 7:00 am till 7:00pm) from start date to end date so caused to every 7:00 to 19:00 values between 2010-06-05/00:00 till 2010-06-11/23:59
. but the zabbix bar report get the values from trends between start date-start hour till end date-end hour => every value between 2010-06-05/7:00 till 2010-06-11/19:00

exactly for limiting the bar graph report maybe called "working hours bar report"

Comment by Matt [ 2018 May 18 ]

I voted for this but also wanted to thank white_wire for his query.  I modified it to also exclude weekends.  Works great.  This should definitely be a feature built into zabbix.

 

SELECT FORMAT(avg(value_avg), 0) as bps FROM (
    SELECT itemid, value_avg, from_unixtime(clock, "%Y-%m-%d")as Date, from_unixtime(clock, "%T")as Time
    FROM zabbix.trends_uint
    where itemid=33338 and
    from_unixtime(clock, "%Y-%m-%d")>'2018-05-01' and
    from_unixtime(clock, "%Y-%m-%d")<'2018-05-17' and
    from_unixtime(clock, "%T")> '08:00:00' and
    from_unixtime(clock, "%T")< '17:00:00'
) as tmp WHERE DAYOFWEEK(Date) <> 1 AND DAYOFWEEK(Date) <> 7




[ZBXNEXT-245] Provide Left and Right Axis Fixed Values for Graphs Created: 2010 Feb 20  Updated: 2022 Jan 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Patrick Hooper Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 46
Labels: flexibility, graphs, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Graphs


Attachments: PNG File screenshot-1.png     Text File zabbix-frontend-axis-mysql-update.txt     File zabbix-frontend-axis.patch    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-569 Y axis MIN and MAX unique value for l... Closed
is duplicated by ZBXNEXT-1494 Dual scale graphs Closed
is duplicated by ZBXNEXT-1996 Allow Setting Y axis MIN / MAX on eac... Closed
Sub-task
part of ZBXNEXT-4588 New Graph Widget Closed

 Description   

Currently when you create a graph you have the ability to fix the Y min and Y max on a standard graph.

There are circumstances where I would like to display multiple item values from related data where the range of these data are very different, for example, receive level on a wireless link (range -30 to -90) and the transmit power on the same link (range +10 to +30).

If I use a the scale on a single axis the data would be very compressed and not very readable.

Using the above ranges of the two datasets, I would like to be able to set a fixed data range for the left axis and a fixed data range for the right access.

For example.
Left Axis - (min = -90, max = -30) - showing receive level
Right Axis - (min = +10, max = +30) - showing transmit power.

Having these two different scales for the left and right axis on the graph would make the data much more readable.



 Comments   
Comment by Nenad Opsenica [ 2011 Sep 19 ]

This would be very useful for one more purpose - grouping packet loss and RTT on the same graph.

Comment by Chris Kistner [ 2012 May 24 ]

I started to code this based on the 1.8.11 code base.

I have attached my php frondend code (zabbix-frontend-axis.patch), as well as an MySQL update (zabbix-frontend-axis-mysql-update.txt) to alter the graphs table so that my code can work.

Please just take note that I haven't touched any of the C code, which would mean that the Zabbix API calls won't be able to alter the right axis values yet.

I do hope that I've correctly modified the frontend code. I have applied it to our production Zabbix system and everything (creating graphs, modifying graphs, viewing graphs and exporting hosts) seemed OK.
Please let me know if I made mistakes or if I should provide C code fixes too.

Comment by richlv [ 2012 May 25 ]

what about importing ?
does import and export both correctly handle new values ?

as for c code, api is fully in php, but on the server side this might be needed in the network discovery/active agent auto-registration code - otherwise these features would not work properly.

of course, you don't have to do the c part, unless you are interested in those features

Comment by Chris Kistner [ 2012 May 27 ]

richlv:
I just exported and imported a host and the graph limits was successfully imported, so it seems like the importing is using the export class too.

I haven't tried importing/exporting between patched & unpatched versions though, but since it is XML, I suppose they'll just ignore the new values and use default values.

Comment by Marcus Oliveira [ 2012 Oct 31 ]

Hi guys.

Is it going to be deployed to any version of Zabbix ? 2.0.4 maybe ?

Marcus

Comment by Volker Fröhlich [ 2012 Oct 31 ]

That needs a database schema change and can therefore only go in 2.2 or a later major release. Also notice the tag "NMR" above, refering to that.

Comment by Marcus Oliveira [ 2012 Oct 31 ]

Thanks,

Hoping for 2.2, at least.

If I implement the proposed scripts, would it break anything (as far as you know, of cource) ?

I don't know what NMR means...

Thanks a lot.

Marcus

Comment by richlv [ 2012 Oct 31 ]

"need major release" or something like that

as for this feature, it's not planned currently (there's enough of other, financed features coming, though - some of them listed at https://www.zabbix.org/wiki/Docs/roadmap#Functional_roadmap )

Comment by Marcus Oliveira [ 2012 Oct 31 ]

Thanks a lot for the info.

Marcus

Comment by Chris Kistner [ 2012 Oct 31 ]

Marcus:
My change for adding the 2nd axis' configuration in Zabbix 1.8 was rather simple, but it took a couple of hours to implement it. I only appended columns to the existing database scheme. I only modified the web frontend code & schema with my patch.

You can probably look at my code when you want to do something similar to 2.0.4

Unfortunately I won't be making a patch for 2.0.4 soon, because the change over for my company from 1.8 to 2.0 would be too much effort since I've modified our 1.8 web frontend quite a bit!

Comment by Marcus Oliveira [ 2012 Nov 01 ]

Thanks a lot Chris.

Marcus

Comment by Marcus Oliveira [ 2012 Nov 01 ]

If I may, still in this subject... Maybe someone already told you that. Maybe a I have to create a new ticket.

If you guys are really going to make this option available. In the graph itself, I think it would be essential to the scales inherit the data/line's colors. (Or, at least, it should have a label showing whose data is that).

Marcus

Comment by richlv [ 2012 Nov 01 ]

that's an unrelated issue - ZBXNEXT-932

Comment by Raymond Kuiper [ 2013 Dec 06 ]

Just ran into the need for this as well.
I need to plot a state (integer ranging from 0 to 6) and a time measurement ranging from 0 ms to 5 seconds) on the same graph.
I'd really like to have a fixed scale for the state info, while the time measurement scale should be calculated.

Comment by Janne Korkkula [ 2014 Oct 20 ]

-''- ... Graphing item values on the left and utilization in percentage on the right - need to auto-scale the other and fix the percentage scale to 0-100.

Comment by Constantin Oshmyan [ 2015 Oct 16 ]

Just the same problem.

Example:

We monitor a disk space for some system, threshold in trigger is set as a percentage.
I'd like to have a graph for a disk space usage: in gigabytes and in percents, as well as a trigger threshold.
In theory, it is possible to use a single graph with two Y-axis (for gigabytes and for percents). However, really it is impossible due to different scales for these axis, so that datas are not matching.
It is possible to have 2 different graphs (see picture). However, the first graph has no percentage and threshold line, but the second one has no real numbers in gigabytes.
Just now it is impossible to set the scale for each Y-axe separately, this setting affects both axis simultaneously. But they have too different scale (otherwise there is no sense to use two Y-axis).

Comment by Daniel Bossert [ 2017 May 05 ]

Hello
Is there any timeline when this improvement will be done; it is a great feature!

Kind regards
Daniel

Comment by Wouter Schoot [ 2018 Mar 27 ]

I need the same, fixed on right Y axis, calculated on the left Y axis

Comment by Thomas Lobker [ 2019 May 05 ]

Another +1 here

This is absolutely necessary to combine anything dynamic (like bytes of free disk space) with a percentage. If you have bytes on the left and percentage on the right, then you would want a calcaluted scale on the bytes and a fixed 0-100 range on the percentage.

Comment by Alexei Vladishev [ 2019 May 08 ]

New dashboard graphs already provide this functionality. It will be extended to all graphs as soon as we move fully to vector graphics, most likely in 4.4.

Comment by Yannick Hein [ 2020 Oct 08 ]

Zabbix 5.0 user here - am I missing something or has this still not been implemented?

I would also highly benefit from this feature! I'm monitoring a temperature sensor in our server room and I have temperature on the right, humidity on the left and if I set fixed values to 0-100 then you can barely tell the temperature.

I'd need 18-28 for temp and 20-60 for humidity...

Comment by Alexei Vladishev [ 2020 Oct 08 ]

not_working_here, it has been implemented for dashboard graphs. We are still working on merging functionality of older graphs with new graph engine.

Comment by Yannick Hein [ 2020 Oct 08 ]

Yes, I saw that, the dashboard graphs are great but I'd like to build a screen with those graphs. And since you wrote "It will be extended to all graphs as soon as we move fully to vector graphics, most likely in 4.4." I wanted to ask whether I had simply missed an option since I'm already using 5.





[ZBXNEXT-222] Firefox plug-in for viewing zabbix events Created: 2010 Feb 03  Updated: 2012 Oct 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2, 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Murilo Moreira de Oliveira Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 24
Labels: chrome, firefox
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 5.4 - Zabbix 1.8.1



 Description   

It would be very welcome to have a firefox plug-in for monitoring zabbix events. As an example, there is such a plug-in for nagios named Nagios Checker that has a great look and very good functionalities. The idea is keep in mind the most recent events from zabbix while using the browser for navigation, even if not logged in zabbix frontend.



 Comments   
Comment by Murilo Moreira de Oliveira [ 2010 Feb 03 ]

Just to complement, there is a promising plug-in created by Alberto González Rodríguez (https://forxa.mancomun.org/projects/zabbixbar/) that has some good features implemented, but very much work still have to be done in order to improve its stability and functionality. I thing that would be a good alternative if SIA Zabbix could formally support this plug-in.

Comment by Pedro G [ 2011 Nov 19 ]

Another complement, it would be nice to have such extension for Chrome also.

Comment by Markus kramer [ 2012 Oct 16 ]

we just submitted a chrome extension doing exactly this
check: https://chrome.google.com/webstore/detail/zabbix-notifier/ikeijbmpddnkaeejokgifioccbcijjfo?hl=de

at the moment we are working on a port for firefox, so just hold on a few days





[ZBXNEXT-256] mass create triggers Created: 2010 Feb 25  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: svenw Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 1
Labels: masscreate, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

i quiet often have dozends or even hundreds of items which i want to monitor for a change. doing this manually is practically impossible, so right now i am exporting, using perl etc, importing.

would be nice to go to the items page, check the items to work with and then click "mass create trigger"






[ZBXNEXT-258] support relative URLs for subsequent steps for "Web monitoring" Created: 2010 Feb 26  Updated: 2014 Feb 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Will be nice to have possibility to specify relative URLs for subsequent steps for "Web monitoring" functionality in the Zabbix.
If zabbix would remember the last effective URL it could process URLs like "action.php" (relative to the directory of the last request) or "/user/add.php" (relative to the current server root).



 Comments   
Comment by Igor Danoshaites (Inactive) [ 2010 Feb 26 ]

This info could be obtained at each step by CURLINFO_EFFECTIVE_URL: http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html.

Comment by Marcio Sardinha [ 2014 Feb 03 ]

Boa tarde!

Estou com problema na parte do monitoramento que o Zabbix não esta acusando no DASHBOARD.
Alguém poderia me ajudar sobre esse problema?





[ZBXNEXT-247] Built in feature to export reports and statistics Created: 2010 Feb 22  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Emil Odepark Assignee: Unassigned
Resolution: Unresolved Votes: 119
Labels: Zabbix7.2, csv, export, reports
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Preferably the export feature will be available to save reports in pdf/excel/cvs/open office -file formats directly from the GUI to the local drive. But I could settle with an automated (customizable) report that saves the data in any of the above file formats on the Zabbix server.


Issue Links:
Causes
Duplicate
is duplicated by ZBXNEXT-2330 Support of templates and macro expand... Open
is duplicated by ZBXNEXT-730 Export screens as PDF or ODF reports Closed
is duplicated by ZBXNEXT-2316 SLA Reporting and export Closed
is duplicated by ZBXNEXT-3203 Export screen, graph, group\host sta... Closed
is duplicated by ZBXNEXT-3903 monthly automation graph based on zab... Closed
is duplicated by ZBXNEXT-1748 Need Summarized report Closed
is duplicated by ZBXNEXT-3208 Schedule report function for zabbix Closed
is duplicated by ZBXNEXT-6478 Scheduled PDF report generation servi... Closed
is duplicated by ZBX-11361 How to export Graph to PDF/CSV Closed
Sprint: Sprint 14, Sprint 15, Sprint 16, Sprint 17, Sprint 18, Sprint 19, Sprint 20

 Description   

I need some way of exporting the reports that zabbix generates to an external document, preferable *.xls or *.pdf or *.csv or open office file formats. Either make this possible from the GUI or via some simple command from inside Zabbix (I'm a Windows tech ). A beginning is to make the already available reports exportable, but please se my other feature request for extended reports also.



 Comments   
Comment by Nagaraju Bandaru [ 2010 Jul 21 ]

I also need same sort of feature. It would be great if SLA reports can be exported into *.pdf, *.xls or other formats. Providng a feature to send email of SLA reports automatically in regular inverval would be very useful. Please consider these features in coming versions of zabbix.

Comment by Luciano Alves [ 2010 Oct 24 ]

Hi,

And about this patch:

http://www.zabbix.com/forum/showthread.php?t=18901&

Some news about it ?

[]s,
Luciano

Comment by Oleksii Zagorskyi [ 2012 Mar 02 ]

ZBXNEXT-248 is related,
ZBXNEXT-730 is very similar.

Comment by Emil Odepark [ 2014 Apr 02 ]

Four years on and still nothing...

Comment by Adriano Carvalho [ 2014 Jun 13 ]

Voted to, watching for news. Zabbix has the best opensource monitoring solution I've worked with, but reporting is not its best, we need better reports native on Zabbix or a third party tool for that.

Comment by Ben Copeland [ 2015 Feb 03 ]

4 years and nothing is a worrying sight.

Would like to say +1 for this feature. Zabbix really needs to invest some time in SLA reporting.

Comment by Marc [ 2015 Aug 12 ]

I'm tempted to say my comment on ZBXNEXT-248 is valid here too.

Comment by Jean-Baptiste VEDEL [ 2016 May 02 ]

Five years on and still nothing...

Comment by Mario Fridrichovsky [ 2018 Apr 10 ]

Should I say 8 years and still nothing???
The reporting is the only feature which holds my company back to switch from Nagios to Zabbix.

Comment by Emily Riley [ 2018 Oct 11 ]

Any update on this export functionality? 

Comment by Cesar Murilo da Silva Junior [ 2019 Oct 28 ]

Zabbix's development team could be aware of Mario's comment. See, his company just doesn't migrate to Zabbix because of the reports. This detail is important. We need to export reports and we have to look for third party software for that. Until when?

Comment by Hudson [ 2020 Jun 17 ]

If we could get an export option to extract availability reports that would be perfect.

Comment by Cory White [ 2020 Aug 06 ]

This is a must add - 10 years and waiting. It amazes me that competing products have this feature available?

Comment by Oleksii Zagorskyi [ 2021 Mar 09 ]

Watch on ZBXNEXT-6478

Comment by Alexei Vladishev [ 2021 Apr 26 ]

Scheduled PDF report generation has been implemented under ZBXNEXT-6478 and will be available in Zabbix 5.4.0 soon. We will work on increasing number of widgets to make this functionality more feature rich and flexible in future releases.

Comment by atpk [ 2023 Nov 30 ]

Hi Alexei, indeed adding support for other widgets is really needed, created ZBXNEXT-8855 for adding support for problems widget. Thanks.

Comment by Jef Schoors [ 2024 Jan 17 ]

With Zabbix having the capability's it has, it amazes me how limited the reporting options are. This is a major feature request from allot of our customers + managment. The dashboard reports are not sufficient. 

 

Being able to export the availability report and triggers top 100 would be a good beginning, or make this data available in the API.





[ZBXNEXT-833] %EnvironmentVariables% not processed on windows Created: 2010 Feb 02  Updated: 2014 May 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: svenw Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: patch, trivial, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File zabbix-1.8.5-include.patch    
Issue Links:
Duplicate

 Description   

zabbix agent does not process %EnviromentVariables% which need to be used for localisation, like installing the agent to %ProgramFiles%\zabbix and so having "Include="%ProgramFiles%\zabbix\conf.d"" in the conf, and also use this in the userparameters, to tell where the scripts are "Userparameter="%ProgramFiles%\zabbix\scripts" etc.

also the Include Parameter does not allow for Directories, but just for files, which makes the feature quiet useless - i have to edit the main config anyway to include some more checks, unlike linux, where i just drop another config...



 Comments   
Comment by Bashman [ 2010 Dec 10 ]

My Windows zabbix_agentd.conf will only include files like "Include=c:\zabbix\zabbix_agent.userparams.conf" for zabbix_agentd.exe version 1.8.2 and Windows Server 2003.

For Windows 2000, my zabbix_agentd.conf does not include neither files nor directories.

Comment by Bashman [ 2011 Jan 03 ]

Could be related with https://support.zabbix.com/browse/ZBX-3299

Comment by richlv [ 2011 Jul 07 ]

including directories on windows would be handled in ZBX-3928

Comment by Zilvinas Krapavickas [ 2011 Jul 07 ]

Hello

This patch is to allow to Include all files in a directory in the Windows Agent configuration file. So far this feature was available only on UNIX agents.





[ZBXNEXT-218] more customizability for simple graphs Created: 2010 Feb 01  Updated: 2013 Sep 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dashboard, graphs, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

currently simple graphs have many things hardcoded. it would be nice to configure some aspects of them :

1. showing of triggers;
2. showing of working time;
3. y axis side;
4. ...maybe more

these would be configurable globally, and also when adding a simple graph to a screen



 Comments   
Comment by richlv [ 2013 Sep 26 ]

y axis side can be configured with a param in defines.inc.php, although setting this per graph when viewing it would be better





[ZBXNEXT-216] Task scheduling Created: 2010 Jan 28  Updated: 2020 Sep 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: jobmanagement
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Initial discussion http://www.zabbix.com/forum/showthread.php?t=15597


Issue Links:
Duplicate
is duplicated by ZBXNEXT-42 Schedule scripts for automation Closed

 Description   

It would be nice to have task scheduling functionality built-in Zabbix. Please feel to contribute by discussing requirements and ideas here.



 Comments   
Comment by richlv [ 2010 Jan 28 ]

what would be the difference from using items currently to launch various utilities/scripts ? what functionality would it provide ?

Comment by Alexei Vladishev [ 2010 Jan 28 ]

I think it should provide much grainer support to scheduling options (say, run a task once per month on first Monday) along with much better task-oriented reporting. I am not an expert, but I believe that possibility to create a list of tasks with a flexible execution path is also important (make backup, send email if failed, continue with gzipping if not).

Let's not speculate on this topic and wait for someone more experienced to comment on it!

Comment by Jason Ede [ 2010 Feb 01 ]

You'll need a framework to communicate with the tasks and bring back relevant info. A seperate debug log on the client end is probably a must to track down any issues.

If task credentials are to be supplied from the zabbix end, then they'll need to be sent in a secure format ? Personally I think it would be nice to be able to supply credentials as then only tasks that need to run priveleged run that way.

For the look and feel of how it works then something like, for example, the maintenance jobs in SQL server where can just drag and drop tasks and route things depending on whether successful or failed would be nice.

Comment by Marc [ 2013 Mar 10 ]

Wouldn't that be the task for a Job-Scheduler like this?
In my opinion Zabbix should stay focused on monitoring and capacity management.

Comment by richlv [ 2016 Dec 16 ]

there was also a presentation on rundeck job management tool at the zabbix conference 2016 - see the slides

Comment by Charlton Gan [ 2019 Sep 24 ]

Will this still be done? I really need this feature.

 

Comment by dimir [ 2020 Sep 15 ]

Didn't scheduling intervals take care of this?





[ZBXNEXT-223] Increase max length of processed text to ~16MB Created: 2010 Feb 04  Updated: 2019 Jul 23

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Allan Douglas Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: database, prometheus
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I'm creating some scripts that outputs more than 64KB, which is the current size limit of text checks (see ZBX-952). I would suggest to increase this limit to 16MB to match the database field capacity, at least in mysql, which is of type mediumtext (2**24-1 bytes, see http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html)



 Comments   
Comment by Evgeny [ 2019 Jul 18 ]

Actual for master items that collect prometheus metrics.

Comment by Vitaly Zhuravlev [ 2019 Jul 18 ]

Just as another example, kubernetes kube-state-metrics could easily be more than > 64KB

Comment by Alexei Vladishev [ 2019 Jul 19 ]

We are going to increase this limit in Zabbix 4.4, stay tuned!

Comment by Evgeny [ 2019 Jul 19 ]

Wow, so fast! Thank!

Comment by Alexei Vladishev [ 2019 Jul 19 ]

It seems I misunderstood this feature request. I thought it was about ability to process larger values. I am afraid we won't be able to increase size of the text fields in the DB in Zabbix 4.4. Perhaps later.

Sorry for the confusion.

Comment by Evgeny [ 2019 Jul 19 ]

I thought that limiting the database also affects the processing of dependent data elements. Now I checked on version 4.2 and saw that the data outside 64Kb is being processed normally.





[ZBXNEXT-212] Improve Zabbix log readability for errors. Created: 2010 Jan 27  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Dmitry Borovikov Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: logging
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Not dependent.


Issue Links:
Duplicate
duplicates ZBX-1735 Add "Error" to zabbix_server requesti... Closed

 Description   

The idea is to make Zabbix reported problems (errors) more noticable, by adding "ERROR" in all messages, which are errors by nature. Could do it globally for all such cases. This is necessary when an error is reported and Zabbix shutdowns. So the error message can be a lot higher then all the last ones concerning shutdown procedure.






[ZBXNEXT-165] discovery section should provide links for hosts Created: 2009 Dec 09  Updated: 2014 Dec 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: networkdiscovery, trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

monitoring -> discovery section should provide same popup menu for hosts in "Monitored host" column as other locations in frontend (for example, monitoring -> triggers)



 Comments   
Comment by Marc [ 2014 Dec 08 ]

An indication (e.g. by separate coloring) whether a host is not in monitoring status, like it is done in other places too (combo-boxes, search results, ...), might be valuable as well.





[ZBXNEXT-167] Zabbix support a secure connection to jabber (port 5223) Created: 2009 Dec 09  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: For@ll Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: alerts, jabber, security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Can configure zabbix to used a secure connection jabber port ( 5223) to send notication.






[ZBXNEXT-209] provide a macro for the name of the step that failed (in web monitoring). and other step properties too Created: 2010 Jan 21  Updated: 2023 Aug 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Christoph Haas Assignee: Unassigned
Resolution: Unresolved Votes: 34
Labels: newmacro, patch, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 1.8, Debian


Attachments: File 0001-ZBXNEXT-209-Automatically-map-Failed-step-of-scenari.patch     PNG File web-step-map.png     File zabbix-2.0.6-map-web-steps.patch     File zabbix-2.0.6-map-web-steps2.patch    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-2300 New macro that resolves to httptestid... Closed
is duplicated by ZBXNEXT-5536 Getting more information about failed... Closed

 Description   

I could not find a way to add triggers on a failed step. There is "Download speed", "Response time" and "Response code". But I had expected something like web.test.failed[Scenario,Step].

A macro for telling which step failed would also be appreciated like {STEP.NAME} or something.

Currently I find it hard to use the "Web Monitoring" feature for availability checks. Alerting our web team with "Scenario foo failed" won't help them figure out which step went wrong and in which manner (like wrong response code or which HTML body was returned instead of the expected output).



 Comments   
Comment by Hannu Ylitalo [ 2010 Jan 21 ]

+1

Already kinda commented this issue on ZBXNEXT-101.

Comment by richlv [ 2010 Jan 21 ]

item web.test.fail[Scenario] will be 0 if scenario completed successfully and step number if any step failed.
you can, of course, include this in notifications as a macro.

i don't recall whether there's a macro for failed step name, so leaving this open for now

Comment by Presciliano Neto [ 2011 Jul 29 ]


A macro for telling which step failed would also be appreciated like {STEP.NAME} or something.

This would be really useful.

Comment by Pavel Sorokin [ 2011 Aug 24 ]

I really need such variable as {STEP.NAME}, This would be very usefull.

Comment by Girish KG [ 2011 Nov 15 ]

Can this be added?

Comment by Presciliano Neto [ 2011 Dec 09 ]

Ugly workaround: describe the steps in the trigger comment

Comment by Girish KG [ 2011 Dec 10 ]

Alternate Way:
=====================
1) Opening Page:
Create a Trigger as "example.com-Opening_Page"
Link the trigger with that step
2) Login Page:
Create a trigger as "example.com-Login"
Link the Trigger
3) Logout Page
Create a trigger as "example.com-Logout"
Link it
=====================

Macros for Action mail

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
====================================
{TRIGGER.NAME}: {TRIGGER.STATUS}
HTTP Response Code: {ITEM.LASTVALUE}
===========
{TRIGGER.COMMENT}
===========
{TRIGGER.URL}
===========
Date/Time of the event: {EVENT.DATE}:{EVENT.TIME}
-----------------
Age of the event: {EVENT.AGE}
----------------
Event ID triggered this action: {EVENT.ID}
----------------
History: {ESC.HISTORY}
====================================
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Comment by Dmitry Podshivalov [ 2013 Apr 23 ]

This feature would be really helpful

Comment by Volker Fröhlich [ 2013 Sep 11 ]

Instead of yet another macro, I'd suggest to treat it like an automatic value mapping.

I appended a very simple proof-of-concept patch that shows this behaviour for Latest data. Server code would have to be touched as well, to show it for ITEM.VALUE and ITEM.LASTVALUE.

Comment by Volker Fröhlich [ 2013 Sep 11 ]

Updated patch: The dashboard would complain about not having the type key, thus isset() first.

Comment by James S. [ 2013 Sep 25 ]

+1, trying to optimize the current setup for web mailers. This feature would be a definite necessity to help achieve said goals. No one wants to have an action for every web scenario (Or a convoluted action description that contains every web scenario).

Comment by Volker Fröhlich [ 2014 Aug 27 ]

Uploaded 2.2.5 version of this patch with a small improvement: 0 is mapped to "None (0)", when it previously was left "0".

Comment by Oleksii Zagorskyi [ 2016 Feb 24 ]

I'd add that we need not only step name, but at least step URL too.
Maybe other properties would be useful as well.
Let's keep all requested macros in single feature request, as I believe it would be reasonable to implement them all together.
Issue summary updated.

Comment by Oleksii Zagorskyi [ 2016 Mar 05 ]

ZBXNEXT-2300 asks for a new macro for "httptestid" property:

Would be nice to have a macro that resolves to the httptestid of the <1-9>th item in a trigger expression, when item corresponds to a web scenario.
This might allow to add hyperlinks pointing to respective web scenarios in trigger-based notifications and in trigger URLs.

Comment by Jonathan Vargas [ 2016 Apr 08 ]

I highly would appreciate this feature too. The step name and step trigger are the only values I find convenient.

Comment by Michal [ 2018 Jul 04 ]

It also may be useful to add macro for Info column, on list of Web Scenarios (where are also Number of steps, Interval, Attempts, Authentication, HTTP proxy, Application, Status --Info occurs only when there is error)

 

Comment by dimir [ 2023 Aug 09 ]

Let me try to summarize what is asked for here:

  • new macro {STEP.NAME}
  • new macro {STEP.URL}
  • new macro {SCENARIO.ID} (for generating direct links)

Is that correct?

Comment by Christoph Haas [ 2023 Aug 09 ]

@dimir Yes, that would help us. I'm thinking of {STEP.RESCODE} for the HTTP response code as well. But knowing the failed step will help a lot.

Thanks for considering such a feature.

Comment by Volker Fröhlich [ 2023 Aug 09 ]

That wouldn't help with "Latest data" though, would it? Don't know, it's been a while.

Comment by dimir [ 2023 Aug 09 ]

For the Latest data it already prints the number of the step that failed.

Comment by Vladislavs Sokurenko [ 2023 Aug 09 ]

Maybe it's best to have additional item with JSON that will contain all necessary information

Comment by dimir [ 2023 Aug 09 ]

Yes, after checking the code getting a web scenario ID (httptestid) isn't that hard but getting step name and URL would require getting the step number first from history, which isn't that trivial. So having a JSON with all the information about processed web scenario that is suggested by vso makes much more sense. We could then finally get rid of the "special" web scenario items.





[ZBXNEXT-1280] identical values in map element mass update should be preselected Created: 2009 Dec 10  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

when selecting several elements with identical values for some fields, these values should be preselected instead of the first value in the list.

for example, when several elements are selected, existing icon should be selected for fields where it matches for all selected elements.






[ZBXNEXT-400] Triggers dependencies visual declutter Created: 2009 Dec 07  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: João Figueiredo Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 1.6.7-


Attachments: PNG File zabbix depen.PNG    

 Description   

Currently, Zabbix dependencies are shown as follows, (taking 3 lines for each, 3*n lines overall)

Metric A : 93.050000%
Depends on:
Metric B : 99.340000%
______________________
Metric C : 99.980000%
Depends on:
Metric B : 99.340000 %

I sugest the following modification to save on visual clutter and make it easier to manage hosts with a big number of Trigger dependencies: (overall 1+n lines)

+ Metric B : 99.340000 % dependencies:
Metric A : 93.050000%
Metric C : 99.980000%
........................



 Comments   
Comment by richlv [ 2009 Dec 07 ]

could you please list exact places in frontend where this applies (maybe providing a screenshot as well), thanks

Comment by João Figueiredo [ 2010 Jun 07 ]

I apologize for the delay.

In attachment, one of the described situations,
It would become far more tidy if this would be displayed in a tree-like structure.

I can generate a screenshot with the suggested modification if my explanation was unclear.





[ZBXNEXT-111] mandatory parameters for api differ from gui Created: 2009 Oct 20  Updated: 2012 Oct 21

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: validation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

trunk rev 8107



 Description   

api mandatory values differ from gui - for example, gui does not allow creating user w/o surname and password, api does. supposedly these should match



 Comments   
Comment by Artem Suharev (Inactive) [ 2009 Oct 29 ]

This is a global problem of checking passed data, and is part of future API development what is not covered by a single issue... =) for now it's stays on clients side responsibility.

Comment by richlv [ 2009 Nov 02 ]

valid as a feature request (so that it doesn't get lost)





[ZBXNEXT-137] User Read Only Feature Created: 2009 Nov 20  Updated: 2020 Jul 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Jermaine Howard Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: permissions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All



 Description   

Would like for the ability to assign a user just read only access to Triggers. We have developers, contractors,
and some employees who we may not want to edit any trigger but be able to read and see what triggers
are in place for a server without impacting the ones currently in place.



 Comments   
Comment by richlv [ 2009 Nov 20 ]

if you assign read only access to user of 'zabbix user' class, doesn't that do what you want ?

Comment by Jermaine Howard [ 2009 Nov 20 ]

I should of been a lil more specific. Sorry bout that. I was referring to the configuration-> triggers
screen. Granted the read only user while under monitoring could click on time for an event, and then time
again I believe to pull up the trigger information. It would cut down on time if I was able to give a user read
only access to the configuration->triggers menu so they could see all triggers we have set for any server or
template. I hope that helps a lil more, sorry for any confusion from my lack of specifics.

Thanks for the fast response.
Jay

Comment by Mateusz Kwiatkowski [ 2011 Oct 03 ]

I am looking for a very similar functionality. Is it possible to create a new User Type 'Zabbix Super User'. Users of this type could have read-only access to all hosts, without the need to assign to particular groups.

Comment by Cliff DeCarlo [ 2020 Jul 09 ]

This is quite the old feature request, but I too would like to see this feature.  We also have developers/project leads that would like to be able to see the definition of items/triggers but not modify them.  We currently have these users defined as Zabbix Admin with read-only access to hosts and they cannot see any of the item/trigger definitions.  They have access to the configuration screens but nothing shows for any hosts to which they have read-only permissions.





[ZBXNEXT-195] Proposal: Privilege separation for ZABBIX agent Created: 2010 Jan 06  Updated: 2018 Jan 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: J. Fischer Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: logmonitoring, patch, privilege, security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

UNIX-like operating systems


Attachments: File zabbix_agentd-1.8.2-mx.patch     File zabbix_agentd-privsep.patch    
Issue Links:
Causes
caused by ZBXNEXT-4677 Network errors on one host interface ... Closed
Duplicate

 Description   

The following is open for discussion. I would be glad to implement this and send patches
for ZABBIX 1.8 and/or trunk and/or head, because I need the functionality provided by
the implementation of this proposal and don't want to maintain this "out of tree". I also
think that this might be useful for all users of ZABBIX who are monitoring log files.

1. Purpose

ZABBIX agent usually runs as an unprivileged user, which is a good thing to do. Alas,
on UNIX systems, often log files are owned by a dedicated user (most likely, root) and
have strict file permissions on them to prevent other users from reading these files.
This makes it virtually impossible to practically monitor log files with ZABBIX without
a rather large configuration change on all monitored hosts (i.e. touch file ownerships
and permissions for all log files monitored).

Privilege separation for ZABBIX agent aims to provide a simple, effective and proven
mechanism to make log file monitoring within ZABBIX more usable.

2. How it works

Before ZABBIX agent drops it privileges to "zabbix" user, a special process will be
forked and steadily run in the background, much like other agent pollers do. This
process will not drop privileges and continue to run with super-user privileges.

This process will not communicate with the network or other processes than the ZABBIX
agent, and even this communication will be very restricted.

Basically, the privileged process works in the following way:

  • Receive a request from ZABBIX agent to open a given file, i.e. /var/log/messages
  • Verify that the file is in a white list (new configuration parameter necessary)
  • Open the file with O_RDONLY flag to get a file descriptor
  • Pass this file descriptor back to ZABBIX agent
  • Close file descriptor (will stay open in the unprivileged parent process)

It is then the responsibility of the unprivileged ZABBIX agent to work with and close this
file descriptor accordingly, so it will not leak. Reading and processing the data from the
log file will also be handled in the unprivileged process.

The code running as UID 0 is kept as minimal as possible and consists only of a very few
lines.

3. The interface

The communication between the unprivileged Agent and the privileged process will be
performed via a socketpair(2) of type AF_LOCAL.

The ZABBIX agent can use new API functions for file operations, e.g.:

int zbx_priv_open(int priv_fd, const char *path, int mode)
int zbx_priv_stat(int priv_fd, const char *path, struct stat *buf)
int zbx_priv_lstat(int priv_fd, const char *path, struct stat *buf)

The new functions try to mimic the behaviour of the original functions, returning error
codes and setting errno just like the originals. The design goal is to make it possible
to use the new functions as drop-in replacement - the only thing that needs to be taken
care of ist the new first argument, priv_fd, which specifies the file descriptor to use
for communicating with the privileged process.

The changes in existing agent code will be as unintrusive as possible.

4. Whitelist

For security purposes, there should be a new configuration parameter which defines the
file patterns allowed to be openened by the privileged process. This is to prevent a
malicious GUI user to have ZABBIX agent return lines from "secret" files, e.g. /etc/shadow
or private SSL keys.

This pattern could be defined, for example, with:

LogfileWhitelist = /var/log/*

The privileged process will then match the filename given with each request against this
whitelist, using shell globbing patterns (above example would match /var/log/messages and
/var/log/mysql/mysqld.log but not /var/spool/cron/...). Multiple patterns can be given,
delimeted by comma (",").

Maybe a blacklist (LogfileBlacklist) configuration option would be a complimentary option,
to disallow access to certain locations instead of using a white list, at the users
choice.
It is yet to be decided whether it is a good idea to use realpath(3) inside the privileged
code to sanitize the given paths. On one hand, we must prevent that a malicious user can
circumvent the white- or blacklist by using e.g. /var/log/../../etc/shadow as path or using
symbolic links (e.g. /tmp/foo -> /etc/shadow). realpath(3) could be a remedy, but it has
shown security flaws in the path in certain implementations.

We could:

  • Check whether the path is a symbolic link and deny access if it is
  • Check whether the path contains /.. somewhere and deny access if it is

This would be the most simplistic approach, maybe not as good as a check with realpath().

5. Extendibility

The privsep protocol can easily be extended to provide more privileged functions to the
ZABBIX agent in a sane and secure way.

For example, it could be used for data collection that requires root privileges (e.g. some
stuff in /proc etc).

6. Compatibility

The code has been tested on Linux and BSD (Open-, Net- and FreeBSD). It will not work on
non-UNIX-like OS (like Windows), and should work on most UNIX derivates that more or less
comply to the POSIX standard (providing socketpair(2), select(2) and sendmsg(2)).

Alas, I have no access to "big-iron" UNIX-derivates such as HP-UX, AIX or Solaris that
have a compiler environment so I cannot test it on those platforms.

7. Making it optional

7.1 At compile-time

A new option to configure should be introduced, namely --enable-privsep. When not specified,
the privilege separation code will not be compiled and the zbx_priv_*() functions will act
simply as wrappers around zbx_open() etc.

7.2 At run-time

Similar to OpenSSH's sshd, a new configuration item "UsePrivilegeSeperation" should be
introduced which takes a boolean argument to define whether the agent should make use of
the privsep feature (only available if compiled with --enable-privsep, of course).

8. Open issues

8.1 logrt[] items

It will not be possible to use this with items of type logrt[] due to the use of opendir(3).
I currently see no way to privsep opendir(), but one could emulate it using getdirentries(2).
This would imply a rather intrusive change to process_logrt() in logfiles.c of ZABBIX agent.

8.2 Testing

As written above, I only have limited access to more "exotic" platforms (from the OSS point
of view). As such, I can only test the code on Linux (RHEL/Centos, Ubuntu/Debian) and Open-
BSD (probably Free- and NetBSD as well).

Looking forward to any input and constructive criticism.



 Comments   
Comment by J. Fischer [ 2010 Jan 21 ]

I have worked out a prototype for the implementation of privilege separation in ZABBIX agent. The patch for it is attached.
NOTE: The current patch is against the 1.8 version of ZABBIX agent as can be downloaded from ZABBIX website.

To try it out:

  • apply the patch
  • run "reconfigure" (part of GNU autotools), since rebuild of a Makefile.in and configure.in is required
  • run ./configure --enable-agent --enable-privsep
  • build the sources using "make"
  • edit zabbix_agentd.conf and add a PrivWhitelist configuration (see below)
  • configure a log[] item for a file which the "zabbix"-user usually has no read permissions to
  • run the agent

The patch introduces three new options for zabbix_agentd.conf:

PrivEnable=(0|1) - Runtime configuration of privilege separation functionality (Default: 1)

PrivEnforce=(0|1) - Whether to enforce that any call to zbx_priv_open() will be performed via the privileged process. If set to 0, the agent will check whether the user "zabbix" has read permissions to a given file, and if it has, use default zbx_open() on that file. If set to 1, any call to zbx_priv_open() will be send through the privileged process and all whitelist constrainsts (see below) will apply. The default is 0.

PrivWhitelist=<list of patterns> - Patterns to paths that the privileged process is allowed to open. Multiple patterns can be given and are separated using comma. Pattern matching will NOT be performed recursively. That is, a pattern "/var/log/*" would allow access for "/var/log/messages" but not "/var/log/audit/audit.log". This is to prevent path escape through using "/var/log/../../etc/shadow" or similar. The default is no pattern, which disallows access to any file.

Open issues:

  • Only been tested on x86_64 Linux (RHEL 5.4, Ubuntu 9.10) yet
  • Logging in the privileged process is somewhat complicated. For now, the privileged process uses syslog as it cannot use zabbix_open_log() because of shared memory mutexes. The privileged process is forked right after configuration and before the agent daemonizes, opens log file and drops privileges. This could be changed, but as long as I maintain this patch out-of-tree, the changes would be far too intrusive
  • The current place for most of the functionality is "zbxnix" library. Maybe this should be moved over to the agentd's code as it only applies for the agent daemon, anyway (otoh could be used in server's as well as in inetd-style agent too).

Things to note:

  • The privileged process will exit upon communication problems with the rest of the agent (e.g. protocol error)
Comment by J. Fischer [ 2010 Apr 29 ]

Attached is an updated patch which will apply cleanly to 1.8.2 version of ZABBIX agent.

Also, support for HP-UX has been added. Might also compile on other commercial and/or older UNIX systems now.
Tested on RHEL 4 and 5, Ubuntu, HP-UX 11.23.

Comment by richlv [ 2010 May 26 ]

as noted in http://www.zabbix.com/forum/showthread.php?p=63528#post63528, supporting command execution with privsep would also be beneficial

Comment by richlv [ 2014 Dec 12 ]

ZBXNEXT-2638 is similar

Comment by Oleksii Zagorskyi [ 2015 Mar 07 ]

Something related (but to server) mentioned in ZBXNEXT-2735

Comment by Glebs Ivanovskis (Inactive) [ 2018 Jan 31 ]

Just wondering, what is the difference between this proposal (or similar ZBXNEXT-2638) and running two or more agents with different access privileges, firewall rules, etc. and with different configurations (e.g. user parameters, remote commands enabled/disabled, etc.)?

P.S. Speaking of

The code running as UID 0 is kept as minimal as possible and consists only of a very few
lines.

You can't imagine how little code is enough to do terrible security bugs.

Comment by Marc [ 2018 Jan 31 ]

glebs.ivanovskis, using multiple agents is actually no option due to ZBX-8623.





[ZBXNEXT-94] Adding the possibility to add availibilty reports to screens Created: 2009 Oct 01  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Christophe Prevotaux Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dashboard, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Not relevant here



 Description   

It would be nice to have the possibility to add an availability report to a screen so it can be presented to a user or a group of users only as soon as they login.

right now this choice is not given in the GUI on 1.6.6






[ZBXNEXT-93] Make change and abschange use a parameter (sec or count) ? Created: 2009 Oct 01  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Johan Fischer Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: triggerfunctions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Why isn't the evaluation trigger functions abschange and change use a paramter to specify the 2 values to use to diff the values like min(), max() and delta() ?

That would be very useful to do weekly diffs of a value ignoring the daily fluctuations of that value within the same day.
Or is there some problem related to the selection of the actual value if the number of seconds actually falls between 2 points ....






[ZBXNEXT-81] It will be good to implement support of sending random or other non-constant variables like macro (for example, timestamps) in the POST response for any step in the WEB scenario. Created: 2009 Sep 18  Updated: 2022 Jan 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-568 Web Scenario Variables Closed
is duplicated by ZBXNEXT-5164 We need a macro that returns unixtime... Open
is duplicated by ZBXNEXT-1579 dynamic post parameters in web checks... Closed

 Description   

It will be good to implement support of sending random or other non-constant variables like macro (for example, timestamps) in the POST response for any step in the WEB scenario.



 Comments   
Comment by Faustino Ramos García [ 2009 Sep 18 ]

the best will be to send items in the POST

Comment by Alexei Vladishev [ 2012 Oct 10 ]

Do you need it to avoid caching?

Comment by Marc [ 2016 Oct 28 ]

ZBXNEXT-3515 may help here too.





[ZBXNEXT-83] binaries should print out used configuration Created: 2009 Sep 22  Updated: 2021 May 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

zabbix binaries should have a flag that would print out configuration set they are using.
example usage :

  1. zabbix_server --current-config
    ZABBIX Server (daemon) v1.7 (revision 7934) (18 September 2008)
    Currently used configuration (non-default parameters denoted with asterisk):
      ListenPort     10051
    * SourceIP      10.1.1.18
      LogFile
    * LogFileSize   18
    


 Comments   
Comment by Alexei Vladishev [ 2012 Oct 10 ]

I do not think it's a good idea. Just wondering are there any other software products with similar functionality?

Comment by azurIt [ 2012 Oct 10 ]

for example Postfix (via postconf utility) and it's extremely usefull

Comment by richlv [ 2012 Oct 16 ]

i was just going to mention postfix, but i see it's already done
mysql has internal query to do that as well.

and i'll agree that it is an extremely valuable feature. with postfix alone i have probably saved many hours that way

Comment by richlv [ 2015 Apr 09 ]

just today it would have saved quite a lot of trouble
it is apparently quite common to make changes to the configuration file, but then forget or do a mistake with the restart of such a daemon.
in general, it is impossible to say what configuration a running daemon is using. looking at the configuration file does not guarantee anything.

it would be highly valuable as a periodic check, too (inside zabbix itself even as a script ) - if the current config file differs from the running daemon, issue a warning, as it probably should be restarted

Comment by dimir [ 2015 Apr 09 ]

Great idea.

Comment by Mickael Martin (Cyres) [ 2021 May 21 ]

any update ?





[ZBXNEXT-5] ids in audit log should be linked Created: 2009 Feb 25  Updated: 2015 Oct 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: audit
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

trunk, revision 6817



 Description   

currently, ids in audit log are just plaintext strings that help user little. instead, they should be linked, clickable.

log should check whether such an id exists and make it plaintext only if missing (ideally a tooltip would be presented to user when hovering over such an id saying something like "Target has been removed".






[ZBXNEXT-978] New configuration option: Update existing trigger instead of creating duplicates Created: 2008 Nov 19  Updated: 2014 Oct 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marek Lange Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-219 Will be nice to implement additional ... Closed
duplicates ZBXNEXT-220 Will be nice to have possibility to a... Closed

 Description   

I find this very annoying and time-consuming: http://www.zabbix.com/forum/showthread.php?t=10701&highlight=duplicate+triggers

Importing a huge template with a lot of hosts creates duplicate triggers. This happens when only the expression of the trigger was changed and the template is reimported. As I understand from the thread the default behaviour in 1.4 was to update the trigger expression in the existing trigger. In 1.6 this was changed and the old trigger is not affected, instead a new trigger with the same name is created. Either I have to delete all old triggers then or completely delete all template linkages and link all hosts to the new templates afterwards. This takes a lot of time...

Is it possible to create a switch/an option where this behaviour can be configured to the 1.4 behaviour?

Thanks.



 Comments   
Comment by richlv [ 2009 Oct 01 ]

might be dupe of ZBX-304

Comment by richlv [ 2011 Sep 23 ]

most likely there could be some option to control trigger uniqueness criteria. currently it is name+expression.
this probably would have to work in many locations - importing xml, linking template in the frontend, linking a template by server (from discovery actions etc)...

Comment by richlv [ 2014 Oct 11 ]

by now this is a standard zabbix behaviour, and unlikely to change. unless there's a really good reason, i'd suggest to close this issue





[ZBXNEXT-21] Add URL to Item Graph in Action Notification Created: 2008 Jan 14  Updated: 2021 Oct 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Johan Fischer Assignee: Unassigned
Resolution: Unresolved Votes: 14
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

I was sondering if we could add macro in the notification body (email body in my case) to get the URL of the graph (of last values) when a trigger is actioned. This would reduce the time to go inspect the values and evolution (open browser, load web page, login, go to monitoring, latest data, host, item...).

If there was the URL To the graph, I would just click on it and the browser would load nicely the useful stuff

(Note: I don't know what would happen if the login expired or I haven't logged yet, if after the login, I would be redirected to the welcome page or to the graph)....

Regards.
J.



 Comments   
Comment by João Figueiredo [ 2010 Nov 03 ]

This would greatly speedup the event analysis either receiving it by email in a PC or out of the office on a smartphone.

Comment by Alexey Korepov [ 2017 Feb 17 ]

Is there any improvements in fresh versions of Zabbix? Maybe I can get at least - url for item?

Comment by Alexey Korepov [ 2017 Feb 17 ]

Seems that

{EVENT.ID}

already works normally on Zabbix 3.2, so we can generate direct links to item history in action text, here is example:
Item graph: http://zabbix.example.com/history.php?action=showgraph&itemids[]=

{ITEM.ID1}
Item history: http://zabbix.example.com/history.php?action=showvalues&itemids[]={ITEM.ID1}

Graph direct image: <img src="http://zabbix.example.com/chart.php?itemids[]=

{ITEM.ID1}

" />

Comment by Nikolay Polyagoshko [ 2021 Oct 06 ]

Hey, there

Any updates on this?

It will be super useful if {ITEM.ID} could be used in Trigger URLs, for including hyperlink to item’s graph in notifications.

Probably adding support for {ITEM.ID} should not be very complex.

Right now Zabbix already have support for {ITEM.VALUE} and {ITEM.LASTVALUE} in Trigger URLs. 

And if zabbix have access to some item's value in the TriggerURL context, it should also know that value's ID, right?

Comment by Albert Akchurin [ 2021 Oct 13 ]

That would be really useful





[ZBXNEXT-1619] provide access to created entities Created: 2013 Feb 14  Updated: 2013 Feb 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

after we have created an entity (for example, host or template), most often we want to edit it. currently we see that it was created, but then it disappears. either the status message, or something else could provide a quick way to edit this entity. maybe a floating bar with same content as the navbar...






[ZBXNEXT-1490] Unable to use same SNMP trap item key with multiple interfaces Created: 2012 Oct 23  Updated: 2020 Jul 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 44
Labels: interface, items, snmptraps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate
is duplicated by ZBXNEXT-1630 CLONE - Wishlist: add a third optiona... Closed
is duplicated by ZBXNEXT-4664 Allow duplicate discovery keys Closed
is duplicated by ZBXNEXT-1757 Require key uniqueness per interface ... Closed
is duplicated by ZBXNEXT-4382 Multiple icmp* items for one host Closed
is duplicated by ZBX-5380 Can't add Item with jmx agent with th... Closed
is duplicated by ZBX-5952 Support for multiple JMX keys on the ... Closed
is duplicated by ZBX-9514 Templates with the same discovery rule. Closed
is duplicated by ZBX-16298 JMX, Solution for problem with same K... Closed

 Description   

Zabbix does not allow use an SNMP trap item on hosts with multiple interfaces.
Zabbix does not support multiple identical keys on a one host.

I suggest allow create SNMP trap item without link to a interface by default.



 Comments   
Comment by richlv [ 2013 May 23 ]

ZBXNEXT-1757 might be about the same original issue

Comment by Oleksii Zagorskyi [ 2014 Jan 17 ]

check also ZBX-7569

Comment by Sorin Sbarnea [ 2014 Apr 04 ]

Considering that I have 7 JMX instances that are running on a single host, this limitation is huge.

Comment by Sorin Sbarnea [ 2014 Apr 04 ]

The problem applies for an huge number of cases: monitoring multiple HTTP ports on the same machine, multiple JMX instances, ....

Comment by Phil Smith [ 2014 Jun 26 ]

This limitation kills the JMX use case for hadoop clusters, which typically have many jvms per node.

Comment by Phil Smith [ 2014 Jun 26 ]

While we're thinking about JMX on multiple interfaces, it is typical for one set of keys to be common to all JVMs (heap size, etc), while others are application-specific counters that exist only in some interfaces.

Hopefully a solution will include an answer for how to either select which interfaces to query, or a way to gracefully ignore when the keys are absent.

Finally, the killer feature for the hadoop use case would be the ability to define such an item within a template. I have dozens of mapreduce nodes that all run jvms..

Comment by Marc [ 2014 Jun 26 ]

phs, the assigning could be easily done with ZBXNEXT-735#comment-83047.
In case item key uniqueness criteria is additionally made up of host interface (resp. alias on template level), then one might possibly do something like this:

Templates
A common JVM template is linked into application specific templates:
Template 'Common JVM' is linked into template 'Java App Foo'
Template 'Common JVM' is linked into template 'Java App Bar'

Items in template 'Common JVM' have no host interface alias/hint/label set.
All items (incl. linked/templated) in template 'Java App Foo' have a host interface alias 'FooApp' set.
All items (incl. linked/templated) in template 'Java App Bar' have a host interface alias 'BarApp' set.

Host
A host jboss.example.com has two JVM host interfaces:
JMX host interface 1 has an interface alias/hint/label 'FooApp' set.
JMX host interface 2 has an interface alias/hint/label 'BarApp' set.

Since uniqueness criteria takes host interface or host interface alias into account, one may link both application specific templates into the same host.
Proper host interfaces for items are selected based on interface aliases/labels/hints.

Comment by richlv [ 2016 Apr 25 ]

ZBXNEXT-1049 is remotely similar

Comment by richlv [ 2017 Sep 30 ]

general item-interface linkage covered in ZBXNEXT-735 , this issue seems to be specifically about snmp traps - suggested to update the summary

Comment by Glebs Ivanovskis (Inactive) [ 2018 Feb 14 ]

ZBXNEXT-3872 may help a bit here.

Comment by Sistemes [ 2019 Jun 26 ]

Hi, I guess the problem is because the "KEY of the element" is a "primary key" in the zabbix database.
My question is ... Why is the "primary key" in the database a "KEY in an element", and not a simple and unique identifier? For example, an autoincremental.

I'm sorry if my question is stupid or something else.

Comment by Sergio [ 2020 Apr 20 ]

Hi everyone.

I think that's an excellent question...

I also need to monitor more than one IP per host...





[ZBXNEXT-1384] API: get hostsgroups that belongs to a usergroup Created: 2012 Aug 27  Updated: 2012 Oct 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Stanislav Kelberg Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 3
Labels: hostgroup, permissions, usergroups
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Need to have ability to retrieve the hostgroups that belong to a certain usergroup via API.

I couldn't find it in documentation. According to this thread http://www.zabbix.com/forum/showthread.php?t=21168, such functionality is not implemented yet. Since I haven't found a feature request raised for it, I've raised one on my own.



 Comments   
Comment by Fco. Javier Rial [ 2012 Aug 29 ]

Thanks for creating this feature request. I am the one who started the thread
http://www.zabbix.com/forum/showthread.php?t=21168

In the thread I implemented a patch to get this feature working.
Check the code in the thread.





[ZBXNEXT-1330] Nmap host specific subnet scanning and discovery Created: 2012 Jul 24  Updated: 2012 Nov 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.0.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Joris Lambrecht Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 1
Labels: networkdiscovery
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any operating system running nmap



 Description   

While performing discovery for a network there is found a blocking limitation. Scanning for a subnet is not efficient when scanning for a network-range such as IP.IP.IP-IP.IP ( 10.10.1-255.1 ), in this example it is used to scan for gateways supporting snmp, ssh, http, https and responding to icmp. If this matches there is a router or switch present and it should be monitored.

This can easily be done using nmap but the input type is not supported in zabbix which only permits IP.IP.IP.IP-IP not a variation on this. If using nmap from zabbix is permitted in such way this has not been documented.

I could not find a page that documented how to make a script for this with nmap. Especially since the input type validates against IP.IP.IP.IP-IP



 Comments   
Comment by Joris Lambrecht [ 2012 Jul 31 ]

If there is any code-related testing i can do on my side i'd very much appreciate any feedback to set my on my way to resolve this issue.

Comment by Alexei Vladishev [ 2012 Oct 13 ]

I think it should be implemented by allowing extensions for auto-discovery based on external scripts.





[ZBXNEXT-1240] check presence of some data (from data.sql) or some table(s) during setup.php on step 3 Created: 2012 May 29  Updated: 2018 Sep 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Installation (I)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 4
Labels: configwizard, database, installation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-5083 New install frontend error: mysql_fre... Closed
is duplicated by ZBX-5093 Warning about pg_free_result() right ... Closed
is duplicated by ZBX-6713 Ugly login screen after problems in DB Closed

 Description   

If an user will create zabbix DB without filling it by schema and will successfully perform the GUI setup, he will see a non friendly error text at the login page:
mysql_free_result() expects parameter 1 to be resource, boolean given [include/db.inc.php:561]

This error visible ONLY if a table "users" doesn't exist.
If the table "users" exists, we will see nice warning text: "Unable to select configuration." above the username input field.
And it still not very informative.

Would be great to check on step 3 is the DB created correctly and filled by data.
The check could be simple - presence of "users" table or more complex: at least one row in the "config" table.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 May 29 ]

Two issues linked as duplicates as a proof.

Comment by Oleksii Zagorskyi [ 2013 Jan 02 ]

Why this is happening with users.

A lot of PHP-based "frontends" suppose only one action performed manually by a user - DB creation and granting all required permission to the created DB.

Then on first attempt to open the frontend its php scripts create DB's tables and fill some data (if required).

This is not the case regarding to zabbix frontend, so we could be more friendly to such user mistakes and provide more precise errors during PHP frontend setup.

Yes, we have required steps to install zabbix described in documentation, but time to time we see that users do not read documentation

Comment by Oleksii Zagorskyi [ 2013 Mar 12 ]

ZBX-6376 is very related (they should be fixed together)

Comment by Oleksii Zagorskyi [ 2013 Nov 14 ]

Interesting note for 2.2.0 release:

If we have created database but schema is not filled then the "setup.php" on the 3rd step returns message:

The frontend does not match Zabbix database.

If we point config file "zabbix.conf.php" to that empty database and open "setup.php" then frontend returns message:

Configuration file error: The frontend does not match Zabbix database.

And finally index.php returns:

Database error: The frontend does not match Zabbix database.

Such cases could be more user friendly.
Otherwise we will have cases like this (in Russian) - https://www.zabbix.com/forum/showthread.php?t=43123

Comment by Oleg Ivanivskyi [ 2018 Sep 17 ]

It would be nice to check and automatically populate it if DB has no schema at all.





[ZBXNEXT-1221] Ability to copy/import/export prototype item/trigger/graphs Created: 2012 May 12  Updated: 2022 Dec 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.12, 6.2.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Attilla de Groot Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: discovery, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hi,

I'd like to create multiple discovery rules to monitor my router, because my iftable holds multiple types of interfaces and not for all interfaces values are available. E.g physical interface counters are not available on logical interfaces. To accomplish this I've create two separate discovery rules both with a specific regex to match only the applicable interfaces.

To do this I've created necessary items, triggers and graphs for one discovery rule and I need to have a subset of these for another discovery rule and currently the only way to do this is by hand.



 Comments   
Comment by richlv [ 2012 Aug 10 ]

by now xml import/export should handle this, so import/export should be covered. copying is still missing

Comment by Aigars Kadikis [ 2022 Dec 07 ]

Complexity of problem:

There is an API method 'discoveryrule.copy' which supports this task:
https://www.zabbix.com/documentation/6.0/en/manual/api/reference/discoveryrule

If the world asks, it should be not too hard to implement a GUI layer around that

Comment by Ivan Prokudin [ 2022 Dec 19 ]

I've made trivial script doing this https://github.com/iprok/zabbix-lld-copy . But of course I am still waiting for this in the Zabbix GUI.





[ZBXNEXT-1204] Trigger grouping in alerts Created: 2012 Apr 28  Updated: 2018 Jul 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Attilla de Groot Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 7
Labels: alerts, grouping, trigger
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hi,

If a host has multiple triggers configured that are related to each other there might be cases where you get alerts for all of these triggers, resulting in a large number of alerts. A practical example would be a router with 30+ cpu's. There might be an issue that causes cpu load on one of them and you want to be alerted about that event. However, another issue might cause high cpu load on all of the cpu's and you don't want to receive alerts on all 30. Thus dependencies are impossible in this situation.



 Comments   
Comment by Oleksii Zagorskyi [ 2016 Mar 15 ]

ZBXNEXT-1899 asks for a header support in email message.
If if would be configurable - supposedly it would be possible to use for example {HOST.HOST} macro to group alerts by host.

Comment by Vitaly Zhuravlev [ 2017 Aug 31 ]

3.4 network templates(ZBXNEXT-3725) are subject to this issue (multiple CPU routers, multiple temp sensors)

Comment by Oleksii Zagorskyi [ 2018 Jul 03 ]

ZBXNEXT-3849 is distantly related.

Comment by Marc [ 2018 Jul 03 ]

Isn't event correlation supposed to deal with such situations?





[ZBXNEXT-1198] per-proxy refresh for passive proxies Created: 2012 Apr 25  Updated: 2018 Mar 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: flexibility, passiveproxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

for active proxies, we can set config & data refresh per proxy in the proxy config file.

for passive proxies, we can only set this in the server config file for all proxies at once. this does not scale well for multiple passive proxies that should have different parameters.

there should be a way to configure both config & data sending/polling frequencies per passive proxy.

this will require extending db schema and frontend so that these parameters can be configured in administration -> dm



 Comments   
Comment by richlv [ 2018 Mar 23 ]

additional keywords : update





[ZBXNEXT-1125] compile and share zabbix agent for Solaris 11 Created: 2012 Feb 15  Updated: 2021 Feb 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 12
Labels: build, solaris
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-1972 support for solaris 11 sparc Closed
is duplicated by ZBXNEXT-5053 Agent request for Solaris 11 Closed
is duplicated by ZBXNEXT-4362 Zabbix-agents on Solaris 11 Sparc Closed
Sub-task

 Description   

I need compiled zabbix agent for Solaris 11
Would be nice to have it for sparc and intel platforms.

It should present here http://www.zabbix.com/download.php



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Feb 15 ]

Additional question: is it possible to compile zabbix agent for Open Indiana?

Comment by Oleksii Zagorskyi [ 2012 Feb 26 ]

Zabbix agent can be compiled under Open Indiana without any problems (you need just install gcc compiler).

SunOS openindiana 5.11 oi_151a2 i86pc i386 i86pc Solaris

  1. zabbix_agentd -V
    Zabbix Agent (daemon) v1.8.10 (revision 24303) (28 December 2011)
    Compilation time: Feb 26 2012 00:44:57
  1. zabbix_agentd -p
    agent.ping [u|1]
    agent.version [s|1.8.10]
    system.localtime [u|1330210124]
    system.run[echo test] [m|ZBX_NOTSUPPORTED]
    web.page.get[localhost,,80] [t|EOF]
    web.page.perf[localhost,,80] [d|0.000000]
    web.page.regexp[localhost,,80,OK] [s|EOF]
    vfs.file.exists[/etc/passwd] [u|1]
    vfs.file.time[/etc/passwd,modify] [u|1330192152]
    vfs.file.size[/etc/passwd] [u|1044]
    vfs.file.regexp[/etc/passwd,root] [s|root:x:0:0:Super-User:/root:/usr/bin/bash]
    vfs.file.regmatch[/etc/passwd,root] [u|1]
    vfs.file.cksum[/etc/passwd] [u|2234160828]
    vfs.file.md5sum[/etc/passwd] [s|db821a53f6c8e9a7f760320766fdff41]
    net.tcp.dns[,zabbix.com] [u|1]
    net.tcp.dns.query[,zabbix.com] [t|zabbix.com SOA ns1.nameresolve.com hostmaster.zabbix.com 2012022512 16384 2048 1048576 2560]
    net.tcp.port[,80] [u|0]
    system.hostname[] [t|openindiana]
    system.uname [t|SunOS openindiana 5.11 oi_151a2 i86pc i386 i86pc Solaris]
    system.users.num [u|2]
    log[logfile] [m|Accessible only as active check!]
    logrt[logfile] [m|Accessible only as active check!]
    eventlog[system] [m|Accessible only as active check!]
    kernel.maxproc [u|9706]
    vfs.fs.size[/,free] [u|10697522688]
    vfs.fs.inode[/,free] [u|20893599]
    vfs.dev.read[sd0,bytes] [u|4860797565]
    vfs.dev.write[sd0,bytes] [u|506519552]
    net.tcp.listen[80] [u|0]
    net.if.in[hme0,bytes] [m|ZBX_NOTSUPPORTED]
    net.if.out[hme0,bytes] [m|ZBX_NOTSUPPORTED]
    net.if.total[hme0,bytes] [m|ZBX_NOTSUPPORTED]
    net.if.collisions[hme0] [m|ZBX_NOTSUPPORTED]
    vm.memory.size[free] [u|36921344]
    proc.num[inetd,,] [u|1]
    proc.mem[inetd,,] [u|4710400]
    system.cpu.switches [u|1164792]
    system.cpu.intr [u|471357]
    system.cpu.util[all,idle] [m|Collector is not started!]
    system.cpu.load[all,avg1] [d|0.144531]
    system.cpu.num[online] [u|1]
    system.swap.size[all,free] [u|1047973888]
    system.swap.in[all] [u|0]
    system.swap.out[all,count] [u|0]
    system.uptime [u|1622]
    system.boottime [u|1330208503]
    net.tcp.service[ssh,127.0.0.1,22] [u|1]
    net.tcp.service.perf[ssh,127.0.0.1,22] [d|0.100118]

Binaries and packages for Solaris 11 should be compatible with Open Indiana.
Source: http://wiki.openindiana.org/oi/Frequently+Asked+Questions#FrequentlyAskedQuestions-IsOpenIndianaa“fork”%3F

I've checked and I confirm that zabbix_agentd binary for Solaris 11 is working on Open Indiana.

Comment by Daniel Bossert [ 2018 Jul 09 ]

Please compile binaries for zabbix agent/zabbix server for version 3.4.11 / 4.0 for Solaris 11 SPARC and x86 

 

However, zabbix server isn't as important as the agent

Comment by samuel harrison [ 2019 Feb 18 ]

Please could we have a agent for Solaris 11 with Open SSL encryption on the download page for server version 4 LTS

Thanks guys 





[ZBXNEXT-309] support global regexps in web monitoring 'required' field Created: 2010 Apr 20  Updated: 2017 Apr 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Arli Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: globalregexps, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I'm trying to check if there weren't any errors on some system control page, but can't figure it out.
Please improve documentation with some examples how to use regular expressions in web monitoring to check if some phrase is NOT found on the page.

http://zabbix.com/forum/showthread.php?t=15800



 Comments   
Comment by Arli [ 2010 Aug 25 ]

Are there any updates on that subject?

Comment by richlv [ 2014 Jan 14 ]

at this time global regexps unfortunately are not supported in this field (as per https://www.zabbix.com/documentation/2.2/manual/web_monitoring) - i'll modify this issue to ask for such a support

Comment by richlv [ 2017 Apr 20 ]

this would also functionally allow ZBXNEXT-3806





[ZBXNEXT-582] specify in trigger configuration if a recovery message is needed Created: 2010 Feb 15  Updated: 2019 May 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexander Bergolth Assignee: Unassigned
Resolution: Unresolved Votes: 17
Labels: alerts, recovery, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

For some types of triggers, a recovery message isn't really useful. (E.g. a notification that /etc/passwd had changed doesn't need a subsequent OK message telling me that the file has not changed in the next interval.)

Unfortunately I didn't find a way to specify that the recovery messages should be omitted for this kind of triggers.

An option that allows to specify at trigger config level, if a recovery message is needed would be useful.

Thanks,
--leo



 Comments   
Comment by Igor Danoshaites (Inactive) [ 2010 Feb 16 ]

Hi Alexander!
Can you please attach to this issue screenshot of the configuration screen of this action (I mean in the "Configuration->Actions" report click on your action's name and prepare screenshot of this screen) ?

Comment by Alexander Bergolth [ 2010 Feb 16 ]

I am talking about setting a property in the trigger configuration, not in the actions config.

I know that there is an option to disable the recovery message in the actions configuration but I don't want to do that generally for all events.
I'd like to do it depending on the trigger.

Example: We have more than 1000 triggers. Most of them need a recovery message.
For about 100 of them (like file-checksum triggers or equivalent), recovery messages don't make sense.

Unfortunately I didn't find a way to exclude those messages in an action-filter and define a separate action for them.

So I am thinking of two options:

  • I could either mark all triggers that don't need a recovery message e.g. in the trigger description with something like norecovery.
    (Unfortunately you currently cannot filter by "trigger description not like ..." in the action.)
    or
  • you could add a new flag "recovery message" to the trigger

But if you really want to see one of our action screens, take this one:
https://support.zabbix.com/browse/VUE-5

Comment by Igor Danoshaites (Inactive) [ 2010 Feb 22 ]

Hi Alexander!
We discussed your improvement idea, seems that it is good idea.
We will think about it.

Comment by Alexander Bergolth [ 2010 Nov 16 ]

Do you already have a roadmap when this feature will be included?

Comment by Igor Danoshaites (Inactive) [ 2010 Nov 16 ]

Hi Alexander,

We will discuss this tomorrow internally and after that I will let you know.

Comment by Alexei Vladishev [ 2010 Nov 16 ]

Alexander,

Currently the feature is not in our roadmap for Zabbix 2.0. I would like to understand your idea better before making any decisions.

My understanding is that only triggers having "multiple true event generation" option set (like log file monitoring, check sums, etc) should not generate recovery messages. Is it correct? Could you provide us with other examples where "normal" triggers may also benefit?

Thank you.

Alexei

Comment by Alexander Bergolth [ 2010 Nov 17 ]

Looking at the "Template_Linux" checks shipped with Zabbix, I can only find use cases where the "multiple problem event generation" would also make sense:

<filename> has been changed on SERVER

{HOSTNAME}

has just been restarted
Hostname was changed on

{HOSTNAME}
Host information was changed on {HOSTNAME}

Version of zabbix_agent(d) was changed on

{HOSTNAME}

Besides, log file items also don't have a recovery event, so sending a recovery notification isn't useful too. (But even for triggers based on this type of items, "multiple problem event generation" should be set.

So currently I can't give you an example of triggers that shouldn't have "multiple true event generation" set but should send recovery notifications and vice versa.

But both topics are quite different:

  • "multiple problem event generation" somehow switches between edge-triggered and level-triggered relationship between items and triggers
  • "skip notification on OK event" affects the relation between a trigger state-change and an action

So I think it could be quite confusing if you'd combine both in on option, even though it whould currently solve my problem.

Cheers,
--leo

Comment by Alexei Vladishev [ 2010 Nov 17 ]

Leo,

I understand that the topics are quite different, however I believe that the new feature will only (or at least in most of the cases) affect triggers that should be defined to generate multiple true event. To some extent, one flag for actions would make another (on trigger level) irrelevant.

I well understand you idea, but I feel that it may add more confusion than benefits. It would be great to keep number of available options to a bare minimum at trigger level for easier maintenance and clarity.

I would leave it as it is for now.

What do you think?

Alexei

Comment by Alexander Bergolth [ 2010 Nov 17 ]

Does "leave it as it is for now" mean that your plan is to implement the suggested feature and enable it if the "multiple problem event generation" is set, because you don't like the idea of adding a new trigger option?
If yes, then I could live with that solution.

But we would really appreciate having any kind of option to suppress the unnecessary and annoying "OK" (recovery) notifications on those trigger events described above.

Thanks,
--leo

Comment by Alexei Vladishev [ 2010 Nov 17 ]

Leo,

I wouldn't include it as it is into our roadmap. Yes, I do not like the idea of the new trigger option because everything it does can be already achieved by setting "multiple problem events". I do not see real-life cases when it cannot. So it looks like duplicating existing functionality to me.

Actually the "multiple problem events" won't solve this issue 100%, because it would still generate recovery messages on PROBLEM->OK state transition. Hmm, not good...

Another reason is that I am not quite happy about controlling how to react to problems (send or ignore recovery messages) on trigger level. This may introduce high degree of confusion: one would spend hours looking at action configuration and figuring out why recovery message is not sent.

To put all this differently, I do not see a nice and clean solution for this problem unfortunately.

Alexei

Comment by Alexander Bergolth [ 2010 Nov 18 ]

> Yes, I do not like the idea of the new trigger option because
> everything it does can be already achieved by setting "multiple problem
> events".
> I do not see real-life cases when it cannot. So it looks like
> duplicating existing functionality to me.
> Actually the "multiple problem events" won't solve this issue 100%,
> because it would still generate recovery messages on PROBLEM->OK state
> transition.

Maybe there is some kind of misunderstanding?
Actually the current functionality solves exactly 0% of this issue because the recovery message itself is the problem. This issue is all about finding a way to hide the annoying "PROBLEM->OK" notifications.

> Another reason is that I am not quite happy about controlling how to
> react to problems (send or ignore recovery messages) on trigger level.
> This may introduce high degree of confusion: one would spend hours
> looking at action configuration and figuring out why recovery message is
> not sent.

If that's a problem, then you could add a way to specify conditional filters for recovery messages in the action configuration.
Then one could set a "marker" in the trigger-definition (e.g. some tag like NO_OK_MESSAGE in the trigger description) and allow filtering out such kind of trigger events in the recovery section of the action definition.

But let's go back to the base of the problem...

Do you think that receiving an SMS like
"OK: /etc/passwd has been changed on server xxx has recovered"
is useful? Those kind of things are one-time events that indicate a unique problem incident, not states that may flap between OK and PROBLEM.

So I think there should be a way to handle events that are caused by that kind of triggers differently. (I.e. without recovery messages.)

Comment by Igor Danoshaites (Inactive) [ 2010 Dec 13 ]

Mail Alexander Bergolth:

Could you please move this issue out of the client SUPPORT project into the public ZBXNEXT project, as other people would also like to comment on it?

Comment by Igor Danoshaites (Inactive) [ 2010 Dec 14 ]

I did also have an issue about alarming, especially with recovery messages: ZBXNEXT-582: specify in trigger configuration if a recovery message is needed

I’m also voting for this, this is also an issue for us.

An idea for a solution would be to have an additional freetext-field in the trigger, which can be used in the action to filter for it (as its already possible for trigger value, trigger description, …).

This would allow actions to be fired only on specific cases (like all triggers which have “MAIL” in this field shall only be handled by an mail action ,…).

Comment by richlv [ 2011 Nov 28 ]

ZBXNEXT-842 seems to be similar

Comment by Elvar [ 2013 Jan 30 ]


This is exactly what I need and would really like to see it implemented. I don't need recovery messages for a server restarting but at the same time I don't want to have lots of actions specific to every trigger etc. PLEASE implement this.

Comment by Alexander Bergolth [ 2014 Apr 07 ]

Any chance for getting this implemented?

Comment by Corey Shaw [ 2014 Apr 07 ]

Maybe another option would be to allow actions to have configured "exclude" options. Heck, or you could add the ability to give "tags" to triggers and then do an action based on that tag. That way it would be super easy to have tags called "with-recovery" or "without-recovery" on arbitrary actions. This could even allow for far easier management of multiple actions as well.

Comment by Alexander Bergolth [ 2014 Apr 07 ]

Yes, tags could be an option.
That's what I suggested some years ago in comment-35514.
Unfortunately triggers only offer a description form-field to store the tags and action conditions currently don't allow filtering by "trigger description like/not like".

Comment by Volker Fröhlich [ 2015 Jun 03 ]

While I'm perfectly aware that this is not a forum, I think the longevity deserves this issues a comment:

I used a unified pre-processing script for all outgoing messages, that cancelled sending messages that follow a specific pattern. My convention was to simply prefix such triggers with "[Info]". While it doesn't touch the root problem and probably only works with alert scripts, it served me well over the years.

The fact that action conditions became a lot more flexible in 2.4, and the improvements regarding "Applications" and templating probably make it viable to have two separate actions (one with and one without recovery message) and just an action condition that cares about a certain "Application" string. That would be item-based though, since "Application" is not an actual trigger property.

Comment by dimir [ 2015 Jun 09 ]

As a nice and clean solution I currently only see adding support for trigger types, e. g.

  • one-way trigger
  • both-ways trigger

Although it definitely adds certain complexity to the internal implementation.

On the other hand, as alexei mentioned, the fact that you don't always mention triggers in an action, the visibility problem would still exist.

Comment by Alexander Bergolth [ 2015 Jun 10 ]

I agree that the cleanest solution would be adding "one shot triggers".

The use cases of this trigger (e.g. host had just rebooted, file checksum changed, sector had been reallocated, etc.) type simply don't match the concept of two states (PROBLEM and OK). Instead it is only a one time event, there is no PROBLEM phase and no transition from PROBLEM to OK following that phase. That's why suppressing the recovery event and the following recovery action is really only a workaround and thus a hacky solution.

But unfortunately I don't see any tendency towards such a solution. So I guess we'll have to live with a workaround. Since the trigger condition defines whether the trigger is one shot or not, there should be a way to mark that property at trigger level. (And not e.g. at item level like via setting an application as suggested above.) This could be done by adding trigger tags or an option to filter actions by {TRIGGER.DESCRIPTION} as suggested several times. (e.g. in comment-106296).

Comment by Roeland Jansen [ 2016 Jun 16 ]

Is there any news on this?

Alexander Bergolth reaction is exactly how I see it as well.

Comment by Alexander Bergolth [ 2016 Aug 10 ]

Will Zabbix 3.2 provide a solution for this?
According to the release notes, Zabbix 3.2 allows you to set OK event generation to None:
https://www.zabbix.com/documentation/3.2/manual/config/triggers/trigger

However, the manual also states: None - in this case the trigger will never return to an OK state.
... which is quite unusable. (It should only supress the OK event/action, not the state.)
Is the documentation correct? If yes, how do you reset those triggers?

Maybe there is a way to suppress OK notifications using the new event tags and an action condition like Tag <> NORECOVERYNOTIFICATION?

Comment by dimir [ 2016 Aug 10 ]

AFAIK in case of None the trigger is to be reset using acknowledgement: ZBXNEXT-104.

Comment by Roeland Jansen [ 2016 Aug 10 ]

and I believe that is not what you would want.

You get the mail/message/whatever – password file has changed.

It's just information, not a state. Therefore there is no OK message (needed) and also no interaction required (clicking OK).

Comment by Sergey Urushkin [ 2016 Oct 04 ]

With 3.2 it's possible to create 2 actions with tag condition (with/without special tag). But I think it would be more convenient if we could simply add a tag condition to action's "Recovery operations", and add such default tag to suitable template's triggers out of the box. That would completely solve the problem without introducing the new event type. While the new event type will be clearer for users, I guess it requires more code changes than "Recovery operations" condition. And it's the question - what will be better if we talk about performance.

Comment by Alexander Bergolth [ 2017 Nov 15 ]

Now zabbix 3.2 already provides the requirements for implementing this feature (trigger tags or "Trigger OK event generation: None").

It is really frustrating that this 7 year old issue, which is still very valid for me and apparently many others, is obviously not considered for implementation.

Maybe it is time to open a new, more specific issue in order to revive that topic again?

Maybe an issue like: "add a tag condition filter to Actions / Operations and Actions / Recovery operations" ?

Comment by Alexander Bergolth [ 2017 Nov 21 ]

Maybe it is time to open a new, more specific issue in order to revive that topic again?

I've created a new feature request about implementing conditional filtering by tags for recovery operations: ZBXNEXT-4246
Please vote for it!

Comment by João Andrade [ 2019 May 29 ]

May i ask how have you been working around this limitation, if there is a way? I tried looking at trigger functions, tags and event correlation, but cant figure out a way to do it.

This is something that bugged me since i started using zabbix many years ago, but now in my current infra, these information "problems" are a problem.





[ZBXNEXT-261] Add "copy selected to" for applications Created: 2010 Mar 02  Updated: 2013 Jun 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexander Piavlo Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

For items/triggers there is a "copy selected to" options which allows to copy chosen items/triggers to another template/host.
It would be nice to have the same feature for applications too, which would recursively copy the chosen application and it's items to another host/template.



 Comments   
Comment by richlv [ 2013 Jun 17 ]

ZBX-6711 is somewhat related





[ZBXNEXT-350] Linux Agentd: expose interface up/down status Created: 2010 May 07  Updated: 2015 Jan 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Cal Sawyer Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: networkmonitoring, newitemkey
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2687 Please add net.if.status Closed

 Description   

If we can get interface in/out traffic stats, wouldn't it be easy to provide up/down status? SNMP is notoriously inconsistent across different devices.






[ZBXNEXT-292] Handling of undefined items when evaluating calculated items Created: 2010 Apr 06  Updated: 2017 Nov 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ivan Gusev Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 28
Labels: calculateditems, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-766 Monitoring of a calculated element of... Closed
is duplicated by ZBX-5975 Sum of items is nodata if one of its ... Closed

 Description   

Zabbix marks calculated item as "Not supported" if expression contains item that currently has no value. It would be nice to change that behavior to something more usable.
Example:
Current values for items:
item[/var] = 10
item[/home] = 20
item[/tmp] = 30
item[/usr] = UNDEFINED/NO LAST VALUE

Calculated item:
last("item[/var]")+last("item[/home]")+last("item[/tmp]")+last("item[/usr]") currently will returns UNDEFINED, while it makes sense to return 60

In other words UNDEFINED value for item should be considered as "0" in addition and subtraction operations and as "1" in multiply and division operations



 Comments   
Comment by Aleksandrs Saveljevs [ 2011 Mar 17 ]

Related issues: ZBXNEXT-615, ZBXNEXT-766.

Comment by Vance Turner [ 2012 Jan 07 ]

Not feature....Bug. Valid formulas should always express, even with no values, so a lack of value is as stated above 0 or 1

Comment by Jairo Alves [ 2012 Dec 11 ]

Quoting a suggestion from a comment by Robert Foss in ZBXNEXT-615:

"
Having last() take a default parameter would solve some issues.

last(key, 0) == 0, If key is 'Not supported'
"

Comment by Skylogic Spa [ 2013 Jan 11 ]

Hello, I've run to into the same problem.
I think that the solution proposed by ZBXNEXT-766 is very good.

The implementation of the IF function for the calculated item would solve this issue and add a very useful new feature at the same time.

I'm running Zabbix 2.0.4.

Comment by sergio cricca [ 2013 Jun 11 ]

Same here on 2.0.6 Server and Agent.
I need to make a calculated sum of all service_state I'm currently checking per host.
If on of the 65 global services does not evaluate, I get "Not supported".

Better a solution by giving 0 IF nodata is received.

Comment by Oleksii Zagorskyi [ 2014 Jun 05 ]

As 2.2 got this:
https://www.zabbix.com/documentation/2.2/manual/introduction/whatsnew220#notifications_on_unsupported_items_unknown_triggers
the original issue is not so relevant so maybe this feature request can be closed?

Comment by Noah Leaman [ 2014 Jun 07 ]

Just so I'm clear, in 2.2, an internal event will now be created allowing you to be notified an item changed state from supported to unsupported, and any calc items that are using that value will become unsupported just like they do in previous versions? (and I assume that calc item will also create an internal event when changing to unsupported)

If a calc item is averaging 10 item values among 10 different hosts, and one of those items becomes unsupported, the calc will become unsupported correct? If this is so, then there is no change in the way calc items behave.

If this is the case, I think the feature request here should more specific to providing a way for calc items to behave differently based on user preference when encountering unsupported values:

An option in the calc item form that directs how the calc item should behave when encountering a unsupported value. Some option examples:

A) ignore any unsupported values and continue to calculate;
B) set unsupported values to a default value (user definable, such as "0");
C) set the calc item value to unsupported (and therefor creating an internal event)

Am I right that the way it will behave in 2.2 is only option C?

Comment by richlv [ 2014 Jun 07 ]

yes, only c is available and more specific approach could be helpful

Comment by Strahinja Kustudic [ 2015 Feb 27 ]

We constantly have problems with this when we apply templates to hosts which have calculated items, since if the calculated item is executed before the items from which it calculates data it becomes not supported, because there is no data from which to calculate. In this case we get an email notification that an item become not supported and after the "source" items fetch data, we get another notification that it become supported. Now multiply that by the number of calculated items and hosts, and you get a spam fest from Zabbix.

It would really be nice to have some control over this as Noah described in option B).

Also it would probably be a good idea to updated this issue description to include option B), since it gives you more control compared to what the issue reporter suggested.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Nov 09 ]

Perl has "logical defined-or" operator // which is concise, yet explicit way of working around undefined values in expressions (option B). Option A is complete BS from mathematical point of view.





[ZBXNEXT-391] Allow different items to be polled at the same time (Item affinity) Created: 2010 May 28  Updated: 2020 Aug 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Bruno Gomes Assignee: Unassigned
Resolution: Unresolved Votes: 30
Labels: dependencies, pollers, sampling
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All OSs and platforms (server enhancement)


Issue Links:
Duplicate
is duplicated by ZBXNEXT-1807 Timed Triggers Closed
is duplicated by ZBX-12942 CPU utilization does not add up to 10... Closed

 Description   

I believe it is essencial that the Zabbix server provides an option to poll different items at the same time, especially after calculated items were implemented.

In most cases, the items used in a calculated item must be fetched at the same time, or else the calculated value will not be valid. For instance, a hypothetical calculated item that shows the cpu usage by adding the system and user utilizations will be meaningless unless those two items are polled at the same time.

Another example that doesn't involve calculated items would be a trigger "A" that should only be true if a trigger "B" is false. In this case, if the items used in trigger "B" are not fetched at the same time as the items in trigger "A", trigger "A" could be active because trigger "B" hasn't had its items updated yet, even though trigger "B" will also evaluate to true after its items are updated.

In the GUI, Affinity Groups could be created and displayed similar to the existing Group option.



 Comments   
Comment by richlv [ 2010 May 28 ]

what do you mean by "the existing Group option" ? applications ?

Comment by Bruno Gomes [ 2010 May 28 ]

Below "Applications" there is a "Group" combobox. But this was only a suggestion, I think implementing it like the "Applications" option would be fine too.

Comment by richlv [ 2010 May 28 ]

oooh. that one is completely different and does not impact item polling in any way
it's sort of a method to add/delete/update item on many hosts at once.

Comment by Bruno Gomes [ 2010 May 29 ]

Yes, I know . It was just a suggestion on the GUI implementation of this functionality. I mean, you have to be able to group items that you want polled together in some way using the web interface.

Comment by Aleksandrs Saveljevs [ 2010 Jun 10 ]

Related issue: ZBXNEXT-98.

Comment by nima [ 2010 Aug 31 ]

I agree with your idea a "I believe it is essencial that the Zabbix server provides an option to poll different items at the same time, especially after calculated items were implemented." this feature is necessary for monitoring some items with more precise.
I hope this feature is to be added in next release.

Thanks

Comment by nima [ 2011 Jan 08 ]

After some investigation on database structure of zabbix,I found that zabbix server,requests data according to "itemid" or such field in database.if it is true, I think with changing order of rows based on "itemid" we can sort order of requests ourself.

Is there any idea or suggestion about this please share.

Comment by Oleksii Zagorskyi [ 2011 Jan 08 ]

I fully support this request.
But it should be considered in two aspects:
1. Simultaneity of the items polling.
2. Managed sequence to the items polling and trigger processing.

I will focus on the second aspect - I have not investigated in detail, but it seems i have noticed that a sequence of items polling depends on their ID.
It also seems sequence of the trigger processing, which use the same item, is also dependent on their ID.
At least this behaviour must be described in the documentation in the trigger dependencies point. And would really be nice to be able to manage it. See also ZBX-3163 for triggers.

Some forum discussion (in Russian): http://www.zabbix.com/forum/showthread.php?p=100140

Comment by nima [ 2011 Feb 09 ]

Hi
After a few week since reporting this feature, now In our monitoring system I have to config zabbix so that fetches some items in order.
In last investigation on zabbix infrastructure, I have found that,zabbix fetch items based on "itemID".
My question is,Can I change itemID for few items?? if so,please guide me,which tables should I change also.

Thanks in advance

Comment by richlv [ 2012 May 04 ]

trigger evaluation might be ZBX-3163

Comment by Sander Cornelissen [ 2013 Aug 09 ]

I do miss this feature when making a graph of two items. One is the processor idle time and the other is processor active time. I have set them up in a stacked graph. When there is processor activity, the total won't be 100%, but is has gaps and peaks. It has nothing to do with triggers, only that items get retrieved at different times. When will there be a fix or is a fix in sight?

Comment by David Israel [ 2013 Aug 19 ]

This would also solve ZBXNEXT-1049

Comment by Strahinja Kustudic [ 2013 Dec 07 ]

This is such an important feature which would make a lot of things easier and faster.

Comment by Gergely Czuczy [ 2013 Dec 13 ]

This feature would be pretty much awesome.

Also, if this would do something like, pulling a swithport's items (all of them) together, that'd also save some resources when evaluating triggers, since the triggers using multiple items for a single port wouldn't have to be evaluated after every item's poll, just once, after an aggregated poll.

Comment by richlv [ 2013 Dec 13 ]

this probably wouldn't help that much with triggers, as the trigger parsing logic wouldn't differ much.
when you mention switch ports, i guess it's about snmp, which would also be different - instead, snmp bulkget would probably be what you want

Comment by Volker Fröhlich [ 2014 Mar 06 ]

ZBX-7649 solves the problem for ICMP ping items on the same host.

Comment by Oleksii Zagorskyi [ 2016 Mar 06 ]

Not exactly what requested here, but it's possible in 3.0 using ZBXNEXT-2128 feature.
Just need to be careful to not overuse that feature to not have spikes of busy level for processes which gather information.

Comment by richlv [ 2016 Mar 06 ]

maybe a practical example helps - the cpu utilisation items, if queried at the same time, should sum up to 100%. with zabbix item polling distributed, it most often does not, and the top of the graph tends to have spikes over & dips under 100% - sometimes fairly large spikes & dips.

Comment by richlv [ 2016 May 19 ]

(1) an extension of this feature request - in addition to "affinity", there could also be "harmonisation".
for example, if we have one item collecting data during business hours, and another during off-hours, it would be nice to mark them for "harmonisation", so that the interval/poll time is aligned as much as possible.
if one of those items collects data every 30 minutes and the other every hour, the "harmonisation" would ensure that the interval between two values is always 30 minutes, and doesn't increase or decrease during the time when one item takes over the another.





[ZBXNEXT-272] XML schema required Created: 2010 Mar 14  Updated: 2018 Oct 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ari Maniatis Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 4
Labels: xml
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File zabbix-schema.xsd    

 Description   

Publishing a schema means that:

  • you create documentation for the XML format so others can integrate their toolsets
  • that gives you more providers who integrate with Zabbix
  • that gives you more customers
  • also, self validating XML helps reduce support problems


 Comments   
Comment by Ari Maniatis [ 2010 Mar 14 ]

This is a pretty rough first draft at a schema. It needs someone familiar with the import/export to go through it and ensure it is correct, add documentation, more restrictions, etc.

Comment by Ari Maniatis [ 2010 Mar 30 ]

OK, so not 1.8.2, but could we get it sometime soon? Especially since I've already supplied the schema file and all you need to do is check that it is correct....

Comment by Aleksandrs Saveljevs [ 2016 Feb 08 ]

Related ZBX-4855 asks to document the XML format online.

Comment by Valeriy Zabawski [ 2017 Aug 01 ]

Can anyone tell how do Zabbix validate xml when you're importing it through Zabbix API or frontend?
Information provided in official documentation is pretty brief and it just says "Import stops at the first error", so it would be nice if anyone could point at least at validating mechanism in source code.

Comment by Stephan Knauss [ 2018 Oct 17 ]

Validator should be this one, which also lists of what is expected in the XML file:

in path:

frontends\php\include\classes\import\validators

then C40XmlValidator.php for version 4.0 format file...

 





[ZBXNEXT-254] Improve element labels in maps Created: 2010 Feb 24  Updated: 2022 Oct 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Artem Suharev (Inactive) Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 11
Labels: maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Improve element labels in maps.
Possible improvements could be:
1. Remove "OK"
2. Optional label background on/off
3. Text coloring
4. e.t.c.



 Comments   
Comment by richlv [ 2010 Feb 24 ]

5. label background opacity level

Comment by Cal Sawyer [ 2010 Mar 07 ]

Provide "pop-over" table of triggers like in Global Status and Top 20, instead of navigating away from Map to Triggers for the host group.

Comment by Murilo Moreira de Oliveira [ 2010 Apr 01 ]

7. Insertion of plain texts elements and text elements "host items-aware".

Comment by richlv [ 2010 Apr 01 ]

could you please explain number 7 ? i didn't quite get it

Comment by Murilo Moreira de Oliveira [ 2010 Apr 01 ]

Plain texts elements -> Simple elements to show some custom information, like a note.
Text elements "host items-aware" -> A text element that show the value of a previously selected item from a host.

Comment by richlv [ 2010 Apr 06 ]

ahh, so basically text labels w/o icon ? maybe could be semi-emulated by adding a 1x1 px image ?

second one would be a subset of the first simply by supporting macros just like all labels

Comment by Murilo Moreira de Oliveira [ 2010 Apr 06 ]

Yes, the first one could be implemented by this "method".
On second one I didn't mean to show macro values (although this is desired too, by the way, on all the interface!). I meant that it would be interesting to show data collected from hosts (items like CPU usage, bandwidth, network in etc.) in simple labels on maps. Today is possible to do this only with connectors labels on maps.

Comment by richlv [ 2010 Apr 06 ]

"I meant that it would be interesting to show data collected from hosts (items like CPU usage, bandwidth, network in etc.) in simple labels on maps. Today is possible to do this only with connectors labels on maps."

data collected is referenced by a macro - and no, it's not true that you can display it on connectors only - you can use macros in map element labels as well

Comment by Murilo Moreira de Oliveira [ 2010 Apr 06 ]

First of all, to guarantee we are using the same abstraction, for me "data collected" is equal to "values from host items".
"Today is possible to do this only with connectors labels on maps." --> Not macros, I meant host items. It's possible to show host information using macros and items only on maps connectors. The element label does not support the usage of hosts items directly (as I wanted).
How is data collected referenced by a macro?

I'm sorry my English.

Comment by richlv [ 2010 Apr 06 ]

map element labels support macros referencing item data.

http://www.zabbix.com/documentation/1.8/manual/config/macros

{host:key.func(param)}
Comment by Alexei Vladishev [ 2012 Oct 14 ]

It should be split into several feature requests.

Comment by richlv [ 2017 Mar 26 ]

some of this solved by ZBXNEXT-2031, but indeed too many things in the same issue - for example, hiding status is ZBXNEXT-2665 and others likely covered somewhere else, too.





[ZBXNEXT-227] create a way to disable items defined including macros Created: 2010 Feb 08  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Thomas Spengler Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

when you have a template, including e.g. 10 times nearly the same value,
e.g. you collect the queue size of a databasepool
the we defined :

queue of

{DB1}


queue of

{DB2}


queue of

{DB3}


queue of

{DB4}


queue of

{DB5}


queue of

{DB6}


queue of

{DB7}


queue of

{DB8}


queue of

{DB9}


queue of

{DB10}

importing the template into 400 hosts.
But not all hosts have 10 DatabaseConnections. some have 5, or 10, or 7.

therefore I'd like define the name of the DB at host level (and this is possible via macro)

But I'd like also disable items e.g for DB9 and DB10 via macro.

possibly I could define a macro value like DISABLED and the this item wold be disabled.



 Comments   
Comment by richlv [ 2012 Jan 05 ]

having some magic macro value meaning would be a very bad approach - confusing, hidden and what to do if an item has multiple macros, but only one of them has this magic value ?

maybe you can try to describe the functional need - for example, why can't you disable those items on the host level instead ? that seems to be even easier than modifying/adding macro values





[ZBXNEXT-149] Optional threat NULL data item in trigger as TRUE to fire up trigger Created: 2009 Nov 27  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Eugene Zaitsev Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I'll be highly appreciate for this one functionality =). See discussion on forum http://www.zabbix.com/forum/showthread.php?t=14658






[ZBXNEXT-133] better management of many maps in monitoring section Created: 2009 Nov 13  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Nikolay L Selikhov Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It is necessary to create two types of maps:

1. The cores
2. Auxiliary

For this purpose, that it was possible to create submaps, concerning one knot (more detailed, but not littering menus of maps).

It should help at display of maps of the big and difficult networks.



 Comments   
Comment by richlv [ 2009 Nov 13 ]

you can create map objects that are maps themselves, thus they are clickable for drilldown.
does that satisfy your needs ?

Comment by Nikolay L Selikhov [ 2009 Nov 13 ]

No, you don't understand.

When objects over 100!

And when need detailed map of the current object.
And when need summary map with all host-groups.

Map-menu - turns to a hell! With many-many items.

Comment by richlv [ 2009 Nov 13 ]

it would help if you would note specific location in frontend like "configuration -> maps" or "monitoring -> maps"
i'll make another guess here - are you referring to the dropdown in monitoring -> maps ?

Comment by Nikolay L Selikhov [ 2009 Nov 13 ]

Monitoring Maps

I've:

1) Global map (hostgroups) - over 100
2) Link from hostgroups -> Node Maps (devices and links) - 100* average 2-3
3) Link from device -> Devace Map - Device and clients triggers (aproximately 24)

And number of the maps o_O ......
It's - hell for users

Configuration - to hard, but it's my job





[ZBXNEXT-135] show problem triggers differently for hosts in maintenance Created: 2009 Nov 13  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: maintenance, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

hosts in maintenance are distinguished in the trigger view, but trigger "PROBLEM" entries are not. to make it easier to see which problems are for maintenance hosts, they should be different - probably in slightly different colour, orange or so



 Comments   
Comment by Pavel Timofeev [ 2013 Jan 28 ]

I think ZBXNEXT-1150 and ZBXNEXT-1084 are relative tickets





[ZBXNEXT-937] "ZABBIX server is running" not reliable Created: 2009 Nov 16  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tim Gouma Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dashboard, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

not applicable to this issue



 Description   

the fix for bug ZBX-448 (https://support.zabbix.com/browse/ZBX-448) introduced a new problem while using external checks. When the zabbix server stops for whatever reason while the external checks are still running the external checks aren't stopped. (maybe this is also an bug?). But the external checks are assigned to the listening socket of the zabbix server.

The problem is that the check introduced in ZBX-448 only checks if there is something listening to the right port, not if it responds. This can be easily checked by not only connecting but also sending en request to the server en waiting for the response.



 Comments   
Comment by richlv [ 2011 Aug 30 ]

sockets leaking should be fixed as ZBX-1908
this could be about extending server availability check by asking for some additional data from it. not sure what exactly at this point, but that sounds a bit more like a feature request





[ZBXNEXT-199] easily accessible frontend check page Created: 2010 Jan 08  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dashboard
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

followup issue of zbx-1478

in administration section, page with all checks (probably just calling the functionality from wizard for now) should be added - something like Administration -> General -> Compatibility.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 21 ]

I believe it can be closed, we already have this information in the dashboard.

Comment by richlv [ 2012 Oct 21 ]

dashboard is different, it only shows what it doesn't like, not all the conditions/requirements.
basically like the config wizard requirement step, maybe a bit better formatted for larger screen area





[ZBXNEXT-127] Need argument to proc.num to selectively enable counting of threads [e.g. counting number of apache threads or mysql threads] Created: 2009 Nov 07  Updated: 2017 Mar 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Matthew Marlowe Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: items
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL5 x86_64



 Description   

Summary is pretty self explanatory, sometimes I want to count processes only and sometimes just threads. Right now, I believe choice can only be made at compile time or is locked to processes only. This information is incredibly useful for trending.



 Comments   
Comment by Tim Mooney [ 2013 Nov 06 ]

We would find this useful as well. We're beginning to use the "MPM" worker model (threads) with some versions of Apache httpd, so it's no longer easy to monitor a count of the number of httpds.

Comment by Paul DiSciascio [ 2017 Mar 20 ]

We have an issue where we're running up against the nproc ulimit on a production server, and since nproc is based on thread count, rather than simply process count, being able to trend and alert when we're close to that number is important.





[ZBXNEXT-124] can't delete multiple images Created: 2009 Nov 04  Updated: 2012 Oct 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: images, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

administration -> general -> images

removing multiple images is not possible, each image that has to be deleted has to be opened individually






[ZBXNEXT-125] allow adding arrows to map links Created: 2009 Nov 06  Updated: 2013 May 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

it would be nice to have an option for each link end (checkbox) to draw an arrow



 Comments   
Comment by Raymond Kuiper [ 2013 May 17 ]

Very good idea! This will allow to create weathermap like maps.





[ZBXNEXT-130] It would be nice to have hints for all buttons in Zabbix Created: 2009 Nov 07  Updated: 2022 Mar 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexei Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 13
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Sometimes a small help message would really help to understand what really happens if we press the button.

<richlv> these would most likely be implemented as a question mark icon next to each field in configuration, possibly elsewhere. technically, all fields could have them, but only the ones actually having any hint text would have the icon displayed.



 Comments   
Comment by richlv [ 2012 Apr 03 ]

there are two potential issues that could be split up later

a) 'help' icons next to each field/section;
b) actual button tooltips (for example, for clone/full clone buttons in host properties)

Comment by Raymond Kuiper [ 2015 Oct 26 ]

Actions could benefit from a tooltip that reminds user of needed permissions.

Comment by richlv [ 2017 Feb 27 ]

initial stub page with ideas at http://zabbix.org/wiki/Field_help_text

Comment by dimir [ 2022 Mar 03 ]

Related issue ZBXNEXT-7420

Comment by richlv [ 2022 Mar 04 ]

I seem to recall the wiki page showing some mockups - the idea was to have a tooltip for every field.
For example, in the item config form, type of information would have info on limits, units would list the special-treatment ones, custom intervals would have a description on how they operate etc.
The tooltips would have some formatting, could have links in them.
For easier maintenance, the idea was to have one authoritative source (the documentation, perhaps), which is automatically synced to the tooltips.
There was even a PoC script, extracting short sections from the manual as tooltip text.





[ZBXNEXT-57] "status of zabbix" should show zabbix version and supported features Created: 2009 Aug 25  Updated: 2023 Mar 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: dashboard, status, troubleshooting, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-315 Will be nice to add menu page, for ex... Reopened
Sub-task
depends on ZBXNEXT-5009 This widget should display more info ... Open
depends on ZBXNEXT-8326 Show Zabbix Server and Frontend versi... Closed

 Description   

"status of zabbix" report should additionally show zabbix server version and supported features (like snmp, ipmi, jabber, ipv6 etc) either by directly querying the found zabbix server, or by reading values, inserted by zabbix server in the db.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 May 07 ]

ZBXNEXT-2805 asks something related





[ZBXNEXT-115] Macros for including value mapping values in actions and/or triggers Created: 2009 Nov 03  Updated: 2023 Aug 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Mārcis Lielturks Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: macros, valuemapping
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix_server, zabbix GUI


Attachments: PNG File image-2023-08-03-12-26-40-139.png     PNG File image-2023-08-03-12-27-40-981.png    

 Description   

It would be useful to have macros that allow to include mapped values from items (not actual numbers) in action messages and, possibly, in triggers too. This way message from monitoring system to average user at support could provide more sense.

For example, action message with macros "

{HOSTNAME}

{ITEM.NAME}

reported

{ITEM.MAPEDVALUE}

" that translates to
"db-server database backup returned ERROR"
is more user-friendly than
"db-server database backup returned 1"



 Comments   
Comment by richlv [ 2009 Nov 03 ]

in general, there should be 3 macros available :

1. default - mapped value & raw value, like in frontend - Normal (2)
2. raw value only
3. mapped value only

Comment by Raymond Kuiper [ 2012 Oct 15 ]

I really like the idea behind this one!
This could be a real use for value mappings.

Comment by Rafael Bianco Nacif [ 2023 Aug 03 ]

I believe this could be useful. I created a item widget which I use to monitor some DNS servers. I created for those itens some mapped values. I would like to configure my item widget to be visual, something like a simple KPI index. The best I could do was to show Up (1). I would love to show only "Up", which is the mapped value for this item.

I could use a macro {$ITEM.MAPPEDVALUE} as a description in my case.

 

 

Cheers!





[ZBXNEXT-110] page help in zabbix frontend should link to online help Created: 2009 Nov 02  Updated: 2014 Mar 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: documentation, help, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-2150 Add component-specific links to features Closed

 Description   

current help icons in zabbix frontend mostly link to documentation page on zabbix website which offers single pdf documentation version.
this is inflexible, and people have gotten used to these icons being useless.
instead, frontend should return to the old approach and on each screen help icon should link to the corresponding section of the online manual.






[ZBXNEXT-105] deletion of an element that is used elsewhere happens without a warning Created: 2009 Oct 26  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: consistency, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

deletion of an element like item, trigger, host, map, media type, user media etc that is used elsewhere happens without a warning.

specific example with triggers in maps :

when a trigger that is used in a map is deleted, that happens without a warning.
instead, when a trigger is deleted, a warning should be shown, if the trigger is :
a) an element in a map;
b) a link status indicator in a map.

warning should provide links to all maps that refer to this trigger.

same should happen when deleting an item that is used in a graph, map that is included in another map, media type that is used for some user media, user media and user that is used in action as a target...



 Comments   
Comment by richlv [ 2013 Dec 17 ]

ZBXNEXT-551 deals with action related cases

Comment by richlv [ 2014 Mar 10 ]

(1) another potential problem is changing properties of some entity so it becomes incompatible with other entities.
for example, including a numeric item in a graph, then changing it to log or text.
there should be a warning in such a case, explaining to the user that they can do it, but the item will be removed from all the relevant graphs (and if it would have been the last item in such a graph, graph itself would be deleted)

reported as ZBX-7870





[ZBXNEXT-89] allow log keys to be used with normal data types Created: 2009 Sep 25  Updated: 2015 Jul 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: logmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

currently log keys have to be used with special "Type of information", Log.
instead, they should work with all normal types (text, char, numeric) and special log type should be removed



 Comments   
Comment by richlv [ 2015 Jul 24 ]

ZBX-7821 mostly implemented this, but did not remove the log information type.

thanks to asaveljevs for mentioning the main reason why this is not so simple - log items are stored in a separate table that allows to store log local time, severity and source. choosing a different type of information leads to a loss of that data.

such a low level thing seems to be a bit too much to force on users - they should not care about where and how exactly the data is stored. it would be nice if zabbix could figure out that such items have extra log information and probably store it in some helper table.

leaving this issue open for a potential removal of the "Log" type of information





[ZBXNEXT-187] sorting proxies by member count and last seen Created: 2009 Dec 22  Updated: 2013 Mar 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: proxy, usability, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

when having many proxies, it would be useful to sort their list by member count and by last seen time

also sorting by mode (active/passive) and nvps would be useful - especially when having lots of proxies and trying to find out which ones have most nvps






[ZBXNEXT-100] Dynamic size of Link on maps Created: 2009 Oct 08  Updated: 2022 Jan 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: fazae Assignee: Unassigned
Resolution: Unresolved Votes: 12
Labels: connectors, maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Popup_zabbix1.png     PNG File fleche.png    

 Description   

On maps we can set links between to hosts.

My dream:

  • attribute an item to a link
  • the size or the color of the link is defined by the value of the item.

Have a look at weathermap.
http://www.network-weathermap.com/node/119



 Comments   
Comment by richlv [ 2009 Oct 09 ]

note that you already can link multiple triggers to a link, which will affect it's colour and draw style.
thus this request could be about adding labels to links where items could be used.

edit : it should actually be about changing link style & colour based on an item value

Comment by fazae [ 2011 Sep 13 ]

We are about to develop this functionnality.

What is the best way to coordinate with dev team and to submit our patch ?

Today, we have a new type of ligne for links : "link"
We draw an arrow from both host to the label box.

Now we are looking for the way to change the color of the ligne.

Anibody interested in ?

Comment by fazae [ 2011 Sep 14 ]

a screenshot of the double arrow line type. See attachment fleche.png

Next step: how to connect the arrow with items ....

Comment by fazae [ 2011 Sep 15 ]

A screenshot explaining how to setup a formula for double arrows lines.

See attachment: Popup_zabbix1.png
Today: we will test integration with zabbix 1.9

Is there a zabbix developpers who can help us for integrating our patch ?

Comment by Alexei Vladishev [ 2012 Oct 11 ]

I like it in general, not sure how it could be implemented though.

Comment by fazae [ 2012 Oct 11 ]

We implemented it in our system.

How can i submit a patch ?

Comment by Volker Fröhlich [ 2013 Dec 08 ]

By attaching it here.

Comment by fazae [ 2013 Dec 08 ]

ok, il will adapt my code to the last zabbix version and publish a patch here.

Comment by Raymond Kuiper [ 2013 Dec 09 ]

Looks a bit like my request in ZBXNEXT-1750.
Maybe we can combine the two?

Comment by fazae [ 2013 Dec 09 ]

@raymond: you are right, this is the same request.

Comment by Raymond Kuiper [ 2013 Dec 09 ]

In that case I'll close mine, since this issue predates it
For completeness, here is my original line of thought:


I would like to build a 'wheathermap' like map in Zabbix.
For this to work, I need to indicate network load on links using colours.

Currently, It is possible to change the format (line type, colour) of a link using trigger statuses however, this will greatly increase the number of triggers in Zabbix for the sole pupose of making pretty maps.
Therefor, I think it would be a good idea to be able to use a mapping based on item values, for instance:

0% - Black
1-10% - Purple
10-20% - Cyan
30-40 % - Blue
50-60 % - Yellow
70-80 % - Orange
80-100 % - Red

I would like to be able to define these mapping globally, just like value mappings so we can reuse them easily in other maps or on other links in the same map.

Comment by richlv [ 2018 Dec 07 ]

ZBXNEXT-4906 asks for such a functionality on elements.

Comment by Mickael Martin (Cyres) [ 2022 Jan 06 ]

Hello Zabbix Team !

any update please ?





[ZBXNEXT-185] host ip condition for agent auto-registration action Created: 2009 Dec 22  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: autoregistration
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

network discovery actions have a condition that allows to filter based on host ip.
agent auto-registration does not, even though it would be even more useful here.






[ZBXNEXT-183] in case if lots of messages are generated Zabbix could automatically group such messages and send it as one message Created: 2009 Dec 21  Updated: 2016 Mar 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: alerts, bulk, grouping
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Will be good to implement such feature: in case if lots of messages are generated Zabbix could automatically group such messages and send it as one message.



 Comments   
Comment by Oleksii Zagorskyi [ 2016 Mar 15 ]

ZBXNEXT-1204 and ZBXNEXT-1899 are distantly related.





[ZBXNEXT-180] permission "helper" for complex objects Created: 2009 Dec 18  Updated: 2013 Jul 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: permissions, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-1828 Show effective maps permissions Closed

 Description   

currently evaluating permissions on a complex object like a map or screen is very hard. permission "helper" could do the following :

display a list of all included elements;
allow to choose user or usergroup (both are important) and show whether this user or usergroup has access to this map or screen;
show access per element (table with status, probably);
allow to filter for accessible or inaccessible objects only;
allow to add access with single operation for a usergroup to the complex object - that would give access to the selected usergroup on all hostgroups that are required to view the complex object.

maybe custom graphs might also benefit from such a feature



 Comments   
Comment by Steve mushero [ 2011 Feb 02 ]

We totally support this idea as we have dozens of server groups, dozens of customer groups, internal teams, escalation levels, etc. and often find a slide show won't even show up due to a server that was added in setup mode (group .setup) - very painful to find what's going on in 20 screens of 20 graphs and maps across hundreds of servers. Mix items on a single graph using templates, etc. and it's nearly impossible.

Best option on this is to let me specify a user and then the object like a slideshow, screen, etc. and show me which object I can/can't see.

Let me see i I can work up some SQL to determine this for now.





[ZBXNEXT-37] Monitoring Netflow data from Cisco environment Created: 2009 Jul 20  Updated: 2023 Mar 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Mauricio Okumura Assignee: Unassigned
Resolution: Unresolved Votes: 79
Labels: netflow
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Cisco routers


Issue Links:
Duplicate
is duplicated by ZBXNEXT-62 Cisco Netflow Module Closed

 Description   

Facility for Zabbix support Netflow data monitoring.



 Comments   
Comment by alex dekker [ 2009 Jul 27 ]

What particular aspects of Netflow would you like to see supported in Zabbix?

There is already a great Netflow collector in the form of ntop, so perhaps an ntop integration module for Zabbix would be a better idea?

Comment by Mauricio Okumura [ 2009 Jul 28 ]

I think a integration module with ntop would be excellent, but and the integration of the events as would be?

Comment by alex dekker [ 2009 Aug 28 ]

That's what I'm asking you. What Netflow parameters would you like to monitor? Per-interface? Per-host? Down to individual source:port dest:port level?

Comment by Mauricio Okumura [ 2009 Sep 03 ]

Sorry, i like to monitor Netflow estatistics per host and per interface, and analize protocols like ntop.
Thanks.
Mauricio

Comment by Elvar [ 2010 Aug 12 ]

I have a huge need for this as well.

Comment by Bee [ 2010 Oct 29 ]

Me also, i would like to see netflow support on next ZABBIX major release.

Comment by Mitchel van Ballegooij [ 2012 Jun 13 ]

We also have a huge need for Netflow.

Comment by Jarrod Manzer [ 2012 Jul 23 ]

Some thoughts from an enterprise network monitoring/automation professional who deployed commercial netflow systems.

A Netflow collector will need to scale better than OSS NTOP does. With the enterprise network we have to maintain, we find that NTOP crashes under just about any netflow feed we give it. Typical netflow feeds are about 50k flows per second (and that's sampled) and we actual send small fractions of this feed and we still get crashes. We simply cannot use NTOP for large scenarios so Zabbix should consider how their SNMP poller/distributed system architecture will scale compared to NTOP. I think you need your own flow listener and it should be distributed as well.

Additionally one must consider the netflow version to be supported. v5 is very common in production networks these days but v9 and IPFIX are showing up more often. Jflow, Sflow and other flow implementations should also be considered for support. Perhaps zabbix.com should have a survey for network device platforms so the range of protocols to support are understood. Such information could be used by the zabbix folks for template creation as well.

As for what we should be monitoring here are some suggestions.

1.) Graph all flows for a given interface and compare the SNMP stats for the same to find out if flows are missing (calibration).
2.) Use standard deviation formulas to determine if a DDOS attack is happening on a transit link (detection).
3.) Take some IP addresses and show flows tied to them as one single entity like a product line, division or department (analysis).
4.) Provide capacity analytics for this and the traditional SNMP data sets (capacity planning).
5.) Watch for evil IPs like known C&C control addresses entering the network. (detection)
6.) Observe customer bandwidth usage (billing).
7.) Look for missing flows (SLA monitoring,website is down)

These are probably the biggest payoffs for a netflow system so use cases should include the above in my opinion.

Comment by Pedro Crespo [ 2012 Aug 10 ]

Could we monitoring a jflow (Juniper) with Zabbix?, How can do it?, there is an add-on to this funtionality?

Thanks

Comment by Leandro Silva [ 2015 Jun 11 ]

I have need for this too, I am looking for an application to do this, it would be great if zabbix had this feature native.

We need to see the consumption of interfaces per protocol, per ip destinations, per ip origin, per ports and alerts of custom thresholds too.

Comment by Marc [ 2015 Jun 11 ]

Implementing Netflow is probably not just about adding yet another item to monitor.
I assume this needs significant amount of time for investigation and developing.

However, even when not being that familiar with *flow, I can see a big benefit for the "network monitoring" domain and hope enough people will find together to (co-)sponsor this.

Comment by Anthony Haley [ 2020 Sep 09 ]

There is a large need for this feature today.  nprobe now requires a per system license to use.  I use Zabbix for monitoring everything in our environment.  The ability to collect and display sFlow data is the only thing I have not been able to get Zabbix to do.  A feature set similar to ntop-ng community with a  built-in collector would be a perfect starting point.

Comment by Omila Ihalage [ 2021 Mar 03 ]

This is a very important peace still missing with Zabbix.

Comment by Jovan Klajic [ 2021 Nov 25 ]

Not sure if this is mentioned earlier. It would be good to have an option to use zabbix agent to export NetFlow directly from a server that is subject of monitoring. Ideally to be able also to turn it on on-demand when some really detailed troubleshooting is needed.





[ZBXNEXT-33] Integrate template repository into Zabbix UI Created: 2009 Jul 08  Updated: 2012 Oct 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: alex dekker Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Some kind of repository of templates would be good. The user should be able to browse the repo and install templates onto their server without downloading the template to their PC then uploading it.

It should be possible to view a template or edit it through the UI before installing it.

Some thought would need to be given to security, as there is potential for mischief/havoc with malicious or badly designed templates. This may mean templates being reviewed before being allowed into the repo.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 10 ]

It would be great to have. As a first step we should create official repository of Zabbix templates.





[ZBXNEXT-38] Possibility to see what values have not been sent when using zabbix_sender with option "-i file.txt" Created: 2009 Jul 21  Updated: 2021 Mar 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 26
Labels: patch, zabbix_sender
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File ZBXNEXT-38-show-failed-items-debuglevel-notice.patch    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-246 Log or report failed items using zabb... Closed

 Description   

Will be nice if will be possible to see what values from the input file has not been sent when using zabbix_sender with option "-i file.txt".



 Comments   
Comment by richlv [ 2010 Oct 16 ]

ZBXNEXT-246 has a proof of concept patch for server side logging

Comment by richlv [ 2010 Oct 16 ]

other issues related to sender output :

ZBXNEXT-506
ZBX-1827

Comment by Ya Bo [ 2016 Jan 06 ]

Hi everybody,

Maybe adding an additional DebugLevel value will help to resolve this request.

Currently 3x version has 5 levels: critical, error, warn, debug, ext-debug

I propose to add yet one, so it will be:
critical, error, warn, notice, debug, ext-debug

any installation does not require any changes in config. But anybody who need this functionality should change DebugLevel only.

Comment by Ya Bo [ 2016 Jan 06 ]

Additional level will be more convenient.
In case of using warning level in some installations logs will be spammed with usefulness info.
In case of debug - it will be very difficult to find useful lines from huge debug info.

of course, this level can be used not only for failed items.
also somebody with this feature can monitor zabbix logs for new trapped items.

Comment by richlv [ 2016 Apr 16 ]

the best would probably be returning the list of host/item/value (and maybe also time, if supplied ?) entries that failed - although one concern would be very large values

why all of that - let's say if one is sending 200 timestamped values for the same item on the same host and 30 fail - how would the sender know which ones failed to either fix some issue or retry ?

Comment by Joachim Jautz [ 2020 Mar 06 ]

Motivation

Allow me to motivate why the requested feature would be most valuable in some situations.

We run zabbix_sender 4.2 as part of a process pipeline, that is, it runs continuously, receives item metrics on STDIN and there is a considerable throughput:

zabbix_sender -z zabbix.example.com -p 10051 -r -i -

The "real-time" (-r) switch requests to "Send values one by one as soon as they are received ... when reading from standard input."
However, if I understand zabbix_sender correctly, there is another hard-coded rule that allows zabbix_sender to collect up to 250 items that arrive within 0.2 seconds and transmit them in one transaction (see zabbix_sender(1) and the zabbix sender online documentation).

That said, this is a typical summary output we witness:

Response from zabbix.example.com: "processed: 249; failed: 1; ...

Currently there is no way to have zabbix_sender reveal this one failed item.
Well, not exactly: we could introduce something like sleep 0.25 between each metric but this would throttle throughput substantially; or IMO even worse: we could execute a new zabbix_sender process for each item.

Petition

It would be great to hear an opinion from one of the Zabbix developers / contributors regarding these questions:

  • Are we using zabbix_sender not as intended?
  • Why has this issue not been regarded relevant, yet?
  • Is it a question of effort or rather a question of design? From the outside it looks as if this is one additional line of code that outputs the failed item (ideally depending on the verbosity level).

Thank you in advance.





[ZBXNEXT-28] ability to customise page titles Created: 2009 Jul 07  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

it would be nice if zabbix gui page titles could be slightly customised - it might be enough to provide two fields, prefix/postfix. anything entered in these fields is properly added to all page titles.
for example, entering " (Company A)" in the postfix would result in titles like "Configuration of items (Company A)".
rationale - when using multiple zabbix installations, it is handy to figure out which resides in which tab by taking a quick glance instead of opening each tab individually.



 Comments   
Comment by richlv [ 2011 Aug 26 ]

zabbix server name partially implements this





[ZBXNEXT-36] latest data should round floats to more than 2 decimal places Created: 2009 Jul 20  Updated: 2016 Apr 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: items, latestdata
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

latest data currently rounds floats to 2 decimal places (so that 99.9975 becomes "100").
this can make some values look less correct, especially with things that often approach 100% (like cpu times).
it would be better if latest data was rounded to at least 4 decimal places



 Comments   
Comment by Cal Sawyer [ 2009 Sep 10 ]

Or have the option of rounding floats on a per-item and mass-update basis

Comment by Alexei Vladishev [ 2012 Oct 10 ]

I agree that it should be a new item level setting.

Comment by Aleksandrs Saveljevs [ 2016 Apr 28 ]

This is still the case in Zabbix 3.0.2. In particular, a value like "103.0005" is shown as "103" and "103.005" is displayed as "103.01".





[ZBXNEXT-49] Map Templates Created: 2009 Aug 11  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Nathan Eisenberg Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Similar to how hosts have templates, it would be very valuable to have Map templates that provide a skeleton. This would be useful in many cases. For example, diagramming large, physically complex networks with many VLANs.

Presently, a viewer friendly method of doing this would be to diagram the network, with all of its base components, trunks, etc, and then add the specific VLAN information on top of that diagram. However, using this method, each map is a standalone object. If a change is made to the physical network, that change has to be manually documented in every map - which could number in the hundreds.

Having a template system would allow the physical network to reside on a single map, and for other maps to be built using this template as a base. Objects can be added to the secondary map, and template objects can be disabled on a per map basis, in the same way that items can be added to a host separately from its template.






[ZBXNEXT-215] MIBs file import Created: 2009 Apr 28  Updated: 2019 Sep 12

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Manfredo Pansa Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RedHat CentOS 5


Attachments: File cisco-stackmaker.mib    
Issue Links:
Duplicate

 Description   

Don't know if there is a similar feature, but to choose Zabbix in our Service Center we need to import Equipement Mibs file as attached one. I know zload_snmpwalk.pl utility but we need to know this feature will be available as well...



 Comments   
Comment by Alexei Vladishev [ 2009 May 08 ]

Just follow standard NET-SNMP documentation in order to import new MIBs. It is extremely straight-forward procedure.

Alexei

Comment by Brian Talley [ 2010 Jan 20 ]

I believe the OP was asking for a way to import a MIB into Zabbix and have Zabbix create a Host Template with all the Items created as defined in the vendor MIB (or allow the user to pick and choose before the template is generated). This would be preferable to building the Host Template by hand in an environment where a lot of different devices are used.

I can't see where importing the MIB file into NET-SNMP really has any effect on Zabbix other than being able to use the MIB OID object name rather than the numeric OID.

Comment by richlv [ 2010 Jan 28 ]

then this is a feature request (somehow i can't find an existing one...) for template builder from snmp mib.

until then, http://www.zabbix.com/wiki/scripts/gentemplate.pl seems to be the most functional script to generate templates for snmp devices in an automated fashion.

Comment by Stefan Radman [ 2016 Mar 05 ]

The link http://www.zabbix.com/wiki/scripts/gentemplate.pl is broken.
--Stefan

Comment by richlv [ 2016 Mar 06 ]

yes, it pointed to the old wiki which was in a phase-out state for a long time - if the script was not migrated to zabbix.org, it was probably too outdated and not too useful at that time

Comment by Dimitri Bellini [ 2018 Aug 01 ]

For who are interested on a possible alternative to the old tool to convert MIB file, i would suggest https://github.com/cavaliercoder/mib2zabbix . I think is very great tool!

I also suggest to Zabbix to think about to something similar directly integrated on the main interface





[ZBXNEXT-52] Monitoring of ibm z10 mainframes Created: 2009 Aug 18  Updated: 2013 Feb 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sybrand Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: agent
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zO/S



 Description   

Can you please look in to creating a agent that can monitor ibm z10 mainframes on the zO/S platform.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 10 ]

Is anyone interested in sponsoring this development?

Comment by Marc [ 2013 Feb 19 ]

Maybe. What do you mean exactly by sponsoring?

Comment by richlv [ 2013 Feb 19 ]

it's probably best to contact [email protected] about the details





[ZBXNEXT-47] New item vfs.fs.mounted Created: 2009 Aug 10  Updated: 2017 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Thomas Mueller Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: item
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

by now there is no comfortable way to determine if a directory contains a mounted filesystem.

vfs.fs.size reports the size root filesystem if pointed to a directory which is normally mounted. another way is to check if a file underneath the mounted directory exists - but this is not "templateable" if there is no "common" file on the mounted fs.

on linux it should check /proc/mounts, solaris /etc/mnttab, etc.



 Comments   
Comment by Volker Fröhlich [ 2012 Nov 15 ]

For the time being, you can use an agent item like:

vfs.file.regmatch[/proc/mounts,^\S+ /home .*]

1 ... Mounted
0 ... Not mounted

Comment by Jesper Grann Laursen [ 2014 Jan 20 ]

This return false, if a NFS mount is stalled. I need something to check if the mount also works.

Comment by PNB Banka [ 2017 Aug 25 ]

> For the time being, you can use an agent item like:
vfs.file.regmatch[/proc/mounts,^\S+ /home .*]

Linux-only.
Not work for Solaris.





[ZBXNEXT-15] possibility to export and import Zabbix users Created: 2009 Jun 30  Updated: 2021 Jun 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: usability, usergroups, users, xml
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Will be nice to have possibility to export and import Zabbix users.



 Comments   
Comment by Cal Sawyer [ 2009 Sep 10 ]

To add to this - ability to clone existing group permissions to a new group

Comment by Matt Tharma [ 2015 Dec 09 ]

+1





[ZBXNEXT-2] Handle SNMP value associations/lookups Created: 2009 Jun 30  Updated: 2016 Nov 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Gergely Czuczy Assignee: Unassigned
Resolution: Unresolved Votes: 13
Labels: snmp, valuemapping
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

SNMP



 Description   

MIB files contain the meaning of the given values of SNMP OIDs, practically telling you how should you interpret those values. Zabbix should be able to handle these values, know their meaning. It could either be done directly from the MIB files, or by telling them within templates.

From templates, extending the XML scheme would be simple, like:
<values>
<value data="1">Signal Lost</value>
<value data="2">Locked</value>
</values>



 Comments   
Comment by alex dekker [ 2009 Aug 28 ]

Zabbix could also interpret MIBs where possible to eliminate the need for Throw Maps. This would avoid needing to manually duplicate in Zabbix the data already extant in many MIBs.

Comment by richlv [ 2012 Apr 11 ]

this probably could be part on snmpwalk/mibbrowser feature, where it would look up the associations, create or reuse existing value maps and link them to items

Comment by Marc [ 2014 May 23 ]

Even when value mapping is the current way to solve lack of SNMP value translation, I'd prefer a different approach.
Instead of over-designing value mapping, I think snmp agent component in Zabbix-Server/-Proxy should be extended with proper snmp translate functionality.
Of course that should be optional and configurable on item level.

Edit:
Just to clarify. This is not about SNMP traps.
MIB value translation for SNMP traps is already covered by snmptt as richlv noted below

Comment by richlv [ 2014 May 23 ]

note that we quite explicitly support snmptt, it's even documented how to set it up with zabbix

Comment by Yamada Hiroyuki [ 2016 Nov 21 ]

This function would be really useful to start device monitoring quickly. Symbol translation is one of the important features of monitoring tool. But translating text symbols to Value Mapping is very complicated and time-consuming work. So I've created translation script from MIB to Zabbix Value map. But still, though Zabbix 3.0 supports Value map import/export feature, I think Zabbix should directly support MIB translation.

I hope the translation should be supported by Zabbix WebUI and API. Translated text data should not be preserved into database.





exposing curl options for web monitoring (ZBXNEXT-403)

[ZBXNEXT-22] Setting cookies just like POST parameters Created: 2009 Jul 01  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request (Sub-task) Priority: Major
Reporter: Calimero Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

So far we can set/provide POST data at each step.

Being able to do the same with cookies would be useful.

There's curl_easy_setopt() option CURLOPT_COOKIE that looks similar to CURLOPT_POSTFIELDS.

I don't know how curl behaves when you explicitly set cookies with CURLOPT_COOKIE though: will it still automatically handle/send back cookies over requests or will it then just send what you explicitly gave it ?

Thanks !






[ZBXNEXT-14] In the Configuration->Actions report should be filter by groups. Created: 2009 Jun 30  Updated: 2014 Aug 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: actions, filters, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File 0001-ZBXNEXT-14-Action-configuration-filtering.patch     File ZBXNEXT-14-2.0.8-1.patch     PNG File ZBXNEXT-14-2.0.8-1.png     File ZBXNEXT-14-2.0.8-2.patch     PNG File ZBXNEXT-14-2.0.8-2.png     PNG File ZBXNEXT-14-2.0.8-3.png     File ZBXNEXT-14-2.0.8.patch     PNG File ZBXNEXT-14-2.0.8.png     Text File ZBXNEXT-14-2.0.9-4.patch     File zbxNext14-2.2.5-2.patch     File zbxNext14-2.2.5.patch     PNG File zbxNext14-2.2.5.png    

 Description   

In the Configuration->Actions report should be filter by groups in order not to see all actions, but to have possibility to filter them by groups.



 Comments   
Comment by richlv [ 2010 Aug 25 ]

what groups would those be ? user groups that are listed as recipients for actions, or host groups for which an action would match ?

Comment by Alexei Vladishev [ 2012 Oct 21 ]

Some filtering would be nice to have in actions.

Comment by Marc [ 2013 Mar 09 ]

Maybe suitable search fields (e.g. Name, Conditions, Operations) in a similar way of 'Configuration->Hosts'.

Comment by Marc [ 2013 Oct 05 ]

Attached patch 'ZBXNEXT-14-2.0.8.patch' tries to add some filter capabilities.
The patch is not tested very well - use at your own risk!

Comment by Marc [ 2013 Oct 05 ]

attached 'ZBXNEXT-14-2.0.8-1.patch' (hopefully) improves search and has a rearranged view.

Comment by Marc [ 2013 Oct 06 ]

Yet another patch (ZBXNEXT-14-2.0.8-2.patch).
Due to changed information collection from previous patch there is no more need for read-only fields.

Comment by Marc [ 2013 Oct 09 ]

ZBXNEXT-14-2.0.8-3.patch:

  • adds 'Media type' filter option
  • 'Step duration', 'Subject' and 'Message' is searched in action operations as well (if not already found in default settins)
  • some cosmetics

BTW: css for item lists is used but should have it's own.

Comment by Volker Fröhlich [ 2013 Nov 14 ]

Forward-ported 2.2.0 patch

Comment by Marc [ 2013 Nov 14 ]

Forward-ported 2.2.0 patch is based on ZBXNEXT-14-2.0.8-2.patch.
ZBXNEXT-14-2.0.8-3.patch has a bug (breaks for non Super-Admin) that is already fixed and get uploaded soon

Comment by Marc [ 2014 Aug 23 ]

Attached patch zbxNext14-2.2.5.patch additionally consists of some visual corrections and makes use of auto-complete functionality:

Comment by Marc [ 2014 Aug 24 ]

Patch zbxNext14-2.2.5.patch includes unneeded code which does not exist in patch zbxNext14-2.2.5-2.patch





[ZBXNEXT-25] IT Services month overviews Created: 2009 Mar 19  Updated: 2019 Aug 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Rick Assignee: Unassigned
Resolution: Unresolved Votes: 10
Labels: dashboard, itservices, patch, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 5/Zabbix 1.6.2


Attachments: PNG File Picture 24.png     Text File zabbix-1.6.2-itsla-month.patch    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-1255 Modify time periods in IT Services Closed
is duplicated by ZBXNEXT-251 [Patch] - Adding last month timeframe... Closed
is duplicated by ZBXNEXT-2925 Adding last month to IT services view... Closed
is duplicated by ZBXNEXT-2964 IT Services with arbitrary time inter... Closed

 Description   

As I need to get IT services states per month I've created a patch file with some adjustments to create an report with IT SLA overview's per month.

I've build this on Zabbix 1.6.2 frontend. For me it is working if it is working for you I don't know. It creates a few files and alters the include/page_header.php file.

As Zabbix is OSS I'm publishing my patch under the same license agreement.

Please let me know what you think about it.

Zabbix is a great product but is lacking some minor functions sometimes, like IT services overview per month. Maybe something for the developers to include in a next release. It was not that much of a work and I saw requests for this functionality a few times on the boards.



 Comments   
Comment by Rick [ 2009 Mar 19 ]

Patch file I've created

Comment by Rick [ 2009 Mar 19 ]

Screenshot

Comment by João Figueiredo [ 2009 Oct 12 ]

This FR can be closed seeing that it's already implemented in Zab1.6.6

Comment by richlv [ 2009 Oct 12 ]

is it ? while available periods have been extended recently, i don't see functionality to choose specific month in there

Comment by Gustavo Moura de Sousa [ 2015 Aug 26 ]

We want to measure the SLA of one service for the last month.
Today the IT Services only show us the SLA for the last 30 days.
They are only the same if you verify on the first day of the month, what not always is possible.
This is the way to resolve this problem but we always have to execute the same procedure when we update the zabbix server.
https://www.zabbix.com/forum/showthread.php?t=15848

Comment by Gustavo Moura de Sousa [ 2015 Aug 26 ]

I think this feature request is very simple to be implemented

Comment by richlv [ 2015 Sep 19 ]

(1) any custom interval support would be useful with presets like recently added to the "top 100 triggers" report (also requested in ZBXNEXT-2964)

Comment by Stephen Courtney [ 2019 Aug 19 ]

Is there any workaround for this in newer versions of Zabbix? We have a lot of services set up, and aren't always able to look at the uptime data on the appropriate day, so being able to pick a date-range would be very helpful.





[ZBXNEXT-303] ability to export maps w/o images and images w/o maps Created: 2010 Apr 15  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: maps, xml
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

currently all images are exported together with a map, and there is no way to exclude them. this results in huge files for large network maps.

there should be methods to ability to export maps w/o images and images w/o maps






[ZBXNEXT-306] ability to skip already existing hosts in network discovery actions Created: 2010 Apr 19  Updated: 2018 Dec 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: networkdiscovery
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-228 Discovering and adding new hosts Closed
is duplicated by ZBXNEXT-2718 New condition on actions to check if ... Closed

 Description   

there could be a feature to skip already existing hosts (both manually added and added by discovery) when performing actions.

not sure about implementation details, maybe this could be added as an action condition (but it would have to be intuitive enough - for example, adding condition like that and having an action to delete the host would not make much sens).



 Comments   
Comment by Robert Middleswarth [ 2011 Feb 01 ]

On the action side it could be as simple as adding a condition already exists. Although I think it would be better to add an option to the discovery rule to ignore existing hosts so it doesn't even scan IP of hosts that exist.

Thanks
Robert

Comment by Andy Shinn [ 2011 Feb 17 ]

I use the discovery for alerting of new hosts that might not be added already so that I can manually evaluate if they should be added. This would be nice so I am not getting the same alerts for hosts I have already added.

Comment by Oleksii Zagorskyi [ 2012 Nov 22 ]

ZBXNEXT-818 asks for almost opposite, so they both could be implemented by supporting a clause "IS" and "IS NOT" at discovery rule level or at operation condition level.

I'd prefer discovery rule level for this feature.

Comment by Harri [ 2014 Mar 29 ]

I would prefer to have the known hosts filtered on discovery level, too.

My scenario is: I've got different templates for server systems, e.g. to distinguish between Linux containers, KVM hosts and real hosts. Zabbix cannot detect the difference, so the list of automatically assigned templates has to be adjusted sometimes. Its pretty painful, if the Zabbix server breaks this on the next discovery.

When I started with Zabbix it was pretty confusing for me to see all the known hosts reappear in the discovery audit again and again. It is surely not what you expect: "to discover" means to find something new. Having the ability to ignore the hosts listed in the "Discovered Hosts" group would help to avoid this confusion.

Comment by richlv [ 2014 Mar 29 ]

try using action condition "discovered", not "up"

Comment by Harri [ 2014 Apr 01 ]

Sorry to say, but "discovered" didn't work at all. For testing I replaced "status = up" with "status = discovered" in the actions and deleted a host. By now it didn't come back. I see the other IP addresses in this net in the audit, but not the deleted host.

As written before, I would prefer a discovery rule, anyway.

Comment by richlv [ 2014 Apr 01 ]

that's because host is already considered to be discovered (dhost/dservice tables) :/
maybe ZBX-3336 will affect this in some way

Comment by Harri [ 2014 Apr 01 ]

Obviously looking at status = discovered is a bad choice. Zabbix cannot detect a reused IPv4 address .

I would like to have more control about which hosts are discovered. Looping over all IP addresses in a subnet and checking if there is a zabbix agent running is not sufficient. Maybe some kind of callback function could be supported? This would allow me to implement more flexible discovery rules in a shell script.

Comment by Filipe Paternot [ 2015 Mar 25 ]

Well, not necessarily you may want to not rediscover a already monitored host. If things change (and they usually do), you may want to reflect it. I know i do, and it's working good.

When you discover a host is a linux, for instance. It is a discovered host, added, enabled and with linux template. But still there may be other checks and rules to match. What hardware it runs on, if it has a webserver... If your rules are dynamic enough (and they should be), it is required to "rediscover" everything. Besides, things change over time.

However, sometimes you do not want it.
For instance, some hosts have multiple ips. By multiple, i mean by dozens. They are added as additional interfaces. The problem comes when some of this ips are "cluster ips" and change from host to host. I know i should not discover them, but i dont have any criteria/flag in my controls to exclude them. It still wise to discover and if it is an additional interface (aka already monitored host), it would't do anything.

Comment by Harri [ 2015 Apr 23 ]

I completely agree. Surely things change. The IP address of a service might change or move from one host to another, as in your example. Point is, these changes are not covered by Zabbix at all. Even if the dynamic rules discover the service under a new IP address, Zabbix looses history and gets confused about the old IP address, as soon as it reappears with other services. Looking at IPv4 there is a pretty high probability for this to happen.

Now, we know Zabbix cannot handle reused IP addresses. Further we know that IP addresses (and host names) are insufficient to reliably identify a service to watch. Yet Zabbix continues to loop over all IPv4 addresses, using discovery rules and actions to overwrite host entries in the database, ignoring a manual configuration. That appears strange to me.

Comment by Angutivik Casper Rúnur Tausen Hansen [ 2018 Dec 12 ]

Having this as a discovery rule would be nice.

As an example, I could use office at where I work. We have servers and computers on the same network, which is our playground before we release anything into the real world. Zabbix discovers both servers, computers, even phones, and we saw that as an opportunity to check for unknown hosts, but unfortunately, Zabbix doesn't give the functionality to check whether a host is known or not.

If this chooses to be a thing, one could check whether a host existed in a host group or not, and if not, alert the administrators. If host doesn't exist in host group, then alert administrators





[ZBXNEXT-233] ICMP pinging system must be improved for discovery in case of ipv6. Created: 2010 Feb 12  Updated: 2012 Nov 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Dmitry Borovikov Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: discovery, fping, icmpping, ipv6
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Not dependent



 Description   

Now Zabbix decides which fping to use (IPv4 or IPv6) based on provided "SourceIP" parameter in the configuration. But pinging must be based on the discovery rule interval. Besides, more sensible error messages must be provided when "fping" binaries are missing in different combinations.



 Comments   
Comment by richlv [ 2010 Feb 16 ]

1. fping or fping choice should be made by looking at ip range and deciding whether it's ipv4 or ipv6;
2. if there are any actions that need fping or fping6 (discovery, ping items etc), then and only then missing or inoperable fping/fping6 should be logged in logfile (debuglevel3). inoperable fping includes errors because of missing setuid root etc;
3. if the required fping is missing, there's no need to continue with discovery run - the run should be cancelled

Comment by richlv [ 2010 Feb 16 ]

4. next improvement - there's master process which handles config reading and scheduling;
5. large ip ranges are not only done sequentially, but they are split up by the master to child discoverers in parallel;
6. ideally, min/max discoverer bounds can be specified and they are started/stopped as necessary





[ZBXNEXT-280] "hosts status" should be available as a screen element Created: 2010 Mar 04  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Paul Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dashboard, screens
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Mandriva 2010/Centos 5.4



 Description   

Multiple issues with host/system info widgets.

1. There is no (documented) way to specify host groups shown in host/system status widgets in Monitoring/Dashboard page.
Even if user has full access to all host groups, only several are shown.

2. "Host status" could not be selected in Screen editor Screen cell configuration.

Either all accessible host groups should be shown (what to do with hosts belonging to multiple groups?) or, better, host group should have a tag "shown in system/hosts status".

In forum you can see user requests to provide these widgets to non-admin user also, so the task may be more complicated.

tia, Paul



 Comments   
Comment by richlv [ 2010 Mar 25 ]

host group filtering has been added in 1.8.2. all accessible groups should be visible/available for choice, if not it might be some bug - but for that more specific info would be needed.

"host status" as a screen element is a feature request, moving accordingly





[ZBXNEXT-315] Will be nice to add menu page, for example, Administration->Zabbix info, with info about installed Zabbix server version (if possible with revision number), PHP version and it's modules Created: 2010 Apr 21  Updated: 2012 Oct 22

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: dashboard, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-57 "status of zabbix" should show zabbix... Open

 Description   

Will be nice to add menu page, for example, Administration->Zabbix info, with info about installed Zabbix server version (if possible with revision number), PHP version and it's modules (php-gd, php-bcmath, php-mbstring, etc), the content of php.ini file, etc.



 Comments   
Comment by Oleksii Zagorskyi [ 2010 Jul 10 ]

very similar to ZBXNEXT-57

Comment by Alexey Fukalov [ 2010 Sep 14 ]

dev branch: ZBXNEXT-315

initial info is shown, any ideas what else can be shown?
getting info about server will require additional development for server side.

Comment by richlv [ 2010 Sep 14 ]

hmm... i'd argue that it doesn't make sense to introduce a different page.

this partially duplicates 'status of zabbix'.

so if we are doing this, it would make sense to do it properly. current separate page has the issue of.. being separate, as well as completely visually different from anything else (and i've got enough complaints about user interface inconsistencies and usability sucking in the last few weeks to last for several years...)

so what we should do...

unify config wizard requirements page, "status of zabbix" and this info page in a single page.
"status of zabbix" and sysrequirements partially overlap, because status would show problems only, but not current php config values that frontend requires. so there should be :

  • a section of the page giving high level overview just like "status of zabbix" does;
  • a section of page giving frontend requirements just like config wizard does (so showing the data always, not just errors);
  • low level info just like this new info page does.

and what's important - it all should be visually and functionally consistent. current visual representation leaves a very bad impression.

Comment by Oleksii Zagorskyi [ 2010 Sep 15 ]

I got an idea of how you can do version, revision and server futures checking, and I decided to tell about it.
It can be done so that the server during the start, wrote somewhere in a database with all necessary information (version, revision, compilation time, futures, etc.)
Web Interface will only read this information from the database.
Give the necessary information simply on port 10051 I think is not safe.

It would be nice to resolve this request at the same time
https://support.zabbix.com/browse/ZBX-2512

Comment by richlv [ 2010 Sep 15 ]

yes, server inserting some runtime info in the db was exactly the idea in ZBXNEXT-57

but it would help to save a lot of time by deciding on a consistent implementation. cleaning it up later can turn out to be near impossible, as we have seen way too many times on other areas.

Comment by Igor Danoshaites (Inactive) [ 2011 Nov 16 ]

I am reopening this issue as seems that at this moment we do not plan to implement this feature in v2.0, maybe will be implemented later.

Comment by richlv [ 2012 Apr 23 ]

ZBXNEXT-1194 asks for similar functionality on the api level, these both should probably be resolved together





[ZBXNEXT-347] Possibility to filter which triggers can change host status in maps. Created: 2010 May 06  Updated: 2015 Apr 28

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Pierre-Emmanuel Turcotte Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: filters, maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be great if we could select which triggers can change the status of hosts on maps. This would be very handy for creating maps for different people. The server techs could have a map with servers and host status would only change when triggers concerning them(disk space for instance) would go off while developers could have other maps with possibly the same servers but their status would only change when triggers concerning their applications(database components for instance) go off.



 Comments   
Comment by richlv [ 2010 Aug 25 ]

this would be extremely convoluted - it would have to be specified per map, per element, per user.

maybe better something like a runtime map filter, based on applications... might still cause problems - for example, some application might depend on database running, so its triggers would have correct dependencies added. but if the person would choose to see data fro that application only, database going down would not display any problems in that map, because they all would depend on triggers that are currently active...

Comment by richlv [ 2013 Oct 04 ]

does the new severity filter in maps (for 2.2) solve this issue ?

Comment by richlv [ 2015 Apr 28 ]

host and hostgroup elements can also have application filter since 2.4 - https://www.zabbix.com/documentation/2.4/manual/introduction/whatsnew240#application_filter_for_maps

is there any usecase that would still need development ?





[ZBXNEXT-364] New Item keys: process private and shared memory Created: 2010 May 19  Updated: 2022 Jan 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: João Figueiredo Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: item
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any Unix


Issue Links:
Causes
caused by ZBXNEXT-1711 New key for discovery rule / LLD to c... Closed

 Description   

As discussed in,
http://www.zabbix.com/forum/showthread.php?t=17048

The idea would be to have as macros a process private and shared memory.

(though the Total mapped (Virtual) doesn't bring any usefulness gain at all)



 Comments   
Comment by João Figueiredo [ 2010 May 19 ]

Would allow us to better monitor misbehaved Apps.

We could, for instance, configure a restart Action when a controlled group of processes would exceed a given Threshold / % of normal historic memory use

Comment by Andris Mednis [ 2014 Sep 30 ]

Development of ZBXNEXT-1078 deals with a similar task.

Comment by Andris Mednis [ 2014 Oct 02 ]

Seems like process private and shared memory information is available only to root or process owner (as "pmap" shows). Zabbix agent is typically started as a non-privileged process and therefore has no access to interesting processes which belong to other users.





[ZBXNEXT-213] extend Discovery Event uniqueness Created: 2010 Jan 28  Updated: 2012 Nov 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Thomas Spengler Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: networkdiscovery, uniqueness
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

We have on one linux machine more than one (in normal usecase between 5 and 10)
java-vm's running and each of them has a on zabbix-agent running.

So it is not sufficient to define the uniqueness of a discovery event only by IP-Address.
We need in the zabbix-agent case also the port of the agent.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Nov 22 ]

See also ZBXNEXT-1267





[ZBXNEXT-214] Adding ifHCInOctets and ifHCOutOctets (at least) to special OIDs Created: 2010 Jan 28  Updated: 2013 Apr 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Proxy (P), Server (S)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexander Afonyashin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 5.3, x86, Zabbix 1.8.0



 Description   

At http://www.zabbix.com/documentation/1.8/manual/advanced_snmp some special OID are described. Since hi-speed links are widely used, it's worth to add ifHCInOctets (.1.3.6.1.2.1.31.1.1.1.6) and ifHCOutOctets (.1.3.6.1.2.1.31.1.1.1.10) to special OID list in Zabbix.



 Comments   
Comment by richlv [ 2012 Oct 21 ]

that page says "Some of the most used SNMP OIDs are translated automatically to a numeric representation by Zabbix"

apparently support for automatic translation of those two mibs would have to be added in server/proxy ?

seems to be ZBX_MIB_NORM part in src/zabbix_server/poller/checks_snmp.c





[ZBXNEXT-156] "every step" support in escalations Created: 2009 Dec 03  Updated: 2016 Apr 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: escalations, flexibility
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

it would be nice to have "every step" support in escalations. this would be similar to 'every' support in maintenance and would only execute escalation operation every nth step,

such a feature would allow to create operation rules that would execute every hour for one user and every 5th hour for another, or every 10 minutes for one and every 15 minutes for the other.



 Comments   
Comment by richlv [ 2016 Apr 15 ]

a suggested more significant redesign would solve this at ZBXNEXT-3242





[ZBXNEXT-206] Show value throw map is not accessible when creating a web scenario Created: 2010 Jan 19  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Greg McCarthy Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

OpenSuse 11.2



 Description   

I've created a web scenario which monitors a URL which returns a 200 if ok.

I've then created a graph to plot the response code. Instead of plotting a 200 in the graph I would like to plot a 1 for a 200 and a 0 for anything else.

I set value mappings so that
200 => 1
500 => 0
403 => 0

The only place I can see to use the throw mappings is if you create a item (Config/Hosts/Item)

I'm however not using a item for the graph. I've created a host and then a web scenario which I plot. I don't see anywhere in the web scenario/graph where you can select the value mapping.

Now sure if this is a bug or a feature request?



 Comments   
Comment by richlv [ 2010 Jan 19 ]

value mapping is definitely meant for something else - it is actually for displaying a human readable value for numeric data.
besides, you can't configure it for web monitoring items, as you can't modify their detail anyway.
if anything, this would be a feature request, although i'm not sure whether it could be implemented in a sensible way

Comment by Greg McCarthy [ 2010 Jan 20 ]

I basically just want to plot a filled region when the URL is accessable and nothing when its not. We can then easily see if is down.

If were monitoring for example 4 URLs they will currently have a max value of 800 (4 x 200's) If one of them say goes down we get like one plotting a 500 and the others a 200.

Its then not very easy to read from our monitoring station as the graph only changes values.

If it plotted a 1 and a 0 then you could see much easier if there was a problem - if nothing is being plotted then something is down.

We had something like that implemented in v1.6 where it plotted a 1 or a 0.





[ZBXNEXT-163] Add multiple hosts to map at once Created: 2009 Dec 09  Updated: 2019 Jan 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Lukas Macura Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be nice if it is possible to add all hosts from some group into map. We have labs with 20+ PCs and it will speedup map creation very much.. No matter of hosts position, it is possible to drag them after adding.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 21 ]

It's a must have feature.

Comment by richlv [ 2015 Apr 28 ]

ZBXNEXT-1366 also talks about adding links and link indicators

Comment by Micha Slezak [ 2015 Dec 02 ]

And also add automatically link from main element to all added elements. For example:
when I'm drawing maps, I'm adding in detail all wifi clients and is it helpful when all clients will be conencted to main element

Comment by Marvin Frederickson [ 2018 Sep 28 ]

See ZBXNEXT-1366 for a patch.





[ZBXNEXT-159] Add implementation of functions "proc.mem" and "proc.num" for HP-UX platform. Created: 2009 Dec 08  Updated: 2012 Nov 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: items
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It will good to add implementation of functions "proc.mem" and "proc.num" for HP-UX platform as at this moment (v1.6.x and v1.8) this checks are NOT supported by HP-UX platform.






[ZBXNEXT-141] Disable graph functionality Created: 2009 Nov 24  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Murilo Moreira de Oliveira Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: graphs, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I think that would be very good if there was the disable graph functionality. By the way, when some items of a host/template are disabled, all the graphs that use that items should be disabled too.



 Comments   
Comment by richlv [ 2009 Nov 24 ]

what exactly would be disabled and why ?

Comment by Murilo Moreira de Oliveira [ 2009 Nov 24 ]

I have a windows template named TemplateWindowsServer2k3 and I've configured 5 items in this template to monitor disk used space (C:, D:, E: F: and G, I've configured 5 graphs in this template too using those items. For each host that is associated with this template, I've disabled the disks that are not installed (some hosts have only disks C: and E:, others, C: and G: and so on). Then, I'd like that the graphs associated with disabled items were not showed on Monitoring->Graphs form (it would be not possible to select graphs with disabled items in the combobox).

Other alternative would be to permit an administrative user to disable graphs (inherited from a template) for a single host.

PS: Sorry my bad English.

Comment by richlv [ 2009 Nov 24 ]

ok, got that. so you would like it so that custom graphs that contain only disabled items not to be displayed in the dropdown.
on the other hand, many people want them to be available so that they can still access historical data even if they have disabled some items.
theoretically, both could be satisfied if custom graphs with all items assigned disabled would be omitted if there is no data for these items, but i suspect that might make graph list creation extremely slow (frontend would have to check all items for data). not sure whether there's easy and technically sound solution.

Comment by Murilo Moreira de Oliveira [ 2009 Nov 24 ]

Thinking of my first alternative, it's very probable that graph list creation would become the frontend very slow if it have to verify items for data. But I think that the second alternative (permit an administrative user to manually disable host graphs, inherited or not from a template) is more useful. Thus, the user would decide if he/she wants or not to enable some host/template graph or view past data from disabled items. The frontend would then only verify if the graph are enabled, minimizing the application load.

Comment by hamid sfandiari [ 2011 Apr 23 ]

if it possible to verify the enable/disable of graphs by enable/disable of items?
it means that a graph which has one or more disabled item is not shown on graph list pop-up

is it good solution ?

Comment by Murilo Moreira de Oliveira [ 2011 Apr 23 ]

I think yes, this would be a good solution too. What you said was what I meant when I said "all the graphs that use that items (disabled items) should be disabled too" on this issue description.





[ZBXNEXT-132] Add URL into maps links and possibility link with some graphs Created: 2009 Nov 12  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Nikolay L Selikhov Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: connectors, maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-151 Add 'URL' functionality to connectors... Closed

 Description   

Add URL into maps links and additional possibility binding with some graphs for Pop-Up graphs.






[ZBXNEXT-682] Centralized management of agent configuration files Created: 2010 Jan 11  Updated: 2020 Nov 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexander Vladishev Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 6
Labels: configuration
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-1372 Central script repository Open
is duplicated by ZBXNEXT-2529 Agents should be able to retrieve use... Closed

 Description   

Agents configuration files will be stored in Zabbix database and automatically pushed to agents. It will be supported by active and passive agents.



 Comments   
Comment by Greg Swift [ 2012 Aug 22 ]

What is the benefit of this over a configuration management tool? I'd rather see improvements to functional areas rather than starting down the path of configuration management. I've got at least 3 that were filed years ago that could use some work.

Comment by richlv [ 2012 Aug 22 ]

personally, i'd fully agree. unfortunately, there are companies that haven't invested in system/config management... and the interest in such a functionality is somewhat sizable, so there's probably no avoiding it in the long run

Comment by richlv [ 2012 Sep 04 ]

here's a feature wishlist based on real world deployment :

  • should work with passive and active agents;
  • should work over proxies;
  • should retrieve agent version & operating system for validation;
  • should provide ip mapping per range and per individual ip; most specific match should be used (for example, to set Server/ServerActive lines etc) (two equal ranges partially overlap - what to do);
  • should provide agent host name mapping (regexp, overriding) (how will work with ip mapping, which gets priority ?);
  • should provide some sort of "templating"/variables where things can be set globally, overriden per ip range/ip etc;
  • should provide a way to manage multiple agent versions, verifying config per version (don't allow to set invalid params per version);
  • should do the validation per operating system as well (not allowing per counter params on non-windows etc);
  • should allow to override validation;
  • should have some idea about security...
  • should handle filesystem permissions gracefully and properly report error messages back to the server (so they're visible in the frontend);
  • should send the config only if it has changed (versioning, md5 hashes, whatever);
  • should provide a way to handle all this in a single file or using included files;
  • what about local changes, override them ? fail if changes are detected, or configurable ? what if another file is added in an include dir ? if fail, an internal item to detect that;
  • ability to add userparams based on some conditions. (only include if some package is installed and/or match specific item return value);
  • have some capability to see which agents are up to config sync (when they last synced); and internal item to detect that it's not syncing;
  • have some capability to use generic config for all versions/operating systems and then add/remove/change some params for other versions/operating systems;
  • if an agent is unable to communicate with server/proxy, revert to previous config file (timeout, how will it work with active/passive ?)
Comment by Tim Mooney [ 2013 Jun 07 ]

I understand what you're saying Rich, however I'm really with Greg. Organizations that are large enough to be struggling with zabbix agent config file deployment would be better served by getting a configuration management system in place and managing this via that system.

Beyond just the config file, the configuration management system has other benefits: it can ensure that the version of the agent you want to have installed is actually installed, it can ensure that the agent service is running, it can ensure that there's a log file rotation policy in place for the zabbix agentd log, it can ensure than any custom scripts for custom item keys are also installed, etc.

Even if you solve all of the config file issues via the agent itself, you can't really solve the "is the agent installed? is it running?" issue.

Also, how do you solve the inherent security issue with the initial deployment of the config
file? Right now the agent only allows the server(s) listed in the "Servers = " entry to communicate with it.

What would probably be more useful would be to make certain that there are very good manifests/recipes/scripts/whatever for several different configuration management systems,
so that you could just point customers to them. I know there's stuff out there for puppet, which is what we use, and the module I looked at for the zabbix agent was a good start, but
it was rudimentary. Writing a full-featured puppet module for the zabbix agent has been on my todo list for a while. Seeing this ticket provides more incentive to work on that, although it's more about time and priorities than interest, at this point.

Comment by Marc [ 2013 Jun 07 ]

I agree with Tim.
Such kind of functionality is already provided by several configuration management systems in a highly efficient and secure way.

Before investing time in something like this I'd suggest to focus more on fixing the current security issues in Zabbix -but it's just my opinion...

Comment by Raymond Kuiper [ 2015 Sep 09 ]

Personally, I strongly disagree with this feature becoming a main part of Zabbix (missing a downvote button in Jira btw!). Zabbix is a monitoring tool, not a Config Management tool.
Instead of reinventing the wheel and facing numerous (security) caveats along the way it would be best to implement a tool alongside Zabbix which specializes in this type of thing.

Puppet, Chef, SaltStack and Ansible all have proven track records in this regard.
If used in combination with a Version Control System such as Git, you can even easily rollback any mistakes you make in a new UserParameter or other script.
In addition, it would allow management of other aspects of the environment as well.

I'd rather see the needed effort put into other things, like speeding up the API, improving UX or having some more advanced ways to process retrieved values.

That being said, if it has to be done, please consider using an existing framework and integrating it into Zabbix.
Also, keep it optional. I think quite some security teams would rather not have the monitoring tools pushing files down to prod servers.





[ZBXNEXT-197] audit strings should be saved by reference Created: 2010 Jan 08  Updated: 2014 Apr 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: audit, localization
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

audit strings should be saved by string reference, so that switching frontend language would switch them as well



 Comments   
Comment by richlv [ 2014 Apr 15 ]

true both for action & alert audit.
also the breadcrumb history bar has the same problem (there might be a separate issue about that one, but i couldn't find it right now).

other keywords : locale, language, translation





[ZBXNEXT-67] Max value for Pie graphs Created: 2009 Aug 31  Updated: 2024 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Igor Danoshaites (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: piegraphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-121 Pie/Exploded Graphs made right Closed

 Description   

Will be very good to add max value for Pie graphs (i.e 30 % of max 100% on the graph) as it exists for Line graphs at this moment.



 Comments   
Comment by richlv [ 2011 Jun 08 ]

if i understand this correctly - ability to enter "max" manually instead of referencing an item

Comment by João Figueiredo [ 2011 Jun 08 ]

Probably it won't be needed to reopen https://support.zabbix.com/browse/ZBXNEXT-121
if this one gets correctly implemented.

Thanks





[ZBXNEXT-55] flag to output features for server and proxy Created: 2009 Aug 25  Updated: 2012 Oct 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

zabbix proxy and server processes should gain a commandline switch that would print out supported capabilities list like the one logged in the logfiles.

for example :

$ zabbix_server --features

        • Enabled features ****
          SNMP monitoring: YES
          WEB monitoring: YES
          Jabber notifications: NO
          ODBC: NO
          IPv6 support: NO
          **************************


 Comments   
Comment by Alexei Vladishev [ 2012 Oct 10 ]

I like this idea.





[ZBXNEXT-60] Add a "Graph" Report Created: 2009 Aug 27  Updated: 2018 Jan 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Mike Cotrone Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: reports
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu 8.10
Zabbix 1.6.5


Issue Links:
Duplicate

 Description   

Graphing Reports - We do quarterly reviews with our customers and it would be nice to be able to run a "Graph" report that would spit out a PDF with all interface graphs for hosts. If you could have user knobs for Dates, Hosts/Host Groups, Graph types






[ZBXNEXT-113] network load reduction by assuming missing values Created: 2009 Nov 03  Updated: 2013 Aug 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-126 network traffic reduction method Closed
is duplicated by ZBXNEXT-695 Filter data returned to Zabbix server... Closed

 Description   

this is a feature which supposedly originates in ganglia and allows for network traffic reduction.
if enabled, it makes monitoring agent not send repeated values until some time based threshold is passed. server on the other hand assumes that missing values are the same as the last one and only considers agent gone if values do not come past this time thershold.

in the case of zabbix, this feature would probably be configured on item level and only work with active agents.
if value would be considered as the same (configurable margin for floats) by the active agent, agent skips sending it to the server. if (per item) time period has passed without sending another value, agent sends the value anyway, sort of a heartbeat.

server, on the other hand, after the configured time period has passed, can do two things.
1. if agent sends in the same value, server assumes that all values between the previous one and the last one are the same and fills them in. note that server probably should use a larger time period to determine whether value falls in this time period (to compensate for agent and network delays);

2. if "heartbeat" value is missing, server assumes all values since last successful transmission are missing.



 Comments   
Comment by fmrapid [ 2011 Mar 09 ]

The above implementation description is simple and elegant and vastly increases system scalability. This is typical in industrial SCADA systems and with the OPC protocol used to communicate state and performance data from devices. The logic is simple and implementation leads to direct benefit.

Note-1: The configurable margin should apply for floats and optionally for numeric values.

Note-2: The implementation should also work with Zabbix sender type data.

Note-3: This logic should be implemented as genericaly possible, to permit graphs, reports, etc. To make use of the "assumed" data values.

Comment by Alexei Vladishev [ 2012 Oct 11 ]

We should think about it carefully if ever decided to be implemented.

Comment by richlv [ 2013 Aug 05 ]

somewhat similar feature request not to store identical values in the database : ZBXNEXT-1846





[ZBXNEXT-1684] Server: more internal stats Created: 2009 Mar 24  Updated: 2017 Apr 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 0
Labels: internalmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I think that more aspects of Zabbix has to be available as Internal checks. For example:

  • size and current usage of database cache
  • total number and number of processed values per item type and/or proxy
  • number of messages sent by media type
  • number of SQL queries generated by server by query type (select, update, delete)


 Comments   
Comment by Alexei Vladishev [ 2009 Jul 08 ]

We must also track slow items retrieved by pollers.

Comment by Alexei Vladishev [ 2009 Jul 17 ]

Added dummy function DCget_stats(), which does not do anything at the moment.

Alexei

Comment by richlv [ 2011 Mar 01 ]

database cache now has internal items, everything else still seems to be missing

Comment by richlv [ 2017 Apr 13 ]

message part might be addressed in ZBXNEXT-3782





[ZBXNEXT-681] multiple clocks in screens, showing different timezones Created: 2007 Sep 01  Updated: 2011 Feb 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When creating a screen it would be great if one could add the monitoring->triggers page the same way as you can add the events page. THat would make a screen amazingly useful.

Another simple change that would make life a LOT easier would be to enable clocks that independently can set different timezones and be displayed pretty small in a screen, for multinational environments this would be really nice.

http://www.zabbix.com/forum/showthread.php?t=7182



 Comments   
Comment by richlv [ 2011 Feb 28 ]

status of triggers can be added to screens, multiple clocks with different timezones left as a separate request





[ZBXNEXT-680] RSS feed for events Created: 2007 Sep 01  Updated: 2011 Dec 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

it would be nice if zabbix had RSS feeds for events.

http://www.zabbix.com/forum/showthread.php?t=7447






[ZBXNEXT-1103] Setting ConfigFrequency on a Passive proxy should cause the service to not start Created: 2012 Feb 02  Updated: 2012 Oct 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edgar Juarez Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: validation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

The ConfigFrequency setting when using Passive proxy is misleading and confusing when ProxyConfigFrequency on the Zabbix server should be used instead. Perhaps the proxy should not start if the ConfigFrequency setting is set and send an appropriate message in the proxy log.



 Comments   
Comment by richlv [ 2012 Feb 05 ]

same should happen with all other parameters which are not relevant (data sender frequency, heartbeat frequency etc)

Comment by Oleksii Zagorskyi [ 2012 Feb 05 ]

I think in this case the error message should sound similar/unified with ZBX-4497





[ZBXNEXT-954] Units standardization Created: 2011 Sep 09  Updated: 2021 May 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Piotr Szczepański Assignee: Unassigned
Resolution: Unresolved Votes: 15
Labels: consistency, units, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot from 2020-07-28 13-17-56.png     GIF File aaa.gif    
Issue Links:
Duplicate
is duplicated by ZBX-18146 Zabbix uses TB instead of TiB for vfs... Closed

 Description   

according to topic:
http://www.zabbix.com/forum/showthread.php?t=23309

1K = 1024 or 1K = 1000 ?? -> let's stop making people guess

==== 1 === (FAST FIX)
if item unit is B - displayed units suffixes should be:

  • KiB
  • MiB
  • GiB
  • etc

http://en.wikipedia.org/wiki/IEEE_1541

=== 2 === (Improvement)
imo it's good idea to add additional option in item creation/edit form

so people can chose display format:

  • normal (k, M, G, ... = x 1000)
  • binary prefixes (Ki, Mi, Gi, ... = x 1024)
  • unixtime - translated to "yyyy.mm.dd hh:mm:ss"
  • uptime - translated to "hh:mm:ss" or "N days, hh:mm:ss"
  • s - translated to "yyy mmm ddd hhh mmm sss ms"
  • as it is (like rpm % ect)

but additional column in items table is needed so it can be only target for zabbix 2.0
(i can't see any db updates related witch new versions in 1.8.x line)

now u can use Unist field and do it this way (temporary):

If set, Zabbix will add the unit postfix to all received values.
Till Zabbix 1.8.2, default multiplier is 1024, and some units have special processing:
b, bps - 1000 is 1K, special processing for bits.
Since Zabbix 1.8.2, default multiplier is 1000, and special processing is used for units B, where multiplier is 1024.
For example, if units are set to B, Zabbix will display:
1 as 1B
1024 as 1KB
1536 as 1.5KB

+ Since Zabbix 1.8.8, default multiplier is 1000, and special processing is used for units iB and ib, where multiplier is 1024.
+ For example, if units are set to iB, Zabbix will display:
+ 1 as 1B
+ 1024 as 1KiB
+ 1536 as 1.5KiB

unixtime - translated to "yyyy.mm.dd hh:mm:ss"
uptime - translated to "hh:mm:ss" or "N days, hh:mm:ss"
s - translated to "yyy mmm ddd hhh mmm sss ms", parameter is treated as number of seconds. Only 3 upper major units are shown, like "1m 15d 5h" or "2h 4m 46s". If there are no days to display, only two levels are displayed - "1m 5h" (no minutes, seconds or milliseconds are shown). Will be translated to "< 1 ms" if the value is less than 0.001.

EDIT:
and triggers
i have one defined like this:
used bandwidth is to high:

{switch:if.Fa5.In.last(0)}>3.9M

i don't know - its activating when used bandwidth is over 3.9*1024*1024 ? or 3.9*1000*1000

but server should calculate it like this:

{switch:if.Fa5.In.last(0)}>3.9M -> {switch:if.Fa5.In.last(0)}>3.9*1000*1000
{switch:if.Fa5.In.last(0)}>3.9Mi -> {switch:if.Fa5.In.last(0)}>3.9*1024*1024

ADDITIONAL INFO (don't read if u don have time):
i have TS3 server and its statistics are in attachment

packets are in units x1000
all transfers in unist x1024
all is clear no one need to guess



 Comments   
Comment by richlv [ 2011 Sep 09 ]

this is mixing several different issues in one, might be hard to follow. blacklist customisation is ZBXNEXT-768

Comment by Oleksii Zagorskyi [ 2011 Nov 24 ]

some answers and suggestion reported in the ZBX-4390

Comment by Volker Fröhlich [ 2014 Jan 14 ]

About the use of kilo: ZBX-5764

ZBX-1273 is related too

Comment by Artjoms Rimdjonoks [ 2020 Jul 28 ]

"http://en.wikipedia.org/wiki/IEEE_1541" is not the only standard, there are 2 standards on this issue:
1) IEC - uses the base of 1000: 1000 bytes in a Kilobyte, 1000 Kilobytes in a Megabyte etc.
2) JEDEC - uses the base of 1024: 1024 bytes in a Kilobyte, 1024 Kilobytes in a Megabyte etc.

It happens that Zabbix uses the JEDEC at the moment.

Comment by Glebs Ivanovskis [ 2021 May 20 ]

If Wikipedia quotes JEDEC correctly, it does not feel like JEDEC is encouraging use of "binary" kilo-, mega- and giga- prefixes:

Quote from JEDEC Standard 100B.01, page 8:
The definitions of kilo, giga, and mega based on powers of two are included only to reflect common usage. IEEE/ASTM SI 10-1997 states "This practice frequently leads to confusion and is deprecated." Further confusion results from the popular use of the megabyte representing 1 024 000 bytes to define the capacity of the 1.44-MB high-density diskette. An alternative system is found in Amendment 2 to IEC 60027-2: Letter symbols to be used in electrical technology – Part 2.

Aforementioned "alternative system" from IEC 6007-2 is Ki, Mi, Gi, etc.





[ZBXNEXT-824] Allow to use macro ITEM.DESCRIPTION in item and trigger names. Created: 2011 Jun 20  Updated: 2015 Oct 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.9.5 (alpha)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 7
Labels: lld, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Last time ITEM.DESCRIPTION is a nice editable value for item, which can be used in different ways.

Why? -> already long time (after implementing LLD) I'm thinking how user can distinct created items, when discovery rule can receive only a numeric {#SNMPINDEX} macro and its value. It's usual common case.
See for example on the wiki http://www.zabbix.com/wiki/_media/doc/speed_fan.png?cache=
Yes, there are graphs, which names can't be customized by design, but when an item name will be customizable then it can be distinguishable in a legend.
Items and triggers will be distinguishable in their lists.
Using this macro in the trigger names is useful on view list of events or triggers.

If item description is empty then ITEM.DESCRIPTION should be expanded to nothing.

I think this solution is replacement for the ZBXNEXT-577 and it can be performed after resolving ZBXNEXT-821.

But for templated (not LLD) items and triggers this feature can be useful too, with the same efficiency.

Heh, it's not easy explain my vision, if you have question I'll answer.






[ZBXNEXT-752] Ability to predefine time periods for graphs in screens Created: 2011 Apr 14  Updated: 2016 Oct 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Raymond Kuiper Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: graphs, screens
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

I would like to be able to setup a screen with graphs showing the following time periods:

*Last hour
*Last day
*Last week
*Last month
*Last Year

This is not possible currently, because all graphs use the same time period.
In the graph configuration in the screen a checbox could be added to specify any of the predefined time periods the scaler also offers.

This way we can build screen that resemble Cacti or Observium views.



 Comments   
Comment by beownd [ 2011 Apr 14 ]

I think this idea is great. I would be much more easy to view your statistics in one just one screen.

Comment by richlv [ 2011 Apr 14 ]

for now, use url screen element, point back to a graph and add &period=3600, where value is the desired period in seconds

having that in a built-in way would be desirable anyway

Comment by Aleksandrs Saveljevs [ 2016 Oct 11 ]

Related request: ZBXNEXT-3494.





[ZBXNEXT-667] Zabbix SIP/Asterisk Integration Created: 2011 Feb 21  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Marc Schoechlin Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 3
Labels: asterisk
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The following wiki-page http://www.zabbix.com/wiki/howto/config/alerts/notificationsusingasterisk describes basic integration of zabbix to asterisk.

I´m not capable to add ideas this wiki-page because it seems that this is only possible for zabbix-developers.

The following features would be a nice:

  • create a voice-message using a speech synthesizer like festival : http://www.cstr.ed.ac.uk/projects/festival/
  • provide a possibility to add a phone number to user´s media-profile
  • make a call to a configured user
  • provide the possibility to acknowledge the alert in zabbix by using a dialmenu
    ("...hit 2 to acknowledge the alert, hit 3 to restart service,...")

Regards
Marc



 Comments   
Comment by Marc Schoechlin [ 2011 Feb 21 ]
  • The dial-menu should also support the action to skip further alert-calls
    => i.e. disable alerts for the next 60 minutes
  • Deliver multiple alerts in one single phone call




[ZBXNEXT-640] export and import of actions and discovery rules Created: 2011 Jan 28  Updated: 2023 Sep 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Busov Assignee: Unassigned
Resolution: Unresolved Votes: 51
Labels: actions, export, import, networkdiscovery, xml
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

zabbix 1.8.4


Issue Links:
Duplicate
duplicates ZBXNEXT-4758 I want to declare action in template ... Closed
is duplicated by ZBXNEXT-3281 More Robust Exporting/Importing via F... Open

 Description   

IMHO it would be very beneficial to have import/export of discovery rules and actions to xml simply because these represent configuration of automation in ZABBIX. And anybody who spent time configuring ZABBIX would like to have results of such work be easily transferable to another installation.



 Comments   
Comment by viktorkho [ 2013 Jul 22 ]

+1

Comment by gescheit [ 2013 Jul 24 ]

+1
I use script to import configuration and storage it in GIT. It very sad that i cant store all configuration.

Comment by Jon Beilke [ 2017 Mar 13 ]

Yes please +1

Comment by Stephen Jefferson [ 2018 Jul 04 ]

Would be nice to be able to build dev systems without a DB restore and copy these new rules into production without manual effort. Would also be good to store the config in git either manually or ideally using API to automatically back up config with a rollback trail.

Comment by Peter Dobrinov [ 2018 Oct 30 ]

+1
Yes, please.
Since everything is headed to "as a code" it will be great if any configurable thing can be managed as a code. Exported/imported/edited...

Comment by Aleksandr Kichigin [ 2021 Jul 30 ]

+1

I want this to make review of changes through git for many similar zabbix installations.

Comment by dimir [ 2023 Jan 14 ]

Please, do not add comments “+1”, instead, click the “Vote for this issue” link on the right.

Comment by Brian van Baekel [ 2023 Jan 14 ]

+1 for dimir!

And +1 for this request. I think the discovery part is solved right now (at least, the rules come along, discovered entities not yet but for me that is not too important)
Import/export of actions is more important. Although we've got the API option, it's quite annoying that such a 'basic' thing is not possible native from the frontend... If you have one action: who cares. But typically we've got waaaaaaay more actions and the pain starts.





[ZBXNEXT-728] Mail roundtrip monitoring Created: 2011 Apr 05  Updated: 2017 Aug 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.9.3 (alpha)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Dave lu Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi,

It would be great to have a mail monitoring.
The zabbix server sends a mail to an external account where a auto reply is setuped.
And the zabbix server fetchs the mail from the internal mail server.

The reason is to monitor that the mail routing is working.
It would also nice to graph the respond times.

Thanks
Dave



 Comments   
Comment by Gertjan Awater [ 2011 Jul 08 ]

interesting, but how would you match your outbound mail with the auto-reply you fetch from your internal mail server?
Will the outbound testmail receive a queue-ID which is present in the fetched auto-reply as well? Is that always the case or only when used in combination with Sendmail for example?

I think it's easier to monitor stuff like a growing outbound mailqueue, monitoring if port 25 is listening, monitoring if the mailserver has internet connectivity, stuff like that

Comment by Dave lu [ 2011 Jul 08 ]

Hi,

Ipsentry has this feature
http://www.ipsentry.com/details/addin_mailtran.htm

Comment by Marc [ 2015 Nov 07 ]

ZBXNEXT-3039 may possibly help here too.

Comment by richlv [ 2017 Aug 08 ]

a simple solution :

  • periodically send mail with the current timestamp to a mailbox that is accessible in an automated way
  • grab the mails (with getmail, possibly), parse the headers and compare the difference to specific hops

a good approach might be to set "MDA_external" as a getmail destination - that way the parsing script is only executed once per email.
latching onto specific hops is somewhat inflexible (email server changes can break it), but more tolerant parsing might solve that.
difference can be sent to zabbix trapper items that have triggers with nodata() and also check for the hops taking too long.





[ZBXNEXT-504] Unable to change "GUI Messaging Options" for Guest user Created: 2010 Sep 01  Updated: 2016 Jan 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Denis Losakovs Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: consistency, users
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-2930 frontend messaging improvements Open

 Description   

Hello, unable to setup "GUI Messaging Options" for Guest user, can change it only for logged in user in Profile menu.

Thanks



 Comments   
Comment by Oleksii Zagorskyi [ 2010 Sep 01 ]

I propose to add ability to setup "GUI Messaging Options" in user edit form in 'users.php'





[ZBXNEXT-503] Log Scrap Macro Created: 2010 Sep 01  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert Hau Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: logmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any



 Description   

I have several Regular Expressions defined.

I would like a way to capture data from the regular expression and send that into the subject line of the email generated.

Example

Log file.
Problem : userA is breaching its output buffer.
Clear : userA is ok

Email i would like to see is "

{HOSTNAME}

userA is breaking output buffer"






[ZBXNEXT-474] GUI Messaging Float Option Needed Created: 2010 Aug 17  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Robert Hau Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any



 Description   

I would like the GUI Messaging Global Notification to be able to Float in the window. So when you scroll down it stays with you.






[ZBXNEXT-461] Possibility to Limit OIDs per snmpbulkwalk request (like cacti) Created: 2010 Jul 28  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Florian Koch Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: performance, snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I like to see the possibility to limit OIDs per snmpbulkwalk request , this can decrease the load on Monitored devices.






[ZBXNEXT-340] allow to customise web scenario items Created: 2010 Apr 29  Updated: 2019 Jul 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 23
Labels: history, patch, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File enable_set_history_trends_on_web_monitoring.patch    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-1913 Increase the history and trends for w... Closed

 Description   

currently there is no customisation available for web monitoring items - history and trend keeping is hardcoded etc.

edit : history & trend retention periods are probably enough

there should be a way to modify these values at least on a scenario, if not step level



 Comments   
Comment by Takanori Suzuki [ 2011 Aug 11 ]

Hi.

I made a patch for 1.8.6 to editable the history and trend keeping of web monitoring.
I added history and trend fields to scenario editing screen.
Could you pull my patch?

Comment by Filipe Paternot [ 2014 May 29 ]

Yes, the default values are too large for large setup deployments..

Allowing to customize it at Scenario level is enough to my case, but some may want to do it at step level too.

Comment by Ismael Ricardo Packer [ 2019 Jan 28 ]

Helo.
This should be easy to fix, could we get it soon?





[ZBXNEXT-268] Creating new host with same IP or DNS name doesn't give an error Created: 2010 Mar 05  Updated: 2012 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Dan Gherman Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix frontend php v1.8.1



 Description   

How to reproduce:
From the GUI (php frontend) go to Configuration - Hosts - Create Host
In the "DNS name" OR "IP Address" field put an IP that is already allocated to another existing Host.

Expected result :
Zabbix should split a message that the DNS name or the IP belongs already to a device, eventually asking if you want to continue or not adding the host.

Actual result :
The host is added with no warnings or errors.



 Comments   
Comment by richlv [ 2010 Mar 07 ]

that is actually a common setup - for example, when running multiple agents on different ports (think zapcat)

thus this is more of a feature request than a bugreport





[ZBXNEXT-380] Customize font in map labels Created: 2010 May 26  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ricardo Santos Assignee: Unassigned
Resolution: Unresolved Votes: 29
Labels: font, maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Costumizing font and colours for labels in maps would increase it's usability in monitoring screens.



 Comments   
Comment by richlv [ 2010 May 26 ]

you can define font in defines.inc.php file - would that be enough ?

Comment by Ricardo Santos [ 2010 May 26 ]

For me yes.

But for the sake of GUI administration that zabbix has, I don't think so. Or else it will became naggixx.....

Comment by Ricardo Santos [ 2010 May 26 ]

Wrong explanation from me.

What I think it's nice to have is an element in map which is a label that we could change the font and font color.

Comment by richlv [ 2010 Jun 07 ]

ok, so something like a new map element "label" or "text", where one can specify font, font size & colour ?

while that could be done with an image as well, it would be more convenient to have such a functionality built in, and it would also allow to specify macros in such labels.

Comment by Ricardo Santos [ 2010 Jun 07 ]

The images are not suitable for macro labeling.

Imagine that we want to inform in a screen (for management for example) the number of accesses in a day. A label like that woud be useful because it would allow to print that information on a map in a graphical and attractive way.

Comment by dougbee [ 2012 Feb 23 ]

In addition, I'd like to be able to create maps with a dark background (to match the nice "Dark blue" theme); this is possible by using a background image that's simply all black. However the end result is unattractive black-on white labels. Custom font colors would fix the issue.

Comment by richlv [ 2012 Sep 05 ]

patch available in ZBXNEXT-1311

Comment by richlv [ 2012 Sep 07 ]

ideally, both font & font size could be chosen for as many elements as possible (title, element name, status, timestamp, zabbix url...)

Comment by Raymond Kuiper [ 2014 Apr 17 ]

Perhaps using a BB or wiki style formatiing might be an option as well. This way tags could be used to genereate bold, italic, etc.

Comment by Ebonweaver [ 2015 Apr 15 ]

Since you can put in variables for a label to pull item data, I would love to see the abitlity to use basic html at the very least to change font, size, color, style. For example I have labels that are entire blocks of text with several lines of labels followed by different data being pulled to create a list of current supply levels on printers. I'd love to be able to bold the first line with a b tag (printer name) and underline each item with a u tag (black, cyan, etc) while leaving the data normal. It would make it much more readable.
That's a basic starting point, if you wanted to add a WYSIWYG editor that would be amazing.

Comment by richlv [ 2017 Mar 26 ]

this issue has become slightly unclear. is it about adding custom labels with data ?
is it about customising element labels ?

should be clarified. as a sidenote, it could have been solved by ZBXNEXT-2031, but looks like the current implementation does not solve it.

Comment by Ebonweaver [ 2017 Mar 26 ]

Not sure what you're getting at. To me, custom labels with data and customizing the labels on an icon (is that what you mean by element?) are the same thing. When you add an icon to a map, the label is either static text, macros to call data, or both. In any of these cases, being able to change font style, size, and color, not just in one way on all text on a given icon, but multiple places in that label, would be great.

In other words, I have an icon that is a printer of type host. In its label I have:

{HOST.HOST}
Status......{{HOST.HOST}

:HPPrinterStatusMessage.last(0)}
Device......{{HOST.HOST}:HPDeviceStatus.last(0)}
Printer......{{HOST.HOST}:HPPrinterStatus.last(0)}
Yellow......{{HOST.HOST}:prtMarkerSuppliesLevel.1.1.last(0)}
Cyan........{{HOST.HOST}:prtMarkerSuppliesLevel.1.3.last(0)}
etc...

So for example if we could use HTML in the label, I could do something like:
<b><font size=4>

{HOST.HOST}</font></b>
<u>Status</u>......{{HOST.HOST}

:HPPrinterStatusMessage.last(0)}
etc...

This allows us to format size, style, and color of the text portions in a label.
As for the map name itself, that also should have format options, including being hidden. Some times we don't want the name on the map. Some times we'd like the name to be much more prominent or a different color, or both.

Past that having free text elements rather than needing to do something like have an icon that is a little blank png would be nice, but that's somewhat past this initial request I think.
And just to say it, though again past scope probably, if trigger interpretation was available in text macros and this requested formatting that would be really sweet. For example:
Status......{{HOST.HOST}:HPPrinterStatusMessage.last(0)

{Trigger(triggername).Host}

:colors(green,red)}}
So not an html function at that point, but a macro saying if the trigger of [name] on the host (of this host icon) is in state ok make the text green, if in problem make it red. I probably propose this in a totally insane way format and function wise, just laying out the concept.

Comment by Ebonweaver [ 2017 Mar 26 ]

Not sure why extra line returns are being randomly inserted into the code examples I posted but I can't seem to remove them...

Comment by Jack Valko [ 2018 Jan 03 ]

This is still an issue in 3.4.

We have these great looking maps with tiny tiny text that no one can read from a distance. New dashboards make this issue worse because map images in widgets generally scale down.

Having the option to enter a font_size for a map element would fix this.

Comment by Scrooch [ 2019 Jan 23 ]

It's still problem...

Comment by Radek Pavlík [ 2019 Aug 23 ]

Maybe we need only CSS custom configuration? Its realy that hard to modifiing Map fonts?

Comment by igors [ 2020 Feb 13 ]

Font size and color should be cusotmizable for each map element, that's obvious thing, why developers are so stubborn on this one?

Users are forced to get some 3rd party gui for monitoring dashboards because of lack of simple to implement functionality.

 





[ZBXNEXT-277] Use a 'webticker' to show ack Created: 2010 Mar 18  Updated: 2013 Sep 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.2, 2.0.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Luciano Alves Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 1
Labels: screens
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I think is nice to have a 'screen element' like this: http://www.mioplanet.com/rsc/newsticker_javascript.htm

So we can use this ticker in screens or trigger status screen to see all acks inserted by users.

Today (in trigger status) we only know if a 'event' have 'acks' but we can't see what info was inserted.

Some good uses to this:

  • customers can put this 'acknoledge panel' in their 'intranets' ??!?!?!?
  • managers can see what their guys are doing if each event ??!?!?!?
  • other monitoting teams (fisical locations) can be up to date about event actions ?!?!?!?
  • our guys can see fast what actions are taken ...

[]s,
Luciano



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 14 ]

The referenced page is no longer available. Any other example?

Comment by Marc [ 2013 Apr 23 ]

Would like to see an example too

Comment by Marc [ 2013 Sep 22 ]

I can imagine that a ticker that can be fed manually or be fed by dedicated action operation could be valuable as well.
In each case I'd like to control ticker presence in user profile - beside of having it available in screens





[ZBXNEXT-10] Need a command-line import/export facility Created: 2008 Jan 14  Updated: 2020 Mar 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marty Shannon Assignee: Unassigned
Resolution: Unresolved Votes: 66
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Feature missing from 1.4.4.


Issue Links:
Duplicate
is duplicated by ZBXNEXT-3281 More Robust Exporting/Importing via F... Open
is duplicated by ZBXNEXT-240 Need a command line tool (maybe using... Closed

 Description   

I'd like to have a facility for import/export on the Zabbix server itself. As it stands now, using the web-based import/export is limited by the bandwidth between my laptop and the Zabbix server; sometimes that is as low as modem speeds (painful!).



 Comments   
Comment by Cal Sawyer [ 2009 Sep 10 ]

Very good idea, esp if it included status reporting. Very large imports/exports can take a long time to complete or exceed the PHP memory cache. Also would help keep exported data local to the system instead of loading to user's local system.

Comment by Dmitry Maksimov [ 2010 Jan 14 ]

Very good idea. I need dynamic items, triggers and graphs for monitoring different network equipment. For example: I need print Port Description in the title of graphs. Port Description is changing during the time.
My algorithm is working as following:
perl script is pooling SNMP requests for each network device one time per day and creates XML configuration file for each device. After that script is importing new configuration file to Zabbix server via command-line Import/Export facility. Due to this process I have actual Port Description in graphs any time.

Comment by Cal Sawyer [ 2010 Jan 14 ]

I was under the (probably mistaken) impression that this was going to be implemented in 1.8? Import/export is limited by network bandwidth and PHP upload_max_filesize. There is no feedback during the process, so you can wait a very long time before the process bombs out with errors. It is virtually impossible for me to export even a small portion of my installation. It seems to me that Apache-PHP is the limiting factor here - command-line i/o that doesn't depend on other subsystems would be way more efficient.

Comment by Raymond Kuiper [ 2011 Apr 13 ]

I believe nelsonab is working on a zabcon extention for this?

Comment by richlv [ 2011 Apr 24 ]

probably the most feasible approach is to have an api call to send xml to it, then other tools like zabcon could just pass xml to the api.

of course, php limits would still apply, thus maybe there should be an api call to get max upload filesize so that external tools could check immediately that process will not error out ?

Comment by nelsonab [ 2011 May 08 ]

Adding full XML import to Zabcon is in the works using the existing API, when XML import is added to the API Zabcon will be fixed to allow for that.

Comment by Lauri Pitkänen [ 2011 May 10 ]

Sorry but I think that the mentioned Zabcon feature should be another (useful) feature request. But this ZBXNEXT-10 request should be strictly about command line C-programs like "zabbix_import" and "zabbix_export" that import or export the XML-files with the same schema as the web interface ones directly to the database without using the API.

For example we have thousands of hosts that we need to import automatically on a daily basis. Currently we use custom made HTTP client to handle the import through web-interface. It takes 1.5 hours to import all hosts. We almost started a project to import our data directly to the Zabbix database but I guess we should finally sponsor this missing core feature.

Comment by richlv [ 2011 May 18 ]

wouldn't it be better to make api perform better, thus making it the only externally automated interface ?

Comment by Raymond Kuiper [ 2011 May 18 ]

I agree that concentrating on API is a logical approach. However, a lot of users don't have time for (or interest in) researching the inner workings of the API interface just to load a bunch of templates.

So it would still be very handy if a small tool command line tool could be provided to easily bulk import/export multiple XML templates.
This is especially true if people are using DM which doesn't replicate templates to multiple nodes by itself.

I don't think it would be a problem if this tool would use the API functionality under the hood.

Comment by Vance Turner [ 2012 Jan 05 ]

I was a key deployment engineer at BMC and wrote the Excel/Perl/command Line integration toolset that imports and exports the system wide configurations of the monitoring. If I could get zapcon and get it working, it doesn't take a lot for me to migrate the perl to the zapcon command.

What I would need help with is the queries to the mysql or other databases to export the data back into excel.

Any takers?

Comment by richlv [ 2012 Aug 10 ]

api now has import/export feature which accepts xml directly.
http://www.zabbix.com/documentation/2.0/manual/appendix/api/configuration

Comment by Raymond Kuiper [ 2012 Aug 30 ]

Nelsonab, any plans of including the new xml api functionality in Zabcon?

Comment by richlv [ 2012 Aug 30 ]

you can actually do that with zabcon, raw json and some parsing

Comment by Raymond Kuiper [ 2012 Aug 30 ]

Yes, but that would require json knowledge...in that case we could just as well use curl

Comment by Raymond Kuiper [ 2012 Aug 30 ]

My point here is that we need a 'simple' way of doing this to people who don't code can issue a simple command in a terminal window and get a download of the templates they wanted. Zabcon can fill that gap (easy to setup and the build in commands are fairly simple).

Comment by Diego Narducci Arioza [ 2017 Sep 26 ]

news ?

Comment by Andrea Biscuola [ 2020 Mar 29 ]

Just to spam a project I was working on to solve this kind of problems:

https://github.com/abiscuola/zc-portable

If anybody wants/needs help, just write me.





[ZBXNEXT-694] ability to check multiple values in fuzzytime function Created: 2007 Sep 28  Updated: 2011 Mar 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexei Vladishev Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hmm, interesting question. Even if the processing will be super-fast, we still have a chance of slow comunications, slow-downs on agent side, etc.

I think that the best solution would be expanding of the function to support second parameter which would specify how many last values we compare with ZABBIX server's system time. Like:

fuzzytime(5, 3) - if all 3 most recent values are within 5 seconds range, return 0

Will it help?

http://www.zabbix.com/forum/showthread.php?p=27268






[ZBXNEXT-690] Embed slideshow in screen Created: 2007 Sep 28  Updated: 2012 Oct 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexei Vladishev Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I would like to be able to to put a slideshow into a screen, this would enable me to have a single page screen with each element being a slideshow, each slideshow would be a rolling show of screens for a server.

So I would have, say a 4 by 4 screen, each element would be a 5 screen slide show, each screen would should server load, cpu, disk, mem, etc

http://www.zabbix.com/forum/showthread.php?t=7862



 Comments   
Comment by Raymond Kuiper [ 2012 Oct 15 ]

Good idea! Make sure that there is a check on recursion.





[ZBXNEXT-73] Allow secondary groups for agentd on linux (to read logs, execute programs) Created: 2007 Nov 15  Updated: 2013 Dec 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Johan Fischer Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos 5 i386 / x86_64



 Description   

I'm running the zabbix agentd daemon (from the initscripts) and as expected it's dropping privileges to the zabbix user.

It would be greats is the process could use the secondary groups of the zabbix user defined in /etc/group, this way I could read log files with the permissions 0640, or execute script to very database files with the permissions 0640.

I read the man page for setgroups (function to use to add secondary groups to current process), and it's not POSIX .1-2001 compliant:

CONFORMING TO
SVr4, 4.3BSD. The getgroups() function is in POSIX.1-2001. Since set?
groups() requires privilege, it is not covered by POSIX.1-2001.

is that the reason why it's not implemented in src/libs/zbxnix/daemon.c ?
Or is it because it's another security risk to let a process use more than one group ? (in that case, we could control that with a flag authorizing or not the usage of secondary groups in agentd.conf ).

Thanks.



 Comments   
Comment by Marc [ 2013 Dec 22 ]

might be related to ZBXNEXT-195





[ZBXNEXT-290] colour triggers in map link status indicators' list Created: 2010 Apr 01  Updated: 2015 Apr 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: linkindicators, maps, trivial, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

when editing map link, show link indicator trigger severity by colouring the background.

colouring would be preferred, as when triggers are sorted by priority, just knowing whether it's the same or different would be enough, and adding severity column would make the form even wider (it's already wide enough, as trigger names tend to be long)






[ZBXNEXT-398] Allow display of SNMP_OID for SNMP items in Config->Items Created: 2010 Jun 04  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Cal Sawyer Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be really useful to be able to view the snmp_oid associated with Items in CONFIGURATION OF ITEMS and to be able to sort on them, especially when you're modifying an SNMP-based template. Perhaps it would be possible to select either key or snmp_oid in the Key column?



 Comments   
Comment by richlv [ 2010 Jun 04 ]

maybe take it one step further - ability to define which columns to display

Comment by Cal Sawyer [ 2010 Jun 04 ]

Definitely! Is there any hope of this makiing it into an upcoming version? Sounds like you guys have a cunning plan ...

cheers

Comment by richlv [ 2010 Jun 07 ]

as far as i know, there are no specific plans about this functionality currently





[ZBXNEXT-369] Host Group "Subscriptions" Created: 2010 May 20  Updated: 2023 Apr 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Cal Sawyer Assignee: Unassigned
Resolution: Unresolved Votes: 31
Labels: permissions, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 1-user-role-without-configuration-administration.png     PNG File 2-user-group-permissions-does-not-matter.png     PNG File 3-user-belongs-to-host-group-read-all.png     PNG File 4-user-is-having-super-admin.png     PNG File 5-result-minimal-look.png    
Issue Links:
Duplicate
duplicates ZBX-13507 Web inconsistency / usability: new ho... Closed
is duplicated by ZBXNEXT-1017 New 'User type' - 'Read only Zabbix U... Closed
is duplicated by ZBXNEXT-3943 Add group permissions on new host-groups Closed

 Description   

Whenever i configure a new site, it may involve the creation of several new hosts groups. I inevitably forget to extend permissions for the user groups who need to view them. I propose some system of Subscriptions where a given user group automatically obtains R/O or R/W permissions for some "super-group" and all subgroups. This might also require the ability to set host group hierarchies ... somewhere.



 Comments   
Comment by richlv [ 2010 May 20 ]

maybe short term solution could involve link to set permissions while/after creating a new group

Comment by Tiago Cruz [ 2018 Jul 10 ]

Hello,

There is no other way to set "read only" to "all" groups to some user, example, grafana?

From 2010 to 2018, nothing has changed in this way to easier this task and avoid inconsistencies dashboard with missing hosts?

 

Thanks!!

Comment by Aigars Kadikis [ 2021 Sep 29 ]

It is conceptually silly, but I will publish this idea anyway.

 Warning: This is NOT applicable for multitenant environment! Stop reading if you have multitenant environment!

A workaround is available starting with Zabbix 5.4.

For companies where "one team" = "one dream" and it's OK if everyone can see everything, then it is possible to create a user which belongs to "Zabbix Super Admin" role but forbid this role to have access to "Configuration" and "Administration" section.

On a surface level it looks like read only user, but underneath the hood it is super admin. Practically, this user cannot do any harm to the instance, because all administrative API methods (UI are built on top of API) are forbidden.

This configuration solves problems:

1) Never touch the user group management again. New groups are automatically visible.

2) It will be the maximum speed for the user experiences. It will be a significant boost for instances with 10000+ hosts.

Here is how to configure user:

User role:

It does not matter what kind of host groups we give to User group:

Set the user group to belong to some imaginary host group

The user role is "Super Admin"

Result: we have a very limited platform:





[ZBXNEXT-90] support placeholders in filenames Created: 2009 Sep 28  Updated: 2021 Oct 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Thomas Mueller Assignee: Unassigned
Resolution: Unresolved Votes: 13
Labels: item
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-496 improved item key: regexp for vfs.fil... Closed

 Description   

sometimes we need to check if a file with a date (or another variable part) in the name existis (or what size it is, etc).

Examples:

vfs.file.exists[/var/log/application2000/log%Y%m%d%.log]

vfs.file.exists[/var/log/application2000/log*.log]

vfs.file.exists[/var/log/application2000/log([0-9]|[A-Z]).log]



 Comments   
Comment by Fabrizio LaPorta [ 2015 Jun 29 ]

I could use this feature right now. Please add it soon.

Comment by lvyanrong [ 2016 Dec 22 ]

When will the issue be resolved, anyone knows?

Comment by lvyanrong [ 2016 Dec 22 ]

I get another way to check file exist. Add UserParameter in zabbix_agentd.conf to fix this .

Comment by Vucomir Ianculov [ 2018 Jul 11 ]

When will the issue/feature be resolved?

Comment by Alex Kalimulin [ 2021 Oct 11 ]

vfs.dir.count[] seems to cover exactly this use case. Closing in a couple of weeks unless there are objections.





[ZBXNEXT-79] ability to filter discovery by ip Created: 2009 Sep 16  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: discovery
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

monitoring -> events, source discovery.

ability to filter by ip would be useful, allowing to search for freely defined string (so that searching for part of ip is possible)






[ZBXNEXT-1870] Add "copy/duplicate" ability to drag-and-drop of elements when editing screen Created: 2013 Aug 22  Updated: 2013 Aug 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Maxim Krušina Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Now we can drag and drop elements when editing screen as a table. What should be really great timesaver is optin not to only "move" but also a "copy" element, so I can duplicate element and then just fine-tune differences. It can be solved for example by holding alt key when doing drag and drop, possibly with a change of mouse cursor... yep



 Comments   
Comment by richlv [ 2013 Aug 22 ]

alt would definitely not do, as it would just move the window for me, but a popup menu like in kde might do

Comment by Maxim Krušina [ 2013 Aug 22 ]

anything would be great
coz adding more and more mikrotiks manually to tables makes me crazy

Comment by Oleksii Zagorskyi [ 2013 Aug 23 ]

http://blog.zabbix.com/maps-for-the-lazy/2898/

Comment by Maxim Krušina [ 2013 Aug 23 ]

Oleksiy> yep, already read that blog, anyway this is about editing "screen", not "map"





[ZBXNEXT-1871] Add "Host inventory" into elements which can be added to screens Created: 2013 Aug 22  Updated: 2016 Nov 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Maxim Krušina Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: inventory, screens, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screen Shot 2013-08-22 at 16.39.47.png    

 Description   

When I have table of some devices (typically servers, routers, nases, etc.). I'm putting on the top of table some basic info about each device, like current os version, name, serial number etc.
I just imagined that it can be done much more easier by adding "Host inventory" as a screen element, which can contain just some nice table with two columns showing all data populated in inventory.



 Comments   
Comment by Raymond Kuiper [ 2016 Nov 30 ]

If this were to be developed, I'd like to be able to select which inventory fields would be shown.





[ZBXNEXT-2768] Parameter to expand {ITEM.VALUE} macro for event.get API Created: 2015 Apr 08  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 2.2.9, 2.4.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Kodai Terashima Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: api, event, macro, trigger
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

event.get API method cannot get its expanded name directly, need to get objectid and get expanded name using trigger.get.

However, trigger.get with expandDescription expands {ITEM.VALUE} same as {ITEM.LASTVALUE}. There is no way to get correct event info from API like frontend events screen.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Apr 08 ]

See also ZBX-6491

Comment by Oleksii Zagorskyi [ 2016 Apr 05 ]

I've tested, and looks like even after the ZBX-6491 fix, the {ITEM.VALUE} is expanded same as {ITEM.LASTVALUE} using the trigger.get API method.

So current request is still actual.

I feel that the trigger.get method needs an additional parameter which will define how to expand the {ITEM.VALUE} macro.
Because API can be used for both tasks:

  • managing configuration using own frontend - should be expanded as {ITEM.LASTVALUE}
  • displaying current problems - should be expanded as {ITEM.VALUE}

But currently there no way control the macro substitution.

Comment by richlv [ 2017 Apr 22 ]

note that there are two things desired - trigger name expansion for event.get and ITEM.VALUE expansion support. this might have to be split in two feature requests, if not implemented in one go.





[ZBXNEXT-2827] Macro support on host inventory Created: 2015 May 22  Updated: 2015 Jun 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Paulo Soares Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: inventory, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Red Hat 8
MySQL 5.5
Zabbix 2.4.3



 Description   

Issue: Use macros to populate Inventory of hosts

I'm trying a way to automate network maps creation. And because of icon mapping uses inventory info, i wanted to put there useful info, in a easy way of course, remembering a huge amount of hosts that we have.

So, i wanted to populate "nickname" inventory field with a simple macro {HOST.NAME} and mass update option. But the inventory can't processes that Macro and nickname still "{HOST.NAME}" and can't change icons accordly the name of the host.

Sorry for any english error, and if someone don't understand fell free to ask.

I really don't want to populate all hosts with his hostname on the inventory tab.



 Comments   
Comment by Aleksandrs Saveljevs [ 2015 May 25 ]

Meanwhile, you can probably populate that inventory field with the value of "system.hostname" item.

Comment by Aleksandrs Saveljevs [ 2015 May 25 ]

See also ZBXNEXT-2828, which describes another workaround using echo[] item.

Comment by Paulo Soares [ 2015 May 25 ]

Aleksandrs, i can't use "system.hostname" because the real hostname not always match the hostname that is assigned to it on Zabbix. On Zabbix i can assign a name with some sort of equipment identification, like "SWT_SAO_PAULO_01" for a switch. That's is why a macro would be so useful to me.

Comment by Paulo Soares [ 2015 May 25 ]

My actual workaround is use mass update for the hosts of the same type, and assign them the same Inventory info and register an icon mapping that matches that inventory info. For now, this solves my problem.

Comment by richlv [ 2015 Jun 03 ]

related to ZBXNEXT-1437





[ZBXNEXT-2817] Statuses for event acknowledgement Created: 2015 May 18  Updated: 2015 May 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.2.9, 2.4.5
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Kodai Terashima Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: acknowledgements, dashboard, escalations, events
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently event acknowledge has only two status, not-acknowledged and acknowledged. Escalations will be stopped and events will disappear from dashboard if events status become acknowledged status.

There's a case I want to mark events to "confirmed" status, not stop escalations and still visible on dashboard.

Also sometimes I make mistakes to add acknowledge message to incorrect events. This case I want to change back the events to not-acknowledged status.

For those case, some statuses for acknowledge is useful for that case, like ticket management system:

  • not acknowledged
  • confirmed
  • In progress
  • Fixed - stop escalations
  • Closed - hide from dashboard


 Comments   
Comment by richlv [ 2015 May 18 ]
  • leaving comments w/o acknowledging is a duplicate of ZBXNEXT-1629
  • "unacknowledging" an ack is a duplicate of ZBXNEXT-1882

note that escalations, dashboard and other places are customisable based on ack status (operation condition, frontend filters), they do not always take it into account - that's a user preference. having a hard dependency would remove that flexibility





[ZBXNEXT-2585] zabbix Packages: postremove script assume zabbix server/proxy are running Created: 2014 Nov 11  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: PICCORO Lenz McKAY Assignee: Kodai Terashima
Resolution: Unresolved Votes: 0
Labels: packaging
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

operating system Debian



 Description   

When purge the zabbix server packages (any) and the serve are not runnign a error raised, due script postrm/prerm assumes that a possitive result must return from killed proces

sysmonitor:~# /etc/init.d/zabbix-server stop
Stopping Zabbix server: zabbix_server.
sysmonitor:~# aptitude
(Reading database ... 26430 files and directories currently installed.)
Removing zabbix-server-pgsql ...
Stopping Zabbix server: zabbix_serverNo process in pidfile `/var/run/zabbix/zabbix_server.pid' found running; none killed.
Purging configuration files for zabbix-server-pgsql ...
zabbix_server: no process killed
dpkg: error processing zabbix-server-pgsql (--purge):
subprocess post-removal script returned error exit status 1
Processing triggers for man-db ...
Errors were encountered while processing:
zabbix-server-pgsql
E: Sub-process /usr/bin/dpkg returned an error code (1)
A package failed to install. Trying to recover:

I suggest (no that those packages are not officialy from debian and not have the debian certification)
usage or "killall" if a non spected result are returned from stop service command, or at leas revise the pid file if still exist

NOTE: the server process must be killed due if thi are not killed database purge cound not performend if postgresql or sqlite are configured.
NOTE2: same for proxy cases...



 Comments   
Comment by PICCORO Lenz McKAY [ 2014 Nov 11 ]

another problem its that script do not stop the sever/proxy process if only remove the package.. so then database removal could not performed.. that its in line 14 of postrm of script

Comment by PICCORO Lenz McKAY [ 2014 Nov 11 ]

postrm scritp removes config files before ucf purge the configuration file if "purge" are th case of deinstallation of package





[ZBXNEXT-2493] Program flow charts of Zabbix processes Created: 2014 Oct 04  Updated: 2014 Oct 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: usability, workflow
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I think that having individual flow process charts of Zabbix processes and possibly other work flows as well would greatly improve understanding and developing Zabbix.

  • From a developer perspective it allows a functional overview and to make logical tests of new or changed flows, without writing one line of code
  • From a user perspective this reveals what exactly is going on under the hood without reading one line of code.

Although this would probably need a significant initial invest.
Nevertheless, I'm convinced that it pays off. Keeping the flow charts up-to-date then could be part of specification/development process and additional effort should be comparably low.



 Comments   
Comment by Marc [ 2014 Oct 05 ]

Hmm, since there is software available that can easily produce very high quality control flow graphs (beside other awesome stuff, btw) based on existing source code, this ticket is probably of low interest to developers.

From a (non programming skilled) user perspective it might be more valuable to have just "simple" flow diagrams than program equivalent control diagrams.

So, possibly rather a community task...





[ZBXNEXT-2502] Maintenace calendar Created: 2014 Oct 08  Updated: 2014 Nov 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.4.0, 2.4.1
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: callistix Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

all



 Description   

It would be nice if zabbix would have a calendar page to show all maintenance periods.
A great feature would be an "export to .ics" function and if people could subscribe to it.



 Comments   
Comment by Volker Fröhlich [ 2014 Nov 12 ]

Connected to ZBXNEXT-537





[ZBXNEXT-2424] Host maps Created: 2014 Aug 28  Updated: 2014 Sep 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.2.5
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: hosts, maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File hostMaps.png    

 Description   

Well, host maps like host screens.



 Comments   
Comment by richlv [ 2014 Aug 28 ]

any use case ?

Comment by Marc [ 2014 Aug 29 ]

The idea came up by the wish to have a visual overview about which database is configured to be used as master or slave of an application instance.
Think of having always two application servers that may be configured to use one database as master and another database as slave out of three databases.

Now when having lots of application instances one has to maintain dedicated maps.
In this simple example are six links with 12 triggers = no fun
one (application) host had to be removed. so 3 links with 6 triggers = still no fun

Initially exporting the map, making lots of copies, updating the copies according instance and finally importing the new maps works. But as soon as something needs to be adjusted it doesn't help much.

Comment by richlv [ 2014 Aug 30 ]

thanks, but what exactly could be implemented to improve it ?

Comment by Marc [ 2014 Sep 01 ]

A host screen allows to be build once on template level and may consist of elements available on that level.
This host screen is then available for every to the respective template linked host.
For the template based elements the corresponding host level elements are used.

Host maps could provide the same for map elements.

Admittedly this is probably of little benefit to most people.

Comment by richlv [ 2014 Sep 01 ]

ok, got the idea. would work best for people that use host to describe a more complex system where it makes sense to visualise them individually.





[ZBXNEXT-2458] Ability to rename discovered host in actions Created: 2014 Sep 12  Updated: 2019 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Evgenii Terechkov Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: actions, discovery
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be very useful, if we can add "Rename host" to "Operations" on discovered hosts. SNMP or agent information can be used as hostname source.

In 2.4 branch, documentation stated that discovered hostname can be pulled only by reverse-DNS lookup.



 Comments   
Comment by Евланов Александр Викторович [ 2019 Feb 14 ]

I think, this is a very important issue, because IP's as hostnames is not good.

Zabbix may

  • use reverse lookup like nslookup -query=ptr {HOST_IP}
  • use value of some SNMP metric from host
  • use ssh {HOST} hostname

etc...
Force users to write scripted hooks to be fired by discovery action - is a very bad solution.





[ZBXNEXT-2348] Possibility to make caches persistent over process restart Created: 2014 Jun 18  Updated: 2017 Jan 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: cache, performance, startup, valuecache
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

What about having the option to dump the value cache to file system on shutdown with the possibility to pre-warm the cache based on that dump on start-up?

Even a rather small value cache utilization of a couple of hundred megabytes may be based on hours of database queries on start-up.
The desired functionality of dumping and pre-warming the cache(s) is mainly intended to be used in user controlled circumstances only.
However I could even think of ways of implementation that could speed up start-ups after crashes as well.

In the end it should be optional.

While the real cause is related to value cache, other caches might possibly benefit from this too.



 Comments   
Comment by richlv [ 2014 Jun 18 ]

on one hand this wouldn't help that much with longer downtimes - but the dump could also be partial - for example. containing info on items that do not have any values at all

Comment by Marc [ 2014 Jun 18 ]

Yes, of course.
On the other hand it wouldn't harm either.

For maintenance, reconfiguration or short outages it might allow very fast recovery to normal operation.

Comment by Marc [ 2014 Jun 18 ]

Distantly related: ZBXNEXT-1686 and ZBXNEXT-2588





[ZBXNEXT-2291] No way to update the authentication type from internal to ldap or http via zabbix api Created: 2014 May 07  Updated: 2022 Nov 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Harpreet Kaur Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: authentication
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-4268 Authentication API Closed
Sub-task
part of ZBXNEXT-5673 API method for global configuration c... Open

 Description   

There is no api to update the authentication type from intenal to http via zabbix api. From UI only this parameter can be updated. This is a limitation.



 Comments   
Comment by Gregory Chalenko [ 2022 Nov 29 ]

To change user authentication type to LDAP you need to add user to user group with frontend access set to LDAP. To change back you will need to remove user from that user group. As for HTTP authentication: HTTP Basic authentication is done on webserver level therefor API cannot control it, SAML authentication can be used for any Zabbix user with frontend access set to Internal.





[ZBXNEXT-2290] Support discovering MAC on Windows via system.hw.macaddr Created: 2014 May 06  Updated: 2014 May 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Gene Liverman Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: items, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows clients



 Description   

We are in need of collecting MAC addresses on Windows like we do on Linux as it is frequently the only consistent thing. Most of our desktops have onboard NIC's so the MAC generally stays the same where as they get their address via DHCP and may have their names changed regularly. I would love to see all the things in ZBXNEXT-1197 but this request is just for leveling the playing field between Windows and Linux clients. Windows exposes this in many ways, including via the registry.






[ZBXNEXT-2255] Queue should list only separate items by status Created: 2014 Apr 11  Updated: 2014 Apr 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Proxy (P), Server (S)
Affects Version/s: 2.2.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Filipe Paternot Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: notsupported, queue, unavailable
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Centos 5.8 64bits



 Description   

Administration -> Queue should create different lists items by status.

For example:

  • items that the host is failed (network error, other errors, ...)
  • items with big update interval (1+ hour, once a day)
  • not supported items

This would make a lot easier to diagnose, since we wouldn't need to debug every single item on the queue trying to keep a clean environment.



 Comments   
Comment by Oleksii Zagorskyi [ 2014 Apr 12 ]

About items with "network errors" - see ZBX-4286

About not supported items - there is some discussion in ZBX-8058

Comment by Oleksii Zagorskyi [ 2014 Apr 14 ]

(1)
Well, in ZBX-4286 we with Sasha ended up that the queue is for "performance only".
I.e. it's not a tool for network problems troubleshooting.

Would worth to explicitly mention that "Queue doesn't show items from hosts which are Unavailable".
https://www.zabbix.com/documentation/2.2/manual/config/items/queue

I think next:

However, due to lacking server performance, connection problems or problems with agents, some items may get delayed and the information is displayed in this section.

on https://www.zabbix.com/documentation/2.2/manual/web_interface/frontend_sections/administration/queue should be reviewed. I mean "connection problems" could be wrong here.

Consider to merge page "config/items/queue" to "web_interface/frontend_sections/administration/queue" page. I don't see much sense to have 2 pages, which are very similar. Moreover, the "config/items/queue" page doesn't very fit to Configuration section, there are nothing "to configure".

Comment by Oleksii Zagorskyi [ 2014 Apr 14 ]

(2)
Configuration -> Hosts menu in Filter section should get a new drop-down. It will allow to filter by 5 modes:
"Any types of Unavailable|Unreachable hosts" and 4 types - Agent, SNMP, IPMI, JMX types separately.

Note Unavailable|Unreachable - both should be included. Currently only Unavailable are displayed as a red corresponding icon.

It will provide an ability to frontend user to filter such hosts and investigate them.
It's 1st part of an answer on question why ZBX-4286 has been closed.

Comment by Oleksii Zagorskyi [ 2014 Apr 14 ]

(3)
New internal key should de introduced - to monitor Unavailable hosts.
For example we could extend an existing "zabbix[hosts]" key.
It could be:
zabbix[hosts,<all|unavailable|unreachable>,<all|agent|snmp|ipmi|jmx>] - "all" are defaults.
I think separating unavailable|unreachable also have a sense. Of course unavailable hosts include unreachable ones, but "unreachable hosts" metric would have its own good sense.

This is 2nd and last part of answer why ZBX-4286 has been closed.
This will help (on server side) to monitor possible problems which are not included to queue monitoring.





[ZBXNEXT-2259] Add LLD SNMP community user macros support Created: 2014 Apr 14  Updated: 2015 Oct 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Paul Zotov Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: community, macros, patch, snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

*


Attachments: Text File zabbix_2.2.2.lldp.community.snmp.macros.patch    
Issue Links:
Duplicate

 Description   

when we needs get some values from specific device, like BreezeMAX 3500 (Alvarion) via snmp, community must contains MAC address of subscriber unit, it looks "[email protected]_su". If we use lldp for template (autogeneration units for SU's of device), we need support of include user macros for community string. I try to resolve this, and created patch, which added this feature.






[ZBXNEXT-2231] [Patch] Implement bulk retrieval for JMX items Created: 2014 Mar 29  Updated: 2018 Jan 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Java gateway (J)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: A B Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: bulk, javagateway, patch, unsquashable
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File bulk-jmx.patch     File zbxnext-2231-v34.patch     File zbxnext-2231-v345.patch     File zbxnext-2231.patch    

 Description   

Currently the Java gateway sends a separate JMX getAttribute() request for each item. This is quite wasteful, as JMX supports bulk retrieval via getAttributes(). Furthermore, for items from composite objects the gateway currently ends up requesting the exact same object multiple times (in our case we literally have about 100 items in one composite object, so the object is being fetched 100 times, forcing us to add special caching on the server for this object). The result of this is a noticeable load on our monitored servers.

The attached patch implements bulk retrieval in the gateway, including for discovered items. The approach is basically:
1. group all requested items by jmx-object (so we can do a bulk attribute retrieval for each), and for each jmx-object collect the list of (top-level) attributes (so composite objects are only retrieved once)
2. if discovery is requested, do discovery and add those items to the groupings from the previous step
3. for each jmx-object do a bulk retrieval of all requested attributes
4. generate the response by extracting the value for each item from the retrieved data in the previous step

This is working in our production and has noticeably lowered the load on both the monitored servers and zabbix.

A further enhancement would be improve the zabbix poller to submit requests for items in the same jmx-object in one go, similar to what was discussed for SNMP in ZBXNEXT-98 .

The patch is against branches/2.2 r43648.



 Comments   
Comment by Oleksii Zagorskyi [ 2014 Mar 30 ]

https://www.zabbix.com/documentation/2.2/manual/concepts/java
says:

Zabbix server or proxy will try to pool requests to a single JMX target together as much as possible (affected by item intervals) and send them to the Java Gateway in a single connection for better performance.

For me it doesn't match a bit what AB said about further enhancement.
Would be good to clarify.

Comment by Marc [ 2014 Mar 30 ]

Haven't investigated the code yet.

But from my understanding requests are currently pooled together to send them over a single tcp connection and this patch should enable to receive multiple values of the same MBean by one request.

Comment by A B [ 2014 Apr 03 ]

Marc is exactly correct. I'm sorry if I wasn't clear before, so let me try again. Currently the zabbix poller will collect a bunch of items (often 30 or 40) to be updated and send that as a single request to the java gateway. The java gateway will then open a single JMX/TCP connection, but will then send a separate request (MBeanServerConnection.getAttribute(jmx-object, attribute)) for each item. Now, often there are several items that correspond to different attributes of the same jmx-object (e.g., in the "Template JMX Generic" you'll find jmx["java.lang:type=ClassLoading",LoadedClassCount], jmx["java.lang:type=ClassLoading",TotalLoadedClassCount], and jmx["java.lang:type=ClassLoading",UnloadedClassCount]). So instead of doing three separate requests for these this patch will issue a single MBeanServerConnection.getAttributes("java.lang:type=ClassLoading", [LoadedClassCount, TotalLoadedClassCount, UnloadedClassCount]) request.

That is the first optimization. The second one is even bigger in our case: suppose one of the attributes returns a composite object. So, say, you have items jmx[obj,attr.a1.b1], jmx[obj,attr.a1.b2], jmx[obj,attr.a2.b1], jmx[obj,attr.a2.b2], etc. These are all "independent" items in zabbix's view, but they are all values from the same composite object. And currently the java gateway will end up issuing a separate getAttribute() request for each of these items, even though each request is exactly the same (namely MBeanServerConnection.getAttribute(obj, attr)). So the second optimization is to only issue a single request in this case. As I said in the description, we have composite objects with around 100 items (think a1...a20, and b1...b5), so this optimization is quite significant in our case.

I hope this clarifies things a bit.

Comment by Aleksandrs Saveljevs [ 2014 Apr 10 ]

roadrunner, this would be a great improvement to the Java gateway. It is out of scope for today's bugsquash though.

Comment by A B [ 2014 Apr 12 ]

I cleaned up the patch a little bit after realizing it didn't compile under java 6 (it was using the diamond operator) - not sure if java 6 compatibility is really required, but at least the ubuntu package appears to have a dependency on 6 instead of java 7.

Anyway, besides removing the use of the diamond operator, I also added some comments on the new datastructures and created essentially a type alias for one map to simplify and clarify things a little.

In short, the functionality and behaviour of this new patch is identical to the previous, which the changes being mostly syntactic to (hopefully) improve readability.

Comment by A B [ 2017 Dec 16 ]

Updated patch for zabbix 3.4 (in particular due to the new jmx discovery items).

Comment by A B [ 2018 Jan 20 ]

Updated patch for zabbix 3.4.5.





[ZBXNEXT-2239] Provide generic one line installers for zabbix agents on linux Created: 2014 Apr 03  Updated: 2014 Jun 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: 1.8.20, 2.0.11, 2.2.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Sorin Sbarnea Assignee: Kodai Terashima
Resolution: Unresolved Votes: 1
Labels: agent, installation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux



 Description   

The easiest way to deploy and auto-configure agents is via a single command line. Many companies are using this successfully and

Example from datadog:

DD_API_KEY=1234 bash -c "$(curl -L http://dtdg.co/agent-install-ubuntu)"

Such a command installs latest version of the agent and also configures it to connect to the right server, also adds the yum or apt-get repositories so further updates will be installer properly. Also the same command happens to work on Mac OS X, and probably could work on Windows if run from Cygwin (even so DataDog had a different installer for Windows).

Anyway the whole point of this it to ease the deployment of the zabbix agents, we could have something like:

ZABBIX_SERVER=zabbix.example.com bash -c "$(curl -L http://zabbix.com/agent-install)"


 Comments   
Comment by Sorin Sbarnea [ 2014 Apr 04 ]

Check this script, this can be a start for implementing the one-line installer for zabbix. At least it works for us quite well.

https://github.com/xenserver/devops/blob/master/prepare.sh

Comment by richlv [ 2014 May 07 ]

kodai, do we want to look into something like this ?

Comment by Kodai Terashima [ 2014 Jun 19 ]

I think it quite nice feature, but I'm not sure what tool is the best. We need to think all platform (not only Linux, but also Windows, Solaris, HP-UX, AIX, etc.),

Also, it's necessary to consider updating agents as well.





[ZBXNEXT-2201] Zabbix Agent Windows loadable modules Created: 2014 Mar 12  Updated: 2019 Sep 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.3.0
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Serg Larchenko Assignee: Unassigned
Resolution: Unresolved Votes: 15
Labels: loadablemodule, patch, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File Makefile_agent.inc.patch     File dummy.patch     File zabbix_agentd.c.patch     File zabbix_windows_loadablemodule.patch     File zbxmodules.patch    

 Description   

Good day.
Added the ability to load modules agent on Windows platform.
I ask to check the patch.



 Comments   
Comment by Serg Larchenko [ 2014 Mar 12 ]

Split file zabbix_windows_loadablemodule.patch

Comment by Ryan Armstrong [ 2015 Oct 06 ]

Bump!

Comment by richlv [ 2015 Oct 06 ]

please see these resources:

Comment by Kenny Hibberd [ 2019 Jan 23 ]

What are the issues involved with implementing this feature?

Comment by Andy Bertier [ 2019 Sep 19 ]

I'm also interested in this feature. I used the attached files to create my version of the agent (needed to updated them for 3.4.2 & some fixes in error reporting).

I'm willing to check/prepare changes against latest version, but I don't know how to contribute them. (as the patches attached here were already rejected). Are there any docs on how to contribute my changes?

Comment by Glebs Ivanovskis [ 2019 Sep 19 ]

abertier, I guess the best place for the results of you effort will be https://github.com/zabbix/zabbix-patches

Comment by Andy Bertier [ 2019 Sep 22 ]

Patch & PR created: https://github.com/zabbix/zabbix-patches/pull/21

Another minor glitch in the documentation for building agents on windows ( https://zabbix.com/documentation/4.2/manual/installation/install/win_agent ), is I also needed to set 'CMAKE_BUILD_TYPE' to 'Release' in order to compile PCRE (v8.43, otherwise I only get the debug-file pcred.lib )





[ZBXNEXT-2181] Additional macros for host discovery feature Created: 2014 Mar 02  Updated: 2014 Mar 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: networkdiscovery
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Would be great to add support of additional macros to Host related fields for Host discovery. For example,

{HOST.HOST}

- to use parent host name in discovered hosts settings.






[ZBXNEXT-2184] More items for vmware monitoring Created: 2014 Mar 04  Updated: 2016 Jul 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Tomasz Pawelczak Assignee: Unassigned
Resolution: Unresolved Votes: 18
Labels: items, templates, vmware
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File vmware-datastore-capacity.diff    

 Description   

Pleas add more checks for VMware monitoring.
My propositions are:

  • CPU/Memory ratio real (item for ESXi host and VMware Cluster) - real ratio of resource usage, calculated as:
    CPU: 100% * ( cpu.usage / ( number.of.cores * cpu.freq) )
    MEM: 100% * ( memory.usage / total.memory )
  • CPU/Memory ratio fake/assigned (item for ESXi host and VMware Cluster) - ratio of resources assigned to VMs, calculated as:
    CPU: 100% (number.of.vCores.assigned / number.of.cores)
    MEM: 100% (sum.of.memory.assigned.to.VMs / total.memory)
    This would be useful for monitoring over commitment of resources.
    Eventually please add only items for monitoring assigned resources (not used), and rest of calculation can be done by zabbix aggregate and calculated items. (But it would by nice to have this ratios auto-of-the-box)
  • Datastore IO usage (read and write)
  • Datastore space usage


 Comments   
Comment by richlv [ 2014 Mar 16 ]

do storage item keys (see https://www.zabbix.com/documentation/2.2/manual/config/items/itemtypes/simple_checks/vmware_keys) provide some of the desired functionality ?

on the second thought, that's per vm and total was probably requested.

to keep this somewhat organised, let's handle additional datastore items in ZBXNEXT-2010

Comment by Andris Zeila [ 2015 Aug 04 ]

It would be easier to read datastore capacity/free space from configuration rather than performance manager (as requested in ZBXNEXT-2010). Also this would make those items available also when monitoring hypervisor directly (the datastore capacity counters are available only from vCenter).

A prototype patch adding vmware.hv.datastore.size[<url>,<hypervisor uuid>,<datastore name>, <mode>] key is attached. <mode> can be total, free, pfree.

Comment by Jovan Malesevic [ 2016 Jun 30 ]

Hello,

is it possible to install this on Zabbix 3.0.1? If so, can somebody explain how to do it?

Thank you in advance

Comment by Jovan Malesevic [ 2016 Jul 01 ]

anybody knows?

Comment by Jovan Malesevic [ 2016 Jul 02 ]

@Andris Zeila, can you please explain how to add this patch to Zabbix 3.03?

I would highly appreciate it.

Thank you in advance

Comment by Andris Zeila [ 2016 Jul 04 ]

You need to download sources from svn (svn://svn.zabbix.com/tags/3.0.3 for 3.0.3 version), patch and build it. But the patch was made almost a year ago for 2.2 - there might be conflicts.

Comment by Jovan Malesevic [ 2016 Jul 05 ]

I resolved this issue using the VmBix, TCP proxy for the VMWare Sphere API written in Java.

Link:
https://github.com/dav3860/vmbix

Andris Zeila, thank you very much for the quick response. You realy helped me with your idea about datastore size prototype item key.

Cheers





[ZBXNEXT-2182] Ability to build loadable modules out of tree Created: 2014 Mar 03  Updated: 2017 Jun 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Igor Urazov Assignee: Unassigned
Resolution: Unresolved Votes: 9
Labels: loadablemodule
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-3157 Create development packages Closed

 Description   

Right now it's impossible to build loadable modules out of Zabbix source tree. The right way is to install development headers into /usr/include directory (maybe under zabbix subdirectory), which later could be packaged into zabbix-plugins-dev package. This allows to install only small fraction of Zabbix sources, if you're going to develop plugins only.



 Comments   
Comment by Tomasz Kłoczko [ 2017 Feb 14 ]

I've created in ZBX-11767 patch for this with improved dummy module tree am/ac/lt support with example covering whole live cycle of module code from creating dist tar ball to make almost instant create rpm package with module.
This patch adds installing header files and adds pkgconfig support.

Comment by Ryan Armstrong [ 2017 Jun 18 ]

This is a serious issue for Module developers. I've spent hours tracing an issue for my community of users. The issue was caused because the headers in the Zabbix sources were being used by my modules and being mutated by the configure scripts in Zabbix build process.

See:https://github.com/cavaliercoder/libzbxpgsql/issues/68





[ZBXNEXT-2172] Capture web page results to be passed on to trigger Created: 2014 Feb 24  Updated: 2015 Jun 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: A.E. Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Implement a method by which to capture a web page during a web step, such that it can be passed on to a trigger/alert and put into the alert email.



 Comments   
Comment by A.E. [ 2014 Feb 24 ]

Going off of this: http://stackoverflow.com/a/8396994/2776578 <- is this still valid? Is there no way to store the results in memory to pass on to an email?

Comment by Marc [ 2014 Mar 29 ]

Having a way to (optionally) store and see the response of a web scenario step would be very beneficial.
Not only for creating a web scenario initially. What is real pain in more complex scenarios (what was the inspiration of ZBXNEXT-2177). But for investigating a no more working scenario too.

Comment by Nick Fielding [ 2014 May 22 ]

This would be very handy indeed. I've currently got an intermittent issue of 'Unexpected Web Content' and having a copy of the response data may help in diagnosing this!





[ZBXNEXT-2177] Web scenario add-on for established web browsers Created: 2014 Feb 27  Updated: 2014 Feb 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 2.0.11
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: browser, plugins, webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Would be nice to have a web browser add-on/plug-in that captures requests and allows to store them as an importable web scenario.
Ideally it pauses between every request and allows assign things like expected string and status code.
The possibility to re-play a captured scenario would be awesome too.

This might not always produce a complete/working scenario (incl. variables, etc) but at least a great starting point.






[ZBXNEXT-2168] Proxy data (history) sending prioritization Created: 2014 Feb 19  Updated: 2019 Aug 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: 2.2.2
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Corey Shaw Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: proxy, synchronization
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be extremely helpful for Proxies to be able to prioritize the sending of some types of data. It'd be pretty cool if the server could have a way to tell a proxy "Hey, this item has a trigger associated with it" and then the proxy could prioritize sending that data over something else that doesn't have a trigger at all. This would prevent problems where huge data backlogs can cause triggers to be missed for long periods of time because data that doesn't matter to triggers is sent in the same priority as data that DOES matter.

Another option to this would be to instead allow each item to have a configured priority. That data could be sent to the proxies instead and the proxy could be sure to send that data first and only send data in a priority order.



 Comments   
Comment by richlv [ 2014 May 22 ]

as discussed today, this would be a great feature (especially for the proxy internal monitoring items).

at least one edge case, though... if proxy has some config and then triggers are added/changed on the server, proxy will not know about that for a while, thus data sequence - triggers/events would be messed up. while not a frequent situation, edge cases are the most annoying to debug

per-item prioritisation would be a bit too much of a micro-management, imho

Comment by Marc [ 2016 Apr 22 ]

ZBXNEXT-409 appears distantly related.

Comment by Oleksii Zagorskyi [ 2019 Feb 28 ]

See also ZBXNEXT-5075





[ZBXNEXT-2141] Add maintenance status to the supported conditions for actions on internal events Created: 2014 Feb 02  Updated: 2017 Dec 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: A B Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: actions, events, internalmonitoring, maintenance, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File zbxnext-2141-v34.patch     File zbxnext-2141.patch    

 Description   

Currently when creating actions for internal events, it is not possible to include the maintenance status in the conditions for that action, unlike for trigger based events. This is a problem since this means we get a bunch of high priority alerts when maintenance is performed.

To give a little background: we have a host-group representing set of servers, where the actual servers are dynamically started and stopped according to load; a separate job takes care of detecting stopped hosts an marking them as not-monitored. Now, we need an alert if the number of servers ever goes to 0. For that we have a health item on each server (1 = healthy, 0 = bad), and then an aggregate host with an item grpsum["<host-group-of-the-servers>", <health-item>, last, 0], as well as a trigger on this grpsum item. The trigger will fire if all hosts have a health of 0 and there is at least one host; but if there are no (monitored) hosts in the host-group (all machines were stopped) then the grpsum item unfortunately goes into "not supported" state. Hence a separate action has been set up for this internal event. And just like actions for trigger based events, we need to be able to suppress this action when the host-group is put into maintenance.



 Comments   
Comment by Martin Hollerweger [ 2014 Mar 13 ]

Same Problem here, i need to check if trigger goes to unknown. But if I restart Tomcat unfortunately all jmx triggers go to unknown and i get a lot of messages in my maintenance period.

Comment by Martin Hollerweger [ 2014 Mar 13 ]

Also affects Zabbix version 2.2.2 and 2.2.0

Comment by A B [ 2014 Mar 26 ]

This patch implements the requested behavior. The maintenance option shows up in the UI (and works) just like for trigger based actions. We are running this in production.

The patch is against svn r43648 on /branches/2.2 .

Comment by Michael Stockman [ 2015 Sep 08 ]

Not solved in 2.4

Comment by richlv [ 2016 Jan 20 ]

also asked in ZBXNEXT-3104

Comment by Oleksii Zagorskyi [ 2016 Feb 12 ]

There could be other, much more simple cases why I don't want to receive alerts for internal events if a host in maintenance.
One such cases mentioned in ZBXNEXT-3140

Comment by A B [ 2017 Dec 16 ]

Updated patch for zabbix 3.4.





[ZBXNEXT-2207] Webchecks - Authentication macro support lacking Created: 2014 Feb 10  Updated: 2014 Mar 16

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Frank Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Its possible to use a macro for webchecks and provide a username and password but this is not working 100%:

If the macro parameters are empty, they are still being sent which results in a 401 statuscode response rather than 200.
It is not possible to use a macro for the "authentication" part, to switch between None/Basic/NTLM.

This can be fixed two ways:
1) Do not authenticate if both fields are empty (e.g. contain a macro that is not set on none of the levels)
2) Make it possible to use a macro to switch between the authentication type.



 Comments   
Comment by Frank [ 2014 Feb 10 ]

Actually. It appears to be the case only when the macro has been defined on template level with an empty value.
If nothing is defined it does properly "not authenticate" resulting in a 200 status.

Comment by Oleksii Zagorskyi [ 2014 Mar 05 ]

In any case this is not a bug.
If you like, reopen and move to ZBXNEXT project.

Closed

Comment by richlv [ 2014 Mar 16 ]

moving to feature requests, reopening





[ZBXNEXT-2085] Rule based engine to set and preserve configuration Created: 2013 Dec 22  Updated: 2013 Dec 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.0.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: automation, compliancy, configuration, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

With growing number of assets (hosts, groups, users, ...) there is no easy way to guarantee a specific configuration design.

I used to think this could be a task for auto-registration together with network discovery. But these are obviously more intended for initial setup and not for automating configuration in general.

My first thought was writing a daemon by myself with its own UI that periodically checks and updates assets according to its rule database via API.
On my second thought it tastes a bit like doing it the Nagios/Icinga way.

I believe for large environments there is a need for assuring some settings by a kind of configuration policies.






[ZBXNEXT-2084] Ability to lock configuration settings by Zabbix Super Admin Created: 2013 Dec 22  Updated: 2013 Dec 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 2.0.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: permissions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Sometimes it's desirable to disallow users of type 'Zabbix Admin' to change certain settings or objects even if they have write permissions via corresponding host group.

In my case some settings/assignments should be kept to assure integrity.

While ZBXNEXT-77 is about permission on user level what probably needs a complete re-design/-write of user management this issue is meant to revoke permission globally on object/element level.

E.g.:
Locking a group wouldn't allow a Zabbix Admin to add/remove hosts or to change the group name without affecting access right to hosts of group itself
Locking a template wouldn't allow to link/unlink a this particular template from a host with r/w permission

I could also think of locking settings on group level:
checking 'Lock status' won't allow enabling/disabling it for host members
checking 'Lock interfaces won't allow adding/removing/updating interfaces
same for templates, macros, proxy, ...






[ZBXNEXT-2100] Visualization of template links Created: 2014 Jan 07  Updated: 2014 Aug 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 7
Labels: patch, templatelinking, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File configurationHosts.png     PNG File configurationHostsEdit.png     PNG File configurationTemplates-2.png     PNG File configurationTemplates.png     PNG File configurationTemplatesEdit.png     PNG File configurationTemplatesEditBoth.png     PNG File configurationTemplatesEditChilds.png     PNG File configurationTemplatesEditParents.png     PNG File configurationTemplatesEditSimple.png     File zbxnext2100-2.2.5-2.patch     File zbxnext2100-2.2.5-3.patch     File zbxnext2100-2.2.5-4.patch     File zbxnext2100-2.2.5-5.patch     File zbxnext2100-2.2.5-6.patch     File zbxnext2100-2.2.5-7.patch     File zbxnext2100-2.2.5.patch    

 Description   

Would be nice to have an additional section/tab in 'Configuration of templates' and 'Configuration of hosts' where the complete hierarchy of linked templates gets visualized recursively.
Maybe with an option to show recursively the paths from objects that refer to the template (except hosts) as well.

This could probably even make 'Linked templates' and 'Template' columns in list of templates resp. list of hosts obsolete.

Might be another use case for D3.js



 Comments   
Comment by Marc [ 2014 Aug 11 ]

First attempt with Graphviz:

Actually I started with the template listing what was not requested by this issue:

The upcoming uploaded patch(es):

  • resolve direct parents and childes up to configured value for 'Max count of elements to show inside table cell' (for template list)
  • resolve all parents and childes recursively (for edited template)
  • render a PNG on-the-fly and embed it at its place.

I think of using SVG later at least in the template list to add proper hyper-links of the respective objects. That would then make the columns 'Linked templates' and 'Linked to' obsolete and save some space.

Further I think of combing the template list patch with ZBXNEXT-1796 to save even more space and get a nice listing.

I'm expecting to upload the patches tomorrow, err. today after having a sleep

If I had known it would become that easy, I had done this much sooner.

Comment by Marc [ 2014 Aug 11 ]

The attached patch zbxnext2100-2.2.5.patch implements mentioned functionality.

Finally it's one patch instead of two.

Additionally to the already mentioned changes the patch adds a linkage overview to hosts as well:

Edit:
The patch is not meant to represent a final solution. It's rather meant as a prove of concept.

Beside applying the patch graphviz's php library is needed (graphviz-php on EL6).

Comment by Marc [ 2014 Aug 13 ]

Attached patch zbxnext2100-2.2.5-2.patch includes some minor improvements and adds hyper-links to hosts and templates in list view of templates:

Because hyper-links are enabled by an image map the colors are hard coded and not set by CSS.

Since treating this as a POC and due to the fact that upstream devs would probably rather create their own Graphviz-like classes when considering this for implementation, I don't plan to add setting of colors based on themes CSS.

Btw, unfortunately I was not able to get hyper-links be written underlined. This appears to be limited by the EL6 distributed Graphviz version that does not support this yet.

Comment by Marc [ 2014 Aug 13 ]

Attached patch zbxnext2100-2.2.5-3.patch adds visualization to Configuration->Hosts as well:

Surely by now something similar to ZBXNEXT-1796 might be beneficial.

Comment by Marc [ 2014 Aug 15 ]

Attached patch zbxnext2100-2.2.5-4.patch fixes an 'Undefined index' issue on creation of new hosts.

Comment by Marc [ 2014 Aug 17 ]

Attached patch zbxnext2100-2.2.5-5.patch moves the inheritance diagram from the separate tab to the 'Linked templates' tab.
Additionally one can choose between four different resolution methods for templates:

Comment by Marc [ 2014 Aug 17 ]

Attached patch zbxnext2100-2.2.5-6.patch moves label to same level of radio buttons

Comment by Marc [ 2014 Aug 17 ]

Attached patch zbxnext2100-2.2.5-7.patch corrects radio button text and fixes root node not being bold when 'Follow both' (prev. 'Follow parents and childs') is selected.





[ZBXNEXT-2067] Please add the possibility to create Groups for the Screens Created: 2013 Dec 11  Updated: 2015 May 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Areg Vrtanesyan Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: screens
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-529 Improve the view of configuration > s... Open

 Description   

Hi

It would be nice to have the possibility to group the screens too so they will be sorted and more easy to view.

https://www.zabbix.com/forum/showthread.php?t=10416

Regards,
Areg



 Comments   
Comment by richlv [ 2014 Mar 08 ]

somewhat related - screen searching/filtering : ZBXNEXT-2189

Comment by Marc [ 2014 Mar 29 ]

ZBXNEXT-2185 addresses the same issue but follows a different approach.

Comment by Areg Vrtanesyan [ 2014 Mar 31 ]

I like the solution too and it could be very powerful with the Screen Groups too as it will easy the configuration too not only viewing the screens.

Comment by richlv [ 2015 May 14 ]

ZBXNEXT-529 was basically asking for the same thing, closing as a duplicate





[ZBXNEXT-2161] Set macro-based items to Not Available when no macro value exists Created: 2014 Feb 17  Updated: 2014 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 2.2.1
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Frank Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: items, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We have some advanced checks we deploy using templates with macro's, such as for doing webchecks or SSL certificate checks on many vhosts. Now we have a massive list of {$SITE_1} .... {$SITE_10} etc.
By default in the template we disable the items and enable the ones neccesery on the host once activated, if we leave them all enabled Zabbix will report issues with the entries containing non-replaced macros.

It would be a great help if Zabbix could treat macro'ed differently by disabling them (or even better: setting them to "Not Available") when there is value for the macro. It could then be auto-enabled whenever the macro has a value.



 Comments   
Comment by richlv [ 2014 Feb 17 ]

not sure this would work that well outside this specific case. sometimes people intentionally do not define value for a macro and that just uses some default value in a script





[ZBXNEXT-2075] New action condition "Trigger type" Created: 2013 Dec 18  Updated: 2013 Dec 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Alexander Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: actions, conditions, logmonitoring, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It will be useful to creation of separate actions for triggers with "Multiple PROBLEM events generation". For example, monitoring of log files.






[ZBXNEXT-2011] Support CPU ready time in VMware Simple Checks Created: 2013 Nov 11  Updated: 2013 Nov 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 2.2.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Henrik Johansen Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: vmware
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

CPU ready time is the percentage of time that the virtual machine was ready, but could not get scheduled to run on the physical CPU (due to CPU contention)
This counter works for both VirtualMachine and HostSystem and should be available for both objects (hypervisor and vm) in ZBX.

CPU ready time is one of the critical CPU counters to monitor.






[ZBXNEXT-1900] warn users if they have two hosts with same hostname Created: 2013 Sep 10  Updated: 2018 May 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: duplicates, hostname
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

sometimes we can end up with two hosts with the same hostname. this is bad (see ZBX-6828 and other issues).
suggested remedy - try to detect this happening when reloading configuration cache. if it is detected, print a warning in the logfile (but continue working).
warning should include : hostname and host ids.

this warning should be printed also when obtaining information for a proxy - if there are two hosts with the same name on that proxy



 Comments   
Comment by Oleksii Zagorskyi [ 2013 Sep 11 ]

Just remember that zabbix proxies are allowed to have the same hostname as zabbix agents.
Related case is ZBX-6746

<richlv> absolutely, the check should be limited to hosts only

Comment by Kim Jongkwon [ 2018 May 28 ]

Yes, duplicated hostname is occurring for various reasons.

I think it is necessary to warn the user to notice.





[ZBXNEXT-1955] Improved Zabbix housekeeper query (Postgres) Created: 2013 Oct 07  Updated: 2019 Oct 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Evan Hoffman Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix DB:
CentOS 6.3
32 GB memory
PostgreSQL 9.2



 Description   

My zabbix DB (Postgres 9.2) had grown huge (270 GB) and after some investigation I found the history and history_uint tables had grown to 60 GB each (not including indexes). I cleaned it out manually but I think the problem may be that the housekeeper wasn't able to clean up such massive tables. The housekeeper deletion queries were extremely slow - from pgbadger (log parser for Postgres logs):

24.169s | DELETE FROM history_uint WHERE itemid = 33909 AND clock < 1373867589;
15.436s | DELETE FROM history_uint WHERE itemid = 33911 AND clock < 1373867546;
14.093s | DELETE FROM history_uint WHERE itemid = 31239 AND clock < 1373896389;

I ended up writing this query that does the job pretty quickly. Rather than running an individual query for each item, this cleans the entire table in a single query (though it has a limit to prevent running out of memory, so it needs to be run multiple times):

zabbix=# delete from history where ctid = any ( array ( select h.ctid from history h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::int + 7200 limit 20000000));
DELETE 20000000
Time: 101450.095 ms

This was an actual query I just ran on my zabbix DB which deleted 20,000,000 old rows from the history table in 101 seconds. This is several orders of magnitude faster than the current housekeeper.



 Comments   
Comment by richlv [ 2013 Oct 07 ]

which zabbix version is this about ?
supposedly, something similar was done in trunk : ZBXNEXT-1649

Comment by Evan Hoffman [ 2013 Oct 07 ]

We're still on 2.0.4.

Comment by Alex Vorona [ 2014 Jan 14 ]

>which zabbix version is this about ?
>supposedly, something similar was done in trunk : ZBXNEXT-1649
I'm using 2.2.1-1 from zabbix repo and still see one-by-one items cleanup.
Here are housekeeper stats
688:20140114:070608.372 executing housekeeper
688:20140114:071436.557 housekeeper [deleted 1746168 hist/trends, 46 items, 788 events, 1182 sessions, 0 alarms, 3 audit items in 508.181023 sec, idle 1 hour(s)]

And here is query from 1'st post after housekeeper finished
zabbix=# delete from history where ctid = any ( array ( select h.ctid from history h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::int + 7200 limit 20000000));
DELETE 20000000
Time: 233361.705 ms

1.7m rows in 500 sec VS 20m rows in 233sec. 20x speedup, but you can of course use per-item cleanup.

Comment by Chris Ralph [ 2014 Jul 09 ]

Can you provide an explanation of this query, is it deleting anything older than 1 day?

Comment by Alicja Kucharczyk [ 2017 Feb 15 ]

DELETE operations might be slowed down by MVCC model. If you want to delete old data regularly you might consider to use partitioning. From the docs:
"Bulk loads and deletes can be accomplished by adding or removing partitions, if that requirement is planned into the partitioning design. ALTER TABLE NO INHERIT and DROP TABLE are both far faster than a bulk operation. These commands also entirely avoid the VACUUM overhead caused by a bulk DELETE."

Comment by Evan Hoffman [ 2017 Feb 15 ]

Here's what I have in my cron currently, for the postgres user:

30 4,5,6,7,8 * * * /var/lib/postgresql/clean-cron.sh | logger -t custom_housekeeper

Here's what the script looks like:

#!/bin/bash

for i in {1..10}
do
 date
 sleep 1
 time psql zabbix -ae -c "delete from history_uint where ctid = any ( array ( select h.ctid from history_uint h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::int + 7200 limit 2000000))"
 time psql zabbix -ae -c "delete from history where ctid = any ( array ( select h.ctid from history h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::int + 7200 limit 2000000))"

done

Syslog looks like this:

Feb 15 10:26:02 hostname custom_housekeeper: delete from history_uint where ctid = any ( array ( select h.ctid from history_uint h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::inthost 7200 limit 2000000))
Feb 15 10:31:24 hostname custom_housekeeper: DELETE 180533
Feb 15 10:31:24 hostname custom_housekeeper: delete from history where ctid = any ( array ( select h.ctid from history h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::inthost 7200 limit 2000000))
Feb 15 10:40:12 hostname custom_housekeeper: DELETE 330724
Feb 15 10:40:12 hostname custom_housekeeper: Wed Feb 15 10:40:12 UTC 2017
Feb 15 10:40:13 hostname custom_housekeeper: delete from history_uint where ctid = any ( array ( select h.ctid from history_uint h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::inthost 7200 limit 2000000))
Feb 15 10:45:33 hostname custom_housekeeper: DELETE 183506
Feb 15 10:45:33 hostname custom_housekeeper: delete from history where ctid = any ( array ( select h.ctid from history h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::inthost 7200 limit 2000000))
Feb 15 10:54:10 hostname custom_housekeeper: DELETE 334272

Postgres log looks like this:

Feb 15 10:45:33 hostname postgres[25657]: [3-1] 2017-02-15 10:45:33 UTC postgres 58a4300d.6439 149/0 [local] 25657 LOG:  duration: 320806.213 ms  statement: delete from history_uint where ctid = any ( array ( select h.ctid from history_uint h join items i on h.itemid=i.itemid where h.clock < extract ( epoch from now() - i.history * interval '1 day')::int + 7200 limit 2000000))

My Zabbix DB is currently 219 GB with the history and history_uint tables consuming 80 GB and 72 GB respectively. I collect almost 100 million data points per day - see the table below - and the housekeeping system I've described above has worked well for months.

postgres@[local]:zabbix# select count(*), delay from items group by delay order by delay;
 count | delay
-------+-------
   788 |     5
   394 |    30
 40967 |    60
  4717 |   180
  8168 |   300
  2765 |   600
   394 |   900
  3152 |  1800
  6060 |  3600
(9 rows)

Time: 31.953 ms
postgres@[local]:zabbix#

To answer Chris Ralph's question: the query deletes history entries older than the item's history, plus 7200 seconds (as cushion). So if the "history" field is set to 90, it will delete items older than 90days+2hours. The "limit 20000000" prevents the result set from exhausting system memory.

Comment by Alex Vorona [ 2017 Feb 19 ]

2Alicja Kucharczyk
>DELETE operations might be slowed down by MVCC model.
And that's why housekeeper uses 1 DELETE operation per item instead of DELETE examples from this thread ?

> If you want to delete old data regularly
Of course I want, that's housekeeper's job

> you might consider to use partitioning.
It will not provide fine grained cleanup like housekeeper, thus it produces space overusage. Let's say we have items with 366 days history/history_uint data, but most part of items has 3-7 days history. Using partitioning as the only housekeeping solution leads to keep 366 days history/history_uint for all items.

Comment by Anže Rehar [ 2019 Oct 18 ]

Queries mentioned don't work anymore (tested on Zabbix 4.0.1) since field "history" in table "items" is now of type character varying.





[ZBXNEXT-1958] Zabbix agent in vSphere 5.1 Hosts Created: 2013 Oct 09  Updated: 2013 Oct 09

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 2.0.8
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Sistemas Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: ESX
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

VmWare ESXi 5.1 host servers



 Description   

Hello, we're trying to implement zabbix agent in our ESXi 5.1 hosts, it seems not supported by the agent. Any help?



 Comments   
Comment by richlv [ 2013 Oct 09 ]

please use zabbix forums, irc and other channels for community support. this tracker is for bugreports.

Comment by Sistemas [ 2013 Oct 09 ]

I'll rewrite that. I need a compiled or a procedure to install Zabbix Agent in ESX Host. As I'd check in forums there's no way to do it as we deploy the agent.





[ZBXNEXT-486] server should gather anonymous statistics about Zabbix installation Created: 2010 Aug 24  Updated: 2024 Mar 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 13
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-4255 send SystemInfo to Zabbix SIA Closed

 Description   

Rich suggested there should be something like a census module that would gather all kind of information about Zabbix installation and submit it to the developers. This would allow us to learn more about real user environments: number of items per type, number of IPMI hosts, number of SNMP hosts, number of triggers, user count, etc., and plan the development accordingly.



 Comments   
Comment by richlv [ 2010 Aug 24 ]

i'm not sure server should be doing that - frontend might be a better choice because it could prompt user and show the information to user before submitting. additionally, we should support multiple methods of submitting the information, because zabbix installation might not have direct access to internet - sending an email (requires configuring smpt params), posting to webpage (would require http proxy support) etc.

anyway, initial list of things we might be interested in (initial list should be as inclusive as possible) :

unique id (how to construct one ?) so that changes in data might be seen afterwards;
zabbix installation age (how is it determined ?);
db used;
db size, if possible
zabbix version;
upgrade history (would require updating db schema like adding some fields like version, date, added when new version is run);
host count; monitored directly/through a proxy
template count
max templates linked to single host, avg templates linked to single host
max template linkage depth, avg template linkage depth
itemcount
triggercount
max items referred to by trigger, avg items referred to by a trigger
action count
action count using escalations
action count using recovery messages
custom graph count; max items per graph, avg items per graph
proxy count, max/avg hosts per proxy
event count, events per day
notification count per day
usercount (disabled, with api access, with gui access, last log in times - to know how many are actively used)
usergroupcount, users per group
maybe some usage statistics - auditlog table actually already has it all, it just has to be extracted in a meaningful way - like how often an item is modified, how often a new host is added etc
average login frequency for users
frontend language used (users per language)
frontend theme used (users per theme)
network map count
custom background images uploaded
custom icons uploaded
max element count per map
avg element count per map

this post should be edited to add more/improve existing

Comment by Walter Heck [ 2011 Mar 11 ]

Just noting that the results should be open to all, like the debian popularity contest: http://popcon.debian.org/

Comment by richlv [ 2017 Feb 20 ]

here's what opennms does : http://stats.opennms.org/

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jul 21 ]

For security freaks the process of gathering data can be organized as follows. Server will dump usage statistics into its database where it may stay undisclosed forever if the user is not willing to help improving Zabbix. But for those who are Zabbix will provide a standalone utility to extract this data from the database and generate a human-readable report in plain text file or XML. This file can be then reviewed for the presence/absence of any sensitive information and submitted manually in a special user feedback corner of https://www.zabbix.com.

Comment by Stefan [ 2018 Sep 10 ]

in the past it was planned for 4.0, why was it removed?

If you add this option, please make as "opt-in" option





[ZBXNEXT-9036] During maintenance with data collection, internal actions are triggered for items that have changed their status to unsupported due to the data collection Created: 2023 Nov 30  Updated: 2024 Mar 14

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 5
Labels: Zabbix7.2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Team: Team A
Sprint: Roadmap Backlog
Story Points: 1

 Description   

Steps to reproduce:

  1. create maintenance rule with data collection
  2. enable notification about not supported items/triggers 'Report not supported items', ' Report unknown triggers'
  3. get some items in a not supported state state

Also there is no condition to take into account problem suppression.
Result:
Maintenance is not respected for internal actions.

Expected:
No notifications about such events.






[ZBXNEXT-1606] a way to use multiple lld rules for same key Created: 2013 Feb 02  Updated: 2021 Jul 22

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D)
Affects Version/s: 2.0.4
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Sergey Pyatin Assignee: Unassigned
Resolution: Unresolved Votes: 31
Labels: aliases, lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-3635 Allow multiple service.discovery keys Closed

 Description   

Is there a way to add a new low-level discovery rule that uses the same key as another rule?

I want to add a separate filesystem detection rule for filesystems on one machine with specific checks for them (using another filter regex), but currently I cannot create a rule that uses the 'vfs.fs.discovery' key - zabbix throws the following error:

ERROR: Cannot add discovery rule
Item with key "vfs.fs.discovery" already exists on "machine"

Is there any way to bypass that?
Also, why can't you have more than one rule using the same key?



 Comments   
Comment by richlv [ 2013 Feb 03 ]

keys must be unique per host. try changing rule key slightly - for example, vfs.fs.discovery[]

Comment by Sergey Pyatin [ 2013 Feb 03 ]

i'm try it:
vfs.fs.discovery[] became not supported: Not supported by Zabbix Agent

Comment by richlv [ 2013 Feb 03 ]

indeed, that's not supported. will move to feature requests

Comment by richlv [ 2013 Jun 20 ]

we could simply allow empty parameters, but that would not be very optimal - discovery would be run separately for each rule.
with agent discoveries this usually won't be that bad, but it would be quite terrible with snmp discoveries as they can return hundreds of entries, and walking that table can take some time.

a proper solution would be to allow an lld rule to "attach" to another lld rule. in that case 'attached' rule would not run any item key itself, but whenever the 'originating' rule would get a value, it would be passed to all attached rules.

usecase - on some network interfaces we want to monitor availability and traffic only, on others we also want to include errors and discards, yet on others - traffic separated by unicast, multicast, broadcast. multiple lld rules would overload the network device.

Comment by Volker Fröhlich [ 2013 Oct 13 ]

Somewhat connected: ZBXNEXT-1757

Comment by Oleksii Zagorskyi [ 2013 Nov 18 ]

The topic also was discussed in ZBXNEXT-735

I cannot find where exactly, but we discussed also usage of an "alias" zabbix agent config parameter.
It could be a workaround for agent, but .... not for Java proxy

edit: I found the issue I mentioned above (thanks Rich ), it's ZBX-7034

Comment by Dmitry Samsonov [ 2014 Apr 03 ]

Just a workaround:

system.run["n=1 zabbix-agent -t vfs.fs.discovery | sed -re 's/vfs.fs.discovery\s+\[s\|// ; s/]$//'"]
system.run["n=2 zabbix-agent -t vfs.fs.discovery | sed -re 's/vfs.fs.discovery\s+\[s\|// ; s/]$//'"]
system.run["n=... zabbix-agent -t vfs.fs.discovery | sed -re 's/vfs.fs.discovery\s+\[s\|// ; s/]$//'"]

Or as a UserParameter:

UserParameter=vfs.fs.discovery.multi[*],zabbix-agent -t vfs.fs.discovery | sed -re 's/vfs.fs.discovery\s+\[s\|// ; s/]$//'
vfs.fs.discovery.multi[1]
vfs.fs.discovery.multi[2]
vfs.fs.discovery.multi[...]
Comment by Christian Reizlein [ 2014 Sep 18 ]

Dmitry Workaround would work, but you have to also rename FSNAME/FSTYPE to something like FSNAME2/FSTYPE2 so item prototypes wont get duplicate keys (at least FSNAME which is used)

system.run["n=2 zabbix-agent -t vfs.fs.discovery | sed -re 's/vfs.fs.discovery\s+\[s\|// ; s/]$// ; s/FSNAME/FSNAME2/g'"]

But also, my main problem now is that you have to know "zabbix-agent" location, which is not always the same on all our hosts... so its not working

Comment by Arli [ 2014 Oct 28 ]

It also applies to trapper items that include discovery macro. For example if I have multiple LLD rules to put together a list of jobs and one source that reports the status of those jobs, it would be nice to be able to create just an item with key:

job_status[{#JOB}]

for all the different LLD rules.

Comment by Todd Ebersviller [ 2015 Feb 18 ]

I agree this would be nice. On Windows you can use a hack like this:
UserParameter=m.vfs.fs.discovery[*],powershell -NoProfile -ExecutionPolicy Bypass -Command "& { C:\zabbix\zabbix_agentd.exe -t vfs.fs.discovery|% {$_ -replace 'vfs.fs.discovery\s+[s|',''} | % {$_ -replace 'FSNAME','M_FSNAME'} |% {$_ -replace 'FSTYPE','M_FSTYPE'}| % {$_ -replace ']}]',']}'} }"

That'll allow the second LLD to run still using vfs.fs.discovery. You could use the same type of hack for the item if that's a duplicate. In my case I just used pused since I was using pfree on the other template.

Comment by Mickael Martin (Cyres) [ 2015 Oct 28 ]

No news ? I hope this feature in Zabbix 3.0...
There is no simple hack, without userparameter or remote command...

Comment by Marc [ 2015 Oct 28 ]

mma, it's not on the roadmap yet. The probably quickest way to get it there is considering (co-)sponsoring development.

Comment by Oren J [ 2016 Mar 20 ]

I have another comment to the little powershell script,
i have created the following:

powershell -NoProfile -ExecutionPolicy Bypass -Command "& { add-type -assembly system.web.extensions; $ps_js = new-object system.web.script.serialization.javascriptSerializer; $vfs = C:\ZabbixAgent\bin\win64\zabbix_agentd.exe -t vfs.fs.discovery | % {$_.Substring(($_.IndexOf('[')+3))}; $TempString = $vfs.Substring(0,$vfs.Length-1); return $ps_js.Serialize($TempString) }"

this is in case the buffer size of the powershell script it not large enough to contain the output, this is example of a server with 15 mapped luns.

Hope this help.

Comment by Oleksii Zagorskyi [ 2016 May 23 ]

ZBXNEXT-3206 suggests some solution.

Comment by Glebs Ivanovskis (Inactive) [ 2016 Nov 23 ]

Indeed, ZBXNEXT-3206 became an official solution to the problem. Should we close this one as a duplicate?

Comment by Oleksii Zagorskyi [ 2016 Nov 23 ]

I'd agree, but after the ZBXNEXT-3206 will be nicely documented, effectively reflecting the idea in several places, so it will not be missed by people who look for how to create multiple similar rules.

Comment by Vladimir Silin (Inactive) [ 2017 Jan 27 ]

While ZBXNEXT-3206 is still in documenting, What's new in Zabbix 3.2, low-level discovery page, and Alias parameter description are updated with info corresponding to multiple LLD rule configuration.
So, perhaps this issue may be closed now.

Comment by pfoo [ 2019 Jan 15 ]

Should this really be closed ? ZBXNEXT-3206 feels like a workarround, requiring to edit zabbix agent configuration. For now I'm updating my agents config using ansible, but some might not have direct access to every agent.

I feel like this should be fixed either by allowing argument in discovery (vfs.fs.discovery[*]) by default in agent, or even better, fixed server side.

Comment by Mickael Martin (Cyres) [ 2021 Mar 30 ]

Agree with pfoo ,this is a workaround, not a fix. Moreover, there are no possibilities to update all agents to add an alias like this.
The fix must be in the server side.

Comment by Nathan Liefting [ 2021 Jul 22 ]

Just putting my two cents on this issue in agreement.

When building for example Windows Service discovery, one might want two seperate templates. One template for all the "default" Windows service we want to monitor on EVERY Windows host and application templates that are different PER host. 

Then there's the application (Application name example Solahti) which might run something like the following services:

  • Solahti gateway
  • Solahti runner
  • Solathi agent
  • Solathi agent 2

Now if you want to add these in your discovery rule, but you want to keep the default you'd need to use the filter macro's. But that means you have to override this for every single host that runs this application. You don't want to do that. Besides your defaults might change as well, so that means you need to maintain seperate macro's to not interfere with the defaults.

It's also not possible to do several templates, as macro's don't transfer between templates on hosts, so it needs to be host level... 

 

The real solution is having a service.discovery key on a host multiple times coming from different templates. The only way to achieve that is with something like service.discovery[application 1] and service.discovery[application 2]. Definitely a must have to further automate setups.





[ZBXNEXT-1790] ability to alert when lld entity is not discovered anymore Created: 2013 Jun 12  Updated: 2024 Feb 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F), Server (S)
Affects Version/s: 2.0.6
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Unassigned
Resolution: Unresolved Votes: 16
Labels: lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-4613 Trigger for discovery rule issues Closed
is duplicated by ZBXNEXT-8711 Internal event for not discovered Closed

 Description   

if low level discovery rule does not discover some entity anymore, we show a warning on the frontend, but there is no way to alert on this.

for example, we can monitor filesystems for used space, but not for availability.

maybe that could be another internal event type ?

"New LLD entities discovered" / "Previously discovered LLD entities lost"

the last would be a bit bad with period of 0 - could we have some way to notify user about which entities were lost ?



 Comments   
Comment by Nicola V [ 2015 Oct 02 ]

Hello, I strongly support this feature: it's very valuable to asses whether an item has disappeared because of LLD.

Comment by jj [ 2016 Mar 23 ]

tried internal cheks?

Comment by richlv [ 2016 Mar 23 ]

internal items/events won't help.

another idea - a new trigger function lldwilldeletein() or better named
would return 0 if an item is still discovered and time in seconds until the item would be deleted.

Comment by Gustavo Guido [ 2023 Oct 04 ]

Appliying the same rules applied with services in network discovery will be nice.
Discovered, Up, Lost, Down (don´t know if with the same names)
Also the deletion of the item/trigger etc can be done by the same rules, you decide when an item will be deleted depending on certain rules, not the same keep lost resource for every resource discovered.

 

Very similar

https://support.zabbix.com/browse/ZBXNEXT-8711

Comment by Cesar Inacio Martins [ 2024 Jan 24 ]

Hi, has anyone found a workaround?

I'm looking for a way to identify when a discovered item stops to be discovered... 
I need to trigger and create an event about this situation.
Trying to figure out if a trigger prototype with nodata() function does the job.

 

Comment by Peter Barrette [ 2024 Jan 24 ]

Hi Ceasar, here's what I've done:

Create a user parameter file for zabbix agent on the zabbix server:

/etc/zabbix/zabbix_agent2.d/userparameter_pgsql.conf

 

The file contains the following line:

UserParameter=zabbix.undiscovered,psql -d zabbix -U zabbix -c "select count(item_discovery.ts_delete) from item_discovery where item_discovery.ts_delete <> 0 and item_discovery.key_ not like 'exclude%';" -qt

Note that I'm using a PostgreSQL database, so I also need a .pgpass file for the zabbix user:

/var/lib/zabbix/.pgpass

 

That file contains the password for the zabbix dabase user:

localhost:*:*:zabbix:passwordhere

 

Then create a new check item for the zabbix server:

Name: Zabbix Server dropped from discovery
Type: Zabbix agent
Key: zabbix.undiscovered
Type: Numeric

Then create a new trigger:

Name: Count of items dropped from discovery: {ITEM.VALUE}
Expression: last(/Zabbix Server/zabbix.undiscovered)<>0
Severity: Whatever you like.

 

This produces an alert with the count of dropped discovery items.

To find the specific items that were dropped, I then SSH into the zabbix server and execute the following query against the pgsql database:

select hosts.name, items.name, items.status, to_timestamp(item_discovery.lastcheck) as lastcheck, to_timestamp(item_discovery.ts_delete) as ts_delete
from items
left join hosts on items.hostid = hosts.hostid
left join item_discovery on items.itemid = item_discovery.itemid
where item_discovery.ts_delete <> 0
and item_discovery.key_ not like 'exclude%'
order by hosts.host;

 

Note that I ignore certain dropped discovery items in both cases with the "and item_discovery.key_ not like 'exclude%'" syntax. If you don't need that, don't use it.

Comment by Cesar Inacio Martins [ 2024 Jan 24 ]

Hi Peter , 

 

Thank you for your suggestion, however, they don't apply to my environment. 

I need something that shows exactly to our support team what is missing. 
Need to be simple like any other event.

Comment by Peter Barrette [ 2024 Jan 24 ]

Play around with the userparameter query and you can get the full list dumped to the item and handle the trigger based on that.

Comment by Gustavo Guido [ 2024 Feb 05 ]

A work arround could be done by an script item that uses de API and reports  the not dicovered itms. 

Whith the new history.push you can fire a trigger.





[ZBXNEXT-1698] Add ability to "Show total" in Stacked Graph Type Created: 2013 Apr 05  Updated: 2018 Mar 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Maxim Krušina Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: graphs, stackedgraphs, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be really helful to have some check box like:
[x] Show totals

when using Stacked graph type.

For example, now I'm showing two numbers: count of registered man and woman. I would like see also total, so A+B(+C+D...).
I know I can do it via separate calculated item, but this will be much more easier.



 Comments   
Comment by Cristian [ 2013 Sep 16 ]

This is a feature already existent with the old Cacti so we are somehow behind with this missing feature...

Comment by Lucas Cardoso [ 2018 Mar 02 ]

theres is any news about the possibility of implementing this feature? it's really important.





[ZBXNEXT-1224] MonetDB SQL Database Supoprt Created: 2012 May 16  Updated: 2012 Oct 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Installation (I), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Kendall Green Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: database, performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux zabbix 2.6.32-220.13.1.el6.x86_64 #1 SMP Tue Apr 17 23:56:34 BST 2012 x86_64 x86_64 x86_64 GNU/Linux
MonetDB Database Server v1.6 - Toolkit v1.0 (Apr2012-44068741341a)


Attachments: Zip Archive zabbix_monetdb.zip    

 Description   

Adding support for MonetDB. Attached is the converted Zabbix database schema, data, image DDL / DML / SQL for using MonetDB.

Information found on MonetDB.org website: Since 2011 column store technology as pioneered in MonetDB has found its way into the product offerings of all major commercial database vendors. It is based on the SQL 2003 and SQL 2008 standards, is fully ACID compliant, and supports a rich spectrum of programming interfaces (JDBC, ODBC, PHP, Python, RoR, C/C++, Perl). It's a very active open source database.

I'm planning to extend the Zabbix source code to include the proper dialect translations and PHP / Mapi client support. Even without being a novice programmer, this is very complicated, so I'm submitting these SQL files to the Zabbix community to help excel the effort.

There are many advantages to using MonetDB, and I will continue attempting to extend Zabbix support for this columnar database platform.






[ZBXNEXT-1226] Graph percentile from API Created: 2012 May 19  Updated: 2014 Mar 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Attilla de Groot Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 1
Labels: flexibility, percentile
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-756 Trigger function percentile Closed

 Description   

Hi,

Service providers often base their billing on the 95th percentile of bandwidth usage on a link. In a graph the percentile can be displayed easily, but I'd like to get this value over a given period from the API as well. This would allow me to base billing on these value, instead of getting the value from the mysql database directly.



 Comments   
Comment by Oleksii Zagorskyi [ 2012 May 20 ]

See also ZBXNEXT-756.
Issues linked.





[ZBXNEXT-1137] ability to see directly monitored statistics Created: 2012 Mar 01  Updated: 2012 Oct 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: richlv Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

in "status of zabbix" report we can see the total amount of hosts, items and nvps.
in proxy details page we can see per proxy amount of hosts, items and nvps.

if there are proxies used, there is no way to see the amount of hosts, items & nvps, assigned directly to the master host.

preferably, there would be api calls for all of these statistics






[ZBXNEXT-1142] Support JMX Operations Created: 2012 Mar 07  Updated: 2024 Feb 08

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Java gateway (J)
Affects Version/s: 1.9.9 (beta)
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Michael Tewner Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 18
Labels: javagateway, jmx, patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Java


Attachments: PDF File DEV-EnableJMXOprations-Proposal22May2018-270718-1001-367.pdf    
Issue Links:
Causes
Duplicate
is duplicated by ZBXNEXT-1310 Support for JMX methods in Java Gateway Closed
Team: Team A
Sprint: Roadmap Backlog

 Description   

Currently, the JAVA proxy only supports JMX Attributes. Please add support for JMX Operations. I have submitted VERY rough code which I use in our environments to http://www.zabbix.com/forum/showthread.php?p=97693#post97693



 Comments   
Comment by Yevgen [ 2013 Sep 09 ]

Yes, it would be great!

Comment by Hossein Shemshadi [ 2015 Oct 14 ]

yes , I really need this feature.

Comment by Vjaceslavs Bogdanovs [ 2017 Jun 12 ]

JMX operation support would be a nice feature, but it is not that simple...
Operations could have multiple params with different types (not only types from java.lang, but any custom type), so Zabbix user will have to provide a value and a type for params of operations. It is also hard to tell what syntax can be used for arrays, custom objects, etc to define all that within single field and even for fragmented input (type dropdown and input for a value) there are no good options to define objects, arrays, etc.

Provided solution is limited to strings only and uses item key as a data buffer for operation name and param names. Currently item key is limited to 255 characters and adding all the values with their types into one input field will be a nightmare for a user (so fragmented input is a must).

So looks like limited solution (for basic java.lang types) is the closest Zabbix can get to JMX operation support without asking user to write custom scripts or do some magic inducing serialization of params.

Comment by richlv [ 2018 May 15 ]

It might be worth implementing operation support with plain strings as the first shot. It would allow to verify the basics and additional parameter support can come at a later time.

Comment by Matias [ 2021 Jul 30 ]

I run into this problem while trying to monitor the default springboot mbeans. I feel like this is a big limitation of the jmx gateway.





[ZBXNEXT-1150] Event should store and show the maintenance status for an event Created: 2012 Mar 14  Updated: 2024 Feb 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 1.8.10
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: James Sperry Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 17
Labels: events, maintenance, troubleshooting, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

all


Issue Links:
Duplicate
is duplicated by ZBXNEXT-2355 provide an ability to later understan... Closed
is duplicated by ZBXNEXT-3621 filter by maintenance in event.get Closed

 Description   

It would be very helpful if in the Event Details area of an event, there was a row on the left that included the Maintenance status during the event.

When troubleshooting Actions and Triggers, it's very difficult to know if the maintenance was adhered to. Having this information would take a lot of guesswork out of it.



 Comments   
Comment by Volker Fröhlich [ 2012 Mar 14 ]

From my point of view, actual maintenance periods should be stored along with the host, as long as maintenance is only host based.

This way you could also visualize it in graphs.

Comment by Volker Fröhlich [ 2012 Dec 03 ]

Connected to ZBXNEXT-1084

Comment by Pavel Timofeev [ 2013 Jan 28 ]

Not only in Event detail, but in Events list too.
I'd like to see something like this
http://img-fotki.yandex.ru/get/6430/16519813.0/0_9ff52_182007c4_orig
and this
http://img-fotki.yandex.ru/get/6431/16519813.0/0_9ff53_eb508574_orig
That would be very useful!

Comment by Oleksii Zagorskyi [ 2016 Dec 20 ]

In duplicated ZBXNEXT-2355 I shared an idea where the information could be stored:

Where it could stored - I don't know. The "events" table don't have suitable columns.
I guess currently numbers (if there were alerts) for the "Actions" column taken from "alerts" table.
Maybe we could store something to the "alerts" table and then display it in a special way?

What we need to remember that staring from 3.2 events may be found on Monitoring -> Problems (Show History switch) menu.

Comment by Oleksii Zagorskyi [ 2016 Dec 20 ]

I've updated issue summary to not limit all possible use cases, linked here as duplicates.

Comment by richlv [ 2016 Dec 28 ]

here's a hackish idea that might or might not work.

my usecase is grabbing events with event.get to produce a report on which events and how many times have fired during a specific period of time.
now, event.get is completely useless for this purpose if you want to exclude the events that were generated during a maintenance.

the hackish idea is to have an action that sends an alert with a "not in maintenance" condition (adjusting other conditions as needed to minimise the amount of these "extra" alerts).
there might already be an action like that in many setups - maybe one that sends emails to the team alias, for example.
then one could grab alerts with alert.get and filter down to event IDs that are relevant (as in, happened only outside the maintenance).
one cannot just count the alerts as any repeated alerts will completely skew the statistics about events.

will have to play with this to see whether it works as hoped.

Comment by James Sperry [ 2016 Dec 28 ]

just to be clear, my use case is not to exclude events which were created during maintenance.
My use case is to show if an action was not triggered due to the fact that the host was in maintenance.

We automate the adding and removing of maintenance in our environment. So when we remove a host or group from maintenance, the maintenance item is deleted.

So if someone comes to me and says "Hey, why didn't we see this alert last week", I would like to look into the event history and say "it was in maintenance at the time"

thanks.

Comment by richlv [ 2016 Dec 29 ]

ejames, yes, that's harder. the best i can think of - having two nearly identical actions. one with, one without "not in maintenance" condition. then an api-crawling script that compares alerts from both. any difference must be caused by an active maintenance at the time...

Comment by richlv [ 2016 Dec 31 ]

as for the event.get problem, looks like alert.get can be used to work around the lack of the maintenance status like this :

  • alert.get all alerts (filter by a specific action, time period etc)
  • grab unique eventids from the output
  • query event.get by those eventids

of course, that will scale much worse - more alerts than events, might have to filter by a large number of events. other than that, seems to work for the intended purpose - finding out what alerted over some period, while ignoring things that happened during an active maintenance.

Comment by Oleksii Zagorskyi [ 2019 Sep 30 ]

Maybe it could take "event_suppress" table data, as it has been added in v4.0 ?
But ... Checked it. Unfortunately zabbix server deletes entries after maintenance is finished for a host, generated events.

 20583:20190930:234928.509 taking host (10271) out of maintenance
 20583:20190930:234928.509 query [txnlev:1] [update hosts set maintenanceid=null,maintenance_type=0,maintenance_status=0,maintenance_from=0 where hostid=10271;]
 20583:20190930:234928.510 query [txnlev:1] [commit;]
 20583:20190930:234928.510 query [txnlev:1] [begin;]
 20583:20190930:234928.511 query [txnlev:1] [delete from event_suppress where suppress_until<1569876568]
 20583:20190930:234928.511 query [txnlev:1] [commit;]
 20583:20190930:234928.511 query [txnlev:0] [select eventid,objectid,r_eventid from problem where source=0 and object=0 and mod(eventid,1)=0 order by eventid]
 20583:20190930:234928.512 query [txnlev:0] [select eventid,maintenanceid,suppress_until from event_suppress where mod(eventid,1)=0 order by eventid]
 20583:20190930:234928.513 query [txnlev:0] [select functionid,triggerid from functions where (triggerid between 16019 and 16023 or triggerid in (13491,13496,13501,13502,15917,15924,15944,16012,16033,16055)) order by triggerid]
 20583:20190930:234928.515 query [txnlev:0] [select eventid,tag,value from problem_tag where (eventid between 1069 and 1073 or eventid in (15,353,2238,2239,3395,3397,4061,4083,4084,4086,4089,4093,4095)) order by eventid]
 20583:20190930:234928.516 query [txnlev:1] [begin;]
 20583:20190930:234928.516 query [txnlev:1] [select maintenanceid from maintenances where maintenanceid=1 order by maintenanceid lock in share mode]
 20583:20190930:234928.517 In zbx_dc_get_event_maintenances()
 20583:20190930:234928.517 End of zbx_dc_get_event_maintenances()
 20583:20190930:234928.517 query [txnlev:1] [delete from event_suppress where eventid=4095 and maintenanceid=1;

But I think it could be possible to rework current approach and do not delete corresponding useful entries in the table and show details in event details, at least.
Such records later could be deleted by constrains, together with parent events.

Comment by Dimitri Bellini [ 2023 Oct 25 ]

Hi DevTeam,
I would like to re-open this discussion because I think it's very important on Enterprise enviroments.
It's very useful to track the events that did not fire an action because the was a "maintenance".
Please check what we can do it for the next 7.0

Thanks os much

Comment by Dimitri Bellini [ 2023 Dec 14 ]

Hi Guys,
Some updates about this problem? As first step to workaround the issue I would like to suggest a "simple event tag" to mark the events fireuring a maintenance.
It's not the final answear but can be very useful in the meantime we do not have a "real" solution.
Thanks

Comment by Alexei Vladishev [ 2023 Dec 18 ]

We plan to discuss possible solutions later this week and will keep everyone updated.

Comment by Dimitri Bellini [ 2023 Dec 18 ]

Hi Alexei, perfect! I will wait your further news.





[ZBXNEXT-1147] Items for SSL/TLS connectivity (for HTTPS, LDAPS, IMAPS, ....) Created: 2012 Mar 12  Updated: 2013 Dec 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Marc Schoechlin Assignee: Unassigned
Resolution: Unresolved Votes: 20
Labels: newitemkey, ssl, tls
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File zbx_ssl_check.sh-Trigger.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-1202 Support for encrypted protocols in si... Closed

 Description   

It would be great to have a items witch provide the availability to check the ssl connectivity of ssl-enabled services (HTTPS, LDAPS, IMAPS, ....)

I recommend the following syntax:

Item No.1 : net.tcp.service.ssl.certificate[<type>,<ip>,<port>]

type - i.e. SSL, TLS, ...
ip - IP address (default is 127.0.0.1)
port - port number (by default standard service port number is used)

Return Value:
0 => Unable to establish a ssl/tls connection (ssl connect failure - i.e expired certificate)
>0 => Connection was successful, but certificate expires in returned number of days

Example : net.tcp.service.ssl[ssl,www.verisign.com,443]

Item No.2 : net.tcp.service.ssl.connect[<type>,<ip>,<port>]

type - i.e. SSL, TLS, ...
ip - IP address (default is 127.0.0.1)
port - port number (by default standard service port number is used)

Return the error code:
=> see - http://en.wikipedia.org/wiki/Transport_Layer_Security#Alert_protocol
=> provide a value mapping in Zabbix

see also: ZBXNEXT-287



 Comments   
Comment by Attilla de Groot [ 2012 Apr 28 ]

I second this, really needed.

Comment by richlv [ 2012 Jun 13 ]

ZBXNEXT-662 asks for imaps specifically

Comment by Timo Veith [ 2012 Nov 06 ]

I also second this. It would also be nice to get the response of the service which is listening on the given port, if any is there. E.g. from a connect to a cyrus imap server:

openssl s_client -connect mailserv04:993
...
* OK [CAPABILITY IMAP4rev1 LITERAL+ ID ENABLE AUTH=PLAIN AUTH=LOGIN SASL-IR] mailserv04 Cyrus IMAP v2.4.16 server ready

And beeing able to match strings in the respone in a trigger.

Comment by Peter Baumann [ 2013 Nov 23 ]

I'm doing SSL Cert checks like this:

External Script:

zbx_ssl_check.sh
#!/bin/sh
SERVER=$1
PORT=${2:-443}
TIMEOUT=25
end_date="$(/usr/bin/timeout $TIMEOUT /usr/bin/openssl s_client \
-host $SERVER -port $PORT -showcerts < /dev/null 2>/dev/null | \
sed -n '/BEGIN CERTIFICATE/,/END CERT/p' | openssl x509 \
-enddate -noout 2>/dev/null | sed -e 's/^.*\=//')"

if [ -n "$end_date" ]; then
        end_date_seconds=$(date "+%s" --date "$end_date")
        now_seconds=$(date "+%s")
        CALC=$((($end_date_seconds-$now_seconds)/24/3600))
        echo $CALC
else
        exit 124
fi

Type: External check
Key: zbx_ssl_check.sh[

{HOST.CONN}

,{$SSL_PORT}]

Comment by Peter Baumann [ 2013 Nov 23 ]

Check the Screenshot Trigger for zbx_ssl_check.sh





[ZBXNEXT-1022] heartbeat communication for between Zabbix server and agent Created: 2011 Nov 08  Updated: 2014 Nov 08

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Kodai Terashima Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: heartbeat
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBX-4284 Possible wrong host (agent!,snmp?) di... Closed

 Description   

Zabbix agent status on Zabbix server has some problems at the moment.

  • Zabbix server make host unreachable if one item cannot retrieve data (network unreachable) from agent. if any user parameter item take a long time, Zabbix server stop monitoring all of other item on same host.
  • If active agent is crashed, Zabbix server doesn't notice that.
  • Agent status on host screen is not actually agent status (Zabbix server calculate internally)

I think it's good that Zabbix server and agent communicate using exclusive heartbeat connection periodically.
If the heartbeat is not successful, Zabbix server move host status to unreachable, and make a event.



 Comments   
Comment by richlv [ 2011 Nov 08 ]

hmm. usual suggestion is to avoid using 'status' item and use agent.ping + nodata() instead - that should solve this issue

Comment by Kodai Terashima [ 2011 Nov 08 ]

I know agent.ping + nodata() solution, but the solution don't solve the first problem
the most important problem is the first one

And, I think check of agent availability is important, but agent.ping + nodata() is difficult for Zabbix beginners.
If we recommend agent.ping + nodata() for all user, I think it's good to implement that function by default, without creation of item and trigger.

Comment by richlv [ 2011 Nov 08 ]

in latest versions userparameters going down still should result in nodata() trigger for agent.ping. would that solve the problem ?

continuing with slow hosts as usual is not feasible, as they would hamper the overall monitoring - such userparameters should be fixed/changed

Comment by Oleksii Zagorskyi [ 2011 Nov 09 ]

Kodai, about "if any user parameter item take a long time, Zabbix server stop monitoring all of other item on same host"
Seems you are partially wrong. See my last debugging ZBX-4284

But this feature request is very interesting overall.

Comment by Kodai Terashima [ 2011 Nov 09 ]

Thank you pointing that out, Oleksiy.

first problem I wrote looks same problem as ZBX-4284. Only one "slow userparameter or check" affect to all of other items on same host. I think it is not good behavior. Zabbix server should only change item status to not supported in this case.

I think heartbeat communication between server and agent (and unreachable host is handled by heartbeat) improve the problem and usability so much.

Comment by Peter Schultz [ 2011 Nov 09 ]

...Only one "slow userparameter or check" affect to all of other items on same host. I think it is not good behavior. Zabbix server should only change item status to not supported in this case. ...

agreed !!!

Comment by missing [ 2012 Nov 03 ]

i had this problem yet,i found something funny that zabbix server will check that server after aboute 320 minutes again.

Comment by Strahinja Kustudic [ 2014 Nov 08 ]

Zabbix setting a host as unreachable just because one item is bad, is the most annoying thing. The biggest problem is that it makes Zabbix unreliable, because if one item times out, the whole host gets disabled, so it stops running other items on that host, which means the host is not being monitored properly.

I think the easiest way to solve this problem is to define items which can make a host unreachable, e.g. it could be a check box in the item create/edit page called "Make host unreachable on time out", or some better name. This way e.g. agent.ping could have that checkbox set and only that item would make the host unreachable.

Comment by richlv [ 2014 Nov 08 ]

that's a different problem which is tracked at ZBX-4284

Comment by Strahinja Kustudic [ 2014 Nov 08 ]

Well it's not a different problem, they are related, since both of them would change how we detect if a host is unreachable.





[ZBXNEXT-1026] Allow to use wildcard * in the GUI search filters Created: 2011 Nov 10  Updated: 2017 Jan 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: filters, search, usability, wildcard
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Because of changes in the ZBX-3413 starting from 1.8.5 we have some "regression".
This feature request is a request to fix this regression.
The regression is appeared because of undocumented feature of use SQL wildcard symbol % inside searched text, which was fixed as bug in the ZBX-3413.

For instance currently it's not possible to search by string "Ch%ory"
for the items wit the descriptions:
"Check cached memory"
"Check free memory"

Suggested to use wildcard symbol *

Related issues ZBX-3979, ZBXNEXT-902



 Comments   
Comment by Marek Neumann [ 2011 Nov 11 ]

Would be good to get this functionality back since we make heavy use of it!

Comment by Alexei Vladishev [ 2011 Nov 16 ]

It will be eventually supported. Currently we are too much focused on getting Zabbix 2.0 ready. Hopefully we could find some time to implement it before 2.0 is out, no promises though.

Comment by richlv [ 2013 Feb 06 ]

ZBXNEXT-1609 is similar

Comment by richlv [ 2017 Jan 28 ]

this feature still has not returned. might be easy enough to hack in, though - just set searchWildcardsEnabled for the item filter (as per https://www.zabbix.com/documentation/3.4/manual/api/reference_commentary ) and use '*' as the wildcard char





[ZBXNEXT-1027] Differentiate between Service Level Views Created: 2011 Nov 14  Updated: 2013 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.9.7 (beta)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Johann Brajer Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: events, permissions, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi Zabbix Team,

to use Zabbix in a big IT environment it seems neccessary to display all the Systemstatus and Alarms in a separted way, depending on the Service Level responsibility of a Zabbix user.
In my opinion it should be possible in Zabbix to capture and log all different depths of alarms of the systems, but there should be a kind of filter available depending on the Service Level Responsibility of the Zabbix user.

For example a normal Service Level 1 user does not have to know each bits and bytes of the system to decide which kind of failure happend....to much information will just confuse him. He just have to handle fast and informe the right persons in critical situations....but of course a Level 3 Specialist must have access to all kind of deaper informations (eg. Warnings, Informationals,...)

I think it should be quite easy for you to implement a filter function in Zabbix for different Information Levels, depending which kind of DisplayGroup the user belongs to.

What do you think about this possible Feature? Does it makes sence to you?

Regards johann



 Comments   
Comment by Johann Brajer [ 2011 Nov 14 ]

same for Version 1.8.8

Comment by richlv [ 2011 Nov 14 ]

couldn't this be currently done by showing displays, filtered by trigger severity ?

Comment by Johann Brajer [ 2011 Nov 14 ]

I think there was a little missunderstanding...

It would be nice to setup different profils with special rights to see specific Items and alarms
Nowadays a user has to setup his filters by himself...we just like to give users concrete Viewing rights....

As i know this is not possible

Comment by richlv [ 2011 Nov 14 ]

hmm, that's a bit too vague. would be nice to specify which entities in which pages are meant, and what the effect should be

Comment by Johann Brajer [ 2011 Nov 14 ]

> different Service Level members have access to the same data of IT Systems (hostdata) but a different view on the Systems.
> Option to setup a Dashboard, the Trigger-View and the Maps for different types of Service Levels...

eg. we have Sevice Level 1 members which should be alarmed only if a Critical Error with enormous consequencies happens, but not if some systems have redundancy. This failures should only be seen by the System Specialists (Level3) . > Reason just to hold the count of failures short.

maps:
> on the Maps a host should get red when an critical Error happens, but for the Specialist (level3) a Critical error appears much earlier than for a Sevice Level 1 technican. For the Service Level 1 technician their should be no Error seen on the map as long it has normal function due to redundancy!

> conclusion: Different typ of Trigger Setup for specific Group of Users.....for the Dashboard View, The Trigger View and The Map Views. ...also Screens...

hope its now a little bit clearer

Comment by Johann Brajer [ 2012 Apr 06 ]

Hi ZABBIX-Team,

just wanted again to ask, if you consider to implement such a feature in one of the next Versions??
We are really looking forward to get a solution for different types of Alarm Severity...

PLEASE let us know!!

THX jb

Comment by richlv [ 2013 Feb 07 ]

there are no short term plans for a feature like that





[ZBXNEXT-1109] support multiple server for active proxy Created: 2012 Feb 07  Updated: 2024 Feb 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Kodai Terashima Assignee: Unassigned
Resolution: Unresolved Votes: 44
Labels: highavailability, redundancy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBXNEXT-584 Support multiple server in active che... Closed

 Description   

Active proxy support only one server at this moment (first one in Server setting in zabbix_proxy.conf).
Multiple server support for active mode proxy is good solution for redundancy of Zabbix server.



 Comments   
Comment by Filipe Paternot [ 2014 Apr 25 ]

I would prefer more for creating multiple zabbix environments (test/production).

This way the proxy could behave like the agent (http://blog.zabbix.com/multiple-servers-for-active-agent-sure/858/) and answer to many zabbix servers at once.

I think we can do something remotely close to it when we set the variable ProxyLocalBuffer on zabbix_proxy.conf, but it would be more like a Macgyver..

Comment by Dmitry Verkhoturov [ 2016 May 26 ]

I'll be able to make a patch here maybe — we're using two Zabbix servers, I already have patch for zabbix_sender.

Comment by zhang [ 2016 Jul 16 ]

@Dmitry, could you please share your patch?

Comment by Dmitry Verkhoturov [ 2016 Jul 18 ]

zhangjun, I did not make it because I still don't use Zabbix proxy and 2.4 is lack of support now — I'll probably make it for 3.0 someday, but can't give you any ETA on that.

Comment by Dmitry Verkhoturov [ 2016 Sep 16 ]

Patches for 2.4 and 3.0 are published in zabbix-patches github repo, feel free to use them: https://github.com/zabbix/zabbix-patches

zhangjun, please take a look.

Comment by Dmitry Verkhoturov [ 2017 Jan 24 ]

Patch updated for 3.2 and available in https://github.com/zabbix/zabbix-patches

Comment by Chris Gleason [ 2017 May 02 ]

Does anyone know if this was ever fixed in trunk? I'm looking through release notes and don't see.

I'm using repo packages to install and can't use patches so I'd like to see if this is do able via an upgrade.

Comment by Dmitry Verkhoturov [ 2017 May 02 ]

Right now it's not in trunk even for 3.4 as far as I know. Maybe it's really in "Won't fix" status for Zabbix SIA.

Comment by Marc [ 2017 May 02 ]

Status = Open and Resolution = Unresolved should actually speak for itself, doesn't it?

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jul 21 ]

Guys, could you clarify what's expected from poor Zabbix proxy?

Agent can be polled in passive mode by multiple servers/proxies without any problems because each check is independent and no state needs to be stored on agent's side. Agent can also work with multiple servers/proxies in active mode, but it's a bit more complicated because there is a list of checks to do from every server/proxy. Current solution is that active checks for every server/proxy run within a single process/thread. Independently. List of checks is stored in memory of "active" process/thread. I don't think that the same is expected from proxy.

Proxy has a much more complicated configuration to manage, that's why it has a database, configuration cache, etc. Making it work with multiple servers independently while storing all configurations in one database and one configuration cache would be really complicated. Creating multiple databases and multiple configuration caches for one proxy instance would have no benefits compared to multiple proxy instances running in parallel (this configuration can be achieved without code modification). And I'm not sure it's required.

What's probably expected is an ability for an active proxy to switch between multiple servers as a configuration source and gathered data sink, so that there is only one server proxy works with at a time. Currently such switch requires editing configuration file and restarting a proxy with inevitable downtime and a risk of data loss. The request is about making this procedure easier, right?

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jul 21 ]

If my guess is correct then (partial) implementation of ZBXNEXT-3162 can probably solve the problem.

Comment by Dmitry Verkhoturov [ 2017 Jul 28 ]

glebs.ivanovskis, running few instances of proxy, all of which will be "ServerActive" for client but each have their own servers is nice. However, could this be documented as official solution for situation where you need active items from more than one server and need to use proxy at the same time? Seems far from obvious for me, however it might be the solution for that ZBXNEXT.

I'll try to write doc myself, sounds like a plan.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jul 28 ]

It seems that high availability setup is not covered in our documentation. There is unofficial guide, but it is quite old. I'd suggest to create a documentation issue for this. Paskal, will you be so kind to do that? I think you will describe real life needs better than me.

Comment by Dmitry Verkhoturov [ 2017 Jul 31 ]

That's a draft, where should I publish it? Zabbix.org wiki?

Case you have multiply Zabbix servers (each of which gathers data from agents) and need to use proxy with this setup, you need multiply proxies, because each could work only with one server. Instruction below is about setting 2+ proxies on same host.

1. Install zabbix-proxy (zabbix-proxy-sqlite3 package, for example)

2. Adjust /etc/zabbix/zabbix_proxy.conf for Zabbix Server 1, then copy it to /etc/zabbix/zabbix_proxy_2.conf and adjust it for second server.
Points of interest:
Field | value for first server 1 | value for first server 2
Server= | IP_of_server_1 | IP_of_server_2
ListenPort= | 10051 | 10061 # ports must be different for first and second server if you want to use proxy in Active mode (default)
PidFile= | /var/run/zabbix/zabbix_proxy.pid | /var/run/zabbix/zabbix_proxy_2.pid
DBName= | SQLite3_path_1 | SQLite3_path_2
DBSocket= | /tmp/mysql.sock | /tmp/mysql_2.sock

3. Copy /etc/init.d/zabbix-proxy to /etc/init.d/zabbix-proxy-2 and adjust following line:
'NAME=zabbix_proxy' ==> 'NAME=zabbix_proxy_2'
'--exec $DAEMON >/dev/null 2>&1' ==> '--exec "$DAEMON -c $CONFFILE" >/dev/null 2>&1'
And add another variable below NAME:
CONFFILE=/etc/zabbix/zabbix_proxy.conf

4. In case your system use systemd (CentOS, Debian 8+, Ubuntu 15.04+), copy /etc/systemd/system/multi-user.target.wants/zabbix-proxy.service to /etc/systemd/system/multi-user.target.wants/zabbix-proxy-2.service and adjust following lines:

Environment="CONFFILE=/etc/zabbix/zabbix_proxy_2.conf"
PIDFile=/run/zabbix/zabbix_proxy_2.pid

Now you're ready to go, do "service zabbix-proxy start" and "service zabbix-proxy-2 start" to get two proxies up and running, and enable these services to run automatically.

It's not tested so far, I'll make real-life test a bit later, and will create a ZBXNEXT about including it into documentation.
(It seems so taped with blue electrical tape, that it doesn't fit official doc in my opinion, but whatever you say). Also, many things are left outside - for example, zabbix_sender patch (https://github.com/zabbix/zabbix-patches/blob/master/zabbix-3.2/ZBXNEXT-1109/ZBXNEXT-1109.patch) didn't make it to source but is required to send trappers to two servers.
I've rechecked zabbix_sender patch, it works with different ports for two servers - so the only problem is it's unofficial and AFAIK we have no separate ticket for zabbix_sender work with 2+ servers.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jul 31 ]

I think it is a great start! Good job!

In my opinion it is good enough to go into main Zabbix documentation. Create a ZBX(NEXT), put your suggestions there and martins-v will find a place for it.

Comment by Chris Gleason [ 2017 Jul 31 ]

Just to clarify what Glebs is asking in this comment what I was looking for was the ability to specify two servers in the Server= field in the zabbix_proxy.conf file so I could send requests to a prod and staging server. Currently it just sends to the first server in the field.

I can accomplish this by specifying multiple proxies at the agent level, but would like to keep my zabbix_agent.conf file clean and use the proxy to send to multiple servers if possible.

Comment by Dmitry Verkhoturov [ 2017 Aug 24 ]

Patch for two Server support for zabbix-agent was updated to 3.4 release version and still available by link https://github.com/zabbix/zabbix-patches.

Comment by Dmitry Verkhoturov [ 2017 Oct 30 ]

I am not using proxy and not trying to use proxy for 2 servers, it seems I won't have time to properly test my predictions on how it should work and write a reproducible documentation on that. If someone need proxy to work with 2 servers, please write and test documentation on how to achieve that using my and Gleb's answers.

Comment by Chris Gleason [ 2017 Oct 30 ]

I can test this shortly. I need to upgrade our major zabbix version soon anyways, so I'll give it a whirl.

Comment by Chris Gleason [ 2017 Nov 23 ]

Have not had time to get around to this. I install from packages so I can't use that patch.

I'm testing the 3.4 upgrade now so when I'm done I'll use it to test glebs multiple zabbix_server process.

Comment by Plamen Nenov [ 2017 Nov 23 ]

Dmitry Verkhoturov,
the solution you suggest is great , but what about the download of configurations from these 2 different zabbix servers,
basically if these 2 proxy instances use same DB and if you have different checks on these 2 zabbix servers (which is quite possible if we are talking for PROD and DEV zabbix server),
your 2 proxy instances will end up with 2 different configurations from PROD and DEV zabbix servers
how that is going to work ?

Comment by Dmitry Verkhoturov [ 2017 Dec 09 ]

You should use 2 separate DBs of course. Agent it OK with having different active checks from different servers.

Comment by Alex [ 2017 Dec 09 ]

Hello everyone, what happen when our proxy will have 2 or more different db? For now we try use multi-proxy configuration for collect to master server in datacenter in europe region and reserve local server in US region. Every proxy instance collect from agents same items. If we start update major version without downtime, with updating db scheme, we start run 4 instance proxy and agents will send 4 times more identical data instead of once. The issue of deduplication must be considered. In my opinion simple diff between some fields tables with hosts and items should solve this issue and not cause great difficulties. For solve question different db name, db name must be same as server active name.

Comment by Dmitry Verkhoturov [ 2017 Dec 11 ]

Two zabbix-servers with same configuration in their DB will query same things from zabbix-agent and will get the same answer (in case they do the query at the same time).
But if you need to send something from hosts using zabbix-sender, you need to know full list of servers to run zabbix-sender against one by one.
If zabbix-sender support multiply ServerActive out of the box, there is be no such problem - I already have 2 servers there (ServerActive=a,b in /etc/zabbix/zabbix_agentd.conf) and zabbix-sender sends information to both of them.
This patch support two ServerActive instead of current 1, to do it right it should be reworked to support any amount.
Biggest question is do we need to return bad exit code in case of second (5th, 10th) server send failure? In my opinion, no - second server is failover or developement, so it's OK not to fail on sending data to it.

I propose to add zabbix-sender multi-server sending functionality in the upstream 4.0 version of Zabbix.
There is already a patch for v3.4 for 2 servers setup, if it could be improved by Zabbix team to properly support any amount of servers in "ServerActive=" variable - it will be a very neat feature in 4.0.

Comment by Jarrett Heale [ 2018 Jul 30 ]

This would be extremely useful for when you have multiple sites with local staff as well as an HQ site who also need to monitor all servers. HQ could make sure services at each site were up, and more importantly the local staff could maintain and montior their own servers and Zabbix (and most importantly receive alerts for failed servers/services) even if the link back to HQ was down.

I've asked on the forum to find out if there's another way to do something similar in the meantime, but this enhancement would be the ideal way to configure it, at least in terms of firewall rules.

Comment by Ron Van Dompseler [ 2018 Oct 05 ]

We currently use this solution in our 2.4.8 environment where we have zabbix proxy installed on multiple SMARTS IP Gateways. Each server has 4 or 5 "virrtual zabbix proxies" configured for different interfaces on the servers and it works great.

We are now in the process of doing a major reworking of our infrastructure to 4.0 and running it in parallel with the current environment in order to rework our design of 20+ separate instances down to one master instance with HA and DR. For this particular instance that utilizes the SMARTS GATEWAY for SNMP datacollection we are stuck with certain rules where clients are configure only to accept from specific IPs.

Because we need to use the same IP's in our proxy.conf files (ports can be different) I believe I need to install the 4.0 zabbix-proxy-sqlite3 and create the virtual 4.0 proxies in the same way we did with the old ones. We installed the original from repo so I can't install the new one in the same location. I am not expert in having to compile from source to use a different location... not sure if that is even possible. I could probably just copy the binaries and conf files to a different location  but I am not sure on what should be copied where and what would need to be changed in the service files etc.

 

Any ideas would be greatly appreciated.............

Comment by Vitaly Zhuravlev [ 2019 Jan 18 ]

Paskal,

I propose to add zabbix-sender multi-server sending functionality in the upstream 4.0 version of Zabbix.
There is already a patch for v3.4 for 2 servers setup, if it could be improved by Zabbix team to properly support any amount of servers in "ServerActive=" variable - it will be a very neat feature in 4.0.

There is a ticket for that. Please check ZBX-9794

Comment by G. V. Tjong A Hung [ 2020 Oct 26 ]

For those who care for an update, it seems that zabbix_sender still supports only 1 host.

https://www.zabbix.com/documentation/current/manpages/zabbix_sender

So for now multiple zabbix_proxy servers or just 1 zabbix_server

Comment by richlv [ 2023 Nov 10 ]

How does this relate to ZBXNEXT-6923?





[ZBXNEXT-823] Allow using profile macros in triggers names Created: 2011 Jun 19  Updated: 2014 Sep 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 2.0.0
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexey Pustovalov Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 0
Labels: macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

for example,

{PROFILE.LOCATION}

or other static information



 Comments   
Comment by Alexei Vladishev [ 2014 Sep 25 ]

Same as ZBXNEXT-956.





[ZBXNEXT-608] Add MIB browser to GUI Created: 2011 Jan 04  Updated: 2017 Aug 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Michael Schwartzkopff Assignee: Unassigned
Resolution: Unresolved Votes: 17
Labels: snmp, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All


Issue Links:
Sub-task
part of ZBXNEXT-1369 SNMP Builder for Zabbix Open

 Description   

Hi,

when entering a OID to an item it would be nice to have to possibility browsing a MIBs to select the OID to monitor instead of searching the OID in an other window and enter it either in human readable or numeric form.

In a further step you could provide a window that shows the MIB and offers the possibility to select OID just by clicking on them or the checkbox next to the entry.

Happy hacking!

Greetings,






[ZBXNEXT-603] New media type syslog Created: 2011 Jan 04  Updated: 2015 May 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Michael Schwartzkopff Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: actions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All


Attachments: Text File ZBXNEXT-603.patch    

 Description   

Hi,

could you please add the following media type syslog in one of the next releases of Zabbix. It would be nice to log events via the syslog facility.

Greetings,

Michael Schwartzkopff.



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 11 ]

Not sure how this should be implemented (a plugin or built-in), but it's a nice feature anyway.

Comment by Marc [ 2013 Mar 17 ]

If I understand the idea behind media types correct they provide some kind of abstraction layer for messages. On action level they are as generic as possible (subject, body, type) and are individually specified on user level (recipient address, etc.).

A communication relation for syslog at least consists of a syslog host and a message.
The message part could be a concatenation of the action's subject and body, but the syslog host would then have to be specified on user level. What sounds not right in my mind.

I would welcome such kind of message gateway (and others) too. Of course, there are always the default work-arounds to fix this by defining a 'Custom script', or a 'Custom alert script'. These possibilities are important and have a reason to exist. The downside of theses are

  • alert scripts are designed for individual messages and are not restrictive enough
  • custom scripts tend to be uncomfortable/impossible to configure for regular users, because they have to be known and completely defined for any new action operation.

I imagine something like 'Global scripts' what can be pre-defined only by Zabbix-Super-Admins and then be chosen as option within actions.
In this case I could define such a script as follows:

/usr/lib/zabbix/alertscripts/logger_wrapper "{TRIGGER.NSEVERITY}" "{HOST.HOST1}, {TRIGGER.STATUS}: {TRIGGER.NAME}"

If there would be a third operation type (beside 'Send message' and 'Remote commands') one could allow to choose between custom solutions like mentioned before and internal 'message gateways' like maybe syslog.
The latter could be managed similar to media types without the constraint to fit into the user-level address-subject-message model.

For syslog it could be defined by a syslog host a string including macros supported in notifications and a sending host option.
The mapping of severity and putting either

{HOST.HOST1}

or kernel.hostname for sender host could be done internally

Comment by Michael Dai [ 2015 May 28 ]

Add new media type syslog in Server. I will continue to give new patch for Frontend.





[ZBXNEXT-613] improve Map Label hostname Dependency Created: 2011 Jan 08  Updated: 2017 May 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.8.4
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: hamid sfandiari Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

mozila , mysql,



 Description   

imagine a map link between "temp_host"and "zemp_host" now this link has a label such as

{temp_host:ifInOctets.29.last(0)}

that should be depend on "temp_host" name.
if that host name changes , map link label also should be updated manually.
if we have a macro such as "selementName(1)" or anything else , we could use map link-labels that independent from any changes of host Name



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 21 ]

That's great idea. I'm thinking of macros like

{HOST.LINK1/LINK2}

or

{LINK.HOST1/HOST2}
Comment by Nenad Opsenica [ 2012 Oct 28 ]

This feature is even more important when you have link from host to host group - in this case it makes no sense to manually enter link label.





[ZBXNEXT-642] provide a list of auto registration events Created: 2011 Jan 31  Updated: 2014 Nov 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 1.9.1 (alpha)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Aleksandrs Saveljevs Assignee: Unassigned
Resolution: Unresolved Votes: 11
Labels: autoregistration
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

In "Monitoring" -> "Events" it should be possible to view the list of auto registration events.



 Comments   
Comment by Harri [ 2014 Jul 30 ]

The host meta data and its DNS name/IP address should be included in this list.





[ZBXNEXT-645] Ability to latch on a status change, with secondary ACK Created: 2011 Feb 02  Updated: 2012 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Steve mushero Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: alerts, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We often use things like Checksums to check if a file changed, if a user was added, if firewalls were changed, etc.but these alerts/events only last for a single check cycle in most cases, i.e. as soon as the check is made again, such as hourly, the current checksum matches the last one and the alert goes away; sure we could use averages or more check to lengthen the time, but ideally there would be a way to leave the event on / active until we really acknowledge it (separate from the current ACK system).

We often use / want such a thing over a night or weekend when or an extended period when we are working lots of alerts; if we are not careful, we'll miss these checks before they go away.

This is not easy and not sure even how to do it, but would be very useful for the checks of changes like this, and even normal things like high CPU; the event/alert would latch on until we turned it off, making sure we never missed that the event happened; today they just all go away upon recovery.



 Comments   
Comment by Raymond Kuiper [ 2011 May 04 ]

see https://support.zabbix.com/browse/ZBXNEXT-104





[ZBXNEXT-644] Add ability to read /proc, /sys, any file by line and field number Created: 2011 Feb 02  Updated: 2014 Sep 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Steve mushero Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: item, trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be very nice to be able to read /proc /sys values via the agent, actually any file, by row and field number.

Something like: file.read(/proc/meminfo, 10, 2) to get line 10, field 2 of meminfo.

This way we can get lots of stats the agent can't get, including memory, kernel, disk, etc.

A more advanced version would include the ability to use a macro or key such as hda for things like /sys/block/$drive/queue or even add up using /sys/block/*/queue. Have to think more about how that could be used.

For now we use a custom script to get this, but it would provide a powerful way to extend the agent.



 Comments   
Comment by Steve mushero [ 2014 Sep 14 ]

Note we'll be creating a module to do this for 2.2/2.4 if anyone interested as there are just too many things to get that are missed by the agent right now.

Comment by richlv [ 2014 Sep 14 ]

this might be partially covered by vfs.file.regexp - see https://www.zabbix.com/documentation/2.4/manual/config/items/itemtypes/zabbix_agent





[ZBXNEXT-615] Problem in Calculated items if correspond items are not fetch Created: 2011 Jan 09  Updated: 2012 Oct 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.8.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: nima Assignee: Unassigned
Resolution: Unresolved Votes: 13
Labels: calculateditems
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi
In order to check CPU usage on every core, I have created Calculated Item with Forlmula "100-last("system.cpu.util[0,idle,avg1]")" . this is good, but if in period of time zabbix server can not get system.cpu.util[0,idle,avg1] item, the calculated item will be same value until new value is fetched for system.cpu.util[0,idle,avg1], so all calculated items are not true. and related graphs display one line in graph .
if one item is not fetch,correspond calculated items are not calculated. I think this behavior is not true and reasonable.
Anyhow calculated items are important part of monitoring system.

Thanks for any suggestion.



 Comments   
Comment by richlv [ 2011 Jan 09 ]

but what do you suggest to do if the value is missing ?

Comment by nima [ 2011 Jan 10 ]

Hi
Thanks for your attention.
One solution that I can suggest is, "check last time update" that explain as follow:
Any item has "last" update check (clock filed in database),it means we have last time that in question "item" is updated and also any item has "interval" check, so we can check based on these tow fields if this item has been updated correctly or not.for example Item X has interval time 1 minute,and value of "last updated" (clock) is "1294666873" and current date hast "1294667180",it indicates that item has been not updated since 5 min ago.
one expression that I can suggest is :
if ( (current_time - Last_updated) > 2 (Time_interval)
error("item is not updated correctly in defined interval time") and calculated item not must calculate

In order to include tolerance in fetching item, I multiple "Time_interval" by 2

Thanks for any help or suggestion.

Comment by richlv [ 2011 Jan 10 ]

as noted by zabbix developer asaveljevs, that won't be a feasible solution - there are items that stop populating data, and it's a completely normal situation - for example, agent.ping, possibly some trapper items etc. moving to zbxnext & leaving open, maybe a feasible solution can be found in the future

Comment by nima [ 2011 Jan 10 ]

Thanks for your attention.
You can add mentioned expression only for calculated items that calculate on "passive" items.because in passive mode surely zabbix server does request that item.
Or you can add one option in configuration in calculated items as dependency(or any other name) for this situation.
Anyhow this problem causes false result specifically in graphs for calculated items.

Best Regards

Comment by richlv [ 2011 Feb 03 ]

another problem example - used memory is calculated to be the same as the total if available is not retrieved... results in totally incorrect values being inserted in the db

Comment by Fco. Javier Rial [ 2011 Feb 15 ]

another one more: basically, our network traffic come in/out from several vlan.. so the aggregated traffic is a calculated item from several vlan.. if one of our vlan is down, calculated item fails and so, zabbix inserts a zero in network traffic..

Comment by nima [ 2011 Feb 15 ]

Hi
Thanks for your comment.
If you agree with this topic,please vote that.

Thanks

Comment by Aleksandrs Saveljevs [ 2011 Mar 17 ]

Related issues: ZBXNEXT-292, ZBXNEXT-766.

Comment by Robert Foss [ 2012 Mar 16 ]

Having last() take a default parameter would solve some issues.

last(key, 0) == 0, If key is 'Not supported'





[ZBXNEXT-5167] problem.get returns arrays of problems from disabled items/triggers Created: 2018 Aug 22  Updated: 2024 Mar 11

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Ingus Vilnis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 15
Labels: api, problem
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-5186 Show only active problems through pro... Closed
is duplicated by ZBX-17438 problem.get returns problems that has... Closed

 Description   

 

Steps to reproduce:

  1. Get a trigger in Problem state. See it listed in Monitoring -> Problems and dashboard widgets. 
  2. Disable the trigger or item for it in host or template. See the trigger is not listed in the Problems page thus it is invisible for the frontend.

Result:

Using the Debug mode see that the problem event generated by the disabled trigger is still listed in the array returned by problem.get API. 

Set the trigger back to enabled and see it returns to Problem page (expected). 

Expected:
Problems are not returned by API for triggers that are not actually displayed by web interface. 

 

While this is not such a big deal on "normal" daily use, there can be edge cases where this makes the web interface almost unusable. One such happened during a performance test with many triggers having multiple event generation mode on. It is understandable that displaying all those problems generate load but it exhausts all the PHP memory limit even after the items were disabled.

The problem events are removed only after the items / triggers are deleted (or unlinked from hosts).



 Comments   
Comment by Edgars Melveris [ 2018 Oct 22 ]

Moved this to feature requests.

Comment by Ingus Vilnis [ 2018 Oct 22 ]

So you think this is a cool feature instead of a performance bug?

Comment by Edgars Melveris [ 2018 Oct 22 ]

Well... I think it works "as designed". If we think, that the design can be better, that's a feature request... in my opinion.

Comment by Ingus Vilnis [ 2018 Oct 22 ]

Then is it a good design to return in the background lots of data which is not even displayed by the web interface in any way?

Comment by Edgars Melveris [ 2018 Oct 22 ]

Not to get into discussion about good or bad design, but as most designs - it can be improved.

I'm not sure I'm right, maybe there where reasons I'm not aware of, why it was created as is. So I see it as a design that works, but can/should be improved.

A bug in my opinion is something that doesn't work as designed.

Comment by Ingus Vilnis [ 2018 Oct 23 ]

From such perspective we can treat any bug reports as feature requests because regardless of the problem Zabbix as such is working, isn't it? 

I can clearly imagine that no one ever thought about this particular problem for a second before it was designed and implemented. 

On one hand Zabbix is putting serious efforts to improve the performance on large scale. Take ZBXNEXT-4108 as example. Off the topic but even ZBXNEXT-4820 requesting for better sounds gets turned down because of the increase in the file size. Then how is this my request considered as a feature when useless data is returned by a page request causing considerable load on all components of Zabbix?

Were you actually able to reproduce it?

Comment by Edgars Melveris [ 2018 Oct 23 ]

Hello Ingus, thanks for the valuable opinion, you might be right. But I'm not the person to make the decision, but I will forward this ticket, so that appropriate decision can be made. Maybe it will be moved back to ZBX.

Yes, I was able to reproduce the error, it's easy on a host with one trigger.

Comment by Ingus Vilnis [ 2018 Oct 23 ]

Thank you very much!

With one trigger it is not a big problem, I agree there, but when there are thousands of triggers in mixed order on multiple hosts then the slowdown is significant. 

Comment by Edgars Melveris [ 2018 Oct 23 ]

Thanks to aleksejs.petrovs, who pointed out that api output should match that what you see in frontend, so moving this back to bugs and marking as confirmed.

Sorry for the confusion.

Comment by Valdis Murzins [ 2019 Mar 28 ]

While I can understand the confusion, that problem.get is returning more problems, than displayed, in Problem list it was done on purpose.
Currently the steps are:

  1. select number of problems, with any matching filters applied.
  2. get triggerids, that matches them.
  3. select triggers, with any matching filters applied (including 'monitored' => true)
  4. remove from list the problems without related triggers
  5. repeat from step 1, if not enough problems are selected
    (Note: data for any trigger is requested only once)

What is requested by this task, is to add "monitored" filter for event.get and problem.get.
'monitored' filter implies adding NOT EXISTS check, which will look for data in tables functions, items, hosts and triggers, to the SQL.
This is quiet heavy check. In current implementation it is done only for triggers request, and is checked only once for any trigger. Adding it in problem.get and event.get, will require to do this check for every problem or event, which is way more times, than it is currently done.

With this, I have strong grounds to doubt that this change will be beneficial to the performance of Problem list page.

Also I will insist, that this is Feature request and not a bug, because

  1. currently the pages are displaying correct data
  2. problem.get and event.get was made without 'monitored' on purpose as very heavy operations. (same as history.get)
    And implementing such option should be considered as feature request.

I am not closing the task, as proper performance comparison still can be done.

vmurzins EDIT: It can be considered as feature request to add API parameter, that will be used only by users. (Zabbix frontend has no need for such parameter).

Comment by richlv [ 2019 Apr 18 ]

Looks like moving to bugs was not successful, still a ZBXNEXT.

Comment by Egor [ 2024 Feb 20 ]

Hello colleagues. This is NOT just "Preaty to have" feature. This is real fail of design.

One of Zabbix development direction - service based monitoring. Am I correct? A lot of changes was made for this and we are using this structure for more than 300 service trees. 

Problem described here is one of the most critical issue:

You have service tree with more than 50 services, 300 hosts and 5000 triggers.

You need add one more host - you can't predict that triggers will not generate problems.

Problem generated by template trigger -> Service status changed.

You have no way to change service status back!

You can't change template because a lot of hosts use this template. You can not delete trigger or item because problem will not disapper. You can not delete host - problem will not desappear also plus this will be impossible to resolve this problem at all. Only via database request. 

Only one option - allow manual close from  template -> manual close -> fast disable trigger before item will data. Is this really "Target design"?

 

This problem exist in 7.0.0 unfortunatelly.

 

 

Comment by Egor [ 2024 Feb 20 ]

If you are using "service oriented" monitoring and accidentally deleted host (operator mistake for example) - nightmare for big and 24/7 environments.

only delete FROM events where eventid = '';

Same request here

https://support.zabbix.com/browse/ZBX-21994?jql=reporter%20%3D%20%22Egor%20T.%22

 





[ZBXNEXT-123] Value mapping not visible in the graphs Created: 2008 Oct 08  Updated: 2023 Apr 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Johan Huysmans Assignee: Unassigned
Resolution: Unresolved Votes: 31
Labels: patch, valuemapping
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File example.png     PNG File example_3.0.4.png     Text File zbx_graph_axis_valuemap.patch     Zip Archive zbx_graph_value_maps_2.4.7_v1.zip     Zip Archive zbx_graph_value_maps_3.0.4_v1.zip    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-332 Use Value Mappings in Graphs Closed
is duplicated by ZBXNEXT-2535 Graphs using items with valuemaps hav... Closed

 Description   

If you enable the value mapping for an item this is visible in the overview. When the same item is graphed (by default as the actual value is a number), the mapped value is not visible in the graph.

This means that you have no clue which the specific value means.

For example I'm monitoring heartbeat machines which have a status active or passive. These values are stored as 0 and 1 and mapped to standby and active. On the overview page this is visible, but the graph only shows 0 and 1 and no direct link to which theses values mean.



 Comments   
Comment by richlv [ 2009 Oct 01 ]

where would you expect to see value mapping in graphs ?
how would it work if there are multiple mapped states graphed ?

Comment by Ghozlane TOUMI [ 2012 Jun 01 ]

I'm repeating the comment I made in ZBXNEX-332, so it wont get lost ...
I have a very crude patch that adds value maps to the Y Axis.

It gets its map from the first valuemaped item, only tested on one axis.

the patch was created agains 1.8.5, and still applies to later 1.8.x
http://www.zabbix.com/forum/showthread.php?t=23113

Comment by Vladimir Kravchenko [ 2012 Sep 01 ]

zbx_graph_axis_valuemap.patch for 2.0.3rc1, tested on rev.29519 on one/two axis, result screenshot on russian subforum:
http://www.zabbix.com/forum/showthread.php?t=28690

Comment by Raymond Kuiper [ 2013 Dec 06 ]

Another nice solution is mentioned in https://support.zabbix.com/browse/ZBXNEXT-1993

Comment by Vitaly Zhuravlev [ 2016 Sep 03 ]

my version of the patch for Zabbix 2.4.7 and Zabbix 3.0.4(also works in Zabbix 3.2.0beta2):

patch and patched class attached as zbx_graph_value_maps_2.4.7_v1.zip and zbx_graph_value_maps_3.0.4_v1.zip

Meanwhile graphs of items that don't have any value mappings attached stayed the same

to patch run :

patch -i zbx_graph_value_maps_3.0.4.patch

https://github.com/v-zhuravlev/zbx_value_maps_on_graphs

Comment by Andrey Shibanov [ 2019 Feb 13 ]

Any update for 1o (ten!) years?

Comment by Ihor Romanyshyn [ 2021 Jan 04 ]

Guys, I need this feature too. It would be great to have the values mapped on graphs!

Comment by kurgan [ 2021 Aug 25 ]

Need it too...

Comment by Josip Sokolovic [ 2021 Nov 16 ]

What could make sense is the possibility to add a legend on the bottom of the graphs with the mapped values.

Just to explain why that could be useful.

We started in our company to monitor 8000 nodes (increasing daily). Some of these graphs are showing a status for the registration status from a FOS towards a Fortimanager. 

The status are containing these mapped values are:

Tunnel Status:
0 => DOWN
1 => HANDSHAKE
2 => UP

Registration Status:
0 => UNKNOWN
1 => IN_PROGRES
2 => REGISTERED
3 => UNREGISTERED

From the perspective of an ops enginieer who doesn't know what the meaning of these values is and also is not that familiar in the usage of Zabbix, that would be a great help to understand, what's ongoing in case of, if the FOS has an issue with the registration status.

Or...

Just displaying the mapped value of the last value in brackets:

e.g. 1 (IN_PROGRES) and 1 (HANDSHAKE) if the items are combined in one graph. If an ops engineer would see... "Ah OK. The value 1 means the device is handshaking towards the Fortimanager, but in the past the value was alternating between 0 an 2. I mus figure out what's the meaning of 0 and 2. Let's discover that!"

Comment by Sub2.13 [ 2023 Apr 20 ]

hello @Alexei Vladishev, in order to improve the graph visualization, could it plan to be added in a sprint for a future release? A patch has been proposed a long time ago. Even if it requires a refresh for sure I guess, it could be a good start
Thank you in advance for your consideration.





[ZBXNEXT-537] Implement sort of "Zabbix Calendar" for different purposes Created: 2010 Oct 18  Updated: 2023 Dec 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Pablo Viqueira Assignee: Unassigned
Resolution: Unresolved Votes: 30
Labels: calendar, flexibility, holidays, usability, vacation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hi!
I would like that Zabbix has a calendar, that is to say:
When I configure an action and it consists in sending an e-mail to different persons depending on the day type ( working time or not working time), I can´t configure
the holidays. This is, Monday is a workday in general, but November 1st isn´t.

Is there any possibility to implement this new functionality?

Thanks!



 Comments   
Comment by Alexei Vladishev [ 2012 Oct 11 ]

That's would be nice to have. The calendars could be used for many different purposes: flexible intervals for items, maintenances times, trigger expressions, etc etc.

zalex_ua yes, for example it also would be useful for IT services.

And an idea to use it in user medias described in ZBXNEXT-1207.

Comment by Marc [ 2012 Dec 15 ]

I wonder if such a calendar could also provide a central place to manage persons on call in some way.

Maybe linking a list of users (with proper permissions) to a host group and make them available via macro for trigger names or within notifications in dependency of a calendar...not properly thought through yet

Comment by Mark Postma [ 2020 Jan 02 ]

For us it would be useful to have something which enables use to set up different thresholds (e.g. like a Sunday) on days like the 1st of January, 25th of December etc.

Comment by Adam Dempsey [ 2021 Oct 19 ]

If a Calendar were to exist a further option could be to include monitored data on it, eg if you were tracking domain + SSL expiry dates, they could be displayed so you can see upcoming events.

Comment by David Tomkins [ 2022 May 12 ]

A calendar for "on-call" engineers would be an excellent feature and in some cases invaluable.

It is possible to manage an "on-call" schedule by integrating Zabbix with something like "OpsGenie" or "iLert" but that's far from ideal - plus it comes with risk of the 3rd party service being unavailable (i.e. Internet connection down), as well as the additional management overhead.

Of course the "unavailability" risk can be mitigated by a serially attached GSM which can send SMS.   However, unless you want to send a SMS to everyone in a User-Group, this carries another risk/overhead of needing somebody to regularly, manually and accurately update the "When Available" SMS Media Type to align with the on-call rota.  

If I could give this calendar feature more up-votes, I would !

Comment by Rafael S. Santos [ 2023 Dec 27 ]

From the triggers expressions perspective I would say if there was a expression named holiday to use in cases where the alert should not work in a holiday (like some humans do) it would be really good =) .  

Something to be used like:  last(item-test)>50 and holiday=0

 

Ref.:  https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/424063-adding-holidays-to-triggers





[ZBXNEXT-5777] Ability to switch (on/off) preprocessing by Zabbix Proxy Created: 2020 Feb 25  Updated: 2024 Mar 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: 4.2.8, 4.4.6, 5.0.0alpha2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexander Khudushin Assignee: Andris Zeila
Resolution: Unresolved Votes: 7
Labels: preprocessing, proxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File feature_req.PNG    
Issue Links:
Sub-task

 Description   

Target

  1. Offload Zabbix Proxy running within a slow hardware.
  2. Ease custom proxy development on top of server-proxy data exchange protocol.

Solution

  1. Add preprocessing switch into proxy configuration tab (see attachment).
  2. Turn it on by default (for backwards compatibility).


 Comments   
Comment by dimir [ 2021 Nov 05 ]

I suppose if turned off on proxy the pre-processing should happen on server.

Comment by dimir [ 2024 Feb 15 ]

This could work like this. The values are sent with a new "preprocessed" flag with possible values yes/no. Yes, this means a change in communication protocol.

In the frontend, proxy configuration there will be a "checkbox" showing where should the preprocessing be taking place: server or proxy.

Normal operation

When a proxy or server needs to decide if it should preprocess the collected value or not it follows the logic:

Proxy:

  • if "checkbox" set to "proxy"
    • preprocess and set "preprocessed=yes"
  • otherwise
    • set "preprocessed=no"

Server:

  • if item value has "preprocessed=no"
    • preprocess
  • otherwise
    • do not preprocess

As you can see server does not even care about the "checkbox" state.

When the "switch" is toggled

This is a tricky case and there might be a situation when a party (server or proxy) needs to preprocess but hasn't the preprocessing rules in cache yet.

Proxy:

  • if "checkbox" set to "proxy" and item has preprocessing rules (cached)
    • preprocess
  • otherwise
    • skip preprocessing

Server:

  • if item value has "preprocessed=no" and item has preprocessing rules (cached)
    • preprocess
  • otherwise
    • skip preprocessing

For server, optionally it could pick up the missing preprocessing rules from the database on demand. This way, even if proxy "forgot" to do it (because of the recent switch) server will perform the job for it. The downside is that this is too much work with potential problems (quoting wiper). And to me, with little benefit.

I believe there is a very rare case when someone starts toggling the switch in a production environment and if still this is the case it is expected to have a couple of unpreprocessed values. We can document this "side effect" of "switching" and user can survive with 1 or 2 unpreprocessed values (rather possible 1, thinking of "instant" config sync in 7.0).

To be decided for server: pick up not cached yet tasks on demand or leave values unpreprocessed





[ZBXNEXT-562] Get PNG graph image via API Created: 2010 Nov 18  Updated: 2023 Feb 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: azurIt Assignee: Unassigned
Resolution: Unresolved Votes: 131
Labels: api, export, graphs, png
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sub-task
depends on ZBXNEXT-4588 New Graph Widget Closed
depends on ZBXNEXT-5241 Possibility to show graphs and other ... Open
part of ZBXNEXT-5611 Ability to get an image of last value... Open

 Description   

Can you please add API function which will return graph as an PNG image ? We would like to integrate graphs to our application but we don't want to draw them from graph items (Zabbix is doing this very fine so i don't see a point in it). Thx.



 Comments   
Comment by azurIt [ 2012 Oct 11 ]

What 'Zabbix ID: NMR' means?

Comment by Mattias Geniar [ 2012 Dec 30 ]

NMR = Needs More Research

Since the current work-around to get the graphs involves faking a POST form submit to the frontpage and re-using that sessionID to get the graph itself is pretty annoying, a simple PNG return of the image would be much welcomed as an API request.

Comment by Oleksii Zagorskyi [ 2012 Dec 31 ]

NMR = Needs More Research
NMR = Need Major Release

Comment by Karim GUEDIDER [ 2013 Apr 09 ]

Hi
will it be included in the 2.2 ?
thanks

Comment by Thierry Sallé [ 2013 Oct 04 ]

Yo can directly convert images url to png format using the Perl Zabbix::API.
See https://metacpan.org/module/Zabbix::API::Graph for example.

Comment by azurIt [ 2013 Oct 04 ]

Thierry Sallé: I don't see a point in implementing the whole graph drawing as Zabbix is able to do it very fine.

Comment by Eric VdB [ 2014 Jan 14 ]

Well, there is a point here. It would be super handy if we can retrieve graph images from the api for automated reporting features

Comment by Linus Brimstedt [ 2014 Sep 24 ]

The point of implementing in this in the API rather than accessing the php-pages is that the API is a stable and documented interface. The chart2.php is an internal implementation that should not be used by external resources.

Comment by Darrin Chambers [ 2017 Sep 22 ]

Hi all, since the last comment in 2014, has this been resolved? I/we would greatly appreciate it.

Comment by Stoyan Stoyanov [ 2018 May 02 ]

Yes, is there any update on the request?

Comment by Dawid Mos [ 2018 May 02 ]

Maybe in delayed 4.0?

Comment by Stoyan Stoyanov [ 2018 May 02 ]

It will be nice if there is an official statement.

Comment by Alexander Nesterov [ 2019 Feb 04 ]

my solution:

...

use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use MIME::Lite;
use MIME::Base64;

...

sub zabbix_get_graph
{
    my ($graphid, $period) = @_;

    my $ua = create_ua();

    my $url = "$ZABBIX_SERVER/chart2.php?graphid=$graphid&period=$period&isNow=1&width=" . IMAGE_WIDTH;

    my $req = HTTP::Request->new('POST' => $url);
    $req->content_type('image/png');
    $req->header('Cookie' => "tab=0; zbx_sessionid=$ZABBIX_AUTH_ID");

    my $res = $ua->request($req);
    my $tmp = substr($res->content, 1, 4);

    #The first eight bytes of a PNG file always contain the following values:
    #(decimal)              137  80  78  71  13  10  26  10
    #(hexadecimal)           89  50  4e  47  0d  0a  1a  0a
    #(ASCII C notation)    \211   P   N   G  \r  \n \032 \n
    #https://www.w3.org/TR/PNG-Rationale.html#R.PNG-file-signature
    if ($tmp =~ m/PNG/)
    {
        return $res->content;
    }
    return;
}

...

sub send_email
{
    my ($email_body, $subject, $smtp, $email_from, $email_to) = @_;
 
    my $msg = MIME::Lite->new(
                                From    => $email_from,
                                To      => $email_to,
                                Subject => $subject,
                                Type    => 'multipart/related'
                           );
    $msg->attach(Type => 'text/html', Data => $email_body);
    $msg->attach(Type => 'image/png', Filename => 'graph.png', Id => 'graph.png', Data => $DATA_GRAPH) if defined($DATA_GRAPH);
    $msg->attach(Type => 'image/png', Filename => 'logo.png', Id => 'logo.png', Data => decode_base64($LOGO));
    $msg->replace('X-Mailer' => 'Zabbix');
    $msg->add('X-Priority' => $PRIORITY{'Highest'});
    $msg->send('smtp', $smtp, Debug => $DEBUG);
}
Comment by Dimitri Bellini [ 2019 Feb 04 ]

@Alexander: Your solution is based on the old graphs or for the new vector graphs?
Thanks

Comment by Alexander Nesterov [ 2019 Feb 04 ]

for the old (classic) graphs

Comment by Dimitri Bellini [ 2019 Feb 04 ]

@Alexander: Ok Thanks

@ZabbixTeam: I will suggest to bring this improvement (RestAPI for Graphs) as soon as possible with the new Vector Graphs thanks

Comment by Alexander Nesterov [ 2019 Feb 04 ]

@Dimitri: You can also use http request, I think so

Comment by Dimitri Bellini [ 2019 Feb 05 ]

@Alexander: Yes! We have create a simple reporting tool for Zabbix and at the monent is based with the old graphs style...

Comment by Mark Oudsen [ 2021 Mar 03 ]

As this request is running for a very long time, I've decided to code and release a beta version of a Media type that is capable of presenting a graph embedded in an e-mail message while adding TWIG template facilities to allow for some nice customization of the outgoing message (including IF statements for example) and adding some smart way finding the direct or indirectly associated graphs to a trigger (from API perspective).

Note that Chart2 only has the capability to present 'Normal' graphs - I'm also working to support the other types as well (scattered across the other chartX.php).

Have a look at: https://github.com/moudsen/mailGraph

Once the API extension is there, my code will be fully API based (currently logging in to Zabbix to use chartX.php with CURL).

Official request to Zabbix developers to add my Media type to their repository: ZBXNEXT-6534 (declined politely but I guess that when more people want to see this feature instanciated after 6 years that will change ... ).

Comment by Kolunchik [ 2021 Aug 19 ]

any news?

Comment by Mark Oudsen [ 2021 Aug 19 ]

I have developed code to pick up graphs from Zabbix. Recently split the "get image" from my mail code and can make this available beginning of next month.
Not integrated to Zabbix API but has proven to work very well already ...
https://github.com/moudsen/mailGraph
If you are interested let me knowon GitHub (please raise an issue for it).

Comment by Peter Danko [ 2022 Aug 05 ]

Hi,
is there any update in the lates version 6.2 that it makes easier to use?

Or when it will be natively added?
Thanks.

Comment by Evgeny Semerikov [ 2023 Feb 20 ]

This is nice feature, but why this is not implamented yet? 

image.get method have a nice solution for this which returning "image" attribute with base64 encoded image.  





[ZBXNEXT-46] Host based dependencies Created: 2009 Aug 09  Updated: 2024 Mar 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Ankur Sethi Assignee: Unassigned
Resolution: Unresolved Votes: 320
Labels: dependencies, triggers
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File host_level_dependencies-0.1.png    
Issue Links:
Causes
Duplicate
is duplicated by ZBXNEXT-1801 add trigger condition dependence and ... Closed
is duplicated by ZBXNEXT-1969 Perform simple trigger evaluations cl... Closed
is duplicated by ZBXNEXT-5607 Allow triggers to have a macro depend... Closed
is duplicated by ZBXNEXT-5784 Parent Host Relationsship Closed
is duplicated by ZBXNEXT-5089 Host dependancy Closed
is duplicated by ZBX-17400 If root network device is out of orde... Closed

 Description   

Currently dependencies are trigger based. Would be very useful to have them host based, so when an server is unavailable because the network connection went down, Zabbix can easily determine that the server's behind the firewall are unavailable and not require dependencies on each individual trigger . So a host would be dependent on a server of another device for all the services on it.



 Comments   
Comment by Uli Stärk [ 2010 Nov 18 ]

Push after 1 year for this important feature.

Comment by Cal Sawyer [ 2010 Nov 18 ]

Yes! It would also be super-useful to be able to templatise host dependencies for a site/installtion, possibly by adding host-type/function descriptors, so that a topology of dependencies could be applied to groups of hosts. You could then definesomething like "webserver depends on edge switch depends on router" for multiple sites or like topologies.

Comment by Manpreet Singh [ 2011 Jul 14 ]

Coming from using Nagios this is a feature that is sorely missed and would greatly simplify dependencies.

Comment by David Mayr [ 2012 Feb 28 ]

+1 for this important feature

Comment by Miguel [ 2012 Mar 08 ]

+1 for this feature too! Will love to see it implemented.

Comment by Jarle B [ 2012 Mar 16 ]

+1!

Comment by richlv [ 2012 Mar 16 ]

please, use the jira voting system, don't pollute the comments

Comment by Jarle B [ 2013 Jan 11 ]

Any progress? This is a very important feature!

Comment by Volker Fröhlich [ 2013 May 11 ]

ZBXNEXT-1461 is loosely connected

Comment by Max Lock [ 2013 Jul 16 ]

Of the top 12 requests, this is the oldest without any kind of workaround, and it's been open 5 years! wow!

Comment by Jarle B [ 2013 Sep 10 ]

Any progress?

Comment by Maxim Krušina [ 2013 Sep 13 ]

+1 very important! At least, some GUI to mass updates trigger dependencies per host, not per trigger. But when managing larger deplayments, per-trigger dependencies are so complicated and overhelming.

Comment by Uli Stärk [ 2014 Apr 01 ]

Hey, as I can imagine, that programming host dependencies is quiet a big deal, I just had the following idea: Why not implement host-based dependencies as maintenance times?

if(trigger_flagged_for_host_is_down) {
foreach(dependencies as host)

{ put_host_in_maintenance(host, "reason"); }

}

This could work out-of-the-box

Comment by Bjorn K [ 2014 Apr 26 ]

If this feauture would be implemented then it can truely scale.

Comment by Larry [ 2014 Jun 03 ]

This is the key feature that has kept me for a number of years from implementing Zabbix and really seems to be the only system I have run into not supporting this. Will keep checking back every 6-12 months for it to be added as I have been.

Comment by Brais Formoso [ 2014 Jun 04 ]

I dont know why do you refuse to develop this feature. I think its very simple and useful. Doesn't seem to be hard to include it. Its just the same feature that the one about triggers but host-related.
After 4 years since this feature was requested and no one gave it a try, i lost my hope on this.

Comment by Filipe Paternot [ 2014 Jun 04 ]

This done along with ZBXNEXT-1891 would be great

Comment by Marc [ 2014 Jun 19 ]

For simplicity and efficiency reasons I'd prefer to improve the existing trigger based dependencies.
Not well thought-out but I think of host dependencies based on trigger(s). Similar to how it is already done for triggers itself.

On host/template level one may add a dependency from a trigger (or multiple triggers, of course). This trigger is then implicitly added to all the other host/template triggers as dependency.

Comment by Brett Anspach [ 2014 Aug 09 ]

This is a huge hole in the Zabbix feature set. It's sad to see this request will be 5 years old tomorrow.

Comment by John Miezitis [ 2014 Aug 15 ]

Unfortunately without this feature Zabbix is not practical for monitoring a medium to large network. Was hoping to get our networks team to move across to Zabbix but we will have to continue to maintain Nagios for them

To keep it simple would it be better to build dependencies using the IT Services hierarchy and only notify for the parent service rather than all the children.

Comment by Pawel Pogoda [ 2014 Oct 23 ]

+1!
This is really needed in our enviroment too!

Comment by Juan Fontes [ 2014 Oct 30 ]

+1!

I need host dependency like a nagios.

Comment by Alban Hoop [ 2014 Nov 30 ]

We have been using zabbix for years despite this shortcoming. We are happy with the product, but this is a problem that needs to be addressed. We use alot of proxies and have customers with complex networks. At the moment when a router or internet connection is offline we get hundreds of alarms.

Comment by Marc [ 2014 Nov 30 ]

Well, there is still the option of (co-) sponsoring the development

Comment by Larry [ 2014 Dec 01 ]

Excellent suggestion Marc, did not realize this was an option. I have contacted them to see what the cost might be for this. Once determined let's get it over here and hopefully we can all contribute to this missing critical feature. Once Zabbix has this, will be our choice going forward. Thanks!

Comment by Brett Anspach [ 2014 Dec 01 ]

Larry - reply to the thread if you decide to contact them to do the custom development. My company may want to help co-sponsor the development of this feature, as well.

Comment by Marco Janse [ 2014 Dec 02 ]

I hope more people will vote for this feature request. It would make my life so much easier! Hopefully it will see the light in the next major release.

Comment by Justin McNutt [ 2014 Dec 15 ]

If I could vote against this feature, I would do so.

There is no "host dependency" because there is no difference between a "host" being down and a trigger on that host being in a PROBLEM state.

The only thing you have to do to implement "host dependencies" in the existing system is to establish how you decide a system is "down" (rather than in a degraded or mildly non-optimal state). If you decide that it's "down" because one of its interfaces doesn't respond to ICMP echo (ping), then create a template that has just the ping test in it and create a trigger on that ping test to be in a PROBLEM state when ping doesn't respond. (Remember that by default, the "simple check" ping test in Zabbix returns "OK" if ANY of THREE ping tests comes back okay.)

Then you have a template you can apply to any host that you want as a dependency for other hosts. All hosts with this template have a common trigger name, for ease of deployment.

Essentially, there is no "host dependency" because there is no "host test" to tell if a host is up. You can't get around having an item and a trigger to tell you if the host is up, which is host Zabbix is already built.

I am using Zabbix to monitor a network with a couple hundred nodes (does that count as "medium to large"?) without any trouble. I don't see the issue here.

Comment by Ryan Armstrong [ 2014 Dec 17 ]

I agree with you Justin. The Host based dependencies in Nagios for example require that you specify an individual "check" to determine if a host is up which pretty much mimics the design you noted above.

We have a Ping template in Zabbix with a single threshold looking for 100% packet loss. This is applied to all hosts and we have a script that maps out all of the trigger dependencies from our CMDB.

This works exceptionally well for us (except for ZBX-4344) and is significantly more flexible that the host based dependencies in Nagios which does not allow us to map dependencies on other item checks.

Comment by Larry [ 2014 Dec 17 ]

This issue/problem is Ryan's comment "This is applied to all hosts and we have a script that maps out all of the trigger dependencies from our CMDB." I am not saying this cannot be manually emulated, but when you have 1000's (10's of thousands) of checks and need to map that as a dependency for each one it is either a very painful manual process or you need to create scripts that somehow "know" how to map dependencies from one device to the other. Creating a host (parent / child is really what we need) dependency and then saying if parent is not up (or better parents if this device has multiple upstream paths) don't bother with other checks and cascade this down significantly simplifies the setup and stops the alert storms pretty easily.

Comment by Nick Bold [ 2014 Dec 17 ]

I agree with both sides of the coin with this. Although, when doing this stuff at a large-scale there is definitely a need for both. I agree with Volker Fröhlich's views.

There needs to be more of a focus on multiple correlation aspects (either be by topology, host, trigger, etc). This definitely becomes a factor when having to perform this across a large number of devices. Especially when performing this for neighbouring devices in a large network.

These enhancements would help alleviate or make these tasks easier to maintain:

"Give an indication/allow to browse through dependent triggers"
https://support.zabbix.com/browse/ZBXNEXT-1949

"Provide an API option to obtain dependent triggers for trigger.get()"
https://support.zabbix.com/browse/ZBXNEXT-2554

"Notify dependent triggers with an indication of the root problem plus dynamic dependency maps"
https://support.zabbix.com/browse/ZBXNEXT-1461

Volker presented an interesting and insightful talk (Zabbix 2012 conference) on this approach for the above enhancement:
https://www.youtube.com/watch?v=Sv0ZV05N5oI

Large toolsets often go down the parent/child elements route in a large topology where there is correlation done between child being linked to parent. Where there is also the ability to define specific conditions/rulesets (if required - to allow for exceptions to the rule).

As a result of being linked to parent, child is treated as a symptom rather than the 'cause' as it is only a neighbour. The root of the problem has been identified to be further upstream in the chain.

In this case from the point that is closest to the Zabbix server. This would be a dynamically populated topology based on device discovery.

This approach would allow for more accurate dependency rules being able to be defined.

Comment by Gustavo Moura de Sousa [ 2015 Jan 08 ]

It would be nice if we schedule a maintenance of a host, zabbix couldn't inform alerts of the hosts that depends on the selected host.

Comment by Gustavo Moura de Sousa [ 2015 Aug 20 ]

Any news about this feature request?
It would help a lot on my work.

Comment by Gustavo Moura de Sousa [ 2015 Aug 20 ]

If it was possible to set with a checkbox a trigger that is the root trigger os a host things would be simpler.
All triggers that make use of a item from a host should be dependend from the root trigger.
If you put a host that depends on another host, that should create a dependency between the root triggers.
This feature is implemented on Nagios and is really nice.
I know that some of you don't agree but take a loot at the number of votes of this feature.

Comment by Marc [ 2015 Aug 20 ]

gmsousa
Any news about this feature request?

It seems not to be on the roadmap yet. Maybe see my comment for one way to get it there

Comment by kyob [ 2016 Mar 14 ]

Any progress on that BASIC feature?

Comment by Doug [ 2016 Mar 20 ]

Another Vote for host dependencies. Yes there are labor intensive work arounds, but this is a standard feature in nearly all monitoring tools and a glaring omission in this one.

Comment by Nuno Pereira [ 2016 Apr 08 ]

This is the 4th top voted feature, has been here for 6 and a half years and hadn't any attention from zabbix developers? To be honest, the 6 top voted features aren't assigned to any developer...

We come from nagios (several years ago, already) and this is one of the basic (as kyob noted) features that we miss. The flexible trigger based dependencies is valid, but you don't have a simple way to say "if the router (or switch) is down then don't notify me about every host behind it" or "if the Xen server is down then don't notify me about every virtual host in there".
Like it's now, we may receive hundreds of messages per notified user in case a Xen server has a problem.

Yes, we may not have a good approach that fixes this issue (like Justin said in comment-131309), but it would just be a work around on the problem that the product (zabbix) has.

Comment by Maas Salem [ 2016 Apr 16 ]

This is really a Shame,

I am at the point to review POC setup to our Cloud structure and this was the question from our Application and network team. the basic need or host / Application dependencies.

If this is not a major feature, - at least a work around will be great.

Thanks

Comment by richlv [ 2016 Apr 16 ]

for everybody who is interested in this, please discuss it on IRC and other channels, mentioned in http://zabbix.org/wiki/Getting_help - it is quite possible that somebody there will suggest how to use trigger dependencies to solve your usecase

Comment by Kevin Daudt [ 2016 Jul 25 ]

Trigger dependencies solve this problem for us pretty good now. The only issue we're still having is that some hosts have multiple uplinks. When only one of the uplinks is down, it should still be a problem when the host is not reachable. In the current system, if any of the dependencies has a problem, the trigger is ignored.

I was wondering if a patch implementing something like ZBXNEXT-1547 would be accepted.

On the server side, the biggest change would be in DCconfig_check_trigger_dependencies_rec, to make it continue when the 'operator' is AND (this part, I already have).

On the frontend, the change is slightly bigger, because the current code that checks if a dependency has a problem does not work recursively, making it harder to implement this.

It would then look something like this:

https://ikke.info/i/zabbix_dependency_1.png
https://ikke.info/i/zabbix_dependency_2.png

Would a change like this be accepted if I would provide the patches?

Thanks.

Comment by Andris Mednis [ 2016 Jul 26 ]

Hi, Kevin!
Cannot promise accepting a patch without seeing the patch
It is worth to develop a patch - it can be a catalyst ("see how simple it can be solved") for further work. Experience shows that user-submitted patches are rarely applicable "as-is". Often a patch solves immediate need for a user on one platform and requires full-time developer work to integrate it into product road-map, on all platforms, to fit coding guidelines, to be robust in various edge-cases, to provide good error diagnostics, to play well with other features, to be compatible with other versions (if required) and so on.
If patch is closer to ZBXNEXT-1547 maybe discussion can be moved there.

Comment by Marc [ 2016 Nov 02 ]

Just wondering whether event tags resp. event correlation could help here too.

Regarding Zabbix proxy dependencies I could think of a scenario like the following one. Obviously this would require the Macro {PROXY.NAME} to be resolved in tag values and a new condition type Event tag value pair.

Event tags of a Trigger representing a Zabbix proxy availability

Proxy
Proxy name = Zabbix proxy Foobar

Event tag of every other Trigger

Proxy name = {PROXY.NAME<1-9>}

Global event correlation rule
Condition

Old event tag = Proxy
Old event tag value Proxy name = new event tag value Proxy name

Operation

Close new event

Comment by Andreas Lunz [ 2017 May 23 ]

The last comment works, but there is the problem if you have any other problems behind the problem you always get one alert. Depending on what you want to do it is maybe not useful to do it that way. You have maybe not an eye on all problems in your infrastructure.

Comment by Marcos de Oliveira [ 2017 Jun 12 ]

In two months, this request will be 8 years old. It is the third most voted feature request also. Is it that hard to implement? We are using Zabbix for a year with no problem for our servers, but once we started migrating our switches, routers and APs from Nagios, it became such a pain to maintain dependencies. We are not that huge, but we have like 300 of them, and chains of up to 15 devices... It would be so good to just flag the parent to make a host dependent on. There is another uses for this feature also. For example, some times we have problems with a port in a switch that makes another switch down. With Nagios, we clicked in the down host, then we already could see the parent, and connect to it, see if there is a problem with the parent, or its ports, and fix it faster.
This could be used to make basic maps automatically too.

Comment by Marc [ 2017 Jun 12 ]

markkrj, the point is, there is not the one and only valid design thinkable. This feature could be implemented in many respects with possibly slight but significant differences regarding the use case.

However, the best is probably (co-)sponsoring development to at least finance the assessment and an appropriate design proposal. Who knows, possibly this has already been done and the plan lays in a drawer waiting for the little left gap to be sponsored...

Consider to get in touch with sales at zabbix dot com and ask for the status/sponsoring of this feature. Doing so doesn't cost a thing

Comment by Stephan Koch [ 2017 Sep 15 ]

I inquired about co-sponsoring this feature on August 14th. So far no reply, I just sent a reminder and will keep you updated on further developments...

Comment by Stephan Koch [ 2017 Sep 30 ]

Got an answer from Zabbix sales team. They are looking for other sponsors now and are ready to ship this feature with Zabbix 4.0 once development costs are covered. Please feel free to contribute if you need this feature

Comment by Larry [ 2017 Sep 30 ]

We needed this feature 3 years ago unfortunately and have moved on (NetXMS) and have been pleased with what it can do for us. There are still a number of parts to Zabbix that are really nice though. Good luck with getting this implemented it is a huge hole in the product.

Comment by Mehmet Ali Buyukkarakas [ 2018 Jan 10 ]

My only wish from the new year.

Comment by Timothy Welch [ 2018 Feb 12 ]

I had an idea on how to work-around this for now... After yet another weekend of our firewall going down, causing our site-to-site VPN tunnel to production to go down... Which fired off a consistent stream of 10,000 pages to my phone.

The idea is this:

  • 1. Create a new host, with a single item. The internal IP of something behind your firewall. Or your firewall device, whatever. For me, it will be an IP on the firewall that is accessible only from the inside network of the VPN tunnel.
  • 2. Create a template that would create a ping check to that internal IP in a trigger that would be set up to run an "Action".
  • 3. The Action would, instead of send a page to you or whatever you usually do, run a command on the zabbix server that would call out to the zabbix API to put all production groups into maintenance mode. We already have an "ongoing forever" maintenance set up for when we do any work. We just add our production groups / hostnames to that. And when we are done, we remove the hosts. It's easier than the ridiculously awful alternative of creating a "new" maintenance window each time. Seriously, the process to make a new maintenance window is horrendous, there should be another thread request for fixing that mess. /end_soapbox_rant
  • 4. On resolution of the trigger, another Action would be fired off to run a command to remove all production groups from maintenance mode, again using the API.
    • This may rely on hard coding the group name / group ID numbers, I'm still looking into the API methods for zabbix.

Also note, I presently don't have time to implement this as we are working on other projects. I wanted to share the idea in case you all thought it might be feasible. If I get around to it, I'll let you know how it works out.

Comment by Marco Hofmann [ 2018 Feb 13 ]

If there is any chance you can read german, there is a wiki page which describes exactly this method:
https://znil.net/index.php?title=Zabbix_Standorte_Hostgruppen_bei_Nichterreichbarkeit_automatisch_in_den_Wartungsmodus_setzen_oder_daraus_entfernen
Maybe you can translate it via Google.

I really dislike this solution, but it solves a problem, we shouldn't have to solve.

Comment by Marco Hofmann [ 2018 Oct 05 ]

I contacted sales at zabbix dot com three times since January about (co-)sponsoring this feature request. As it's one of the biggest features we are missing. I always got the answer, that they need more time to focus on 4.0 so I had no chance yet to get numbers or offer money.

I agree with all of you, that trigger dependencies could solve most of the issues, but I think that would require too much work in many of the cases.

I especially liked the example with a hypervisor going down, and all ICMP + Zabbix Agents checks would fail for the virtual machines. Because this would be like a real host dependency. (This special example would also include, that the Zabbix VMware Template feature of Host prototypes would have to work with an upcoming Host dependency feature!)

There are many ways this could be implemented, there could also be a second feature I would call Proxy dependency, as we all know that sometimes a Zabbix Proxy is unavailable and all Zabbix Agents behind that host would fire an event due to the nodata Trigger.

But on to the good news: Since the release of 4.0 our feature request is on the roadmap for 4.2:

https://www.zabbix.com/roadmap#v4_2

Comment by Thiago [ 2019 May 09 ]

This feature It was postponed to 5.0?

Comment by dimir [ 2019 Jun 04 ]

Yes, https://www.zabbix.com/roadmap#v5_0

Comment by tbsky [ 2020 Feb 03 ]

5.0 alpha is out. but I didn't see advanced event correlation in release note or document. is this still on the roadmap?

Comment by dimir [ 2020 Feb 04 ]

The work on that hasn't even been started yet. Despite it's on the official 5.0 roadmap it looks like it won't be there.

Comment by tbsky [ 2020 Feb 04 ]

5.0 roadmap has only there tracking issues. but it seem none of them got resolved.  wait next lts version...

Comment by Gutsycat [ 2020 Mar 03 ]

Any official position about six last comments?

p.s. Cross my fingers to see this in 5.0

Comment by Matias Dalla Rizza [ 2020 Mar 25 ]

Any update on this?, Is anyone aware of any workaround for this at least? I´m monitoring 3 different sites and on a network issue event I get alerts for everyrhing on the other side of this network instead of a unique network alert. I hope I´m clear. Thanks everybody in advance!

Comment by dimir [ 2020 Mar 29 ]

To whom it may be of help, In 5.0 (ZBXNEXT-1891) you have a way of ignoring nodata() alerts coming from a proxy that is unavailable.

Comment by Ben Carter [ 2020 Sep 02 ]

Given this was on the roadmap for 5.0 but didn't make it, is it likely to be 5.2?

Comment by tbsky [ 2020 Sep 15 ]

I understand 5.2 or 5.4 is too early for the feature. but hope it can be made for 6.0. since it was on the roadmap of 5.0, I think it is reasonable to put it to 6.0 roadmap.

 

Comment by Lyle Dodge [ 2020 Sep 16 ]

This feature was requested while Zabbix was in 1.6, now 11 years on and it continues to be ignored.

Comment by Alex King [ 2020 Oct 23 ]

While I agree this would be a really nice and should have feature, this thread gave me an idea on how i might solve this for myself until/if this host dependency ever gets added. 

  1. zabbix-agent, http, and snmp custom low level discovery macros that gather and add hierarchical metadata of mine. e.g. region dc, rack, server, subnet, LLDP neighbors and bgp neighbor info to each host dynamically and an in an automated way without any humans or complex automation outside of zabbbix.
  2. update my templates triggers to use those `region dc, rack, server, subnet, etc` LLD macros at the trigger level to fill in the custoum LLD macro 'variables'. example #15 here gives that https://www.zabbix.com/documentation/current/manual/config/triggers/expression#examples_of_triggers. This way the trigger level correlation of region, dc, rack, server, ip, application, etc is automatic and filled in dynamically on the fly using the value provided by my custom LLD maacros.

FWIW i haven't tested this idea, just had it after reading the zbxnext and some other related stuff. it may not be possible to use `macroname == macrovalue in triggers`, not sure. may have to use tags, or put the macro results in lld description for the host, and have the trigger to regex on the description. requires testing.

Comment by Joachim Vertommen [ 2020 Oct 23 ]

The way we have solved this for our network monitoring is by using tags to do trigger-based event correlation.

  • We monitor our network mainly using SNMP polling. Host availability is monitored using ICMP ping.
    • Periodically we check: the availability of a host, the status of the interfaces on the host, the status of the BGP sessions of the host with other hosts, the status of the MPLS LSPs of the host with other hosts, etc.
  • When host_A is down we trigger an alarm:
    • “host_A: Unavailable” with the tag “Unreachable: host_A”.
  • All other hosts who have a BGP session with host_A will trigger an alarm because their BGP session with host_A is down. On hosts host_B, host_C, host_D, host_E, etc. this will trigger following alarms:
    • “Host_B: BGP peer to host_A Down” with tag “bgp_to: host_A”
    • “Host_C: BGP peer to host_A Down” with tag “bgp_to: host_A”
    • “Host_D: BGP peer to host_A Down” with tag “bgp_to: host_A”
    • “Host_E: BGP peer to host_A Down” with tag “bgp_to: host_A”
  • Under Event correlation we have 2 rules to correlate the “Host_X: BGP peer to host_A Down” alarms.
    The reason that we have 2 rules is because with SNMP polling there is no way to know which alarm will be triggered first: “host_A: Unavailable” or “Host_X: BGP peer to host_A Down”.
    • The first rule is meant to correlate the events in case the alarm “host_A: Unavailable" is raised before the alarms “Host_X: BGP peer to host_A Down” are raised.
      • Condition: Old event tag Unreachable equals new event tag bgp_to 
      • Operation: Close new event
      • --> As a result of this rule all new events with tag "bgp_to: host_A" will be closed.
    • The second rule is meant to correlate the events in case the alarm “host_A: Unavailable" is raised after the alarms “Host_X: BGP peer to host_A Down” have been raised.
      • Condition: Old event tag bgp_to equals new event tag Unreachable
      • Operation: Close old events
      • --> As a result of this rule all old events with tag "bgp_to: host_A" will be closed.

The overall result of this is that all “Host_X: BGP peer to host_A Down” alarms are resolved by the correlation rules.
Only the “host_A: Unavailable” alarm (the root cause) will remain open.

Comment by SI Secure4All [ 2021 May 12 ]

Hello,

It's really unfortunate that such a simple and requested feature does not exist in a world-renowned monitoring system like ZABBIX.
We thought we would put all our computer systems under this monitoring, what a disappointment to learn that the simple host dependency does not exist.

Comment by Marco Hofmann [ 2021 May 12 ]

After all this years, and the implementation of ZBXNEXT-1891, I came to the conclusion, that Trigger dependencies are superior to host dependencies.

To realize host dependencies, Zabbix would have to know, what this dependency means. For example:

We have a switch and 5 Hosts. Switch monitored by SNMP+ICMP. Windows Hosts by Zabbix Agent and ICMP.

The Switch Host object consists of several Triggers, let's name two as an example: ICMP ping check failed and Firmware update available.
Zabbix doesn't know what these Triggers mean, it only know there are two Triggers which might fire. There is no way to tell, if one of this Triggers is active, should it mute all triggers from other hosts?

If the Firmware update Trigger fires, the Windows hosts wouldn't be affected and everything still runs smooth.
If the ICMP check Trigger fires, the Windows hosts would be affected and the ICMP and Zabbix agent nodata Trigger would fire.

Which in conclusion means, you don't want the ICMP and Zabbix agent nodata Trigger fire, when the ICMP check on the switch fails aka Trigger dependencies.

just my 2 cents: The longer I work with Zabbix, the less I have use for this feature request. In any use case I had in the past, I was able to solve it more elegant with the features I already have.
80% of my use cases resolved after ZBXNEXT-1891 and 20% by nice Trigger dependencies.

Comment by SI Secure4All [ 2021 May 12 ]

I just thought of a very simple way to implement it.
Give the possibility to assign to a host a main TEST (or object, or application). If this main test fails, the host will not be checked anymore, all objects will be disabled on it. (example ping) and finally give the possibility to an other host to depend on this test too, and in the case if the test is negative, the hosts that depend on it too...

Currently, when I have a network outage, Zabbix has queues, and goes up in load, I can't find a solution to put a dependency that the link falls and cut all SNMP icmp checks etc...

Comment by Nicola Mauri [ 2022 Mar 31 ]

Things are just getting worse with 6.0, which drops the ability to modify dependencies on template-inherited triggers.

At the moment, if you have 100 hosts behind a router there is no way in Zabbix to avoid 100 useless and misleading alerts when the router goes down. 

Very, very bad.

Comment by Dimitri Bellini [ 2022 Apr 21 ]

@Zabbix DevTeam there are some plane for Zabbix 6.2 or 6.4 for a possible way-out of these kind of behaviours?

I think on Kubernetes/VMWare (Dynamic Environment) the problem will be emphasized.

Comment by Mateusz Pelpliński [ 2022 Sep 13 ]

Please add host dependencies or at least give us back the feature to change dependency on template-inherited triggers. Lack of this solution is really hurting Zabbix scalability. 

Comment by Marco Hofmann [ 2022 Sep 13 ]

Do you mean the bug that was fixed in 6.0.5? ZBX-20613

Comment by Craig Hopkins [ 2022 Sep 13 ]

Not quite. That's only controlling a single trigger, and there could be thousands on a host (worse if they're dynamically discovered).

What I'm wanting (and what I think others are talking about, too) is the ability to completely suspend the checks for a host based on a condition (i.e. the ICMP of an upstream device failing).

When an upstream device fails, zabbix then has lots of downstream devices sat in the unreachable queue... or worse they all alert with all of their triggers because they have timed out. This causes unneeded work on all sides. Suspending those items/triggers would reduce the workload.

Comment by Mateusz Pelpliński [ 2022 Sep 14 ]

@Marco, yes, that helps me, thanks!
I would still like to see dependencies simply set for entire host instead of per trigger, as even with the "fix"* from 6.0.5 this is still far from ideal.

*-not an actual bug, as I understand from the thread

Comment by Adrian Garcia Flores [ 2023 May 23 ]

Please we need this feature.

Comment by Bjoern Wentz [ 2023 Aug 22 ]

+1 Much needed feature!

We have many locations with multiple hosts. I don´t want to edit every trigger on every host to define a dependency to the availabilty of the appropriate router.

I also don´t want to create multiple templates for each location (e.g. Windows by Zabbix Agent for location A depends on router A, Windows by Zabbix Agent location B depends on router B,...) just to be able to set different trigger dependencies per location.

Thats way to much work and takes away flexibility in changing something in the template that should have affect to all hosts. It would be much easier to set the dependency per host or even better per host group (e.g. Servers/LocationA depending on host RouterA).

Comment by Nicola Mauri [ 2023 Aug 26 ]

As a workaround, you may consider Global event correlation, as explained in this video: https://www.youtube.com/watch?v=uTsGAj_BLhs by Aigars Kadikis, which shows a topology-related scenario.

If you never used event correlation before, please note that it will take a while to understand and setup it, but it can be a viable - though not perfect - solution.





[ZBXNEXT-3081] Zabbix event management to Remedy incident management integration Created: 2015 Dec 29  Updated: 2016 Jul 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: armond s policastro Assignee: Andris Zeila
Resolution: Unresolved Votes: 5
Labels: integration, remedy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL on x86


Attachments: PNG File ticket.png    

 Description   

ZBXNEXT-2033 - Zabbix Remedy integration: requests a new feature to create Remedy tickets from Zabbix. I would like to add to that a capability to click on a zabbix event and see what if any incidents (Remedy tickets) have been opened against it, and to connect to Remedy to see the status of associated tickets.



 Comments   
Comment by Andris Zeila [ 2016 Jan 05 ]

Incident information

Comment by Andris Zeila [ 2016 Jan 05 ]

Opening an event lists associated ticket (incident) number (clicking it opens the incident in Remedy), status and creation date. See the attached screenshot fragment.

Comment by kelion junior [ 2016 Jul 07 ]

good morning sorry for the inconvenience but could you give me a hand have to do my open zabbix called the remedy could give me more details of how you did
[email protected]





[ZBXNEXT-9091] AWS RDS instance - cross account Created: 2024 Mar 18  Updated: 2024 Mar 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Fabio Camara Fonseca Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

I would like to suggest improving the RDS integration (https://www.zabbix.com/integrations/aws_rds) to have the cross-account option.
Today I have this model in my environment, I believe it would be very useful for everyone.

thanks.






[ZBXNEXT-9080] Provide official package for Amazon Linux 2023 Created: 2024 Mar 14  Updated: 2024 Mar 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Packages (C)
Affects Version/s: 6.0.28rc1, 7.0.0beta2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Edgar Akhmetshin Assignee: Jurijs Klopovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Team: Team B
Sprint: S24-W14/15

 Description   

Please provide official packages for AL2023:
https://docs.aws.amazon.com/linux/al2023/ug/naming-and-versioning.html






[ZBXNEXT-2452] "Multiple PROBLEM events generation" and Timer process Created: 2014 Sep 09  Updated: 2024 Mar 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 2.0.12, 2.2.6, 3.0.13, 3.2.10, 3.4.4, 4.0.32, 5.0.14, 5.4.3
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Constantin Oshmyan Assignee: Unassigned
Resolution: Unresolved Votes: 38
Labels: multiple, timer, triggers, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Trigger with "Multiple PROBLEM events generation" in combination with timer-related functions: nodata(), date(), dayofmonth(), dayofweek(), time(), now()


Attachments: File ZBXNEXT-2452-6.0.diff     File ZBXNEXT-2452-6.4.diff     File ZBXNEXT-2452-6.5.diff    
Issue Links:
Duplicate
is duplicated by ZBX-23796 Excsessive trigger event creation whi... Closed
Sub-task

 Description   

According to documentation:

If time-based functions (nodata(), date(), dayofmonth(), dayofweek(), time(), now()) are used in the expression, the trigger is recalculated every 30 seconds by a Zabbix timer process. If both time-based and non-time-based functions are used in an expression, it is recalculated when a new value is received and every 30 seconds.

It is good practice; however, there is a problem if trigger has option "Multiple PROBLEM events generation" turned ON. In this case there is a possibility that the timer process could generate "trigger goes to the PROBLEM state" event every 30 second (when all conditions are TRUE, even in the case when no new datas arrived).

My suggestion is the following: all trigger calculations performed by the timer process should be made as the "Multiple PROBLEM events generation" option is OFF, independently of its real setting. In other words: if all conditions are TRUE and the trigger is already in the PROBLEM state, the new event should not be generated. At the same time, if some of conditions becomes FALSE and trigger was in PROBLEM state, it should be closed (i.e. event "trigger goes to the OK state" must be generated).

The combination of timer-related trigger functions and "Multiple PROBLEM events generation" option is not very widespread. However, when this combination is used, it causes to difficult-to-understanding problems. The most typical problem - double or multiple alerts (some exapmles: ZBX-8114, ZBX-4732, ZBX-6170).



 Comments   
Comment by Constantin Oshmyan [ 2014 Sep 09 ]

Example 1: Using "nodata()" function to close trigger automatically by time-out

Task

It is necessary to have a trigger for Windows Application Log: if a new message with the severity "Error" or "Critical" appeared, it should be forwarded the administrator by e-mail with a delay maximum 1 minute.

Item (in the appropriate Template)

Key: eventlog[Application,,Error|Critical",,,100,]
Type: "Zabbix agent (active)"
Type of information: "Log"
Update interval (sec) = 30

(Trigger in the same Template)

Name: New error message in Windows Application log
Expression:

({Template OS Windows:eventlog[Application,,"Error|Critical",,,100,].logseverity(0)}=4 | {Template OS Windows:eventlog[Application,,"Error|Critical",,,100,].logseverity(0)}=9 ) & {Template OS Windows:eventlog[Application,,"Error|Critical",,,100,].nodata(30)}#1

Multiple PROBLEM events generation: ON
Note1: the "nodata(30)}#1" condition is used to close this trigger automatically (the 30 seconds is a minimum value for "nodata()" function).
Note2: the "Multiple PROBLEM events generation" option is necessary: otherwise it is possible to miss some events if they goes one-after-another.

Action

Action has the following logic:
IF
Trigger value = "PROBLEM"
and
Trigger name like "message in Windows"
THEN
Send message to users: Admin1, Admin2, ..., AdminN
ENDIF

Results

If several error messages appeared in the given interval (30 seconds), then all messages are delivered successfully. However, the last message is delivered twice: the 1-st time upon new datas receiving from the Agent, and the 2-nd time - generated by the timer process. If the timeout for nodata() function is longer, then the last message is repeated every 30 seconds: for example, for 10 minutes (to have possibility for operator to see it on the Web-console) it repeates 21 times.

Comment by Aleksandrs Saveljevs [ 2014 Sep 09 ]

The first and second item references in your trigger seem to be identical. You might wish to simplify that.

Comment by Constantin Oshmyan [ 2014 Sep 09 ]

asaveljevs, thank you! I've fixed this example (logseverity are different: ERROR and CRITICAL).

Example 2: using "time()" function as an additional condition clause

Initial Task

It is necessary to monitor a log.file of some application for error messages (lines containing "ERROR" string) for notification of the appropriate administrator.

Item

log[/var/log/myApp/myApp.log,ERROR,,,skip,]

Trigger

{Host:log[/var/log/myApp/myApp.log,ERROR,,,skip,].str(ERROR)}=1

As in example 1, the "Multiple PROBLEM events generation" should be enabled to avoid missing of some messages.

Result

It works OK. However, every night (between midnight and 02:00) the database performs an offline backup, it cause to some error messages in the log that could be ignored.
So, the administrator wants to exclude any error messages at this period.

Modified Task

It is necessary to monitor this log.file for error messages only after 02:00 AM.

Modified Trigger

{Host:log[/var/log/myApp/myApp.log,ERROR,,,skip,].str(ERROR)}=1 & {Host:log[/var/log/myApp/myApp.log,ERROR,,,skip,].time(0)}>020000

Result

Despite of minimal changes, the result will very differ. If some error occurs in this log file after 02:00 AM, then the event "Trigger goes to PROBLEM state" will be generated every 30 seconds by the timer process; in this example - the rest of day up to midnight...

Comment by Oleg Ivanivskyi [ 2014 Sep 10 ]

Looks like a regex to find A and not B on a line could be a workaround in the example 2. Of course, it will not help in the first example.

Comment by Constantin Oshmyan [ 2015 Jan 26 ]

Looks like a regex to find A and not B on a line could be a workaround in the example 2. Of course, it will not help in the first example.

I agree that in some cases it's possible. If the monitored log file includes the clearly formatted timestamp, for example log of Zabbix-server:

  7294:20141227:100121.813 SNMP agent item "ifNumber" on host "CiscoV-SW1" failed: first network error, wait for 15 seconds

then a trigger expression could be re-formulated to use a regexp() instead of time() function, something like the following:

{Host:log[/tmp/zabbix_server.log,error,,,skip,].str(error)}=1 & {Host:log[/tmp/zabbix_server.log,error,,,skip,].regexp([0-9]*:[0-9]{8}:0[01][0-9]{4}\.[0-9]{3})}#1

I.e. "if the timestamp in this record of log file has the hour==00 or hour==01, then ignore".

However, in other cases it is difficult or impossible to use just regexp. For example, in the Windows Event logs the timestamp is a separate field; many Java applications have a multi-line error messages (where the timestamp and the message text are on different lines), some applications could have their timestamps in the same format that could occurs in the message text also, etc. After all, using the time() function is just more understandable.

Comment by Oleksii Zagorskyi [ 2016 Sep 19 ]

ZBXNEXT-1604 is related a bit

Comment by Constantin Oshmyan [ 2017 Dec 05 ]

Unfortunately, all new versions still have this trouble.
Add, please, the 3.0.x, 3.2.x and 3.4.x to "Affects Version/s:" header (I'm reporter for this issue, but anyway I have no permissions for that).
Thanks in advance.

Comment by Victor [ 2018 Nov 01 ]

Agree, this is very useful feature! Voted.
If it will never be implemented, please provide proper way to alarm on every occurrences of consecutive lines in a log file (with no duplicates).

Comment by Constantin Oshmyan [ 2019 Oct 14 ]

Just a reminder as this problem is still actual. And it still exists in v4.0.x also (and, probably, 4.2 and 4.4 as well).

Comment by Constantin Oshmyan [ 2021 Aug 06 ]

Just once more reminder about this problem importance. It still does exist in versions 5.0 (LTS) and, probably, 5.2 and 5.4 also.
As well, this problem regularly occurs for novice users and discussed on Zabbix forum (at least, Russian-language: link1, link2, link3, link4).

Comment by Constantin Oshmyan [ 2022 Jun 02 ]

Reminder: this problem is still actual.
New LTS version 6.0.x is still affected.

Comment by Marcel Renner [ 2022 Jul 13 ]

+1 Voted as well! For example, we would simply like to have the successful and failed logins (from each login) as a separate info event in Zabbix. Therefore only multiple event generation is practicable to not miss any events. But the event should close automatically after X minutes. Due to the mentioned issue this can't be implemented, which makes eventlog, log, logrt and snmptrap quite useless (at least for simple info events that don't send a resolved notification). With this workaround there is probably a way, but Zabbix should offer something more user friendly.

FYI, 6.2.x is still affected.

Comment by Dimitri Bellini [ 2022 Sep 16 ]

Hi DevTeam,
as already mention in the thread, we still suffer of this "problem" on Zabbix 6.2.x.
There are some possible idea to fix this kind of scenario for the next 6.4 or 7.0?
Thanks so much

Comment by Constantin Oshmyan [ 2023 Oct 10 ]

alexei, just reminder, as discussed at Zabbix Summit 2023
This problem is one of the most annoying and long-lived, unfortunately

Comment by Vladislavs Sokurenko [ 2023 Oct 11 ]

Possible fix to explore as a starting point (not released yet):
ZBXNEXT-2452-6.0.diff
ZBXNEXT-2452-6.4.diff
ZBXNEXT-2452-6.5.diff

Comment by Constantin Oshmyan [ 2023 Oct 11 ]

vso, is your possible fix for which version of Zabbix, please?

Comment by Vladislavs Sokurenko [ 2023 Oct 11 ]

constantin.oshmyan attached both for 6.4 and 7.0, the fix is as per your request in description.

Comment by Constantin Oshmyan [ 2023 Oct 11 ]

vso, great, thanks! Can this patch be applied also to the v6.0 (the current LTS version)?

Comment by dimir [ 2023 Oct 11 ]

It's only a quick research thing to try out, if you have a chance. For a proper thing this needs to be code-reviewed, tested, documented and so on.

Another thing that needs to be considered here is a possible regression for those that need an every 30-second alarm. Maybe a checkbox should be added. Anyway, we wanted to quickly check how complicated the fix might be here and if you can try this maybe become aware of some possible side effects/regressions early.

Comment by Vladislavs Sokurenko [ 2023 Oct 11 ]

constantin.oshmyan sure, added patch for 6.0 ZBXNEXT-2452-6.0.diff. It is safe to use unless as dimir mentioned someone will need also old behaviour for some triggers.

Comment by Constantin Oshmyan [ 2023 Oct 11 ]

Thank you, guys!
I'll try it just after finding a workaround for the ZBXNEXT-8014 that is high priority for me at the moment...

Comment by Constantin Oshmyan [ 2023 Oct 20 ]

vso, dimir I've tried this patch in the test environment with the current v6.0.22 release; it works great!
Thank you very much!

Another thing that needs to be considered here is a possible regression for those that need an every 30-second alarm.

Yes, I understand your doubts.
However, this regression is probably theoretical only.
I could not imagine the real situation where such behaviour could be useful, especially taking into account that this interval (30 seconds) is not configurable by a user.
Additionally, I remember that the combination ("Multiple PROBLEM events generation" mode + time-based trigger functions) has never been supported; however, I can not find the confirmation in the documentation now (it's possible, this was in our discussions with Zabbix tech. support).
In any case, such modification should be documented in Release Notes, of course.

Comment by dimir [ 2023 Oct 21 ]

Thanks constantin.oshmyan! What you're saying makes sense. We'll discuss it internally and let you know.

Comment by Constantin Oshmyan [ 2024 Mar 26 ]

We'll discuss it internally and let you know.

dimir, what are the results of these discussions? Are there any chances this feature could be implemented in the v7.0 (nearest LTS version), or will it be postponed for a few more years?





[ZBXNEXT-686] Create infrastructure for continuous integration and unit testing Created: 2010 Dec 08  Updated: 2020 Oct 21

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Alexei Vladishev Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It should probably be a combination of PHPUnit, Hudson and misc code analysers. Let's see what we get at the end.



 Comments   
Comment by richlv [ 2011 Feb 28 ]

created by now

Comment by richlv [ 2011 Mar 02 ]

reopen for moving

Comment by Andrejs Čirkovs (Inactive) [ 2014 Jul 04 ]

(1) We should get rid of testhelpers instead using ZbxExitException instead of exit() / die()

Comment by Andrejs Čirkovs (Inactive) [ 2014 Jul 04 ]

I've implemented basic fixture-based tests in development branch svn://svn.zabbix.com/branches/dev/ZBXNEXT-686

Comment by Andrejs Čirkovs (Inactive) [ 2014 Jul 25 ]

Basic file-based tests and parameter handling implemented in r47620 according to spec.

Comment by Andrejs Čirkovs (Inactive) [ 2014 Jul 29 ]

File-based tests with complicated scenarios and Respect/Validation validation implemented in r47644.

Comment by Pavels Jelisejevs (Inactive) [ 2014 Jul 30 ]

(2) We need to be able to validate arrays using the same validators as separate values. Something like the code below, but simpler:

response:
  __assert: count(3)
  __keys:
    __assert: sequentialKeys
    __each:
      __assert: int
  __each:
    id:
      __assert: notEmpty:int
    hostname:
      __assert: notEmpty|string|length(5,10)
    templates:
      __assert: array|length(3)
      __each:
        __assert: string|length(0,12)

A similar example with equals support:

response:
  __assert: count(3)
  __keys:
    __assert: sequentialKeys
    __each:
      __assert: int
  __each:
    id:
      __equals: 1
    hostname:
      __equals: Zabbix server
    templates:
      __equals: [100, 101, 102]

andrewtch RESOLVED in r47667. Also, a new validator has been added, 'sequence' (implementing sequentialKeys as above).
Also, I've implemented nice exceptions with paths like "Validation definition is not an array on path "_assert->_keys->_each[0]".
I've also added support of short syntax turning:

hostids:
    _each:
        _assert: int

into:

hostids:
    _each: int

in r47671.

jelisejev CLOSED.

Comment by Andrejs Čirkovs (Inactive) [ 2014 Aug 01 ]

(3) We should NOT use direct header() call, using wrapper instead.

RESOLVED in r47747.

jelisejev CLOSED.

Comment by Andrejs Čirkovs (Inactive) [ 2014 Aug 01 ]

(4) We should avoid all

__DIR__ . '/../../../../../.......'

constructs and make some path resolver (probably, these values should be set inside phpunit config file).

jelisejev WON'T FIX.

Comment by Andrejs Čirkovs (Inactive) [ 2014 Aug 04 ]

(5) We should use symfony/console table helper while displaying table rows in sql assertion instead of json_encode.

jelisejev CLOSED.

Comment by Pavels Jelisejevs (Inactive) [ 2014 Oct 29 ]

A lot of changes to the API tests have been made, so the comments above can be ignored.

In short, branch svn://svn.zabbix.com/branches/dev/ZBXNEXT-686 implements a framework for writing API tests.

Some changes have been made to frontend API client. It now fully implements the JSON RPC protocol. Please test that nothing has been broken in the frontend and the API endpoint.

RESOLVED.





[ZBXNEXT-3667] Global regular expressions - multiple expressions -> option to use OR Created: 2017 Jan 26  Updated: 2024 Mar 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.2.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: expressions, globalregexps, regexps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Global expression combines multiple regexps using an AND operator, while in some cases ability to use OR would be required too.

For example I use a "white list" (like - "good1|good2|goodNNN...") in the global expression and it's really long, so does not fit to the 255 chars limitation.
I could split the list to several parts and put them to separate lines to workaround the 255 chars limit, but it's not a solution because I need OR between them, which is not possible currently.

Maybe the same approach, as used for actions and lld rule filters (including custom expression), could be implemented ?



 Comments   
Comment by Oleksii Zagorskyi [ 2017 Jan 26 ]

There are a bit related feature requests, but still are different ZBXNEXT-2788, ZBXNEXT-481.

Comment by Oleksii Zagorskyi [ 2017 Jan 26 ]

An ugly workaround:

Current workaround:
Created global Macros, for example: {$ZZ_WHITELIST_WARNING_1} - {$ZZ_WHITELIST_WARNING_58}
Each macro is infact a RegExp string, for example: 'Active Directory (Certificate|Domain|Federation) Services'
Limited the use of global macros as much as possible by putting as many white listed services in per macro (see example above)
Added to the filter of the Windows services discovery rule:
Type of calculation: or (A or B or C or D or E or F or G or H or I or J or K or L or M or N or O or P or Q or R or S or T or U or V or W or X or Y or Z or AA or AB or AC or AD or AE or AF or AG or AH or AI or AJ or AK or AL or AM or AN or AO or AP or AQ or AR or AS or AT or AU or AV or AW or AX or AY or AZ or BA or BB or BC or BD or BE or BF)
Labels for each RegExp macro, for example: {#SERVICEDISPLAY} matches {$ZZ_WHITELIST_WARNING_1}
This approach gives the benefit of changing the whitelist (by changing the global macros) without having to update all host that have this template
This is an ugly workaround and not easy to maintain. Hence this feature request to allow an OR in a global regular expression.





[ZBXNEXT-684] Zabbix IT services should recalculate dynamically. Created: 2011 Mar 02  Updated: 2023 Oct 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Jānis Orlovs Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 18
Labels: itservices
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

At the moment IT services are not recalculated when values are changed. For example when I changed service time it only affects new data not old one. It would be nice that in future all is connected and recalculated.



 Comments   
Comment by Carlos Romero [ 2011 Dec 23 ]

If you change an IT service and add a trigger, it would be nice if the IT service could recompute on past values of the trigger

Comment by Cesar Inacio Martins [ 2012 Dec 04 ]

I agree with Carlos. This missing feature make a lot of difference for new users...
And is missing into the documentation (2.0) says about this particular (actual) behave . When we configure a SLA they show the all historical with 100% , which (probably) isn't true....

Comment by Marc [ 2014 Aug 06 ]

Possibly due to the same reason mentioned in ZBX-6340.

Comment by Cesar Inacio Martins [ 2023 Oct 13 ]

or just add an option to force the recalculation manually, this way is user responsability...

 





[ZBXNEXT-26] Bitmasked value map Created: 2007 Dec 12  Updated: 2012 Oct 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Niels Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: valuemapping
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

An item gives me bitmasked values, ie.

Bit Condition
0 lowPaper
1 noPaper
2 lowToner
... ...

The current value mapping system can't be used here, but it should be fairly straightforward to make a new type that does something like

1 => lowPaper
5 => lowPaper, lowToner
...






[ZBXNEXT-927] Allow LLD Graphs to graph an item for each discovered entity in a single graph Created: 2011 Aug 29  Updated: 2024 Jan 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 1.9.5 (alpha)
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Andrew Howell Assignee: Unassigned
Resolution: Unresolved Votes: 282
Labels: graphs, lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File create_io_graphs.py     PNG File image-2023-07-06-11-07-27-864.png     PNG File regex-example.png     PNG File screenshot-1.png    
Issue Links:
Duplicate
is duplicated by ZBXNEXT-2733 graph prototype for all items of one ... Closed
is duplicated by ZBXNEXT-3338 graph prototype in LLD: "different {#... Closed
is duplicated by ZBXNEXT-1237 LLD graph with all discovered items Closed
is duplicated by ZBXNEXT-2499 combined graph per host for vfs.fs.di... Closed
is duplicated by ZBX-9495 Please make it possible to define a g... Closed
is duplicated by ZBX-9772 Graph prototype for more than one LLD... Closed
is duplicated by ZBX-7499 Zabbix low discovery not separated gr... Closed

 Description   

I can create LLD graph's that will graph for each item discovered, but I can't create a graph all the discovered entries for a prototype item.

e.g. I discover 3 filesystems (/boot, / and /var, and have prototype items for used space and free space.
I can create a single graph which has used and free space for /usr
But I can't create a graph which has used space for /boot, / and /var all on the same graph.



 Comments   
Comment by Simon Kowallik [ 2012 Mar 09 ]

Hi,

I have the same problem.

I'm trying to graph CPU Usage per Core through SNMP. I use SNMP LLD to get the dynamic count of the CPUs and have Item prototypes for "System Time", "User Time" and "Overall Usage".
Now I'm trying to create ONE GRAPH which contains all "System Time" values for the discovered CPU Cores. But I cannot configure this graph in my discovery rule.

This is pretty important for LLD graphing I would say.

br,
simon

Comment by Peter van der Kooi [ 2012 Jul 06 ]

Aggregate graphing of LLD discovered items seems impossible (using Zabbix 2.0.0rc2), but when done manually the graph doesnot show: I think it exceeds the number of items. In my case this is a large number ( > 128 physical ports and over 40 logical ports on a Cisco Core switch).

If this feature is implemented it will fail on graphs with large number of items. Also the query time and graph-generation will take up to much time: I have a screen with 8 graphs. 2 graphs (incoming/outgoing octect) for every stack within the switch (4). Each graphs has an avg op 24 ports. And by the time the last graph is displayed....refresh

A possible solution is by making 'aggregated' values from LLD-items WITHIN a host (preferrably with an regexp). And make that aggregated item available for graphing.

grt,
Peter

Comment by Alessandro De Maria [ 2012 Jul 11 ]

As a workaround, can a graph be created dynamically using API?

Comment by Oleksii Zagorskyi [ 2012 Aug 09 ]

See also ZBXNEXT-1353 (similar but for screens)

Comment by Roman [ 2012 Sep 11 ]

The very useful feature and should be implemented as soon as possible.
The LLD can't be without such kind of graphs and will help to compare many different results.

Comment by Grzegorz Grabowski [ 2012 Sep 29 ]

I voted.
Waiting for that, too.

Comment by Alexei Vladishev [ 2012 Oct 22 ]

It should be considered for development.

Comment by yayo [ 2013 Jul 04 ]

There is some hope to have this feature in version 2.0.7? I should open a new ticket? this is reported to 1.9.5

Comment by richlv [ 2013 Jul 04 ]

this is currently not on the roadmap, and it can not go in 2.0.7 (amount of features going in 2.0 is very limited, and there would not be enough time to put this in 2.0.7 anyway)

Comment by yayo [ 2013 Jul 05 ]

sorry, insist But LLD is one of the beautiful enterprise feature that zabbix have. All people that manage zabbix in company can have several benefits from LLD but, when i need to create some "complex" graph to show to my boss (that pay for zabbix support) if i say that i can't do a graph because we can't mix neither LLD items from others discovery rules nor fixed items, I don't know what he says LLD is incomplete (for only this limitation) and not usable in enterprise environment ... so, if you want don't add this feature in 2.0 but add this feature in the 2.2 roadmap ... my 2 cents

Comment by Gareth Brown [ 2014 Jan 20 ]

What is the likelyhood of this expanding to allowing LLD graphs for the same item across multiple hosts in a hostgroup? Would this need to be a new feature request?

Currently if this is done, the graph is then copied to each host rather than remaining on a template which isn't such a big problem but as soon as you bring cloud computing in, it fails miserably when new instances spin up and old ones terminate.

Comment by Nicola V [ 2014 Jun 17 ]

Upvoted for this feature.
I just tried to create an aggregate SNMP-LLD based graph for all the vlans in our OpenBSD routers and the horror discovering this is not possible.
This is extremely useful to people monitoring cisco switches (distribution/access) or firewalls were it's nice to see an aggregated view of the traffic (similar to what Observium does).

Comment by Christian Reizlein [ 2014 Sep 19 ]

Upvoted, i have a LLD rule that graphs about 60 NFS and create a percentage (pused) of each, but i also need to display a single graph with all items so i can have a quick look at which one is using >80% for instance, and the trends

right now i ended up adding the 60 different NFS as plain items...

Comment by Micha Slezak [ 2014 Dec 02 ]

Hello,
I also vote for cumulating of items in the same graph. I need it for disks IOtime / throughput etc. in discovery rules. Screen is not soluton. I can do manually, but it is not good solution for me.

Comment by Erik Logtenberg [ 2015 May 15 ]

Is this feature request currently on the roadmap?

Comment by richlv [ 2015 May 15 ]

you can see the roadmap at https://www.zabbix.org/wiki/Docs/roadmap

Comment by Marek Skrobacki [ 2015 May 15 ]

In other words, you have to wait couple more years

Comment by Marc [ 2015 Aug 12 ]

In other words, you have to wait couple more years

Well, not necessarily. There is always the option to put it on the road map by (co-)sponsoring development

Comment by Micha Slezak [ 2015 Dec 02 ]

It is very useful feature, because when we trying to find defective disk in many disks, it is easy to find it in one global graph, than in many separate graphs. I voted also for this feature.

Here is nice page http://www.zabbix.com/development_services.php where on the bottom of this page is possibility to Contribute on specific feature. I think that it can be way how to promote some feature requests and to do something like crowdfunding on specific feature. Zabbix dev setup price and we can contribute on this feature I think it can be good way how to pay for each feature and to to pay whole development by one customer.

Comment by sepa [ 2016 Aug 07 ]

This request is most highly voted, but being ignored for 5 years. So, have to write simple plugin to implement the functionality:
https://github.com/sepich/glld
Hope DEVs would have time for LDAP groups now

Comment by Oleksii Zagorskyi [ 2016 Aug 07 ]

sepa, you might be interested in ZBXNEXT-1099 too.

Comment by Darren Mackay [ 2016 Oct 25 ]

Support for this feature and a business case...

Part of our network is coax / DOCSIS. Stacked graphs are ideal for visualizing bonded upstream / downstream channels in DOCISS networks.

There are 18 coax operators in Norway - 17 operators are small privately owned companies (the other is the National telco - Telenor). Most coax operators I have seen in europe roll their own provisioning and surveillance - the surveillance side rarely scales well. Using zabbix as the surveillance / stats collection engine would be ideal.

There are also many other use cases for this feature - not just DOCSIS networks.

Many independent operators are be happy to purchase support if Zabbix has all the features required - mentioned by yayo above 5.july.2013.

sepa - good work. Ideally - we prefer to have the graph primitive generate the stacked graph.

Comment by Jérémy D [ 2017 Feb 06 ]

+1 !! It is this kind of functionality that will overwhelm other monitoring tools

Comment by Vitaly Zhuravlev [ 2017 Mar 06 ]

It will be more cool if this feature can be made available by introducing dynamic graphs without sticking to LLD.
Say, you want single graph with all your CPU loads in one place:

Just add regex mask like or something: cpu.load[.+]

This is more general approach that will deliver this request as well as will allow to combine metrics that are from different LLD discoveries or from static part of the template, or same metrics from different hosts even could be combined like that. Like all loads of hosts in host group no matter how many hosts are there.

Comment by Vitaly Zhuravlev [ 2017 Mar 21 ]

Or you just can implement it with something like that:

Comment by PMirek [ 2017 Apr 27 ]

+1
Cool thing to compare items over time

Comment by elham jahani [ 2017 May 28 ]

i see your solution for having many item prototype in one graph but i dond know how to use it

for example how can i add regex mask in graph ?
should create item with regex ? how ?

or how can i see "Mode" list in my graph create page ?
by default can't see "Mode" in graph prototype

Comment by Евланов Александр Викторович [ 2017 Nov 14 ]

+1 Very usable feature: just now i have to build complex graph manually from 16 items discovered with 1 prototype. It is ARRGH... very confusing.

Comment by Sonny Nicolas [ 2017 Dec 01 ]

I would like to to create a stacked graph prototype that would stack all the item prototypes from the discovery rules.

If I understand this feature request correctly, it is not currently possible? If anybody would care to confirm.

Thank you!

edit: My use case is to discover all APs from a wireless controller and stack all their bandwidth use on a stacked chart to see areas of use.

Comment by Eric Smith [ 2017 Dec 01 ]

@snicolas that's correct, what you're trying to do is not currently possible in the product, without some API work.

Comment by Eric Smith [ 2017 Dec 01 ]

What I've done is written a script that searches for all items of the chosen key that aren't in "not supported" status and added them to a graph.

Comment by Shane Corbin [ 2017 Dec 01 ]

@Eric Smith is that a script you might be willing to share?

Comment by Sonny Nicolas [ 2017 Dec 01 ]

Thank you for the confirmation Eric!

Comment by Eric Smith [ 2017 Dec 01 ]

Sure - how well do you know Python?

Comment by Shane Corbin [ 2017 Dec 01 ]

Not very well but I am fairly proficient with several other languages so I am sure I could figure it out.

Comment by Eric Smith [ 2018 Feb 28 ]

Better late than never I guess, the attached script checks for the specific key to be added to a host based graph and then creates the graph, adding to it those discovered items that have state = 0 (supported).

Comment by Sonny Nicolas [ 2018 Feb 28 ]

Thank you very much for sharing Eric!

Comment by Alexei Vladishev [ 2018 Jul 23 ]

This functionality (and more!) is coming in Zabbix 4.0 under ZBXNEXT-4588 for dashboard graphs. I believe it will cover most of use cases like selection of items by item name and host name patterns.

Comment by Alex Hart [ 2019 Mar 28 ]

Alexei, how do you see the new graph widget solving this issue? Will the graph widget be ported over to graph templates? 

Comment by Alexei Vladishev [ 2019 Mar 28 ]

Alex, the new graph widget supports wildcards that can be used to make a graph having all LLD items displayed. I really hope that Zabbix 4.4 will deliver host level graphs with support of wildcards for a complete solution.

Comment by Enrique JEANNE [ 2019 Jul 23 ]

+1, Also interested in this feature

Comment by James Kirsop [ 2020 Jul 15 ]

What's the likelihood of Host level graph wildcards coming to a 5.0.x point release? It's disappointing that this wasn't delivered in 4.4 (and hence 5.0). It'd be great to be able to template this at a host level, which you can't do with dashboard graphs.

Comment by Marco Moschetti [ 2021 Feb 20 ]

I have more than 50 discovered interfaces that I need to aggregate (stack of the bandwidth) into a single graph. Can I do this with the Graph wildcard in the dashboard? Thanks

Comment by Mickael Martin (Cyres) [ 2022 Feb 25 ]

Hello,

No update for this "top voted" request feature ?

Comment by Nikolaos Dimos [ 2023 Jul 06 ]

Has anyone found a solution to this? I have multiple supplies on a printer that I discover with a discovery rule and it would be great to show in one graph the level of all the supplies discovered.

Comment by Mickael Martin (Cyres) [ 2023 Jul 06 ]

Hello,

You can make it with Dashboard on the future version 7.0 :

!

Comment by Yuriy Novoselov [ 2023 Jul 06 ]

Of course in manual mode you can do it. Even in 2.4 you can do it!

Main topic its to do it automated and make graph.

Comment by Marco Moschetti [ 2023 Jul 10 ]

Yes, It Is solved. I do not remember exact version. 5.x

In my case, on a router, now I can create sum of items, based on description, and use these items on a graph.

Comment by Viktor Vorobei [ 2023 Jul 24 ]

Same here. It would be nice to have ability to add to a graph prototype all discovered prototype items, so that I can see all of them in one place.

My use case: i have many servers with openvpn server installed. Each server may have from 2 up to 16 processes of openvpn. I've created discovery rule to detect openvpn instances on a server, but I can't display them in one graph. I.e. I want to display bandwidth, connected users, etc per each openvpn instance in a server on a the graph prototy. But instead, zabbix generates a graph per each discovered openvpn instance.

Comment by Pietro Marini (RCA Systems) [ 2024 Jan 11 ]

mma, can you please expand on your comment about version 7.0?

I have explained my use case in this forum post: https://www.zabbix.com/forum/zabbix-help/476654-support-for-dynamic-assignment-of-prototypes-on-the-same-graph-prototype#post476715

Comment by Mickael Martin (Cyres) [ 2024 Jan 12 ]

We need to create (svg?) graphs from lld items using pattern and agreagate functions.
We can make a general dashboard with discovered items but we cannot generate a template graph with these features.

Today, we only make lld graph for each occurrence.





[ZBXNEXT-1414] Adjust Item interval based on Trigger State Created: 2012 Sep 08  Updated: 2023 Nov 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 2.0.3
Fix Version/s: None

Type: New Feature Request Priority: Major
Reporter: Florian Koch Assignee: Unassigned
Resolution: Unresolved Votes: 50
Labels: interval, items, scheduling
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBXNEXT-1475 Recheck Interval for Items Closed
is duplicated by ZBXNEXT-1979 Check item more frequent when trigger... Closed

 Description   

Hi,

i like to have support for the following feature in zabbix:

adjust the check interval of the item which causes the Trigger to go into PROBLEM state and restore orginal vaue if Trigger go into OK state back

e.g a item checks in 300s interval if a service is running and a trigger reports this , adjust this time to e.g 60s if the trigger go into PROLEM state, so if the service is only 1 minute down, thetrigger OK is send after 1 or 2 minuten not 5 minutes so the "Downtime" zabbix reports is 1 or 2 min not 5.

Yes the check interval can be set to 1 min, but on big installations, you need carefully set the check intervals.

regards Florian



 Comments   
Comment by Ahmad Khayyat [ 2012 Dec 27 ]

It may be useful to consult with how OpenNMS implements this feature, which it calls "Downtime Models":

http://www.opennms.org/wiki/Polling_Configuration_How-To#Downtime_Models

The incentive is to report more accurate SLA:

By default, the poller will poll every five minutes. If that polling rate was static, then the shortest an outage could be would be five minutes: one poll to note the outage and the next to note it was restored.

...

To help combat this, OpenNMS uses adaptive polling. Once an outage is detected, polling is temporarily increased to try and detect, as soon as possible, when the service is restored.

<downtime interval="30000" begin="0" end="300000"/> <!-- 30s, 0, 5m -->
<downtime interval="300000" begin="300000" end="43200000"/> <!-- 5m, 5m, 12h -->
<downtime interval="600000" begin="43200000" end="432000000"/> <!-- 10m, 12h, 5d -->
<downtime begin="432000000" delete="true"/> <!-- anything after 5 days delete -->

Comment by Luca [ 2015 May 11 ]

The "Downtime Models" by OpenNMS is good exaple. The other options is to use the "action" function yet present in zabbix by execute a shell action that change the item.
You can call API from shell but is not easy to implement without variable. The flow can be 1) trigger go into PROBLEM 2) execute action "call API and alter item's update interval" 3) trigger go into OK 4) execute action "call API and alter item's update interval" .

Comment by Corey Shaw [ 2015 May 11 ]

One major issue with using the API to alert the item's update interval is the caching that goes on. For instance, the configuration syncer runs every 1 minute by default on a Zabbix server. If I modify the item interval in the method mentioned by Luca, then I will up to a one minute timeframe before that change goes into effect. This doesn't sound so bad in a very basic default install, but it becomes much worse as you add in proxies and refresh intervals for active items.

For instance, in my Zabbix environment my server updates its config cache every 10 minutes, my proxies update their cache every 10 minutes, and my agents update their active checks every 10 minutes. So in the situation given above, I would have to wait up to 10+10+10 minutes (30 of course ) before my item interval could change.

Comment by Bjarne Offenberg [ 2015 Aug 27 ]

I see that this feature request is already 3 years old, but has not yet been implemented.
I found this through this forum thread; https://www.zabbix.com/forum/showthread.php?t=14113 . which links to ZBXNEXT-1475.

I see that web-monitoring has implemented retries.
https://www.zabbix.com/documentation/2.2/manual/web_monitoring

Can the same technique that is used for web_monitoring be used for simple checks?

Comment by Luca [ 2015 Aug 27 ]

Quote for a re-check interval feauture.
If someone look also for bypass first failure trigger, look at https://www.zabbix.com/forum/showpost.php?s=a2cf4ca16769d1443c0c78d862dd1c5f&p=51870&postcount=2

Comment by Alex Hart [ 2016 Jun 27 ]

Nagios also has this (retry_check_interval) details: http://serverfault.com/questions/329125/nagios-check-service-frequency-based-on-service-status

Comment by Horacio [ 2016 Oct 19 ]

Related

Comment by Jake Hill [ 2017 May 04 ]

Very interested in this feature. Would dramatically improve the quality of our open alerts both inside of zabbix and when brokered to services like PagerDuty.

+1

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jun 19 ]

Once we have ZBXNEXT-1675, ZBXNEXT-3704 offers a more general approach to achieve same result.

Comment by richlv [ 2017 Sep 15 ]

a hack using the api has been described at http://www.zabbixbook.com/2016/10/24/using-the-zabbixtiny-to-change-an-item-interval-based-on-a-trigger/

Comment by Alexei Vladishev [ 2019 Mar 21 ]

I believe that it is quite good use case for throttling functionality, which was introduced in 4.2.

Comment by Mickael Martin (Cyres) [ 2022 May 03 ]

Hello,

Any update ?

Comment by LivreAcesso.Pro [ 2023 Nov 02 ]

See ZBXNEXT-8609





[ZBXNEXT-8626] VmWare: polling stucks when a lot of VMs exist Created: 2023 Aug 09  Updated: 2024 Mar 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 5.0.36
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Khatsayuk Alexander Assignee: Michael Veksler
Resolution: Unresolved Votes: 8
Labels: vmware
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File zabbix_proxy_vmware.log.tar.xz    
Team: Team B
Sprint: S24-W14/15

 Description   

Hi, team.

We have a rather huge vCenter with more than 21k VMs. Actually, nobody cares about theirs performance as vCenter object - we monitor VMs with agents, exporters etc. But collecting performance for hosts, datastores, clusters and so on is important.
And here we stuck with next problem - vmware pollers collects all performance counter regardless using templates and discovered items. Default LLD for virtual machines is disabled and we don's need  their counters, but pollers collect them anyway.
Poller spends near 1 sec per VM, so it out case we must wait about 6 hours to collect all. =)
I'd like to have mechanism to manage performance collection per VMWare component and do not tease SDK for not used metrics.



 Comments   
Comment by Khatsayuk Alexander [ 2023 Aug 09 ]

In our lab I've add simple patch:

  1. Add config parameter 'VMwareCollectPerfVM' (1 - enabled, 0 - disable) with 0 default;
  2. Add if condition in vmware.c before calling vmware_service_create_vm

As result, vmware collector process don't collect VMs performance counters and all works fine.

Comment by Khatsayuk Alexander [ 2023 Aug 09 ]

Also, attached Zabbix proxy log in trace level to prove that vm performance counters collected always.

zabbix_proxy_vmware.log.tar.xz

Comment by Michael Veksler [ 2023 Sep 08 ]

How about not collecting vm information until the first call to vmware.vm.discovery,

and stop collecting after 2 hours without using vmware.vm.discovery.





[ZBXNEXT-5419] Add posibility to export & import own dashboards from dashboard.list Created: 2019 Sep 11  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Denis Golius aka Terry Filch Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 79
Labels: Zabbix7.2, dashboard, frontend, graphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File photo_2019-09-11_10-55-35.jpg    
Issue Links:
Causes
Duplicate
is duplicated by ZBXNEXT-6732 Dashboard export Import Closed

 Description   

Add posibility to export & import own dashboards from Monitoring/Dashboard/Dashboards.
It's useful when user/admin want to migrate/install new/test pre-release version of Zabbix.

They can only be ported by creating new ones in a different web interface, which is very time consuming, so it is worth thinking about exporting or importing.



 Comments   
Comment by Victor Hugo Assunção [ 2020 Apr 28 ]

Great feature to 5.0 maybe?

Comment by Sotirios Roussis [ 2022 Sep 30 ]

Awesome to have yet very important for different zabbix deployments.

Comment by Cesar Inacio Martins [ 2023 Aug 24 ]

Really useful resource, mainly to quickly duplicate and make mass changes like hostnames , items ... 

 

Comment by Jeffrey Descan [ 2023 Aug 25 ]

We have tons of dashboards and Zabbix instances. This feature would be ideal to import them in various instances at once and maintain them in an automated way.

Comment by Robert Markula [ 2023 Aug 25 ]

Agreed - We install new Zabbix instances quite often. Dashboards are one of the main entry points for Zabbix users and one of the things users interact with most.

It would be very neat to have our set of carefully crafted Dashboads available for import on other instances - including being able to use things like versioning for our dashboards.

Maybe in the future that paves the way for something like dashboard sharing (analog to template sharing)?

Comment by Omer Khan [ 2023 Dec 23 ]

Is there any recent information available regarding the potential inclusion of this feature in Zabbix's next release?

Comment by dimir [ 2024 Jan 22 ]

We are aware of this issue and we'd like to implement it as soon as possible but currently the closest that might get this in is 7.2 . Please stay tuned.

Until then, one alternative to handle dashboards is (very high-level overview) creating an export script that would perform the following via Zabbix API:

  • get dashboard
  • get all IDs
  • map them to names

and an import script that would:

  • get all IDs (by using names)
  • create dashboard

Working with dashboards via Zabbix API:

 





[ZBXNEXT-714] need scalable alternative for the history and items tables Created: 2011 Mar 24  Updated: 2024 Mar 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 1.8.2
Fix Version/s: None

Type: Change Request Priority: Major
Reporter: Will Lowe Assignee: Alexei Vladishev
Resolution: Unresolved Votes: 94
Labels: Zabbix7.2, cassandra, performance, storage
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux, Postgresql


Issue Links:
Causes
causes ZBXNEXT-4417 Real time value, trends, events expor... Closed
causes ZBXNEXT-4868 Support of TimescaleDB Closed
Duplicate
is duplicated by ZBXNEXT-2640 Add ability to send numeric history t... Reopened
is duplicated by ZBXNEXT-2810 Send data to Fluentd Closed
is duplicated by ZBXNEXT-1836 Support of loadable modules for alter... Closed
Sub-task
depends on ZBXNEXT-3661 Support of RestAPI or JSON RPC as bac... Reopened
part of ZBXNEXT-4417 Real time value, trends, events expor... Closed

 Description   

We have hundreds of monitored servers with thousands of checks in total. The size of the items and various history tables in the Zabbix database is a major scalability problem for us – we've got it running on a very fast RAID array with 10+ disks, but a postgres autovacuum of the items table makes the server almost unusable.

Long-term the amount of data we can store in those tables will limit whether we can continue to use Zabbix. Has any thought been given to a more scalable storage mechanism? Some ideas:

  • partition the tables in SQL (we'd be OK with switching to mySQL if needed, but some official support for table partitioning could help)
  • support storing the huge data in BerkeleyDB, Cassandra, Hadoop, or some other more scalable storage mechanism


 Comments   
Comment by Raymond Kuiper [ 2011 Mar 24 ]

Partitioning of the larger tables will also help in reducing the time it takes to restore a zabbix DB from backup in case of disasters (parallel import).

Comment by Daniel Santos [ 2011 Mar 24 ]

This feature will really provide GREAT performance gains in PostgreSQL query plan. Vote for it!

Comment by Daniel Santos [ 2011 Mar 24 ]

Maybe this thread could help... http://www.zabbix.com/forum/showthread.php?p=57018

Comment by richlv [ 2011 Mar 24 ]

what's preventing you from using partitioning ?
since 1.8.4 there's even a frontend define to help to work with them - see ZBX_HISTORY_DATA_UPKEEP at http://www.zabbix.com/documentation/1.8/manual/config/defines

so could this feature request said to be about alternative data storage options ?

Comment by Will Lowe [ 2011 Mar 24 ]

Hmm. When I look at my schema, I see a single history table and a single items table. They are so big that I can't even get a real size – SELECT count from history; will take hours. Here's an approximation:

zabbix=# SELECT (reltuples)::integer FROM pg_class r WHERE relkind = 'r' AND relname = 'history';
reltuples
-----------
598507392
(1 row)

... I was looking for a way to break this up into several smaller tables. E.g. history_2011_01, history_2011_02. You're saying that's already supported? I couldn't find it in the documentation.

Comment by richlv [ 2011 Apr 21 ]

not in individual tables, but partitions - see http://dev.mysql.com/doc/refman/5.5/en/partitioning.html for mysql or relevant documentation for other databases

Comment by Will Lowe [ 2011 Apr 22 ]

We're using postgresql, which doesn't have great native support for this type of partitioning. I was hoping you were telling me that Zabbix could do it itself.

Comment by richlv [ 2011 Jul 27 ]

ZBXNEXT-844 deals with initial cassandra support

Comment by Will Lowe [ 2013 Jan 04 ]

Perhaps it would be worthwhile to consider http://graphite.wikidot.com/ as a replacement graphing backend. It's getting lots of traction, scales well, and does a pretty nice job.

Comment by Adam Kowalik [ 2013 Oct 11 ]

PostgeSQL also supports partitioning - in fact, that's why i'm using it instead of mysql, see here: https://www.zabbix.org/wiki/Docs/howto/zabbix2_postgresql_autopartitioning

Comment by richlv [ 2013 Oct 31 ]

ZBXNEXT-1971 talks about opentsdb

Comment by Stefan [ 2013 Nov 04 ]

maybe this is an option?
https://support.zabbix.com/browse/ZBXNEXT-1847

Comment by Vadym Kalsin [ 2014 Feb 27 ]

My idea is to store latest data in zabbix (for the trigger functionality), but all historical data store in graphite.

https://support.zabbix.com/browse/ZBXNEXT-2176

Comment by Marc [ 2014 May 21 ]

Wont ZBXNEXT-714 be covered by ZBXNEXT-1836?

Comment by Mahdi Hedhli [ 2014 Sep 03 ]

+1 for OpenTSDB and Graphite

Comment by David Parker [ 2014 Dec 13 ]

ZBXNEXT-2640 was closed as a duplicate of this bug. It proposes to solve the backend storage problem by adding an optional call to send data to an AMQ type queue at the point in zabbix server logic where data is being prepared for insertion into sql.

This single addition is effectively a modular storage solution - you can pretty much route the data wherever you want once it's in e.g. rabbitmq. It makes OpenTSDB, Graphite, and just about anything else you can think of almost trivial additions from the user perspective, and has the advantage of reducing the zabbix code complexity "load" to only dealing with one single api (the amq api). I believe rabbitmq is a good choice here, but others would work as well.

I believe the "hook" would live somewhere in src/libs/zbxdbcache/dbcache.c in the dc_add_history_<type> functions. If the target is rabbitmq, the C client library is this: http://alanxz.github.io/rabbitmq-c/docs/0.5.0/.

Implementation would be to add optional configuration to the server config file sufficient to describe a connection to an amq exchange. If that configuration section is populate, code establishes the connection and then pushes data through it. Data would be text format (could be just comma delimited to keep overhead down on the zabbix side).

I believe this would not be hard to implement.

Comment by Corey Shaw [ 2015 Feb 03 ]

I believe that a lot of the ideas that have been presented here are fantastic. Definitely more database storage options are needed for both storing data AND Zabbix reading it back out. Something lacking here though is the concept of storage "modules". I've heard it be alluded to in #zabbix and such, but figured I'd point it out here.

There really needs to be something of a storage framework that people can write pluggable modules for. For instance, let's say that this framework allows me provide my own plugin (or another one someone has written) that tells Zabbix how to store data in OpenTSDB. This same plugin could tell Zabbix how to read data back out of that datastore.

To improve on this further it should be possible for a custom plugin to support sharding of the datastore. Why couldn't someone write into the MySQL module the ability for Zabbix read/write data from/to multiple servers? If all Zabbix cares about is function calls to the plugin that provide or store the data, it should be trivial to support that from a Zabbix perspective. The difficulty lies in the pluggable module.

Zabbix SIA could provide a base set of modules as they see fit (ie: MySQL, Postgres, etc.) and also rely on the community to provide them.

Obviously this is not a minor change and require a significant amount of work. It is possible to get an interim (and let me stress the word "interim") solution probably a bit more quickly. ZBXNEXT-2640 has the concept of adding a "hook" into the current Zabbix code to publish data it collects to an AMQP bus (like RabbitMQ) - this was mentioned in the previous comment by David Parker. This would provide the ability to shove the data off to some other datastore of choice without completely redesigning the Zabbix storage code as it stands now. While it wouldn't provide the ability for Zabbix to read data from the arbitrary datastore, it would allow people to offload some work from the main Zabbix database, thereby freeing up resources (which the Zabbix database desperately is in want of).

Comment by Alexander Simenduev [ 2015 Feb 06 ]

I think InfluxDB (http://influxdb.com), should be a very reasonable alternative for the items storage, which have a SQL like query engine.
What you think?

Comment by Corey Shaw [ 2015 Feb 06 ]

One of the current major issues with InfluxDB is that its clustering is experimental at best, so it would suffer from scalability concerns. If it was simply another plugin for a storage framework (like I mentioned in my last comment), that'd be great!

Comment by David Parker [ 2015 Feb 07 ]

As you mentioned, having output go through an AMQ (eg rabbitmq) as in ZBXNEXT-2640 is a fast interrim path toward that. If everything gets shoved into queue, it can go wherever the user wants it to go. The effect is much like having a plugin-able storage backend, albeit write-only.

Comment by Marc [ 2015 Feb 07 ]

An implementation in the sense of ZBXNEXT-1836 would be the best approach in my opinion.

Then there would be an abstraction layer that allows to use almost any thinkable storage backend.
But t's probably better to have ZBXNEXT-2519 in place first. This would ensure that one history storage plug-in is sufficient for both server and frontend.

Comment by Oleksii Zagorskyi [ 2015 Sep 16 ]

ZBXNEXT-2659 talks about FoundationDB support.

Comment by Vadim Nesterov [ 2015 Sep 16 ]

When Alexey was in Moscow, he was agreed to make something like middleware with support of different storage engines like plugins.
So it can be configured to store history, histrory_unit in Cassandra, HBASE, OpenTSB, Influx, but logs to store in Elasticsearch or Solr.
So every type of data cen be stored in different databases, so middleware is abstraction layer to access databases.
So plugins must be easy writeable, and I would like it would be a standalone process and written on Go.

Comment by Thierry Sallé [ 2015 Nov 23 ]

Hi !
I've just tried InfluxDB as a database storage replacement for history.
I've used the jdbc input plugin of logstash, to continuously fetch the last minute of history and then send data to influxdb (with the influxdb output plugin).
And it works great, all chart was viewable through Grafana, faster than the Zabbix Datasource plugin.
I think you should consider using InfluxDB as a scalable alternative for the history and trends tables.
You can use the "Continuous Query" to aggregate data over time (ie trends), and each item can have a specific retention policy (like in zabbix).

Regards,

Thierry.

Comment by Marc [ 2016 Feb 12 ]

In reference to ZBXNEXT-1836, it would be nice to support (optionally) a module per type of information with option to provide different ones for multiple/both types (but at least for type numeric and text).
Otherwise it could be difficult or even impossible to use database/storage engines that are highly specialized to specific types only.

Comment by richlv [ 2016 Jul 28 ]

ZBXNEXT-3353 is similar, but only asks for one-way data export module support. see that issue for more detail.

Comment by Peter Gervai [ 2017 Feb 22 ]

I generally don't like the solutions which suggest manual sharding, partitioning or other manual hacks.
There are plenty of timeseries storage systems now which were specifically designed for the task, many of them scales both horizontally and vertically, and does all of this automagically. They have similar APIs, I've seen many of them providing APIs for the others.
Zabbix uses RDBMS wor a task it isn't suited well. I understand that this is the "original" approach but scaling and redundancy is a big problem. I try to use zabbix API in grafana and the results are horribly slow, compared to basically anything else.

Just to name a few older and newer, all of them possibly better than *sql: dalmatinerdb, apache kubu, opentsdb (these all automagically clustered); influx, prometheus, riakTS, kairosDB, graphite/whisper, or even elasticsearch; and some I don't even know: druid, blueflood, atlas, chronix, hawkular, warp10, heroic, btrdb, merticTank...

I personally see the first two as a good candidate for myself, but they are very similar from the usage standpoint. All of them great in storing and retrieving time series.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Feb 22 ]

A fresh related issue: ZBXNEXT-3661.

Comment by Stefan [ 2017 May 05 ]

Hello,

just some suggestions:
I think Zabbix don't need an alternative database
Zabbix must use a better schema some example to imrpove performance:

  • at the moment zabbix stores a lot of unneeded data: eg a ping which returns 0 will be saved in the DB, everytime, but that is useless, you need only changes, so can can just save the data when it changed + the last check which returns 0
  • zabbix stores in table trends 6columns; min, avg, max are three of them, it would be better (performance and size reason) to create an array like {min,avg,max}
  • and one of the important things, use partitioning as default
Comment by Peter Gervai [ 2017 May 18 ]

@stefan krüger: You believe that, and many of us disagrees.

RDBMS is not good for storing (sometimes many hundred millions) of simple, unstructured time series data, and even less for retrieving them fast. It doesn't really matter how you try to tweak the schema, you always need lots of dirty (manual) work to make it at least somewhat bearable, but it never will be good.

In contrast the clustered time series databases usually provide you with a working, distributed, load balanced and high peformance backend without any fiddling necessary. Retrieval times are (often) magnitudes lower than RDBMS.

I understand that some people believes that the solution is not to keep historical data, they delete everything older than a week and be happy. But then we (those who need the history for years) would need a parallel system, gathering the same data but storing it, then another to retrieve and visualise it. Kind of defeats the purpose.

I haven't browsed the code but probably all tasks can be somehow traced back to
insert_some_data(class, value, timestamp, metadata)
and
get_some_data( class_selector, timerange )
and it shouldn't really matter what the backend is, how does it partition, cluster, load-balance or whatnot.

Comment by Rostislav Palivoda [ 2018 Apr 11 ]

Data export to JSON files available in 4.0 alpha5 - ZBXNEXT-4417

Comment by Rostislav Palivoda [ 2019 Sep 25 ]

Elasticsearch added in ZBXNEXT-4320

Timescale support added in ZBXNEXT-4868

Does it still make sense to keep the request open? Please comment with case description. 

Comment by Glebs Ivanovskis [ 2021 Aug 08 ]

Data export to JSON files available in 4.0 alpha5 - ZBXNEXT-4417

Export files became "second class" and aren't really a match for what is requested in this ticket.

Comment by Sergey [ 2021 Dec 14 ]

Will be support victoriametrics as storage?

Comment by Alexei Vladishev [ 2021 Dec 15 ]

serrrios , VictoriaMetrics will definitely be an option once we have history API implemented.

Comment by LivreAcesso.Pro [ 2023 Mar 23 ]

What about better schema to improve data density?

The order of the columns matter:
https://stackoverflow.com/questions/2966524/calculating-and-saving-space-in-postgresql/7431468#7431468

Comment by LivreAcesso.Pro [ 2023 Mar 23 ]

https://stackoverflow.com/questions/12604744/does-the-order-of-columns-in-a-postgres-table-impact-performance

Comment by François Saysset [ 2023 Apr 03 ]

what do you think of clickhouse for storing large historical data ?

Comment by LivreAcesso.Pro [ 2023 Jun 24 ]

Can we test VictoriaMetrics as alternative to SQLite?

Comment by Peter Gervai [ 2023 Jun 25 ]

I have lost my patience in the recent years waiting for solution, since RDBMS clearly not fitting the case.

Since we use VictoriaMetrics for about everything metric, and it handles about 20 billion entry on a single non-clustered virtual machine rather well (both disk usage and response time is excellent) I started to implement querying metrics through zabbix api and inject it into V.M. and use Grafana to watch metrics (not to mention some algorithmic alerts through alertmanager, which shall be fed back to zabbix, enevtually), and tell Zabbix to remove metric stuff older than some ridiculously short time, say, 7 days.

It would be nice if zabbix could automagically push metric data to anything, using a plugin-based system (prometheus compatible, influx compatible, tsdb compatible, just to name a few), and maybe able to include Grafana dashboards (even in an iframe), if it's hard to implement actual metric queries against the said protocols and displaying it (but, honestly, Grafana displays graphs a million times better than a hacked-together local graph, why reimplement it again?).

Clickhouse is nice but I wouldn't store metrics in a non-metric oriented backend; however, even if it's not perfect, it could handle storage way better than the current solutions. Especially any historical non-metric data. (And Elasticsearch is not resource friendly in any way, mind you.)

I was suggesting generic metric API a loong time ago, following the discussions but I have seen marginal demand and will, and probably it's easier for me to syphon out the data than waiting for some miracle to happen. (In my mind Zabbix is an excellent alert engine and a horrible metrics engine.)

Still I carry hope.

Comment by Glebs Ivanovskis [ 2023 Jun 26 ]

Dear grin,

It would be nice if zabbix could automagically push metric data to anything, using a plugin-based system

Zabbix already has such "plugin-based system" (see ZBXNEXT-3353 and docs).

Grafana displays graphs a million times better than a hacked-together local graph, why reimplement it again?

Totally agree. That's why my loadable module for InfluxDB has integration with Grafana Zabbix plugin.

I don't use this solution myself, but since there are virtually no open issues it either works to everyone's satisfaction or nobody uses it.

Comment by Stefan [ 2023 Jun 26 ]

since Zabbix supports TimescaleDB, it has a good scalable alternative for history and items.. also Zabbix has the possibility  to export metrics everything is fine

so for me, that can be closed

Comment by Peter Gervai [ 2023 Jun 26 ]

@Glebs

While in theory influx can be used in VM in practice as you mention with no label information (group, item name, interface, ...) it has little use, possibly not unrelated to the lack of feedback. I am not sure i would be simple (or possible) to write a module which could generate "whole" data (ts+data+labels), posssibly doing large amount of lookups in the process. For the general case (or for really anything which works on the data, from alerting to various external plugs) the grafana "hack" do not seem to be useful.

Comment by Alexei Vladishev [ 2023 Jul 03 ]

We are aiming to introduce a generic HTTP based API for connecting any time series DB engines in 7.0 LTS. It is currently in design phase.

Comment by Andrea Rafreider [ 2023 Jul 27 ]

Use of timeseries databases for history usage would be easier if zabbix item keys supported named parameters.

Example:
Instead of vfs.fs.size[/usr,used] -> vfs.fs.size[filesystem=/usr,mode=used]

This could easily exported in the history file of zabbix and imported in a prometheus compatible timeseries (we use victoriametrics for this) for example a on a timeseries with name vfs.fs.size and labels

{filesystem="/usr", mode="used"}

Retrocompatibility, for those who need it, could be achieved by supporting in zabbix item.keys both positional and new named parameters.

I'm looking forward for a timeseries backend that can work OOTB with zabbix!

Keep up with the good work
Andrea

Comment by Ruslan Aznabaev [ 2024 Mar 28 ]

Any update on this?

As I see, it has label "Zabbix7.2", but in roadmap this request planned for 7.0.





[ZBXNEXT-8779] Improvement of AZURE template Created: 2023 Oct 23  Updated: 2023 Oct 23

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 6.0.22, 6.4.7
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Edgars Melveris Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 4
Labels: azure
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Please update AZURE template to include following resources:

  • AZURE load balancer
  • AZURE application gateway
  • AZURE key vaults
  • AZURE virtual network gateway (VPN or Express route)





[ZBXNEXT-8650] Read only templates Created: 2023 Aug 21  Updated: 2023 Aug 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.20, 6.4.5
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Would it be possible to have native frontend capabilities to audit templates without doing any harm? The goal would be to observe all data collector items, update frequency, trigger thresholds, etc.

Currently, no read-only role is present for the task.






[ZBXNEXT-8799] Zabbix Frontend Support for Tabbed/Delimited Form Entry Created: 2023 Oct 26  Updated: 2023 Oct 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Shane Arnold Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: frontend, regex
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

One of the functionality issues I have with the Zabbix Frontend is the lack of ability to enter data into forms (such as a host list) using either a spaced or otherwise delimited entry.

For example, I might have a list of servers delimited by commas, spaces or semicolons. I would like to be able to copy and paste that list into an input field and have the frontend parse that list and add the servers.

RIght now, you are required to manually select or type in each server to add it to the list. This is extremely painful for trying to create "dynamic" lists of servers where you are unable to use some other function such as a hostgroup or tag.

This results in needing to use Grafana for dashboarding as it supports supplying inputs in many delimited forms, even regex. It removes some value from Zabbix Dashboards due to this feature.






[ZBXNEXT-8689] Enabling of network tiering Created: 2023 Sep 06  Updated: 2023 Oct 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Frontend (F), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Karlis Salins Assignee: Unassigned
Resolution: Unresolved Votes: 8
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Network_segregation.PNG    
Issue Links:
Duplicate

 Description   

With network tiering we mean segregating the components (database, application, frontend, “clients”) in the network, where each layer is only able to talk to the layer net to it.

Currently this kind of network tiering is not supported by Zabbix, as the front end requires direct access to the database.

Another issue is that agents/proxies needs to talk directly to the Zabbix server, instead of going through the Front end.

If we could get the possibility to let agents and proxies communicate with the server through the front, it would be great. But we would also like to see the Front end communicate with the database through the server.

With these changes, we could put the front ends in a true DMZ, the servers in the first network layer behind the DMZ, and then the database in another layer behind again.

See attached picture, where the Zabbix front end is placed in the DMZ, the Zabbix server is in the next network layer and finally the database in another layer.

This architecture is quite common, and facilitates minimal openings in the firewall between the network layers.



 Comments   
Comment by richlv [ 2023 Oct 07 ]

Frontend connecting to the DB via server has been discussed quite a lot in the past, and there might be an existing feature request - although cannot find one right now.

Comment by dimir [ 2023 Oct 09 ]

Yeah, and possibly this could solve the long-lasting issues of deadlocks in the database when server and frontend are accessing the database simultaneously.





[ZBXNEXT-9035] Advanced debugging for proc.num on AIX and proc.get support on AIX Created: 2024 Feb 22  Updated: 2024 Feb 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Facundo Vilarnovo Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Enable a way to run the key proc.num in debug mode, which will show exactly how the program will capture the process. It has been reported that proc.num is showing 2 process instead of 1. (as shown by ps command). Debug could show the process id detected.

Adding the proc.get item support would also be more useful.

 






[ZBXNEXT-8942] Add filter options on Latest data filter Created: 2024 Jan 11  Updated: 2024 Jan 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Victor Breda Credidio Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be interesting to have a filter for item status (supported/not supported), state (enabled/disabled), and maybe other attributes too (such as triggers/discovered/inherited).

Having a filter for items in “latest data” to filter enabled/disabled and supported/not supported may help on two things: (1) give users visibility of what they might be missing and empower them to fix it, and (2) specially giving us the ability to look for problems in specially big envs. That helps a lot with couple millions items and a busy frontend. Keeps frontend responsive as it displays less info, that’s more relevant for the query the user/admin is doing.

The current possibility for something similar would be the filter items by "Without data", on sub-filter, but it can show items that are "OK", but without any data. The main idea here is to be able to filter/see only items you need to debug and fix.






[ZBXNEXT-8766] Filter graphs in "Graph prototypes" widget Created: 2023 Oct 17  Updated: 2023 Oct 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Artur W, Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: frontend, graphs, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi.

In dashboard widget called "Graph prototypes" i`d like to see  filtering

 by (wildcard) graph name and/or filter by tags

 

It would help to sort graph from my huge systems like rabbit clusters

 






[ZBXNEXT-8776] dashboard name on browser's tab title Created: 2023 Oct 21  Updated: 2023 Dec 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.6
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Verde Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: Issue, dashboard, feature, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 2023-10-20_17-03.png     PNG File 2023-10-20_17-08.png    

 Description   

when having several, different dashboards opened, it's hard to identify quickly the one you need. It would be very helpful that the dashboard name is shown in the browser tabs instead of only "Dashboard" 

See image attached.

 



 Comments   
Comment by Brian van Baekel [ 2023 Oct 31 ]

Agreed to this one.

Fix is really straight forward and easy...

edit /usr/share/zabbix/app/controllers/CControllerDashboardView.php

change line 168 from:

$response->setTitle(_('Dashboard')); 

to

$response->setTitle(_($data['dashboard']['name']));

 

and problem is solved - in bigger environments its quite helpful imo!

 

Comment by Verde [ 2023 Dec 22 ]

it worked!  it is indeed very helful, Thanks Brian.





[ZBXNEXT-8780] fix typos in integration eXpress Created: 2023 Oct 23  Updated: 2023 Oct 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.0.21, 6.4.6, 6.4.7, 7.0 (plan)
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Andrey Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In integration https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/express.ms/README.md

fix typos:
signatire replace at signature






[ZBXNEXT-8989] Controllo di certificati ssl self-signed Created: 2024 Feb 05  Updated: 2024 Feb 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.4.11
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: GianLuca Vagnuzzi Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Esiste un modo per controllare la scadenza di un certificato self-signed?

Grazie in anticipo






[ZBXNEXT-9013] Tag Management Created: 2024 Feb 13  Updated: 2024 Feb 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: S K Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi Zabbix Team, 
while tags are getting more important, it would be useful to have central way to manage key and values of tags in zabbix itself.
Currently we have to develop a tool to clean up old tags from Templates older than Version 6.






[ZBXNEXT-9010] do not duplicate the name of the prototypes in the group name if the group is created by a single prototype. Created: 2024 Feb 12  Updated: 2024 Feb 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 7.0 (plan)
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Roman Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

do not duplicate the name of the prototypes in the group name if the group is created by a single prototype.






[ZBXNEXT-9014] Confusing graphs "Memory usage" and "Swap usage" for Linux templates Created: 2024 Feb 14  Updated: 2024 Feb 19

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 6.0.26, 6.4.11, 7.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Edgar Akhmetshin Assignee: Andrey Tocko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot 2024-02-13 at 16.24.36.png     PNG File Screenshot 2024-02-13 at 16.24.43.png    
Issue Links:
Sub-task

 Description   

See example:

Memory usage is interpreted like: total memory and "current usage".

Same for the swap.

On the graph it should be Total + Used for Memory and SWAP, not Available, since graphical representation is confusing.






[ZBXNEXT-8988] Ability to filter out problem events inside and outside maintenance window Created: 2024 Feb 02  Updated: 2024 Feb 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.25, 6.4.11
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently, the maintenance window skips to create notifications.

There are no tools to analyze existing problems and hide the records (or cut the duration of the problem shorter) which are generated during the maintenance window.

A possible implementation could be to track every trigger and write extra timestamps if the "TriggerID" is currently in maintenance.

As a result, in GUI we can have:

Show problem start/end time including maintenance window Show problem duration which was outside the maintenance window





[ZBXNEXT-9058] Create VMware template for standalone ESXi hypervisor monitoring Created: 2024 Mar 01  Updated: 2024 Mar 01

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Tomass Janis Bross Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

At the moment we have a VMware template, which is already able to monitor standalone ESXi hypervisors, however, when using this template Zabbix essentially has to create two hosts, one where you attach the template which also will discover the hypervisor with the "Discover VMware hypervisors" discovery rule, you will end up with two hosts.
As highlighted by one of our customers, this can create issues with their ServiceNow integration, as they have to have two different hosts on the Zabbix GUI, and ServiceNow can only take one of them as a valid host with the correct hostname.

Attaching the "VMware hypervisors" template directly (which is a part of the VMware template as a whole), also does not work, as then there is a missing LLD macro that doesn't allow the template to function properly.






[ZBXNEXT-9032] Unify PostgreSQL naming for Zabbix components Created: 2024 Feb 21  Updated: 2024 Feb 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D), Proxy (P), Server (S)
Affects Version/s: 6.0.25, 6.4.11
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Igor Gorbach Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Naming difference:

Package names:

  • zabbix-server-pgsql
  • zabbix-web-pgsql
  • zabbix-proxy-pgsql

 

SQL scripts path:

  • /usr/share/zabbix-sql-scripts/postgresql

 

Frontend database type definition parameter:

$DB['TYPE']             = 'POSTGRESQL';

The naming should be unified - use a well-known abbreviation (pgsql) or full software name (postgresql) everywhere, but not both namings in different places.
It is confusing and requires a lot of workarounds in automation tasks.






[ZBXNEXT-9028]  Consistent device naming on linux Created: 2024 Feb 20  Updated: 2024 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent2 plugin (N)
Affects Version/s: 6.4.11
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Roy Sigurd Karlsbakk Assignee: Eriks Sneiders
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Linux


Team: Team INT

 Description   

Hi all

Today, Zabbix finds devices like sda, sdb, sdc etc and that is generally fine on smaller systems. On larger, however, if you have a lot, like 20 or 80 drives, those won't be given the same device name on each bootup. Your sdd and sdc can swap place because one was detected before the other. From Linux' point of view, this isn't a bug at all, since device names shouldn't be trusted anyway. If you keep on trusting device names, zabbix will show all sorts of interesting errors that aren't there, for instance a drive in a RAID where the smart counters have started ticking, and then, after a reboot, another drive has the same count, but the first has zero. So, with the old smartctl check (before zabbix_agent2), I rewrote the discovery to allow for returning a consistent path to the device, namely /dev/disk/by-id/ata-something-blabla (or scsi- or usb-), which then is a symlink to the real device. I know this works and it removes a lot of false positives. The problem is - how can I make Zabbix' LLD for blockdevices do the same? Rewrite the whole thing in scripts? It'd be very nice if there was a way to have zabbix_agent2 do this on its own. My versjon of the LLD script for disks is here in case someone wants to have a peek https://github.com/rkarlsba/ymse/blob/master/zabbix/zbx-smartctl/discovery-scripts/nix/smartctl-disks-discovery.pl

roy 



 Comments   
Comment by Roy Sigurd Karlsbakk [ 2024 Mar 08 ]

Is there any progress on this?





[ZBXNEXT-9037] Masquerade as other zabbix user Created: 2024 Feb 23  Updated: 2024 Feb 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.26, 6.4.11, 7.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sub-task

 Description   

Before giving frontend access to the end user, kindly allow Zabbix Super Admin to see/confirm/simulate the user’s frontend setting without interaction with the user.

Technically, if the task is a priority, we could temporarily set one password for the user object. Test the authentications and see the outcome of the user interface. Then, set a different temporary password. There must be a more modern way to ensure what the user is about to see.






[ZBXNEXT-9016] Host Group management Created: 2024 Feb 14  Updated: 2024 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Davi Glaser Argandoña Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Front-End


Attachments: PNG File HOSTGROUP_1.png    

 Description   

When it open the pop-up to set any hostgroup, It would be interesting opens a page or other pop-up showing the hosts that belongs to this hostgroup to configure and make some adjusts within group instead opens only a pop-up to change the hostgroup name.

This change helps is easy to manages and set up the Hosts within Hostgroups.






[ZBXNEXT-8995] Manual Active Node Switching in Zabbix HA Configuration Created: 2024 Feb 07  Updated: 2024 Feb 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Piotr Wegrzyn Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

When running Zabbix in an HA configuration, it would be highly desirable to have functionality, ideally in the GUI, to manually change the active server. Currently, to the best of our knowledge, to failover to a specific node you must shutdown the Zabbix Server on all the other nodes and wait for it to hit the configured failover time limit. There’s a variety of scenarios where it’s desirable to manually change the active node without delay.






[ZBXNEXT-8939] prohibit to use previous X passwords in zabbix auth Created: 2024 Jan 11  Updated: 2024 Jan 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 6.0.24, 6.4.10
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Oleksii Zagorskyi Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

In ZBXNEXT-4029, for version 6.0, passwords in zabbix have been made more secure.

Just to keep in mind - there were some related changes in following major release:
https://www.zabbix.com/documentation/6.2/en/manual/introduction/whatsnew620#secure-password-hashing
https://www.zabbix.com/documentation/current/en/manual/introduction/whatsnew640#secure-password-change

But there is still one option missing - limit users to use X previous passwords.
Such approach exists currently in many auth engines, so it's requested here to be added in zabbix too.






[ZBXNEXT-9020] Add column to display dependent items that belong to a master item Created: 2024 Feb 15  Updated: 2024 Feb 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Karlis Salins Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2024-02-15-11-46-48-527.png    
Issue Links:
Duplicate

 Description   

It would be nice to have a column that displays dependent items belonging to a master item.
Similar like we currently have for triggers belonging to item.

Something like this would be the end result:






[ZBXNEXT-6931] [maps] improve traffic visualization Created: 2021 Sep 22  Updated: 2021 Sep 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 5.4.4
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: thomas Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello Zabbix team

In addition to https://support.zabbix.com/browse/ZBXNEXT-5275 it would be great if we could visualize host interface with max traffic in and host interface with max traffic out. For example :

 

interface desc (max traffic in)  -->  +---------------+
                                      | access switch |
interface desc (max traffic out) <--  +---------------+

 






[ZBXNEXT-6818] Extension of Web service configuration file ( Include= ) Created: 2021 Aug 05  Updated: 2021 Aug 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Andrey Tocko Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2021-08-05-19-28-48-258.png    
Issue Links:
Duplicate

 Description   

Hello!
Zabbix agents/proxy/server has Include= parameter to customize configuration.
Please provides same functionality for configuration file of Web service. With Include= option to split its configuration logically. And complete the packages accordingly with /etc/zabbix/zabbix_web_service.d/ folder included.

 






[ZBXNEXT-6835] Allow to search by user macro value in "Name" field in Latest data page Created: 2021 Aug 13  Updated: 2021 Oct 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.4.3
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2021-08-13-14-45-02-848.png     PNG File image-2021-08-13-14-45-12-485.png     PNG File image-2021-08-13-14-45-19-844.png     PNG File image-2021-08-13-14-45-59-732.png    
Issue Links:
Sub-task

 Description   

If a macro is installed in template level:

And we use it at the Name field:

The Latest data page allows to find the metric only by putting a macro name in the search box:

<== This is a cool feature that should remain.

But it could be also great to have capabilities to search by user macro value:



 Comments   
Comment by Igor Koskin [ 2021 Oct 14 ]

It looks like a bug has been fixed, in version 5.4.5 it search correctly





[ZBXNEXT-6767] Slack media type for multiple channels Created: 2021 Jul 07  Updated: 2021 Jul 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.13
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

At the integration page it states:

Note: alarm mode works correctly only if you send messages to only one channel because the webhook uses non-unique event tags for storing data about created threads, and we cannot perform multiple threads updating.

 Kindly create a patch to be possible to work with multiple slack channels.






[ZBXNEXT-6769] Include "Trigger description" in event details page Created: 2021 Jul 08  Updated: 2021 Jul 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.32
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File event-details-4.0.png     PNG File event-details-5.0-trigger-description.png    
Issue Links:
Sub-task

 Description   

"Trigger description" field is missing from the event details block:

The API method 'trigger.get' do reports this information.

Attaching screenshot from Zabbix 5.0 which field we are talking about:






[ZBXNEXT-6726] Auto renew Hashicorp vault periodic service tokens Created: 2021 Jun 15  Updated: 2023 Aug 31

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.2.5, 5.4.1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Kaspars Mednis Assignee: Andris Zeila
Resolution: Unresolved Votes: 15
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It is recommended to use periodic service tokens for long-running services
https://learn.hashicorp.com/tutorials/vault/tokens#periodic-service-tokens

However, these tokens expire and they need to be renewed periodically. Currently this is possible only outside of Zabbix using periodic cron job or other way. This puts token potentially under risk, because if cron job is used then the token must be stored in plain text file.

https://learn.hashicorp.com/tutorials/vault/tokens#renew-service-tokens

This is not a big problem for frontend, because the token is stored in the web configuration anyway.

However, Zabbix server has possibility to use token from environment variable (which can be destroyed after Zabbix server start).

Adding possibilty to auto renew the token used by Zabbix server would be nice.
New Zabbix server configuration parameter could solve this problem, by example

VaultTokenRenew=1h

The only non-expiring token is the root token, but using root token for a service is bad practice.



 Comments   
Comment by patrik uytterhoeven [ 2022 Jun 13 ]

hi, will this come in 6.2 or later ? really. looking forward as now we need to use root tokens to keep the connection longer then 1 day

really not secure and thats a pitty 

Comment by Dimitri Bellini [ 2022 Jun 13 ]

Please add this feature!

Comment by John Koyle [ 2022 Oct 28 ]

An alternative/easier approach may be to integrate with vault agent.  Vault agent (with an approle authenticator) can auto-renew and auto-auth tokens and write them to a sink file.

This would then only require the following Zabbix changes:

VaultToken configuration modified to enable reading from a file:

VaultToken=file:/path/to/sinkfile

 

and a new option: VaultTokenFrequency with a value set to how frequently the zabbix server should refresh the token used from the sink file.

VaultTokenFrequency=3600
Comment by Evgeny Semerikov [ 2023 Mar 02 ]

Also will be nice to use approle and add to config few new params, like role-id and secret_id instead VaultToken with them Zabbix can automatically renew token after its expiration.

Comment by Karel Krýda [ 2023 Aug 31 ]

We definitely need this functionality. It is not possible to manually renew the token every month.





[ZBXNEXT-6699] Customize snmptrapd settings for zabbix/zabbix-snmptraps:tag container Created: 2021 Jun 03  Updated: 2021 Jun 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Packages (C)
Affects Version/s: 5.0.12
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Jurijs Klopovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

https://hub.docker.com/r/zabbix/zabbix-snmptraps

Container currently has a possibility to use a specific volume for logs:

/var/lib/zabbix/snmptraps 

and a specific volume for mibs:

/var/lib/zabbix/mibs 

It would be nice to have another volume for the settings:

/etc/snmp

This would allow configuring the daemon. Allow different community names while still using the same base container.






[ZBXNEXT-6649] Option to execute all related checks of a trigger from the Dashboard Created: 2021 May 06  Updated: 2021 May 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Leonard Winck Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It'd be great if you could manually execute checks for all related checks of an active trigger from the dashboard (for items which allow for manual checks).

This way an admin who's working on an issue could easily gather new data after having made changes from the dashboard, without first having to go into the host configuration, to the trigger, search for all items that the trigger contains, select them and execute them from there. A single button on the Dashboard would suffice.






[ZBXNEXT-6645] Real Time Export customization Created: 2021 Apr 30  Updated: 2021 Apr 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.11, 5.2.6
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Andris Zeila
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Add the possibility to edit the zabbix_server.conf to add extra fields for export from the item or some other config file.

For example a configuration entry for
ExportTypeEventsAddFields: Key, Description

These fields would be in addition to the ones listed for the item types here
https://www.zabbix.com/documentation/current/manual/appendix/protocols/real_time_export

Please see below for examples of data we would like to include. Essentially the ability to provide more details on the metrics.

Presently the data looks something like this when exported

 

{
"host":
{ "host": "Host_name", "name": "Visible_name" }
,
"groups": [
"Group A",
"Groub B"
],
"applications": [
"Application General"
],
"itemid": 53672,
"name": "Item availability",
"clock": 1619717672,
"ns": 847809113,
"value": 0,
"type": 3
}

 

We would want it look like the following

 

{
"host":
{ "host": "Host_name", "name": "Visible_name" }
,
"groups": [
"Group A",
"Group B"
],
"applications": [
"Application General"
],
"itemid": 53672,
"name": "Item availability",
"clock": 1619717672,
"ns": 847809113,
"value": 0,
"type": 3
"Key": vm.perf.metric.get_cpu.costop.millisecond.summation["X001", "", ""]
"Description:" ["customer", "instance", "perf-interval"]
}

 






[ZBXNEXT-7788] Possibility to add custom tags to items and triggers created from prototypes Created: 2022 Jun 09  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 5.0.24, 6.0.5, 6.2.0beta3
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: lld, tags
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It should be possible to add new tags or modify values of existing ones. In same way (and probably for same tasks as in ZBXNEXT-7591)
At the moment, this task can be solved by overrides functionality. But for some quick actions, it will be quite complicated.
The user should be able to decide for himself whether he wants to manually change a tag somewhere or to thoroughly automate the redefinition of tags due to overrides

Regards, Elina






[ZBXNEXT-7770] Allow persistent connection handling for HTTP agent items Created: 2022 Jun 03  Updated: 2022 Jun 03

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.5
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Edgars Melveris Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

In certain scenarios it would be useful to allow HTTP agent to use persistent connections.
There are specific use cases where information needs to updated very frequently, but certain DDOS protection systems consider this to be an attack. Keeping an open connection would greatly help here.






[ZBXNEXT-7643] New Zabbix agent item proposal for total memory Created: 2022 Apr 20  Updated: 2022 Apr 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Eduardo Mazzali Stelmaszczyk Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Currently there's no way in Zabbix agent to check the total amount of actually INSTALLED/PROVIDED memory in Linux (physical server or virtual machine).

The vm.memory.size[total] Zabbix agent key is consistent with "free" output. But the amount of memory returned by "free" is not equal to the memory installed/provided to the server (the latter can be checked by "dmesg | grep Memory:" or by dmidecode).

It's important to note that this does not have to do with differences between "Gigabyte" and "Gibibyte". Here are values taken from a virtual machine with 512 MB:

 

 # dmesg | grep Memory
[ 0.000000] Memory: 451404k/524288k available (7664k kernel code, 396k absent, 72488k reserved, 6055k data, 1876k init)
 
# free -b
total used free shared buff/cache available
Mem: 509046784 106278912 157323264 26697728 245444608 332025856
Swap: 0 0 0
 

 

First value (524288k, in dmesg output) is actually in KiB - if you divide it by 1024 you get exactly 512 MB (as you're supposed to).
Second value (509046784, in free output) is in bytes. If you divide it by 1024 you get 497116 Kib.

The following Red Hat KB article explains a bit about the difference:  https://access.redhat.com/solutions/454133

 

This feature request, then, is to suggest that we create a Zabbix agent item that returns the total amount of memory provided to/installed in a server.






[ZBXNEXT-7647] New startup option for Zabbix Agent MSI Created: 2022 Apr 22  Updated: 2022 Apr 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: dimir
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows



 Description   

It will be nice to add two new option and corresponded parameters into MSI installation package:

  • Run Agent after installation is finished
  • Runs Agent at Windows startup

First option will allow you to adjust Agent configuration file before Agent start.






[ZBXNEXT-7645] Add new parameter to MSI package command-line based installation Created: 2022 Apr 21  Updated: 2022 Apr 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Installation (I)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: dimir
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It well be nice to add new parameter to MSI package command-line based installation:

  • StartAgents

Also since for now almost all major parameter can be set up during installation it will be nice to add few left one.






[ZBXNEXT-7612] Possibility to receive events from 3rd Party systems and generate synthetic problems Created: 2022 Apr 07  Updated: 2023 Mar 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Igor Gorbach Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Zabbix is a great solution when we talking about working with a problems

We're able to create alerts in many ways, but... All of it is limited by Zabbix only.

We have to create items, triggers, make some workarounds with zabbix_sender utility and sender protocol to make Zabbix looks like an Umbrella Solution because Zabbix could be not the only system, which generates alerts and it would be a great benefit for Zabbix to use it as a Unified window for all those systems
So, Zabbix should have a possibility of generating problems which are not related to any item or trigger.
A new API method could be a solution here, like event.create

Possibility of 3rdparty problems receiving/generating open new opportunities like - internal synthetic problems generation in Zabbix (Button - generate a new event for a trigger could save a huge amount of time), correlation-related new events, etc...

So, please, consider this suggestion for implementation in the next releases






[ZBXNEXT-6937] New macro like {HOSTGROUP.NAMES} to use in maps Created: 2021 Sep 23  Updated: 2021 Sep 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 5.4.4
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: hostgroup, macro, map
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

For notifications there is {TRIGGER.HOSTGROUP.NAME} macro
But there is no to use in map element labels






[ZBXNEXT-6807] Automatically detects active components for "Template App Zabbix Server" Created: 2021 Jul 30  Updated: 2021 Jul 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S), Templates (T)
Affects Version/s: 5.0.14
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File out-from-box-enabled-all-internal-items.png    
Issue Links:
Sub-task

 Description   

A new Zabbix installation usually generates few unsupported items because we don't use this functionality:

We can solve the noise by disabling these items on a host level.

It would be nice to have a platform that understands automatically which processes are activated in a particular environment.






[ZBXNEXT-6808] Reverse lookup HTTPS discovery Created: 2021 Jul 30  Updated: 2021 Jul 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.14
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

A web server can be configured to listen on a very particular Server Name (SNI), not listens with an IP address. Zabbix offers a network discovery to find servers that listen on port 443.

If a host listens behind SNI, the resource will not be found by a network discovery.

Kindly allow to optionally conduct a reverse lookup for the IP address, then rescan the object with a server name, to successfully identify an HTTPS resource.






[ZBXNEXT-6663] Optional feature to enable adjustment of Active agent timestamp by server or proxy Created: 2021 May 13  Updated: 2021 May 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 5.0.11, 5.2.6, 5.4.0rc2
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Edgars Melveris Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Since version 4.0 Zabbix no longer fixes timestamps for incoming data from proxy/active agent/sender, which is mostly good, especially with proxies.
But sometimes active agents can be in environment where setting correct clock is hard or impossible. This can create chaos in incoming data timestamps, as each host can have different and incorrect times, which means there is no consistency between hosts.

It would be great if this behavior could be changed by some setting (leaving the default as is) for active agent.



 Comments   
Comment by Glebs Ivanovskis [ 2021 May 15 ]

Alternative approach — agent-side option to use "relative" timestamps (e.g. time elapsed since agent started) instead of absolute ones (UNIX timestamps) if the latter can't be relied upon. Agent will include a relative timestamp of every collected value and a relative timestamp when all of them are sent to server/proxy, server/proxy can then calculate absolute timestamps of every value. This way "chaos in timestamps" is eliminated at the protocol level as well.





[ZBXNEXT-6477] Make discovered entities in to constant one Created: 2021 Jan 28  Updated: 2021 Jan 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be a nice feature request to copy data (selectable, not all) to another host (which is assigned to the same template of course, or at least items with the same key). This would be really useful for us for example for bandwidth statistics if a customer migrate from one switch to another (as examples).
For host prototypes it would be a nice option to have a possibility to convert them to actual hosts in a simple matter, transferring all created entities on them.






[ZBXNEXT-6414] Zabbix_sender debug info increasing Created: 2020 Dec 23  Updated: 2023 Oct 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Igor Gorbach Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sub-task

 Description   

In case of zabbix_sender usage we have emulating active checks. But - in case, when ANYTHING is wrong (Hostname missmatching, item has not exists, wrong item type, etc... )

We haven't reicieve any additional information - what is wrong, just useless info like

su -s /bin/bash -c 'zabbix_sender -vv -c /etc/zabbix/zabbix_agentd.conf -i /tmp/zbx-ceph-discovery.MtrCFNJhVvp' zabbix
zabbix_sender [3998631]: DEBUG: answer [ {"response":"success","info":"processed: 0; failed: 3; total: 3; seconds spent: 0.000824"}]
info from server: "processed: 0; failed: 3; total: 3; seconds spent: 0.000824"
sent: 3; skipped: 0; total: 3

And we can't understand what is wrong?

It would be great if trapper processes will answering in more details for zabbix_sender requests

 



 Comments   
Comment by Dominik Zagól [ 2021 Jan 15 ]

It would be also good to be able to tell from server/proxy perspective that it got items from zabbix_sender that doesn't exist in its configuration.

For exemple line like this in zabbix_server.log/zabbix_proxy.log:

[TIMESTAMP] Got unexpected item NAME.OF.KEY from HOSTNAME

That way when watching that log file one would be able to detect hosts that send trapper data to non existent items.





[ZBXNEXT-6794] Random and secure password out from box for user: Admin Created: 2021 Jul 22  Updated: 2021 Jul 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.14, 5.4.3
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Please allow Zabbix default installation wizard (setup.php) to generate random passwords for Zabbix super admin (user alias: Admin).

Such practices have been already noticed for products like MySQL, WordPress.

The biggest reason to implement: This gives extra security out from the box for brute force IP scanning/attacks.






[ZBXNEXT-6814] Add multiple word search support for Name field on Monitoring -> Hosts page Created: 2021 Aug 03  Updated: 2021 Aug 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It will be more comfortable and add some extra filtering ability if field Name can work like Host group field.

For now you can specify several host group for Hist group field but only one name for Name field.






[ZBXNEXT-6803] Zabbix healthcheck Created: 2021 Jul 30  Updated: 2021 Jul 30

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksandr Smirnov Assignee: Unassigned
Resolution: Unresolved Votes: 6
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello!

Could you add http endpoint on zabbix frontend that would return the health of zabbix-server(for example /health), for example, by checking the connection of zabbix frontend to zabbix server and DB?
This is necessary for monitoring the state of zabbix itself by external systems.






[ZBXNEXT-6763] Add interactions to Host availability widget Created: 2021 Jul 06  Updated: 2023 Feb 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Renats Valiahmetovs (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
Story Points: 3

 Description   

It would be great to add the ability to manipulate the data provided by host availability widget.

As of now it serves purely as informational widget without any sort of interactivity.

Would be great to be able to click on the count of available/unavailable hosts and to be able to click on those selected hosts.






[ZBXNEXT-6779] Export to CSV functionality for Audit and action logs Created: 2021 Jul 14  Updated: 2024 Mar 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.13, 5.4.2
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 7
Labels: Zabbix7.2
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sub-task

 Description   

Currently, the Audit and action logs don't have any export capabilities and it often isn't very easy to search for issues/details that you're looking for on the Zabbix UI. It would be great if there's an export to CSV functionality that can be used for both Action and Audit Logs.



 Comments   
Comment by Mathieu M. [ 2023 Sep 20 ]

Hello,

It's even more than the original requester, It "should" be exportable by nature => Possibility to forward this to a specific log / add them to zabbix server log or other to be able to send them to a remote log controller.

We can imagine easily that this can be wanted in more "secure" environment (PCI DSS or other ?).

As the "metric" exporter to JSON exist, there should be a similar option at least (I would recommend JSON format over CSV in any case due to parsing by logstash and others).

Regards

Comment by Kapil Yanamandra [ 2024 Feb 28 ]

I agree with the need for our requirements to include the capability of forwarding both Action and Audit logs to a designated log file to be able to send them to a remote log controller. This functionality is essential for us to effectively monitor specific actions.

This is a much awaited feature in our organization.

Comment by Nilesh Gupta [ 2024 Feb 28 ]

This feature will very helpful!

Comment by Abhijeet Khemka [ 2024 Feb 29 ]

It will helpful we can export the log from GUI and append this log in some audit log file in zabbix master server.





[ZBXNEXT-6656] Ability to display Parent host name (Host prototypes) Created: 2021 May 10  Updated: 2021 May 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Arturs Lontons Assignee: Andris Zeila
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

There are use cases where it would be really useful to quickly filter hosts discovered from prototypes by their parent hosts.
In addition, an optional field for hosts (in monitoring - hosts or configuration - hosts) where the parent host name would be displayed could also provide additional much needed information about hosts created from prototypes.

Another workaround would be the ability to develop a new macro and populate the host prototype host name with it. This macro would then get resolved as the parent host name.






[ZBXNEXT-6655] Allow editing inherited interface on a host prototype Created: 2021 May 10  Updated: 2022 Jul 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.2.6
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Arturs Lontons Assignee: Andris Zeila
Resolution: Unresolved Votes: 9
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sub-task

 Description   

There are scenarios, where the host prototype interface should only be partially inherited. For example, an SNMPv3 interface can use the parent IP address but should have a different context name.

You could use the custom interface option, but then, when you're running the discovery from multiple hosts, you would need to edit the interface in each discovery rule/host prototype per each parent host, thus somewhat defeating the purpose of using templates.






[ZBXNEXT-6637] Repeated notification per triggerid, one notification per day Created: 2021 Apr 22  Updated: 2021 Apr 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

To not spam email per triggerID, it can be a beautiful layer optionally to have a logic: Deliver email per triggerID - only one notification per day.

For example, an alarm (per triggerID) was generated and resolved at 13:30, then the next day if the same trigger comes up: it will not notify earlier than ar 13:30.






[ZBXNEXT-6501] Add possibility for remote check UDP services and ports Created: 2021 Feb 10  Updated: 2021 Jun 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N), Server (S)
Affects Version/s: 5.0.8
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Igor Gorbach Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

We want to have a possibility to use simple checks for checking UDP port availability 

with items like

net.udp.service[udp,<ip>,port]

It is very important in case of Video Services monitoring

Now, the only ntp service available

Also, we want to check packets loss for checking UDP traffic to remote host

Now, we're able to use nping for that, for example
 

nping --udp -c 2  -p 5001 <ip>

Starting Nping 0.7.40 ( https://nmap.org/nping ) at 2020-08-31 22:41 PDT 
SENT (0.0977s) UDP <ip>:53 > 172.31.0.25:5001 ttl=64 id=48591 iplen=28 
SENT (1.0981s) UDP <ip>:53 > 172.31.0.25:5001 ttl=64 id=48591 iplen=28 
RCVD (1.3151s) UDP <ip>:5001 > 172.31.0.69:53 ttl=64 id=42729 iplen=1498   
Max rtt: 216.701ms | Min rtt: 216.701ms | Avg rtt: 216.701ms Raw packets sent: 2 (56B) | Rcvd: 1 (1.498KB) |
Lost: 1 (50.00%) Nping done: 1 IP address pinged in 1.40 seconds

Please, add native support for those checks to simple checks and agent checks

 



 Comments   
Comment by Alex Kalimulin [ 2021 Jun 02 ]

There is no universal way to do a generic ping over UDP that would work in all cases. UDP is a connectionless protocol that, in contrast with TCP, does not provide any kinds of delivery confirmations.

When a client sends a UDP packet to some port, the packet gets delivered to the target OS which in turn checks whether there is a listener process registered in the OS. If there is then the packet gets delivered to the process which is free to either respond or keep silence, depending on the application logic. If there is no listener process, then the packet gets discarded and the OS sends back ICMP packet “port unreachable”.

In theory, one can tell the UDP port is closed by checking such ICMP responses. In practice, however, firewalled environments just block such packets more often than not.

Utilities, like nping —udp just send UDP packets and hope for the best. You can rely on their results only when you either know for sure that ICMP packets are always delivered from your target to the sender or know that the application does always immediately respond to UDP requests with some response.





[ZBXNEXT-6476] Discovering aggregated interfaces on AIX Created: 2021 Jan 28  Updated: 2021 Apr 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Andris Mednis
Resolution: Unresolved Votes: 3
Labels: agent, aix, solaris
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

IBM AIX, Oracle Solaris


Issue Links:
Duplicate

 Description   

Currently no aggregated interfaces are discovered with net.if.discovery on IBM AIX and Oracle Solaris systems.
The function is implemented using perfstat_netinterface():
https://www.ibm.com/support/knowledgecenter/en/ssw_aix_72/performancetools/idprftools_perfstat_int_netint.html
And it simply does not support aggregated interfaces.

A request has now been sent to IBM about the availability of alternative methods to get this information

Depending on the answer, we expect either the corresponding functionality in the next upgrade =) or add a note to the documentation on the current state of affairs.



 Comments   
Comment by Vladimir Kostornoy [ 2021 Apr 01 ]

As far as I understand, statistics for aggregated interface (EtherChannel on AIX / aggr on Solaris) are collected, but there is no possibilities to check load of every single port inside aggregated interface.





[ZBXNEXT-6422] LLD override to select different Host group Created: 2021 Jan 06  Updated: 2023 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2021-01-06-20-06-47-654.png    
Issue Links:
Sub-task

 Description   

In 5.2, per host prototype functionality we have overrides:

It would be very useful to have an option to classify nodes into different host groups too.






[ZBXNEXT-8053] The word "Graph" is missing from the documentation Created: 2022 Oct 19  Updated: 2022 Oct 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Documentation (D)
Affects Version/s: 6.0.8, 6.0.9, 6.2.2, 6.2.3, 6.4.0alpha1, 6.4.0beta1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Yaron Shahrabani Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

https://git.zabbix.com/projects/WEB/repos/documentation/browse/en/manual/api/reference/graph.md?useDefaultHandler=true#4

 

The word "graph" is missing before the word "item".






[ZBXNEXT-7960] Increase the length of trigger title Created: 2022 Sep 05  Updated: 2023 Oct 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.8
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 4
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-09-05-13-18-57-342.png    
Issue Links:
Sub-task

 Description   

After the LLD rules executes in, if the trigger title reaches over 256 characters, then LLD cannot create it and says:

Cannot update trigger: value "" too long

Real life example:

Cannot update trigger: value "/var/lib/lxc/core-abcdefg: Disk space is critically low (used > {$VFS.FS.PUSED.MAX.CRIT.LINUX:"/var/lib/lxc/core-abcdefg"}% and free < {$VFS.FS.FREE.MIN.CRIT.LINUX:"/var/lib/lxc/core-abcdefg"}, for more than {$VFS.FS.TIME.LINUX:"/var/lib/lxc/core-abcdefg"})" is too long.

If try to create the trigger manually (without LLD) then frontend automatically truncates the trigger title to 256 characters:

According to documentation, the trigger.description column can hold up to 2048 characters. So it looks like the database is not creating limitation, but process 'zabbix-server' or frontend.



 Comments   
Comment by Jeff [ 2023 Oct 04 ]

Arguably this isnt a CR, but in fact a bug.   Zabbix kubernetes monitoring is impacted by this problem due to long PVC mount names in trigger generation.  Please fix this issue.





[ZBXNEXT-7846] Calculate "all" on calculated items Created: 2022 Jul 08  Updated: 2022 Jul 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Leonardo Savoini Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: calculateditems
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When I create a new calculated item, I'd like to have an option to calculate all the values from the past.

This can be very useful when I'm creating items that then I'm going to use a trigger with trendstl functions, as I won't need to wait an entire week or more.






[ZBXNEXT-7845] Custom option in "Host availability" widget Created: 2022 Jul 08  Updated: 2023 Jul 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Leonardo Savoini Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-07-08-12-15-08-770.png    

 Description   

I would like to have an option to select a specific item that works as "Host Availability".
Example, I don't have all hosts with a zabbix agent or snmp items type, it's just a SaaS like an SQL server. I only do a database monitor item type.

Additionally, I'd like to see what hosts are not available. The widget it's just a number.



 Comments   
Comment by Zachariah A DeGraaf [ 2023 Jul 27 ]

I'm rather surprised that this issue hasn't gained more traction. With the ever expanding amount of things that can and should be monitored through an agentless API query, the more hosts Zabbix users are going to have that show up in the "Unknown" state because this feature is missing. In the Zabbix instance that I manage, most of our monitoring is done through API calls for hundreds of different devices, so the host availability widget is useless because of this missing feature. 

Comment by Leonardo Savoini [ 2023 Jul 28 ]

Indeed. I switched jobs, I moved to another country, and I still need this.





[ZBXNEXT-7823] Template modificaction replication Created: 2022 Jun 26  Updated: 2022 Jun 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Gustavo Guido Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Every modification done on the Template is replicated on every host.

When modifiying the update interval of an item, it will affect all iherited items in the hosts, we can avoid this by specifiyin a user macro in the update interval, but it can't be done when enabling or disabling the item.

Perhaps we can specify an option if we want this the modification to be replicated in the hosts. There are some that will always be replicated, like the key or name of the item, but others, not always is a desired bejavor






[ZBXNEXT-8010] Increase Script filed size for Media Types Created: 2022 Oct 03  Updated: 2022 Oct 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

For now we have limit for JS script size for Media Type - 65535 characters.
This limit goes from DB field type TEXT. It will be nice if we have more than 65 Kb of JS for this field.






[ZBXNEXT-8006] improve fpm support Created: 2022 Sep 27  Updated: 2022 Sep 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Installation (I)
Affects Version/s: 6.0.9
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Harri Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 11



 Description   

Hi folks,

using fpm for zabbix is actually pretty easy. Something like this will do

apt install php7.4-fpm
a2dismod php7.4
a2enconf php7.4-fpm
a2enmod proxy_fcgi
a2dismod mpm_prefork
a2enmod mpm_event
a2enmod http2
systemctl restart apache2

Problem is, all the php options set in zabbix-frontend-php.conf are lost, since the mod_php7 module is not in anymore.

Zabbix lacks a modular approach to set the lost options for both mod_php and fpm, making sure they are not lost on the next major Zabbix or PHP upgrade.



 Comments   
Comment by Harri [ 2022 Sep 27 ]

PS: A non-modular approach could be to add a file /etc/php/7.4/fpm/pool.d/zabbix.conf:

php_value[max_execution_time] = 300
php_value[memory_limit] = 4096M
php_value[post_max_size] = 256M
php_value[upload_max_filesize] = 4M
php_value[max_input_time] = 300
php_value[date.timezone] = "CET"

and to restart the php7.4-fpm service.





[ZBXNEXT-7954] Dashboard preview page with thumbnails Created: 2022 Sep 02  Updated: 2022 Sep 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Dmitrijs Lamberts Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: dashboard
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When having many dashboards it is very complicated to understand which is what.
Relying only on dashboard names may be inconvenient.
Would be much better to have "all dashboards" page with preview thumbnails






[ZBXNEXT-7941] Support different Vault secret backend (e.g. database, ad) Created: 2022 Aug 25  Updated: 2022 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.2.2rc1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Jim Tarpley Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It would be nice to be able to lookup secrets from the more robust secret engines in HashiCorp Vault, like the database and ad engines.  We allow HashiCorp Vault to rotate our database passwords and lazy rotation of Active Directory service account passwords.  I have a workaround to this, but it is not desirable because it adds complexity.

One possible implementation would be to allow for looking up a raw path, instead of parsing the path into <mount-point>/data/<remaining-path>.






[ZBXNEXT-7905] Splunk integration Created: 2022 Aug 09  Updated: 2022 Aug 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It will be nice to have official Splunk integration.






[ZBXNEXT-7801] not supported items from Zabbix server/proxy health templates Created: 2022 Jun 15  Updated: 2022 Jun 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S), Templates (T)
Affects Version/s: 6.0.5
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Richard Ostrochovský Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Just an idea for consideration:

Various monitoring sub-processes are not being started by default and monitoring of their utilization from default Zabbix server/proxy health template produces not supported items, e.g.:

  • 1x IPMI manager
  • 1x IPMI poller
  • 1x Java poller
  • 1x SNMP trapper
  • 1x VMware collector
  • 1x report manager (server)
  • 1x report writer (server)
  • 1x service manager (server)

It is clear, items can be disabled in such case (workaround), but with the risk, they will be forgotten to be re-enabled after those processes later enabled+started. (Secondarily, disabled items may be also unwantedly re-enabled on some cases.)

Please, consider addition of "Check for not supported value" preprocessing step into those items in OOB templates, returning 0% utilization when not supported.

Secondarily, there could be also items monitoring numbers of running instances of all monitored sub-processes by OOB Zabbix server/proxy health (with zero considered as valid value), with triggers reacting on their changes.

Thank you in advance for consideration.

Related ticket: ZBX-21210.



 Comments   
Comment by Richard Ostrochovský [ 2022 Jun 15 ]

Andris Zeila, the same for following sub-processes on passive proxies:

  • configuration syncer
  • data sender
  • heartbeat sender




[ZBXNEXT-8345] SNMP template for linux, no memory data Created: 2023 Mar 15  Updated: 2023 Mar 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Bernardo Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

No able to verify memory due below to value are no valid, I have 88servers affected
last(//vm.memory.buffers[memBuffer.0])
last(//vm.memory.cached[memCached.0])






[ZBXNEXT-8182] Possibility to access Windows Log metadatas in preprocessing Created: 2022 Dec 28  Updated: 2023 Oct 09

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.0.12
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Constantin Oshmyan Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

First of all, our use case.
We use Zabbix for monitoring our Windows servers. So, our template includes items like the following:

eventlog[Application,,"Warning|Error|Critical",,,100,skip]
eventlog[System,,"Warning|Error|Critical",,,100,skip]

The main idea is to inform the appropriate person about any significant messages in Windows Event Log.
The main problem is to define the term "significant message" technically, because:

  • there are some messages with level=Error that could be safely ignored;
  • there are some messages with level=Warning that really are very important (for example, messages from a RAID Controller about a failed disk).

So, in practice our trigger expressions are complex enough. Often they have logic like the following:

IF (
  (level=Error OR level=Critical)
  AND
    NOT (source='Source1' AND eventid='1111') //ignore errors with id=1111 from Source1
  AND
    NOT (source='Source2' AND eventid='2222') //ignore errors with id=2222 from Source2
  AND
    NOT (source='Source3' AND eventid='3333') //ignore errors with id=3333 from Source3
[...]
) OR (
  level=Warning
  AND (
    (source='SourceX' AND eventid='XXXX') //accept warnings with id=XXXX from SourceX
    OR
    (source='SourceY' AND eventid='YYYY') //accept warnings with id=YYYY from SourceY
  )
)

It could be great if some of this logic be available in preprocessing: for example, if (source='Source1' AND eventid='1111') then just discard a value. It could dramatically simplify our trigger expressions.

Unfortunately, at the moment all these Event Log's metadata (EventID, Source, Severity, original timestamp) could not be accessible during a preprocessing stage.

There could be different approaches to implement these checks, for example - make the system macros {ITEM.LOG.*<1-9>} ({ITEM.LOG.EVENTID}, {ITEM.LOG.NSEVERITY}, {ITEM.LOG.SOURCE}) available during preprocessing; or some functions like logeventid()/logseverity()/logsource() available in JavaScript.

 



 Comments   
Comment by Constantin Oshmyan [ 2023 Oct 09 ]

Just note: alexei, it's one of the issues we discussed on the Zabbix Summit 2023





[ZBXNEXT-8136] Azure by HTTP, Certificate-based authentication Created: 2022 Dec 05  Updated: 2023 Jan 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Extending the authentication possibilities of the current Azure by HTTP monitoring template with certificate-based authentication as described here, could provide additional level of the data security in monitoring.






[ZBXNEXT-8715] Ability to expand Graph prototypes widget to scroll over them but not to click next Created: 2023 Sep 20  Updated: 2023 Sep 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.21
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: graphprototypes, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Now you can set number of Columns and Rows to show:
While the Columns and Rows settings allow fitting more than one graph in the widget, there still may be more discovered graphs than there are columns/rows in the widget. In this case paging becomes available in the widget and a slide-up header allows to switch between pages using the left and right arrows.

It will be much comfortable to set it to “expand all”, so it is possible to view all graphs by scrolling down, instead of needing to click next.

Regards






[ZBXNEXT-8712] Allow use CControllerTimeSelector in frontend modules Created: 2023 Sep 19  Updated: 2023 Sep 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.4.6, 7.0.0alpha4
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Alexey Pustovalov Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: modules, timeselector
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently CControllerTimeSelector is not allowed to use in modules, because places where from it is possible to use timeselector are defined in CControllerTimeSelectorUpdate:

        public static $profiles = ['web.dashboard.filter', 'web.charts.filter', 'web.httpdetails.filter',
                'web.problem.filter', 'web.auditlog.filter', 'web.actionlog.filter', 'web.item.graph.filter',
                'web.toptriggers.filter', 'web.avail_report.filter', CControllerHost::FILTER_IDX, CControllerProblem::FILTER_IDX
        ];





[ZBXNEXT-8717] Search items by specific data Created: 2023 Sep 20  Updated: 2023 Sep 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.20
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Sergejs Pavlovs Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-09-20-15-29-07-761.png    

 Description   

At the moment there is no possibility to find items using extra filtering, e.g. there is no way to see items with "Update interval" less than 10m or "History" larger than 365d. You can specify only concrete time, e.g. 10m, 365d etc.
Would be good to have functionality to search by expression, e.g. write in "Update interval" field "<10m".
As well, when you add non-relevant data to "History", "Trends", "Update interval" fields, e.g. just write "GiB" and click "Apply", there is no error from frontend that fields are filled incorrectly.






[ZBXNEXT-8940] Need an icon to indicate that problem has a description Created: 2023 Aug 14  Updated: 2024 Jan 17

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Alex Kalimulin
Resolution: Unresolved Votes: 2
Labels: problemwidget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Team: Team C
Sprint: Sprint candidates

 Description   

Unlike the Monitoring → Problems screen, there are no hints on the widget that any of their problems has any comment (Description) at all.
An additional icon indicating URL\description presence will be very helpfull

There is no hint about this feature for the problem widget for versions <=6.2. Please add this on documentation page too






[ZBXNEXT-8047] Display trigger description when mouseover a trigger in trigger prototype screen Created: 2022 Oct 18  Updated: 2022 Oct 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Pr2 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hello,

I am widely using the template in Zabbix and in the Trigger prototypes I always add a description in the trigger that I create but I always need to open up the trigger to review the description.

Would be very usefull if when we mouseover a trigger, the description would be displayed in a bubble, so we can easily review them.

Kind regards






[ZBXNEXT-8039] Monitoring web services with ADFS authentication Created: 2022 Oct 13  Updated: 2022 Oct 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.2.2
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Dmitriy Bulankin Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We have a lot of web services in our company that we need to monitor, but for this we need to pass adfs authentication. I did not find in the web help how to implement this using the current functionality of zabbix. Can you please tell me if this is still possible or this feature will be planned in development?






[ZBXNEXT-7975] {HOST.PORT} macro location extend Created: 2022 Sep 16  Updated: 2022 Sep 16

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

For now {HOST.IP} or {HOST.DNS} macros are supported in more places rather then {HOST.PORT}.

Please allow to use {HOST.PORT} macro in same location as other connection related macros.






[ZBXNEXT-7918] Services weekly schedule first workday Created: 2022 Aug 16  Updated: 2023 Nov 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 6.0.7, 6.2.1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Unassigned
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently weekly schedule for services always calculates/shows SLA starting from Sunday.
It would be very useful to have possibility to configure first working day of the week to be i.e. Monday or any other



 Comments   
Comment by Andrey Kunitsyn [ 2023 Nov 26 ]

I join the request. Weekly schedule is unusable in the countries with other calendar standards.





[ZBXNEXT-7899] Add options for TAGs creation via LLD Created: 2022 Aug 03  Updated: 2022 Aug 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

It will be nice if some option will be added to tags creation via LLD.

For example we creating hosts from VM discovery and want to add tags to hosts.

In some case tag value can be empty and Zabbix should skip this tag. For now you will got empty tag. And if regsub or other function was used - you will got ugly empty tag.
In some case tag can be missed and Zabbix should create such host without tags. For now host will be not created and you got error in LLD.



 Comments   
Comment by dimir [ 2022 Aug 04 ]

Related issues ZBXNEXT-5467, ZBXNEXT-4514





[ZBXNEXT-8274] Add option to custom legend in graph Created: 2023 Feb 14  Updated: 2023 Feb 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Jakub Dolejší Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-02-14-17-58-46-630.png    

 Description   

Please consider an option for custom legends in graphs.

 

This option is in Cacti like for 10 years, it allows to add items to legend without drawing them to the graph and just simply print the item values. It's usable for any reference. 

Real life scenario is errors on wireless link (ber). It gives a cumulative number from SNMP, so in Zabbix it's only possible to print the value to graph (which does not make sense) or use simple change preprocessing function, but there is no way how to print the "Total errors" value in legend.

 

In attachment is like it works in Cacti. Total errors are printed as a label in legend and graph is empty, because they were no errors today.






[ZBXNEXT-8229] We have flexible warning logic for LLD, but there is no way to get alerts on warnings as they don't generate internal events Created: 2023 Jan 26  Updated: 2023 Jan 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.2.6
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: lld
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

In Zabbix >6.2.5 we have flexible warning logic that allows to keep LLD rule supported and show warnings in case if there are problems with macros (missing or duplicate for example)
https://www.zabbix.com/documentation/current/en/manual/discovery/low_level_discovery#filter
But there is no option to get notifications in case if any LLD rule gets such warnings as it is still supported and no internal event is created

Some internal event is needed (or any other mechanism) to be able to get notifications for LLDs with warnings

Regards, Elina






[ZBXNEXT-8267] Body Parameters Accepted in Query Created: 2023 Feb 10  Updated: 2023 Feb 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.44, 5.0.31, 6.0.13, 6.4.0rc1
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: api, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hi,
Zabbix web is designed to accept body parameters in the query. That is insecure and automatic vulnerability scanners react to it

Risk:
It is possible to gather sensitive information about the web application such as usernames, passwords, machine name and/or sensitive filelocations
It is possible to persuade a naive user to supply sensitive information such as username, password, credit card number, social securitynumber etc.
GET requests are designed to query the server, while POST requests are for submitting data.
However, aside from the technical purpose, attacking query parameters is easier than body parameters, because sending a link to the originalsite, or posting it in a blog or comment, is easier and has better results than the alternative - in order to attack a request with bodyparameters, an attacker would need to create a page containing a form that will be submitted when visited by the victim.It is a lot harder to convince the victim to visit a page that he doesn't know, than letting him visit the original site. It it therefore notrecommended to support body parameters that arrive in the query string.





[ZBXNEXT-8268] Cookie with Insecure or Improper or Missing SameSite attribute Created: 2023 Feb 10  Updated: 2023 Feb 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.44, 5.0.31, 6.0.13, 6.2.7, 6.4.0rc1
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: frontend, security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Hi,
on login Zabbix return a sessionid in a cookie with no additional security attributes.

The response contains Sensitive Cookie with Insecure or Improper or Missing SameSite attribute, which may lead toCookie information leakage, which may extend to Cross-Site-Request-Forgery(CSRF) attacks if there are no additionalprotections in place.





[ZBXNEXT-8221] Reload agent configuration without restarting a service Created: 2023 Jan 20  Updated: 2023 Nov 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 6.0.12
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

When using Zabbix agent with certificates, when certificate changes, it requires an agent restart to pick up a new certificate. To keep the environment very secure (3 months retention period for certificate), it's mandatory to restart the agent multiple times per year.

It would be a great functionality to:

1) Allow the runtime command for the agent to reload a config without rebooting the service

and/or

2) Develop a task inside the user interface (similar as "Check now" button) to reload the configuration cache remotely. "Check Now" currently is supported via passive checks only.

We can headline this feature request as "Decrease the maintenance cost for very secure environments".



 Comments   
Comment by Alex Kalimulin [ 2023 Jan 20 ]

Closely related but not the same: ZBXNEXT-3162





[ZBXNEXT-8172] Ability to use {PROXY.NAME<1-9>} macro as key parameter Created: 2022 Dec 22  Updated: 2022 Dec 22

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksandrs Petrovs-Gavrilovs Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Dear Developers!
Please, consider adding a possibility to use

{PROXY.NAME<1-9>} 

macro as an item key parameter value. To increase the flexibility of script best sender items in Zabbix.






[ZBXNEXT-8017] Automatically add <br> for the CRLF in description in html e-mail Created: 2022 Oct 07  Updated: 2022 Oct 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Pr2 Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 6.0.9



 Description   

Hello,

I switch my e-mail notification from standard text to html e-mail.

In every triggers (and items) I add a description with commands to launch to retrieve the error or the script to launch to help troubleshooting the problems.

So in the description in the trigger I user CRLF to have a clear and readable text but when the description is sent in the html e-mail the CRLF should normally be converted into

<br>

So the explanation that I set in the description field is less readable than into Zabbix GUI because everything is turned into one line.

So would be very convenient if Zabbix would be smart enough to convert the description (items or trigger) into its html compatible format when we choose to send and html e-mail using the:

{HOST.DESCRIPTION}
{ITEM.DESCRIPTION}
{TRIGGER.DESCRIPTION}
...

 

I guess that some special characters should also be converted by this future smart text-to-html convertor.

Thanks






[ZBXNEXT-8025] Meaningful timestamps on axis in vector graph Created: 2022 Oct 10  Updated: 2022 Oct 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.2.3
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Valdis Murzins Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: axis, graph, time, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In graph widget timestamps would be easier to read, if they would be displayed at rounded time. Similar to how it works in classical graph.






[ZBXNEXT-8024] Unique colors for all items in same dataset Created: 2022 Oct 10  Updated: 2022 Oct 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.2.3
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Valdis Murzins Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: colors, graph, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In graph widget when selecting multiple items in single dataset by item pattern wildcard, I want all items to have unique colors.






[ZBXNEXT-7938] Add dynamic url widget to templated dashboards Created: 2022 Aug 25  Updated: 2022 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Norbert Püschel Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: dashboard, macros, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Dashboards



 Description   

Currently, only non-dynamic url widgets are allowed in templated dashboards. That it is quite useless, as there seems to be no way to put the name of the host the template is attached to in the called url - and a templated dashboard is used to display host-specific information.

The solution is easy: add the dynamic url option to templated dashboards and auto-select the host the template is attached to as the selected host for the dashboard, so that the HOST.*-macros evaluate correctly. Should be pretty trivial.

Also see my suggestion ZBXNEXT-7937 for extended macro support in dynamic url widgets which should apply to templated dashboards as well. For a templated dashboard, template macros would need to be evaluated in addition to host and global user macros.






[ZBXNEXT-7937] Add additional macros for Dynamic URL widgets Created: 2022 Aug 25  Updated: 2022 Aug 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Norbert Püschel Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: dashboard, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Dashboards; Dynamic URL widget



 Description   

Dynamic URL widgets could be made much more useful if we could get more macros interpreted in the url attribute of the widget. Currently, HOST.*-Macros are evaluated. What should be added:

  • User macros (from selected host, if any is selected; global user macros otherwise)
  • Possibly expression macros (might be too complicated)
  • New dashboard specific macros that give the currently selected time range for the dashboard, e.g. calling them {DASHBOARD.FROM} and {DASHBOARD.TO}. They could contain the selected range as unix timestamps, which is easily evaluated in a called web page e.g. with php.

Consequently, the error message "no host selected" should not be shown for dynamic url widgets that do not use HOST.*macros but only User and Dashboard-Macros.






[ZBXNEXT-7890] Latest Data Widget Created: 2022 Jul 29  Updated: 2023 Apr 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Leonardo Savoini Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Very simple. Show latest data, with filters, in a dashboard widget.
So, it would be possible to see the value for several matching items from different hosts.

It's plus, if it can be sorted by value, and also have the TOP widget with this feature to dynamically get all items needed.

Thanks



 Comments   
Comment by Alex Kalimulin [ 2023 Apr 05 ]

Almost a duplicate of ZBXNEXT-6806. Not closing this one because of the smaller scope.





[ZBXNEXT-7876] extend "oracle.ts.discovery" key output to include SEGMENT_SPACE_MANAGEMENT as additional LLD macro Created: 2022 Jul 20  Updated: 2023 Jan 19

Status: Need info
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent2 plugin (N)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Oleksii Zagorskyi Assignee: Eriks Sneiders
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Team: Team INT

 Description   

https://www.zabbix.com/documentation/6.0/en/manual/config/items/itemtypes/zabbix_agent/zabbix_agent2#oracle

Some may need to monitor only table spaces, created with MANUAL extent, not AUTO.
It would be nice to include the property to the existing LLD key to be able to use it in filters.

We probably need to alter just one SQL query in this source file https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/src/go/plugins/oracle/handler_tablespaces_discovery.go

Some external links about the topic:

http://www.dba-oracle.com/oracle_tips_mamt_segment_management.htm

https://oracle-base.com/articles/9i/automatic-segment-free-space-management

 






[ZBXNEXT-8131] Add ability to Suppress / Hide metrics with all 0 values in Graph Widget Created: 2022 Dec 02  Updated: 2022 Dec 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.10
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Ryan Eberly Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-12-01-21-22-59-779.png    

 Description   

I recently had some users ask if it was possible to hide items in the graph widget if the values for that item were all 0. Their use case made sense and it seems that Grafana and Kibana have this feature out of the box. It does appear to have some utility. I looked through the code and was able to create a mock-up that is also functional. I haven't submitted a pull request because I'm not sure that my changes fully fit the Zabbix coding style. But I've attached a screenshot of what it could look like along with the changes to the frontend code. Could this be implemented?

 

 
include/classes/widgets/forms/CWidgetFormSvgGraph.php
63                 $field_exclude_zeros = (new CWidgetFieldCheckBox('suppress_zero_values', _('Suppress Zero Values')))->setDefault(SVG_GRAPH_SUPPRESS_ZEROS_FALSE);
 64
 65                 if (array_key_exists('suppress_zero_values', $this->data))

{  66                         $field_exclude_zeros->setValue($this->data['suppress_zero_values']);  67                 }

 68
 69                 $this->fields[$field_exclude_zeros->getName()] = $field_exclude_zeros;
 
 
include/classes/helpers/CSvgGraphHelper.php
62                 if ($options['suppress_zero_values'] == SVG_GRAPH_SUPPRESS_ZEROS_TRUE) {
 63                         foreach ($metrics as $data => $metric) {
 64                                 $all_zero = true;
 65                                 foreach ($metric['points'] as $point) {
 66                                         if (array_key_exists('value', $point)) {
 67                                                 if ($point['value'] != 0 && $point['value'] != 0.0)

{  68                                                         $all_zero = false;  69                                                         break;  70                                                 }

 71                                         }
 72                                 }
 73                                 if ($all_zero)

{  74                                         unset($metrics[$data]);  75                                 }

 76                         }
 77                 }
 
 
include/classes/widgets/views/widget.svggraph.form.view.php216 $tab_displaying_opt = (new CFormList())
217         ->addRow(CWidgetHelper::getLabel($fields['source'], null,
218                                         "when choosing 'Trends', aggregation interval must be minimum of 1h if using aggregation functions"),
219                 CWidgetHelper::getRadioButtonList($fields['source'], $form_name)
220         )
221         ->addRow(CWidgetHelper::getLabel($fields['suppress_zero_values'], null,
222                                         "selecting this option will remove metrics where all values are 0 for the selected time-picker period"),
223                 CWidgetHelper::getCheckBox($fields['suppress_zero_values'])

224         );
 
 
include/defines.inc.php
define('SVG_GRAPH_SUPPRESS_ZEROS_TRUE',     1);
define('SVG_GRAPH_SUPPRESS_ZEROS_FALSE',    0);
 
 
app/controllers/CControllerWidgetSvgGraphView.php
63                         'suppress_zero_values' => $fields['suppress_zero_values'],
 
 
js/class.tab-indicators.js
1233 class GraphOptionsTabIndicatorItem extends TabIndicatorItem {
1234
1235         constructor()

{ 1236                 super(TAB_INDICATOR_TYPE_MARK); 1237         }

1238
1239         getValue() {
1240                 const element = document.querySelector("[name='source']:checked");
1241                 const suppress_zero_values = document.getElementById('suppress_zero_values');
1242
1243                 if (element !== null && element.value > 0)

{ 1244                         return true; 1245                 }

1246
1247                 if (suppress_zero_values !== null && suppress_zero_values.checked)

{ 1248                         return true; 1249                 }

1250
1251                 return false;
1252         }
1253
1254         initObserver() {
1255                 document.getElementById('tabs').addEventListener(TAB_INDICATOR_UPDATE_EVENT, () =>

{ 1256                         this.addAttributes(); 1257                 }

);
1258         }
 






[ZBXNEXT-8335] Incorrect naming of "matches" field in LLD overrides Created: 2023 Mar 08  Updated: 2023 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Nathan Liefting Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: filter, lld, override, overrides, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-03-08-14-39-52-993.png     PNG File image-2023-03-08-14-39-57-121.png     PNG File image-2023-03-08-15-29-56-313.png    

 Description   

Hi Zabbix devs,

 

I noticed an inconsistency in the overrides. Equals and Contains use "pattern". Which is correct:

 

For Matches however this should be "regular expression":

Just as we see on the filter:

 

In my opinion a bug/issue report, but I'll make it as a ZBXNext Will improve the user experience with a quick fix.






[ZBXNEXT-8337] Proxy should be attribute of host interface, not the host Created: 2023 Mar 08  Updated: 2023 Mar 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P), Server (S)
Affects Version/s: 6.2.7, 6.4.0
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Norbert Püschel Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: interfaces, proxy
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix Server; Proxy



 Description   

Currently, the proxy settings is attached to the host. But it should be an attribute of the interface. Example: I have an environment, where we also check the reachability of WAN routers. In order to do that form both sides of the connection, we currently need to create two hosts with different proxy settings. But logically it should be one host with two interfaces and different proxies for the interfaces.






[ZBXNEXT-7739] Possibility to add host discovered with host prototypes to an existing group via group prototype Created: 2022 May 24  Updated: 2022 Jun 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.4
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Cristian Mammoli Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by ZBX-21162 Issue with monitoring multiple kubern... Closed

 Description   

See: https://support.zabbix.com/browse/ZBXNEXT-7523

It's actually not possible to use an existing group as a group prototype for discovered hosts

The item errors with "group with the same name XXX already exists."

 






[ZBXNEXT-7740] Allow host discovered with host prototypes to inherit the group of the parent host Created: 2022 May 24  Updated: 2022 May 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.4
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Cristian Mammoli Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Currently it's a pain to assign host groups dinamically to discovered hosts.

The most logical option IMHO is actually missing:

Inherit Host groups from the parent host, which most of the time is the most logical solution

 






[ZBXNEXT-7738] Possibility to add additional interfaces to hosts created from host prototypes Created: 2022 May 24  Updated: 2022 Oct 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 6.0.4
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Cristian Mammoli Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Very similar to ZBXNEXT-7523

Sometimes it is not possible to add custom interface via Host prototypes. An example is adding an IPMI interface to a host discovered via the official VMware template

Obviously the IPMI interface will have a different IP address than the Hypervisor, and it's not discover it automatically



 Comments   
Comment by justin [ 2022 Sep 01 ]

I would also find it useful to have the ability to add an interface to a vmware discovered host.  For example, I can add a template to the host after its been discovered, but if that template requires JMX polling its still no use.

Comment by Dan Mills [ 2022 Oct 12 ]

Yes we recently gained the ability to add templates to discovered hosts, but I'd like to also add extra interfaces. Like the example above after ESXi hosts are discovered I'd like to be able to add an IPMI interface, right now I have to have separate hosts just to monitor the IPMI.





[ZBXNEXT-7764] User Role (type user) and user's media configuration Created: 2022 Jun 02  Updated: 2022 Jun 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.4
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Verde Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

production



 Description   

when a role is created as a user type "User", the users on that role don't have the option to customize/add/change their email.

It would be good that Admin users can enable or disable (per user) what users (on user-roles) could edit their own media configuration.

 

 



 Comments   
Comment by Ivan Vanyushkin [ 2022 Jun 24 ]

Related: ZBXNEXT-7588





[ZBXNEXT-7735] Geomap, blinkling marker when a new problem is created similar to 'problem created' style Created: 2022 May 22  Updated: 2022 Jul 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Verde Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: geomap, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi.
when there're a lot of hosts monitored on geomap widget (let's say 100) and many of them have problems, it's not easy to quickly identify the latest hosts that have changed their severity from "no problem" to a new problem severity.

It would be good to have the blinking effect for some seconds on the host markers when a new problem is created or its problem status changes; similar to 'problem resolved' style that blinks for x seconds only on recent problem status changes. If the status doesn't change the marker shouldn't blink.

Regards






[ZBXNEXT-7766] Add search by graphs Created: 2022 Jun 03  Updated: 2022 Jun 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.5
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Yevgeniy Boryashkin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: Graph, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In some situations there are many graphs and many hosts. Every graph can have special ID in your name. I would propose to add search by graph, but not regardless of device.






[ZBXNEXT-7784] Add new option to Proxy - Clear the database Created: 2022 Jun 09  Updated: 2022 Jun 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Proxy (P)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Andris Zeila
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It will be nice to have built-in option in Proxy to clear database at startup.

This can be helpful in case if you are using Proxy in HA setup. Thus will help you to avoid situation when Proxy start after failover with old data in database.






[ZBXNEXT-7660] Enable Scheduling intervals for Web monitoring items Created: 2022 Apr 28  Updated: 2022 Apr 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Victor Breda Credidio Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Hi.

It would be interesting to have the option of scheduling checks for Web Monitoring, instead of only relying on "Update interval".






[ZBXNEXT-7623] Change default network map icon Created: 2022 Apr 11  Updated: 2022 Apr 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-04-11-21-21-29-406.png     PNG File image-2022-04-11-21-22-58-576.png    

 Description   

We already have nice icons in our presentations but default icon for network map seems comes from 2000's.

Icons from slides:

Icon from maps:






[ZBXNEXT-7621] New interface type Created: 2022 Apr 11  Updated: 2022 May 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Please add new interface type for Hosts - range of IP addresses or Subnet.

This interface can be used, for example, for SNMP Traps to aggregate all traps from Subnet in one hosts.






[ZBXNEXT-7584] Disable automatic database update Created: 2022 Mar 25  Updated: 2022 Mar 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Andris Zeila
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It well be nice to disable automatic database update and implement new runtime parameter for same.






[ZBXNEXT-7430] Implement validation for PSK and PSK identity fields in Frontend Created: 2022 Jan 18  Updated: 2022 Jan 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: 5.4.9
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

It will by nice to have validation for PSK and PSK identity fields in Frontend.

For now we only have this warning in documentation:

Each PSK identity must be paired with only one value. It is the user's responsibility to ensure that there are no two PSKs with the same identity string but different values. Failing to do so may lead to unpredictable disruptions of communication between Zabbix components using PSKs with this PSK identity string

But since this information stored in configuration cache and database - we can check what user want to insert and  don't allow user use same  PSK and PSK identity for more then one host.






[ZBXNEXT-7407] Allow a simple user to create new Host Groups Created: 2022 Jan 07  Updated: 2022 Jan 28

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 5.4.9, 6.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Host groups can be made only through 'Zabbix Super Admin' user type, not 'Zabbix Admin', not 'Zabbix User'

Kindly allow user type 'Zabbix User' to create host group.



 Comments   
Comment by Alexander Vladishev [ 2022 Jan 28 ]

It doesn't make sense, because only a "Zabbix Super Admin" can assign rights to host groups. New host groups created by "Zabbix user" or "Zabbix admin" will not be available to them. 





[ZBXNEXT-7039] Add Zabbix to Windows Package Manager Created: 2021 Nov 09  Updated: 2023 Jun 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Unassigned
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Windows Package Manager (aka winget) it new Windows feature that allow you install programs in Linux way.

It will by cool if we can add at least Zabbix Agent to this system.



 Comments   
Comment by Kristian Taylor [ 2023 Jun 14 ]

yes please pretty please!





[ZBXNEXT-6995] Insert timeperiod parameters to simple graph URL Created: 2021 Oct 12  Updated: 2024 Jan 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.16
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Khatsayuk Alexander Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: frontend, simplegraphs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File latest_data_after.PNG     PNG File latest_data_before.PNG    

 Description   

Hi, Zabbix Team!

I'd like to suggest to implement next feature. In latest data, when using simple graph and set some time period in selector, URL doesn't contains parameters about it, like "&from=now-1h&to=now". But generally it works - if we adjust it manually in URL it starts to work every next time when choosing another one period.

  • Open simple graph, choose some time period in selector
  • Look at URL - it doesn't contais time period parameters
  • Set it manually by typing e.g. "&from=now-1h&to=now"
  • Chose another one time period in selector - URL time period params will change

The feature will help to share simple graph with other users in more friendly way.



 Comments   
Comment by GOID [ 2023 Apr 25 ]

URL editing tested on Zabbix 6.0.15 - works fine! Thanks

Comment by dimir [ 2024 Jan 18 ]

ZBX-23955 reports missing time period parameters in the Dashboard URL as a bug.





[ZBXNEXT-7433] higher limits for text values from LLD prototypes Created: 2022 Jan 19  Updated: 2022 Jan 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 5.4.9
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Richard Ostrochovský Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

ZBX 5.4.9, TimescaleDB



 Description   

Value too long errors in discovery rule info, e.g. from RabbitMQ monitoring.

Graph names, trigger names, ... e.g.:

Cannot create graph: value "RabbitMQ: Queue looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong: Messages status" is too long.





[ZBXNEXT-7432] Weight/order of tags Created: 2022 Jan 19  Updated: 2022 Jan 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.4.9, 6.0.0beta3
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File tag-name-none.png    
Issue Links:
Sub-task

 Description   

There is a functionality when printing only tag values:

We could have things like this:

87654 Germany High SQL Stuttgart
45980 Apache Low Poland Warszawa 

When the required order is this:

Germany Stuttgart SQL 87654 High
Poland Warszawa Apache 45980 Low 

Please add the functionality to install a weight of tag which will represent the order.






[ZBXNEXT-7135] Allow map elements to be copy pasted Created: 2021 Dec 20  Updated: 2021 Dec 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Ivo Silins Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Please add copy pasting map elements to majorly speed up the process of adding a bunch of similar hosts that are almost identical - to eliminate repetetiveness. 






[ZBXNEXT-7094] Create extra configuration option for zabbix_sender Created: 2021 Dec 02  Updated: 2021 Dec 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 5.4.8
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Florain Schmaus Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Right now, zabbix_sender is coupled with Zabbix agent 1. That means, the zabbix_sender binary is only build if --enable-agent is passed to the configure script. This also means that I have to set USE="agent" on my Gentoo machines, even though I just want to use zabbix_sender with agent 2. Please consider further decoupling zabbix_sender from agent 1, so that it can be enabled independently.






[ZBXNEXT-7046] Add new internal Action "Action status Failed" Created: 2021 Nov 12  Updated: 2021 Nov 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

We already have 3 internal action, but it will by nice to add new one "Action status Failed".

This is super important to know what something wrong with your actions.






[ZBXNEXT-7048] Rework how `config` table works in mysql database Created: 2021 Nov 12  Updated: 2023 Mar 28

Status: Reopened
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Jurijs Klopovskis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBXNEXT-3706 mysql utf8 vs utf8mb4 Closed

 Description   

DB table `config` stores everything in a single row. This poses an issue with mysql limitations on maximum row size. https://dev.mysql.com/doc/mysql-reslimits-excerpt/8.0/en/column-count-limit.html#row-size-limits

In particular:

The internal representation of a MySQL table has a maximum row size limit of 65,535 bytes, even if the storage engine is capable of supporting larger rows. BLOB and TEXT columns only contribute 9 to 12 bytes toward the row size limit because their contents are stored separately from the rest of the row. 

We are reaching this limit with `config` table.

Propose to redesign the way we store data, that currently resides in `config` table, to eliminate this issue altogether.






[ZBXNEXT-7026] Windows Network Interface Discovery cannot create graphs when two interfaces of the same name exist Created: 2021 Oct 30  Updated: 2022 Oct 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: 5.4.7
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Jordan Barnartt Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2021-10-29-19-16-15-032.png    

 Description   

When applying the Windows network by Zabbix Agent template to a host with multiple network interfaces with the same alias (such as when the interfaces are teamed), the template is unable to create graphs for the interface, and an error is generated.

Like the item keys of the template, which have been updated to be created based on the interface GUID, the graph prototypes should also be updated to utilize the GUID so as to catch this use case.






[ZBXNEXT-6979] Option to escape special characters while expanding macros Created: 2021 Oct 08  Updated: 2023 Jun 06

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.16
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Andris Zeila
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

In trigger based action, while using custom script we may use:

script.sh "{HOST.HOST}" "{ITEM.KEY1}" "{ITEM.VALUE1}" "{TRIGGER.DESCRIPTION}"

Action will fail if:

1) Item 'key_' also contains double quotes like: input["input"]

2) Trigger title contains double quotes

3) A metric is some sort of XML/HTML text

A workaround sometimes is applicable - to use single quotes:

script.sh '{HOST.HOST}' '{ITEM.KEY1}' '{ITEM.VALUE1}' '{TRIGGER.DESCRIPTION}'

However, if '{ITEM.VALUE1}' will contains both single and double quotes, then the workaround will fail.

Please give a platform which allows to escape special characters while expanding trigger based macros.



 Comments   
Comment by Dirk Hilges [ 2022 Jan 10 ]

Hi all,
any news on this?

This seems to be a relative "urgent" issue, at least on our infra.
F.ex we received the error "Couldn't connect to server: Failed to connect to xx.xx.xx.xx port 443: No route to host"

The trigger was defined as "Bad response {ITEM.VALUE} for url https://xx.xx.xx.xx/xxxx"

 

Thus the command to send the alert to our external console ended with RC!=0 due to "Couldn't"

Failed to execute command "/opt/zabbix/scripts/send_to_omnibus.sh -h 'xx.xx.xx.xx' -s 0 -m 'Bad response Couldn't connect to server: Failed to connect to xx.xx.xx.xx port 443: No route to host for url https://xx.xx.xx.xx/xx' -t 'businessService:SE00222, category:https_internal, httpFQDN:xx.xx.xx.xx, supportGroup:IT-DID-DIDEB' -g 'IT-DID-DIDEB' -b 'SE00222' -r "zabbix" -e '231417' -o "zabbix2netcool_posteifmsg" -c '{EVENT.TAGS.msgCatalog}'": sh: -c: line 0: unexpected EOF while looking for matching `''

Comment by Fabian Vroom [ 2023 Mar 03 ]

Good afternoon,

I would also like to see this feature implemented. When using a JSON API with a script media type, if there are double quotes in any of the fields that are sent, the API returns an error. We are using the following json structure to integrate Zabbix into XSOAR:

<code>{"Name":"

{HOST.NAME}

- {EVENT.NAME}","labels":[{"type":"hostid","value":"

{HOST.ID}

"},{"type":"hostname","value":"

{HOST.HOST}

"},{"type":"hostIP","value":"

{IPADDRESS}

"},{"type":"hostDescription","value":"

{HOST.DESCRIPTION}

"},{"type":"triggerID","value":"

{TRIGGER.ID}

"},{"type":"triggerName","value":"

{TRIGGER.NAME}

"},{"type":"triggerSeverity","value":"

{TRIGGER.NSEVERITY}

"},{"type":"triggerStatus","value":"

{TRIGGER.STATUS}

"},{"type":"triggerURL","value":"

{TRIGGER.URL}

"},{"type":"triggerDescription","value":"

{TRIGGER.DESCRIPTION}

"},{"type":"triggerLastValue","value":"

{TRIGGER.KEY}.last(0)"},{"type":"triggerPreviousValue","value":"{TRIGGER.KEY}

.prev(0)"},{"type":"eventSeverity","value":"

{EVENT.SEVERITY}

"},{"type":"eventID","value":"

{EVENT.ID}

"},{"type":"eventDate","value":"

{EVENT.DATE}

"},{"type":"eventTime","value":"

{EVENT.TIME}"},{"type":"eventName","value":"{EVENT.NAME}"},{"type":"eventStatus","value":"{EVENT.STATUS}"},{"type":"eventTags","value":"{EVENT.TAGS}"},{"type":"eventTime","value":"{EVENT.TIME}

"}]}</code>

And in many cases the {TRIGGER.DESCRIPTION} or {HOST.DESCRIPTION} contain double quotes. Even if we sanitize all those fields, if any of our technicians update a description with a quote the integration will fail for all problems generated from the affected trigger or host.

Kind regards,

Fabian Vroom

Comment by Connor McBrine-Ellis [ 2023 Mar 09 ]

I have the same issue (Zabbix 6.0).  I have an trigger action created to forward alerts to Opsgenie, but it is failing due to single quotes in my trigger description.

I am using one of the built-in Zabbix templates, Juniper by SNMP, and I would expect that the built-in templates should work properly with trigger actions without needing any changes.

I don't see any way to escape these single quotes without editing the template.

Here is my script configuration:

/home/opsgenie/oec/opsgenie-zabbix/send2opsgenie -triggerName='{TRIGGER.NAME}' -triggerId='{TRIGGER.ID}' -triggerStatus='{TRIGGER.STATUS}' -triggerSeverity='{TRIGGER.SEVERITY}' -triggerDescription='{TRIGGER.DESCRIPTION}' -triggerUrl='{TRIGGER.URL}' -triggerValue='{TRIGGER.VALUE}' -triggerHostGroupName='{TRIGGER.HOSTGROUP.NAME}' -hostName='{HOST.NAME}' -ipAddress='{IPADDRESS}' -eventId='{EVENT.ID}' -date='{DATE}' -time='{TIME}' -itemKey='{ITEM.KEY}' -itemValue='{ITEM.VALUE}' -recoveryEventStatus='{EVENT.ACK.STATUS}' 

Here is a sample alert which is not working (with single quotes in the description):

DEVICENAME:/home/opsgenie/oec/opsgenie-zabbix/send2opsgenie -triggerName='Interface st0.1(IPSec tunnel): Link down' -triggerId='29991' -triggerStatus='OK' -triggerSeverity='Average' -triggerDescription='This trigger expression works as follows:
1. Can be triggered if operations status is down.
2. 1=1 - user can redefine Context macro to value - 0. That marks this interface as not important. No new trigger will be fired if this interface is down.
3. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.)

WARNING: if closed manually - won't fire again on next poll, because of .diff.' -triggerUrl='' -triggerValue='0' -triggerHostGroupName='Network' -hostName='DEVICENAME' -ipAddress='192.168.1.254' -eventId='577582' -date='2023.03.01' -time='22:22:22' -itemKey='net.if.status[ifOperStatus.609]' -itemValue='up (1)' -recoveryEventStatus='No' 

I get the following error:

sh: 6: Syntax error: "(" unexpected

Please let me know if there is any way to work around this, or if Zabbix can please fix this limitation.

Comment by Connor McBrine-Ellis [ 2023 Jun 02 ]

I found another post on Zabbix forum from 2018 which references the same issue.  https://www.zabbix.com/forum/zabbix-help/365084-how-to-handle-the-character-in-a-macro-that-is-used-in-an-action

Comment by Connor McBrine-Ellis [ 2023 Jun 06 ]

Update for myself... switching my single quotes around {TRIGGER.DESCRIPTION}

triggerDescription='{TRIGGER.DESCRIPTION}'

to

 

triggerDescription="{TRIGGER.DESCRIPTION}"

 

with double quotes seems to have worked around the problem I was having.  I imagine I may have an issue if my trigger description has double quotes though?  I'm not certain.

 

 

 

Comment by Dirk Hilges [ 2023 Jun 06 ]

Changing from single to double quote does not solve the issue. As you wrote, when the description has double quote inside the text, you will get the same error.

 

Anyway, there are other characters that may lead to this error also.

Comment by Connor McBrine-Ellis [ 2023 Jun 06 ]

Hey Dirk, using double quotes did resolve the issue for my particular situation.

However of course my problem wasn't exactly what was described in the issue description, but as I found out that bash only ignores special characters like parentheses if they're between double quotes, I just wanted to post my simple resolution here in case someone else came across my post from googling etc.

Would still appreciate it if Zabbix addresses this problem on a more fundamental basis  





[ZBXNEXT-7011] HashiCorp Vault Template for Zabbix 5.0 Created: 2021 Oct 20  Updated: 2021 Oct 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: 5.0.17
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Igor Gorbach Assignee: Anton Fayantsev (Inactive)
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Template HashiCorp Vault by HTTP available since Zabbix 5.2

Please, provide template with the same functionality, but for 5.0 LTS version

 






[ZBXNEXT-7716] Event enrichment, possible to add custom tags Created: 2022 May 13  Updated: 2022 Jul 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A), Frontend (F)
Affects Version/s: 6.0.4
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 3
Labels: correlation, tags
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Kindly create an API method to allow to attach new/custom event tags.






[ZBXNEXT-7649] Add possibility to sort hosts by triggers and items in Frontend Created: 2022 Apr 25  Updated: 2022 Apr 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-04-25-11-36-02-296.png    

 Description   

For now we can sort only by Name and Status.

It will be nice to add another options.
At leas items and triggers to quickly find largest hosts in Freontend






[ZBXNEXT-7543] Support "Process tags" from Media type "Script" Created: 2022 Mar 09  Updated: 2022 Mar 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 6.0.1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Andris Zeila
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File media-type-script.png     PNG File webhook-media-type-process-tags.png    
Issue Links:
Sub-task

 Description   

Currently, the framework for the Webhook media type allows to attach a tag from an external source (like ticketing system):

Webhook offers HTTP/HTTPS transport for communication. In order to communicate with database and extract "tag" we need more platform.

Please allow the "Script" media type to parse retrieved JSON (like tags array), therefore attach tags to the event:






[ZBXNEXT-7040] Add built in update function for Zabbix Agent for Windows Created: 2021 Nov 09  Updated: 2021 Nov 10

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Agent2 plugin (N)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Nowadays almost all Windows program can check it version and compare it with latest version on internet.

And after that they can suggest you for update, or even updated by himself.

It will by nice see to add this kind of function in Zabbix Agent on Windows.






[ZBXNEXT-7032] Hint with full length value in "Data overview" widget Created: 2021 Nov 04  Updated: 2021 Nov 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.4.7
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Alexey Pustovalov Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: dataoverview, usability, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently a value just truncated after 20 characters. It would be great to have the same behaviour like "Latest data": mouseover hint with full length value.



 Comments   
Comment by Dimitri Bellini [ 2021 Nov 05 ]

I would like to mention another ZBXNEXT that is equal to my request (ZBXNEXT-6924).
Thanks so much





[ZBXNEXT-7019] Copy Value mapping to other template, Zabbix 5.4+ Created: 2021 Oct 28  Updated: 2022 Apr 25

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.4.6
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File value-mapping-template-level-zabbix-5.4.png    

 Description   

Starting with 5.4 value mapping is stored in template level.

When a bunch of template modules are converted into a single template (by using "Unlink" functionality), value mapping is not copied.

It would be nice to have an option to copy value mapping similarly, like copying one item between template/host objects.

This block must have possibilities to distribute itself to other places:



 Comments   
Comment by Nathan Liefting [ 2022 Apr 25 ]

Definitely agree on this one. Manual copy is very tiresome.


So, went digging a bit deeper as I remember a discussion about this particular issue on #ZBXNEXT-5868. Copying over values is actually already supported using the mass update functionality.

 

Of course not very user friendly to have copying done in two different ways. I would propose a copy button on the value mapping page with the same functionality as is available in mass update.

 

Might be smart to revamp this a bit and focus on making it user friendly.


One more addition. Yes we can now copy over value mappings using the mass update functionality. But when unlinking a template, we still unlink the value mapping even though they are identical on a template level.

Still requires a LOT of extra manual labor compared to how it was before in Zabbix 5.2 and earlier and yes this is something we do a lot in general.





[ZBXNEXT-7007] High Available hosts monitoring Created: 2021 Oct 19  Updated: 2021 Oct 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We can create hosts with multiple interfaces of the same type.
We also have API methods to enable / disable metrics and hosts.

It would be nice to implement the ability to monitor HA using one of the following approaches:

  • Several hosts which are each responsible for their own part of the HA. And one virtual host that, based on some metric, activates and starts monitoring one of these hosts
  • One host with multiple interfaces and duplicated metrics.

The main idea is to give the user a tool for automatic monitoring and switching between active objects of scientific equipment.






[ZBXNEXT-6976] Ability to get information on trigger severity from Trigger Overview page even if there is no problem now Created: 2021 Oct 07  Updated: 2021 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: triggeroverview
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image (3).png    
Issue Links:
Duplicate

 Description   

Monitoring -> Overview -> Trigger Overview
If we don't is severity in filter and there is now problem for this trigger right now - there is no information on problem severity if this trigger fire.
That is, to find out whatseverity the accident can be there, you need to wait for this accident.
Also not everyone is aware of what color a particular severity has.



 Comments   
Comment by Elina Kuzyutkina (Inactive) [ 2021 Oct 08 ]

And for "Data overview" it will be usefull to include information for item key and delay





[ZBXNEXT-6972] Allow User Macros in Autoregistration Actions Created: 2021 Oct 07  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.0.16, 5.4.5, 6.0.0alpha4
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Andris Zeila
Resolution: Unresolved Votes: 3
Labels: autoregistration, usermacro
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Due to the complexity and setting up multiple Autoregistration actions and in some case may be repetitive or the need to make additions to certain action values. I would like to suggest adding the functionality to be able to use Macros in Autoregistration actions. Example would be:

Macro {$IP.VALIDATION} [, ]10\.(1|2|13|16|20|51|52|101|102|120|224)

Autoregistration action "Host metadata matches {$IP.VALIDATION}






[ZBXNEXT-7448] Auto expand column width to length of maximum value Created: 2022 Jan 26  Updated: 2023 Jun 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.19, 6.0.0beta3
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aigars Kadikis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File text-values-through-latest-data-page.png     PNG File two-columns-in-excel.png    

 Description   

It would be nice to have an option to increase the width of a specific column. Set the size of column to the width, which matches the length of current maximum value on screen.

Something similar like in MS Excel, we click between columns:

One example: Official SSL certificate monitoring template produces a lot of string values in the output:

Doing mouse over to each value is not productive.






[ZBXNEXT-7401] Change Script name generation in Zabbix 6.0 Created: 2022 Jan 05  Updated: 2022 Jan 05

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 6.0.0beta1
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-01-05-13-09-57-035.png     PNG File image-2022-01-05-13-10-05-363.png     PNG File image-2022-01-05-13-10-16-629.png     PNG File image-2022-01-05-13-10-51-427.png     PNG File image-2022-01-05-13-11-03-468.png    

 Description   

Please change Scripts name generation in update procedure from Zabbix 5.0 to 6.0.

For now Script from Action level moved to Global level and have "Script #" names. That not so convenient.

Probably we can use Action name as Script name.

Or at least this must be mentioned in update procedure or release notes/upgrade notes.

Trigger action with script in Zabbix 5.0:

And after update to Zabbix 6.0:






[ZBXNEXT-7102] Zabbix connection to IEC 61850 Devices Created: 2021 Dec 07  Updated: 2021 Dec 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Victor Breda Credidio Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: Electrical, IEC, agent, api
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

IEC 61850 Devices



 Description   

Means to monitor intelligent electronic devices at electrical substations based on the international standard defining communication protocols (IEC 61850)






[ZBXNEXT-7062] {HOST.PORT} not available in Global scripts Created: 2021 Nov 18  Updated: 2021 Nov 18

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.18rc1, 5.4.8rc1, 6.0.0alpha7
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Brian van Baekel Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When trying to make a new global script, doing a specific snmpwalk on a host for example:

snmpwalk -v2c -c public IP .1.3.xxxxxx

 

 

This works, but the moment the host is not listening on port 161, but on a different port, the snmpwalk command should be changed into:

 

snmpwalk -v2c -c public IP:PORT .1.3.xxxxxx 

 

So in Zabbix that would be something like:

snmpwalk -v2c -c public {HOST.CONN} .1.3.xxxxxx 

and for the custom port:

snmpwalk -v2c -c public {HOST.CONN}:{HOST.PORT} .1.3.xxxxxx 

According to the docs( https://www.zabbix.com/documentation/5.4/manual/appendix/macros/supported_by_location)

{HOST.CONN}

is supported in "→ Global scripts (including confirmation text)" but {HOST.PORT} is not, effectively limiting global scripts on all non default ports...

Please make {HOST.PORT} also available in Global scripts.

 

 

 






[ZBXNEXT-6993] throttling with triggering support Created: 2021 Oct 11  Updated: 2021 Oct 11

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 5.4.5
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Richard Ostrochovský Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

As we know, triggers are not evaluated for discarded values in item preprocessing https://www.zabbix.com/documentation/current/manual/config/items/preprocessing#configuration.

The disadvantage is, that when e.g. trigger expression or/and threshold is changed, the change is not applied immediately when discard preprocessing configured, it may take a long time or never occur when values do not change.

Workaround: temporary discarding disablement or shortening discarding period, but it requires further manual actions, deeper ZBX expertise and permission to change root template, not forgetting to return back the configuration ... which is not very scalable from organization point of view.

Maybe this could be revisited, as maybe there are also more options offering yet more fine tuned configuration, e.g.:

  • triggers only on discarded last value could be (optionally?) evaluated without need to write it to DB, directly from value cache
  • this could be further optimized in case value cache could store multiple values (history) for the same item, needed for evaluation for all triggers bound to that item

This could e.g. mean to have 4 types of discarding instead of 2:

  • Discard unchanged
  • Discard unchanged with heartbeat
  • Discard unchanged with trigger evaluation
  • Discard unchanged with heartbeat and trigger evaluation

Or just let 2 discarding options, but with add trigger evaluation to existing discarding functionality, but this may not be wanted in some scenarios on the other way, and may bring unneeded performance expense in some cases, an also break other logic in place ...

Other option: trigger expressions reevaluation on any change of that trigger or macro used in it.






[ZBXNEXT-6956] Please provide an alternative to API method application.get Created: 2021 Sep 28  Updated: 2022 Oct 08

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 5.4.4
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Edgars Melveris Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 8
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Duplicate

 Description   

Since applications have been deprecated in favor of tags, API method application.get has also been removed. Currently the only way to get item tags is to query for items, which can be slow sometimes.
It would be great if a new API method would be introduced with similar functionality as application.get



 Comments   
Comment by Kirill Varnakov [ 2022 Apr 27 ]

Can the host.get method be improved when used with the selectItems parameter? If it included all tags for every element, that would be great.

Comment by Joachim Vertommen [ 2022 Apr 27 ]

This is also a huge problem for the zabbix-grafana plugin.
When you query a lot of hosts and filter on a specific tag, the plugin will still retrieve all the items for all the hosts because there's no API call to retrieve only the items that match a specific tag.
The plugin then does the filtering on the tag on Grafana side after having retrieved all items first.

This is very inefficient when you have lots of items per host.
Loading a dashboard can easily mean more than 100Mb of data that needs to be downloaded from Zabbix.

See: https://github.com/alexanderzobnin/grafana-zabbix/issues/1315

 





[ZBXNEXT-6838] UX - preserving context when returning from UI use cases Created: 2021 Aug 18  Updated: 2021 Aug 18

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.4.3
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Richard Ostrochovský Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Go to host groups
  2. Click on template
  3. Update or cancel

Result:
Returned to templates, not host groups. It is a bit confusing, especially for new users.
Expected:
Just an idea, but maybe frontend could preserve context, from where user go to the use case, and return him to that original context on exit from the use case.






[ZBXNEXT-6676] Create task for housekeeper after clicking "Clear history and trends" button Created: 2021 May 20  Updated: 2021 May 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Dmitry Krupornitsky Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: performance
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Review the work logic of "Clear history and trends" button from Hosts->Items form: a long-running delete query locking tables may occur thus bringing the whole Zabbix instance down. Make it asynchronous by creating a task to Zabbix housekeeper with required time range to clean (so only entries before the button click are removed). This will put the whole operation to the background.






[ZBXNEXT-7025] Zabbix Integration with OpenProject Created: 2021 Oct 29  Updated: 2021 Oct 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Igor Gorbach Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

It will be very usefull to add a new webhook for Open Project. OP is a modern replacement of Redmine (and based on it). API documenataion https://www.openproject.org/docs/api/






[ZBXNEXT-7005] Change fields format for Items/Triggers configuration pages Created: 2021 Oct 15  Updated: 2021 Oct 15

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.16, 5.4.5
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Igor Gorbach Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

Text fields Into Item/Trigger configuration page could contain a lot of data, and, it really uncomfortable to debug some mistakes/ modify something  into Item/Trigger Name, Item Key, Trigger Operational Data, Trigger Event Name.

Also, current font is also uncomfortable, because  these fields, first of all,  have containing technical information, especially item key, because this field could containt really long text commands in case of system.run[*] usage

Please, make the mentioned text fields dynamically expandable, like trigger expression field

Also, change current font to monospaced font into item key field, as it is into calculated items formula and trigger expression now

 






[ZBXNEXT-6977] Add ability to disable remembering the last used filter Created: 2021 Oct 07  Updated: 2021 Oct 07

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.4.5
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: filter
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Now the frontend, when opening the page, tries to reflect objects that fall under the filters of the previous selection. It is possible to add "?filter_rst=1" in the address bar. But this will lead to the fact that the filters will be reset and on large installations this can mean a very long time to open the page. Sometimes long delays in filter processing when they are not required are unacceptable in critical situations.

As an option add the setting to the user profile. (remember the last filter or not)
Or remember filters but not apply them right away. That is, after going to the page, do not apply the filter until manual confirmation done. (Click Apply)






[ZBXNEXT-6939] Add 'out-of-box' user macros for SNMPv3 monitoring Created: 2021 Sep 23  Updated: 2021 Sep 23

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.4.4
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: snmpv3, usermacro
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: JPEG File photo_2021-09-23_11-53-06.jpg    
Issue Links:
Duplicate

 Description   

When creating SNMPv2 interface, a community macro is automatically substituted.
It is defined to public on global level
But when SNMPv3 host interface is created all fields are empty.

It will be convenient if we also automatically substitute some default user macros there.






[ZBXNEXT-6821] Allow scheduled reports to send out CSV if dashboard only has table data Created: 2021 Aug 09  Updated: 2021 Aug 09

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Dmitry Krupornitsky Assignee: Valdis Murzins
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently the scheduled reports only send the dashboards as PDF but it'd be great if there was a way to send actual data in CSV/excel format from tables in the dashboard.

There could be a configurable switch to see if the user wants PDF or CSV as the output and the CSV would only work with certain types of widgets like problems, action logs etc.






[ZBXNEXT-6846] Horizontal text in Monitoring->Overview Created: 2021 Aug 20  Updated: 2021 Aug 20

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.32
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Viktor Shatskykh Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: frontend, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Is there a way of getting the top text to NOT be vertical and instead be horizontal?

It would be nice to give you the option to change text orientation.






[ZBXNEXT-6759] Expand item.get functionality to include trigger expressions when using "selectTriggers" Created: 2021 Jul 01  Updated: 2021 Jul 01

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 5.0.13, 5.4.2
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Edgars Melveris Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

It would be very convenient to load more data with the item.get method instead of having to do another call with trigger.get just the trigger expression.






[ZBXNEXT-6749] Status of discovery view should show SNMP results Created: 2021 Jun 29  Updated: 2021 Jun 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: James Kirsop Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In addition to showing the time that an SNMP check has been discovered for, the 'Status of discovery' page should also show the returned value.

This will help in identifying discovered devices that should have been created as hosts but for what ever reason have skipped being picked up by an Action.

Right now, instead, I have to log on to the proxy/server and run an snmpwalk to see what values are returned/what the device is, which is a massive time waste.






[ZBXNEXT-6739] Passing HostMetadata and HostMetadataItem info on hostname basis for active agent auto-registration Created: 2021 Jun 21  Updated: 2021 Jun 21

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Alari Schu Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Server node:
OS: CentOS Linux release 7.6.1810 (Core)
Zabbix server: version 5.2.6 (revision 798506596c 29 March 2021)

Proxy node:
OS: CentOS Linux release 7.6.1810 (Core)
Database: Percona MySQL 5.7.32
Zabbix agent2: version 5.2.6 (revision 798506596c 29 March 2021)
Zabbix proxy: version 5.2.6 (revision 798506596c 29 March 2021)


Attachments: PNG File autoregistered_hosts.PNG     PNG File image-2021-06-21-15-02-52-632.png    

 Description   

Unable to benefit from Zabbix auto-registration process with hosts having multiple hostnames. Hosts using multiple comma-separated Hostname values (ie. Hostname=OS-LINUX,DB-MYSQL) have to share single HostMetadata parameter. Therefore it is impossible to use separate conditions and evaluate separate operations for host auto-registration. 

Steps to reproduce:

Say we have a single Linux based host named ZBX-PROXY that acts as Zabbix proxy with MySQL database and we want it to be monitored as two separate hosts:

Host 1: OS-LINUX (OS level monitoring)
Host 2: DB-MYSQL (DB level monitoring)

  1. /etc/zabbix/zabbix_agent2.conf of ZBX-PROXY:
ServerActive=ZBX-PROXY
Server=ZBX-PROXY
Hostname=OS-LINUX,DB-MYSQL
HostMetadataItem=system.uname
  1. Auto-registration actions configured (see the screenshot):

Result:

Both OS-LINUX and DB-MYSQL get auto-registered, added to the host group "OS - Linux" and linked to template "Template OS Linux" (see the screenshot):

Expected:
1) a way to pass HostMetadata and HostMetadataItem info on a hostname basis not as a single shared parameter or 2) to find a workaround for raised problem. Using hostname as an auto-registration action condition is out of the question because in most cases we use GUID-s instead of simple hostnames. 

Expectation is that both hosts get added to separate host groups and get linked with different templates.  

Suggested config: 

ServerActive=ZBX-PROXY
Server=ZBX-PROXY
Hostname=OS-LINUX,DB-MYSQL
HostMetadataItem.OS-LINUX=system.uname    # Metadata passed only to OS-LINUX
HostMetadata.DB-MYSQL=mysql               # Metadata passed only to DB-MYSQL
#HostMetadataItem=system.uname            # Metadata passed to all hosts. Takes precedence over HostMetadata.* and HostMetadataItem.* parameters

 






[ZBXNEXT-6701] Zabbix agent for AS400 Created: 2021 Jun 04  Updated: 2021 Jun 04

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: agent, as400
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

There is community povided solution:
https://assets.zabbix.com/files/zabconf2017/constantin_oshmyan-zabbix_agent_emulator_for_as400.pdf
https://share.zabbix.com/operating-systems/ibm-i-i5-os-os-400-for-ibm-system-i-as-400/zabbix-agent-emulator-for-as-400-platform
But the agent is old version (and not officially supported)






[ZBXNEXT-7484] Maintenance condition - proxy. Created: 2022 Feb 09  Updated: 2023 Oct 04

Status: Confirmed
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Andrei Gushchin (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 11
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Currently we could put to maintenance host, host group.
But when you have many different hosts and groups it hard to choose each time all hosts which belong to one particular proxy.
So in some cases it would be very handy to put all hosts behind proxy into maintenance.



 Comments   
Comment by Mickael Martin (Cyres) [ 2023 May 15 ]

Hello,

 
I added this option on this plugin : https://framagit.org/zabbix-modules/zabbix-one-clic-maintenance





[ZBXNEXT-7482] Custom message support for PagerDuty integration Created: 2022 Feb 09  Updated: 2022 Oct 03

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It will by nice to be able send custom messages through PagerDuty integration.

payload.custom_details can by used for such messages.






[ZBXNEXT-7395] Make native Zabbix components for e2k platform Created: 2021 Dec 29  Updated: 2021 Dec 29

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G), Proxy (P), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Khatsayuk Alexander Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

As you know, there is another one computer platform - Elbrus (e2k).

It will be great to have native Zabbix Core components  like Server, Proxy and Agent, compiled to work on it.






[ZBXNEXT-7091] Make maintenance mark available for triggers Created: 2021 Dec 01  Updated: 2022 Dec 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 5.0.17, 5.4.8
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Igor Gorbach Assignee: Valdis Murzins
Resolution: Unresolved Votes: 11
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task

 Description   

When we define some host and hostgroups into maintenance, then all hosts getting maintenance mark. But, when we setting up suppresiing for events with necessary tags only - there are no difference, only host has an maintenance mark still

It can be a reason of confusion for users - they thinking (especiaaly in case whe show supressed events on Monitoring-Problems page is enabled), that if host in maintenance, then all triggers in maintenance as well, so some high priority incidents can be missed up.

Please, change current maintenance marking design in case of specific triggers suppression only - delete host mark and set it for supressed trigger



 Comments   
Comment by Tibor Volanszki [ 2022 Jan 27 ]

I wanted to request the exact same thing, thank you for raising it!

My maintenance example:

Host group: all network switches with server connections
Tags: "connected_to" tag's value is usually a hostname, but in case of a decommission, a prefix ("decom") is expected there as well. When this prefix will be matched, then the relevant port triggers shall be muted. The value is populated during trigger prototype creation using "regsub" using the port description input.

Result: Technically it works fine, since only the relevant triggers are supressed, but the "maintenance tool" icon is present for all the switches in many views, which is misleading, annoying, confusing (especially for L1/L2 support).

Please only mark affected items, where the tags are matching and leave out the host objects (or mark them differently / provide an option to turn off the marking for them). Thank you!

Best regards,
Tibor

Comment by Mickael Martin (Cyres) [ 2022 Dec 08 ]

Hi,

Do you think it's a duplicate of https://support.zabbix.com/browse/ZBXNEXT-5897 ?





[ZBXNEXT-7003] Macro for details for Not supported items Created: 2021 Oct 14  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Aleksey Volodin Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2021-10-14-14-54-45-843.png    

 Description   

It will by nice to add new macro represent this message from frontend:






[ZBXNEXT-4843] Add grouping option to maps Created: 2018 Nov 02  Updated: 2018 Nov 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Ben Hanson Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: frontend, maps, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We are using zabbix maps extensively, both for traditional monitoring and to augment documentation.  For example, rather than having a static document explaining a process, whereby one or more servers, databases, applications interact to achieve an outcome, we are using zabbix to map those processes such that some elements can have live status info.

As a result, our list of maps is growing to the point of being unwieldy.  We've just started and we have 72 maps.  Maps consist of Site/Subnet maps, Application maps, Equipment overview maps(UPS/Physical Server/Wireless Topology) and global overview maps.

It would be helpful to have some sort of filtering grouping mechanism.  This would either be a dedicated "Map Group", or could possibly be served just as well by tying into the host group framework.



 Comments   
Comment by richlv [ 2018 Nov 02 ]

If you are not using it yet, maybe https://www.zabbix.com/documentation/4.0/manual/web_interface/frontend_sections/monitoring/dashboard/widgets#map_navigation_tree can help a bit (but it could have performance issues in larger environments).

Comment by Ben Hanson [ 2018 Nov 02 ]

I just discovered this yesterday, and while it is a nice feature(that I still need to explore), on my 3.4.12 install the links to the maps doesn't work.  (I'm assuming the apparent hyperlink in the nav tree should go to the associated map.). It also doesn't change actually navigating maps to edit/update them. 





[ZBXNEXT-4820] Frontend messaging: recomposing the sounds Created: 2018 Oct 22  Updated: 2018 Oct 22

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Giedrius Stasiulionis Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File chrome.png     PNG File default.png     PNG File disaster.png     PNG File ok.png     PNG File renewed.png     Zip Archive zabbix_sounds.zip    

 Description   

I would like to raise a really small problem of frontend messaging, namely the sounds. This problem can be divided into:

  1. the quality: sampling rate of .wav files is 11 kHz (except “disaster” level – 22 kHz) and quantization is 8 bits; those are poor numbers for sounds and makes the lack of quality audible for human ear – it should be at least 40 kHz (see below for Nyquist theorem) & 16 bits for quantization
  2. I personally feel the lack of “commonality” in the sounds: it seems like they are taken from different sources; sounds have different loudness levels
  3. although the effect is growing together with the severity level (“disaster” is more scary than “information”), it doesn’t feel fully consistent – I’m not sure which is scary more – “average” or “high”; “information” level sound is a bit too scary for “information”

According to the Nyquist theorem (https://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem) you can hear up to twice as small frequency as your sampling rate is. Keeping in mind that humans can hear between 20 Hz – 20 kHz, the sampling rate for digital sounds should be no less than 40 kHz to hear the full range. The established standard of 44.1 kHz will be used & 24 bit quantization

In music production, there is this process called “mastering”; it is applied to every music album. You, as a listener, should never have to tune volume up or down while listening to one album, unless you like some specific song more than others That’s what mastering process is responsible for – it makes all songs sound equally to one another, in terms of loudness and in scope of single album. Exactly same approach should be – but is not – applied here in Zabbix: different sounds are provided in different loudness.

Being all that said, my proposal is based on:

  1. not going too far from the original sounds, but improve them to give more quality
  2. grow properly in effect together with severity level
  3. provide sounds in higher than original quality in terms of sampling / quantization
  4. provide sounds properly mastered
  5. provide all sounds to be looping-friendly (referring to “Play sound <> Once”)
  6. introduce the “hidden” and “increasing-as-severity-increases” low-end (bass) component; this should at the very end (“disaster”) not exceed -5 dB peak (common good practice for bass lines); why not use full spectrum if you can?

So I recomposed the sounds by following the mentioned guidelines. The attached sounds might not necessarily be taken as an object of change, more as an example of how it could be.

zabbix_sounds.zip



 Comments   
Comment by Oleksii Zagorskyi [ 2018 Oct 22 ]

Related discussion in the past  ZBX-3613-

One of the main reason was files size reduction, plus volume optimization.

Comment by Oleksii Zagorskyi [ 2018 Oct 22 ]

Files size in the attached archive:

./default:
total 180K
 19K alarm_average.wav
 70K alarm_disaster.wav
 27K alarm_high.wav
 15K alarm_information.wav
4,9K alarm_ok.wav
 26K alarm_warning.wav
5,8K no_sound.wav

./renewed:
total 3,6M
517K alarm_average.wav
517K alarm_disaster.wav
517K alarm_high.wav
517K alarm_information.wav
517K alarm_ok.wav
517K alarm_warning.wav
517K no_sound.wav
Comment by Giedrius Stasiulionis [ 2018 Oct 22 ]

I see the reason behind it, but... If I would change quantization from 24 bits to 16 (difference not audible for human ear), and reduce the "no_sound.wav" to be as small as yours (as this "sound" is pure silence, thus doesn't matter), then we would be talking about total size of ~2MB. Does 2 additional MB really matter in year 2018 (speaking about NW speed / disk space)?.. Besides, browser will store it in it's cache for some time anyway, or (this is Chrome example), retrieve file with 206 http status code, which also reduces the size drastically (in this example I use my sounds)

Comment by Oleksii Zagorskyi [ 2018 Oct 22 ]

First, I'm personally impressed by your work, really!

Yes, it's a known thing that size does matter only when wav file is downloaded first time (and reloaded sometimes).
But still ... it's a size. On slow network it causes a delay corresponding sound playing, when it happens first time.

Yes, that's arguable how all that is critical.

But my point of view is still the same - 8bit quantization and 11kHs sampling is OK as for alarm sounds in a monitoring system.

And ... new sounds is another big topic of such discussion





[ZBXNEXT-4814] Round x-axis labels similar to Classic graphs Created: 2018 Oct 19  Updated: 2018 Oct 19

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.0
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Marc Assignee: Valdis Murzins
Resolution: Unresolved Votes: 3
Labels: Graph, axis, widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File xAxisLabelsNotRounded.png    

 Description   

Classic graphs provide perfectly aligned time values for the x-axis label depending the selected time period. This seems to lack for the Graph widget.

How about implementing the same algorithm for the new Graph widget?






[ZBXNEXT-4784] actions window should be more responsive to the screen/browser resolution Created: 2018 Oct 02  Updated: 2018 Oct 02

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 4.0.0
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Daniel Daniel Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: actions, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2018-10-02-14-21-29-246.png     PNG File image-2018-10-02-14-23-18-581.png    

 Description   

The actions window in PROBLEMS showing informations about ACK, MSG, EMAIL SENT, etc., should behave more responsively to the browser/display resolution.

For instance, in the list of problems like below, where one gets e.g. "22" related actions:

when someone opens those details by clicking on that "22", we can see a huge window like this:

Today with big screens and at least with FullHD resolution on most of them, a more responsive behaviour would be very useful.

For instance that 2nd screenshot "image-2018-10-02-14-23-18-581.png" with 22 detailed lines was taken on a FullHD 24" - fullscreen browser (Firefox on Linux, IE on Win8.1, doesn't matter which one), and it filled it entirely from the top to the bottom.

Why to wrap date & time?

Why to wrap login name + full name?

With that much details in that actions window, it should be behaving more dynamically. Perhaps kill that wrapping unless really required, or an configurable option to dynamically resize that actions window if necessary, in order to show as much informations as possible. Also paging if more than 20 might be useful. Maybe involve something of that new "COMAPACT VIEW", which is a perfect thing btw!.

In the browser it's being managed by the following:

<div class="overlay-dialogue" style="max-width: 800px">

Changing value 800px to min. eg. 1200px or more looks much better.



 Comments   
Comment by Roman Rajniak [ 2018 Oct 02 ]

This limit could be done with parameter in include/defines.inc.php fo example:

// Maximum width for popups in Actions column for problems.define('ZBX_ACTIONS_POPUP_MAX_WIDTH', 1200);





[ZBXNEXT-4847] About Unix(Solaris, AIX, HPUX) Memory usage Created: 2018 Nov 05  Updated: 2020 Jan 17

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Agent (G)
Affects Version/s: 3.0.22
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Kim KilJong Assignee: Michael Veksler
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi.

I have a question about Unix memory data collection.

On AIX, Solaris, and HPUX operating systems, what libraries, files, or commands does zabbix agent use to check memory usage?

 

Thanks.






[ZBXNEXT-4763] Zabbix Server template update to monitoring zabbix_server process count Created: 2018 Sep 27  Updated: 2018 Sep 27

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.14
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: Sean Nienaber Assignee: Zabbix Support Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All



 Description   

Hi,

We have two Zabbix servers monitoring each other.

Primary monitors itself, Secondary and all other hosts.  Secondary monitors itself and primary only.  The goal is that if there is an issue with the primary server the secondary should alert us and vice versa.

To this end, we've added an item to count the number of Zabbix Server processes "proc.num[zabbix_server]" with an associated trigger "{Template App Zabbix Server:proc.num[zabbix_server].last()}=0" to alert us should the Zabbix Server processes fail, i.e. Zabbix Server down.

I think this would be a good addition to the default templates, it's also useful to be able to trend the process count over time to see when modifications to the process counts are made, for example increasing pollers etc.

The same applies to the Zabbix Proxy template.

 

Sean






[ZBXNEXT-4770] New graph widget is not resized with screen Created: 2018 Sep 28  Updated: 2022 Oct 08

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Vitaly Zhuravlev Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: graph
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: GIF File resize-graph.gif    
Issue Links:
Causes
caused by ZBXNEXT-4588 New Graph Widget Closed
Sub-task
part of ZBXNEXT-4774 Add support to maximize (drop down to... Open

 Description   

I suggest the graph to be redrawn on screen resize.

I believe that this is currently by design, but I think that we should improve it. We should not stick to the rules of classic graph era.






[ZBXNEXT-4773] Drop support of independent refreshing of widgets on the dashboard Created: 2018 Sep 28  Updated: 2018 Oct 24

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Vitaly Zhuravlev Assignee: Valdis Murzins
Resolution: Unresolved Votes: 1
Labels: dashboard, refresh
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Independent refreshing of widgets

  1.  I believe that this is an overkill - A single interval defined near the time filter of the dashboard would be enough. 
  2. There you can also place a button that will force this refresh of the dashboard. Clean and simple.

This will also help you to remove the refresh interval button in the header of each widget - giving you a cleaner overall look



 Comments   
Comment by richlv [ 2018 Sep 28 ]

One reason for this was that some widgets were much, much more heavyweight on the backend (by needing a lot of data to display), thus they could be set to reload less frequently.

Comment by Vitaly Zhuravlev [ 2018 Sep 28 ]

I know, but which widget is this? This might be implemented as an 'override' option configurable for such heavy widgets. Or just don't refresh that often.

Comment by richlv [ 2018 Oct 04 ]

Don't recall the detail, and it could depend on the environment quite a lot. I like the override idea, if I got it right - that is, a default interval + an optional override per widget (remotely similar to slideshows).

Comment by Oleksii Zagorskyi [ 2018 Oct 24 ]

ZBXNEXT-4014 asks for a button for a manual refresh





[ZBXNEXT-4750] Function `get_value_http` should do connection-reuse for Http-Requests Created: 2018 Sep 22  Updated: 2023 Jul 13

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Christian Hägele Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In our use-case we do a lot (100+ per minute) of Http-checks to the same host. When establishing a new TCP-Connection on every check the performance could be a problem.

When doing those requests via SSL the problem is even worse.

Currently we implemented our own Module for doing Http-Requests via libcurl and using the Curl-Shared-Handle to share connections between those requests. This works fine for us.
The new get_value_http you implemented in ZBXNEXT-4358 could be used instead of our own module to do the checks if connection-reuse would be used.

I can provide a patch as this is a very small change.

However, maybe some other have the use-case where they explicitly don't want conneciton-reuse. If an option for that is needed the work might be a bit higher.



 Comments   
Comment by Vladislavs Sokurenko [ 2018 Sep 22 ]

Zabbix server/Zabbix proxy should be capable to do those connections simultaneously if poller count is enough and system performance/host performance is enough.
Have you tried any benchmarks to compare if module or this new check is faster ?
This is of course assuming that you execute lots of different checks instead of one that needs to be executed very frequently but serially.

Comment by Christian Hägele [ 2018 Sep 22 ]

I did not benchmark the difference. By "performance" I was more targeting in the direction that the overall load of the systems (Zabbix-Server and the system which is being monitored) is unnecessary high.
Also I do not use SSL as of now.

In our case the number of incoming connections on the monitored system went up significant because of those checks. That's not directly a problem, but I think the monitoring system should have the least possible impact.
Also I have the concern that the ephemeral-ports could become a bottleneck sooner or later on the Zabbix-Server (that's just a guess, though).

I think it is a low hanging fruit to implement connection-reuse as libcurl already has this build-in.

Comment by Glebs Ivanovskis [ 2018 Sep 22 ]

I am afraid this will share the fate of ODBC connection pooling done by UnixODBC. It simply does not work in multi-process architecture of Zabbix. On a seriously large installation with hundreds of pollers and HTTP pollers such sharing will only waste resources as every process will ultimately make (and store!) a connection to every monitored resource.

Comment by Vladislavs Sokurenko [ 2018 Sep 22 ]

Thank you for you report, I understand your use case, this could be especially important in case if SSL is used and you have low resources, could you please be so kind and attach the patch ? More information is better. Of course having such option could have its pros.

Comment by Vladislavs Sokurenko [ 2023 Jul 13 ]

Please see ZBXNEXT-8460





[ZBXNEXT-4564] Slow Overview/Triggers page due to slow SQL query for permissions check Created: 2018 May 24  Updated: 2019 Mar 12

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Frontend (F)
Affects Version/s: 3.4.8
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Stanislav Assignee: Valdis Murzins
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

SLES12, Oracle DB backend (on Solaris).
Number of hosts (enabled/disabled/templates) 1790 1476 / 57 / 257
Number of items (enabled/disabled/not supported) 27477 25341 / 2079 / 57
Number of triggers (enabled/disabled [problem/ok]) 13192 11910 / 1282 [212 / 11698]



 Description   

Steps to reproduce:

  1. Open Overview or Triggers page from regular user account.
  2. Select Group from drop-down list

Result:
Slow webpage response
Expected:
For Zabbix Super Admins this is much faster.

I think it's similar to ------ZBX-12225------.

 

Overview page

******************** Script profiler ********************
Total time: 26.716641
Total SQL time: 23.468303
SQL count: 1122 (selects: 1118 | executes: 4)

Problem sql query:

SQL (21.215202): SELECT DISTINCT t.triggerid,t.priority,t.value FROM triggers t,functions f,items i,hosts_groups hg WHERE NOT EXISTS (SELECT NULL FROM functions f,items i,hosts_groups hgg LEFT JOIN rights r ON r.id=hgg.groupid AND r.groupid IN ('11','13','21') WHERE t.triggerid=f.triggerid  AND f.itemid=i.itemid AND i.hostid=hgg.hostid GROUP BY i.hostid HAVING MAX(permission)<'2' OR MIN(permission) IS NULL OR MIN(permission)=0) AND hg.hostid=i.hostid AND f.triggerid=t.triggerid AND f.itemid=i.itemid AND hg.groupid='26' AND NOT EXISTS (SELECT NULL FROM functions f,items i,hosts h WHERE t.triggerid=f.triggerid AND f.itemid=i.itemid AND i.hostid=h.hostid AND (i.status<>0 OR h.status<>0)) AND t.status=0 AND t.flags IN ('0','4')}}
{{overview.php:218 → CView->render() → include() → getItemsDataOverview() → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → CTrigger->get() → CApiService->customFetch() → DBselect() in include/classes/api/CApiService.php:1054

This query is very slow. I don't really understand how this query works, but if I just add hg.groupid='26' as in ------ZBX-12225------ it would be much faster. Example (it returns same result, but much faster and I can't be sure that this is correct fix):

SELECT DISTINCT t.triggerid,t.priority,t.value FROM triggers t,functions f,items i,hosts_groups hg WHERE NOT EXISTS (SELECT NULL FROM functions f,items i,hosts_groups hgg LEFT JOIN rights r ON r.id=hgg.groupid AND r.groupid IN ('11','13','21') WHERE t.triggerid=f.triggerid  AND f.itemid=i.itemid AND i.hostid=hgg.hostid AND hg.groupid='26' GROUP BY i.hostid HAVING MAX(permission)<'2' OR MIN(permission) IS NULL OR MIN(permission)=0) AND hg.hostid=i.hostid AND f.triggerid=t.triggerid AND f.itemid=i.itemid AND hg.groupid='26' AND NOT EXISTS (SELECT NULL FROM functions f,items i,hosts h WHERE t.triggerid=f.triggerid AND f.itemid=i.itemid AND i.hostid=h.hostid AND (i.status<>0 OR h.status<>0)) AND t.status=0 AND t.flags IN ('0','4')

Triggers page

******************** Script profiler ********************
Total time: 28.959818
Total SQL time: 26.564391
SQL count: 529 (selects: 525 | executes: 4)

Slow sql query:

SQL (24.352859): SELECT * FROM (SELECT DISTINCT t.triggerid,t.lastchange FROM triggers t,functions f,items i,hosts_groups hg WHERE NOT EXISTS (SELECT NULL FROM functions f,items i,hosts_groups hgg LEFT JOIN rights r ON r.id=hgg.groupid AND r.groupid IN ('11','13','21') WHERE t.triggerid=f.triggerid  AND f.itemid=i.itemid AND i.hostid=hgg.hostid GROUP BY i.hostid HAVING MAX(permission)<'2' OR MIN(permission) IS NULL OR MIN(permission)=0) AND hg.hostid=i.hostid AND f.triggerid=t.triggerid AND f.itemid=i.itemid AND hg.groupid='29' AND NOT EXISTS (SELECT NULL FROM functions f,items i,hosts h WHERE t.triggerid=f.triggerid AND f.itemid=i.itemid AND i.hostid=h.hostid AND (i.status<>0 OR h.status<>0)) AND t.status=0 AND t.flags IN ('0','4') ORDER BY t.lastchange) WHERE rownum BETWEEN 0 AND 2002
tr_status.php:259 → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → CTrigger->get() → CApiService->customFetch() → DBselect() in include/classes/api/CApiService.php:1022

Same I could significantly speed up this query by adding groupid to block

SELECT * FROM (SELECT DISTINCT t.triggerid,t.lastchange FROM triggers t,functions f,items i,hosts_groups hg WHERE NOT EXISTS (SELECT NULL FROM functions f,items i,hosts_groups hgg LEFT JOIN rights r ON r.id=hgg.groupid AND r.groupid IN ('11','13','21') WHERE t.triggerid=f.triggerid  AND f.itemid=i.itemid AND i.hostid=hgg.hostid AND hg.groupid='29' GROUP BY i.hostid HAVING MAX(permission)<'2' OR MIN(permission) IS NULL OR MIN(permission)=0) AND hg.hostid=i.hostid AND f.triggerid=t.triggerid AND f.itemid=i.itemid AND hg.groupid='29' AND NOT EXISTS (SELECT NULL FROM functions f,items i,hosts h WHERE t.triggerid=f.triggerid AND f.itemid=i.itemid AND i.hostid=h.hostid AND (i.status<>0 OR h.status<>0)) AND t.status=0 AND t.flags IN ('0','4') ORDER BY t.lastchange) WHERE rownum BETWEEN 0 AND 2002

Triggers all groups

******************** Script profiler ********************
Total time: 30.227013
Total SQL time: 28.09208
SQL count: 468 (selects: 464 | executes: 4)

Slow query:

SQL (24.656316): SELECT * FROM (SELECT t.triggerid,t.lastchange FROM triggers t WHERE NOT EXISTS (SELECT NULL FROM functions f,items i,hosts_groups hgg LEFT JOIN rights r ON r.id=hgg.groupid AND r.groupid IN ('11','13','21') WHERE t.triggerid=f.triggerid  AND f.itemid=i.itemid AND i.hostid=hgg.hostid GROUP BY i.hostid HAVING MAX(permission)<'2' OR MIN(permission) IS NULL OR MIN(permission)=0) AND NOT EXISTS (SELECT NULL FROM functions f,items i,hosts h WHERE t.triggerid=f.triggerid AND f.itemid=i.itemid AND i.hostid=h.hostid AND (i.status<>0 OR h.status<>0)) AND t.status=0 AND t.flags IN ('0','4') ORDER BY t.lastchange) WHERE rownum BETWEEN 0 AND 2002
tr_status.php:259 → CApiWrapper->__call() → CFrontendApiWrapper->callMethod() → CApiWrapper->callMethod() → CFrontendApiWrapper->callClientMethod() → CLocalApiClient->callMethod() → CTrigger->get() → CApiService->customFetch() → DBselect() in include/classes/api/CApiService.php:1022

 But I don't know how to improve speed for this query.



 Comments   
Comment by Stanislav [ 2019 Mar 12 ]

I'd like to add that our current oracle version is 11.2.0.3.0.

Our DB engineer suggested to add hint use_nl for oracle. So I ended up with next dirty workaround. I don't recommend anyone else to use it. But it kind of solved the issue. SQL time for 'get triggers query' dropped from 40-90 sec to less than 0.5 sec.

--- zabbix-4.0.5/frontends/php/include/classes/api/services/CTrigger.php        2019-02-25 12:36:41.000000000 +0300
+++ zabbix-4.0.5_/frontends/php/include/classes/api/services/CTrigger.php       2019-03-11 17:06:41.097803617 +0300
@@ -117,6 +117,8 @@
                ];
                $options = zbx_array_merge($defOptions, $options);

+               $sql_hint = '';
+
                // editable + PERMISSION CHECK
                if (self::$userData['type'] != USER_TYPE_SUPER_ADMIN && !$options['nopermissions']) {
                        $permission = $options['editable'] ? PERM_READ_WRITE : PERM_READ;
@@ -136,6 +138,8 @@
                                        ' OR MIN(permission) IS NULL'.
                                        ' OR MIN(permission)='.PERM_DENY.
                        ')';
+                       global $DB;
+                       if ($DB['TYPE'] == ZBX_DB_ORACLE) $sql_hint = ' /*+ USE_NL(i) */';
                }

                // groupids
@@ -430,7 +434,8 @@

                // return count or grouped counts via direct SQL count
                if ($options['countOutput'] && !$this->requiresPostSqlFiltering($options)) {
-                       $dbRes = DBselect($this->createSelectQueryFromParts($sqlParts), $options['limit']);
+                       $sql_query = preg_replace('/^SELECT/', 'SELECT'.$sql_hint, $this->createSelectQueryFromParts($sqlParts), 1);
+                       $dbRes = DBselect($sql_query, $options['limit']);
                        while ($trigger = DBfetch($dbRes)) {
                                if ($options['groupCount']) {
                                        $result[] = $trigger;
@@ -442,7 +447,8 @@
                        return $result;
                }

-               $result = zbx_toHash($this->customFetch($this->createSelectQueryFromParts($sqlParts), $options), 'triggerid');
+               $sql_query = preg_replace('/^SELECT/', 'SELECT'.$sql_hint, $this->createSelectQueryFromParts($sqlParts), 1);
+               $result = zbx_toHash($this->customFetch($sql_query, $options), 'triggerid');

                // return count for post SQL filtered result sets
                if ($options['countOutput']) {




[ZBXNEXT-4551] Improve API of Zabbix with Node.JS Created: 2018 May 14  Updated: 2018 May 14

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: API (A)
Affects Version/s: 3.4.9
Fix Version/s: None

Type: New Feature Request Priority: Minor
Reporter: RENAN DA ROSA BASTOS Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 1
Labels: api, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

API



 Description   

Helo guys,

 

I want propose we development a new API with nodejs separated from zabbix server. For we granted more perfomance.

I am willing to the help this development.

 

see ya






[ZBXNEXT-4550] Segmented polling of SNMPv3 items Created: 2018 May 11  Updated: 2018 May 26

Status: Open
Project: ZABBIX FEATURE REQUESTS
Component/s: Server (S)
Affects Version/s: 3.4.9
Fix Version/s: None

Type: Change Request Priority: Minor
Reporter: Colo Host Assignee: Andris Zeila
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

CentOS 7



 Description   

I've begun adding a large number of network devices to a Zabbix installation.  These are mostly Cisco and Arista gear, doing switching or routing, and we care about things like port flaps, error counters, bandwidth, etc.  Discovery templates are used for this and any given device may have six to eight items per physical port, so a 48-port switch could have as many as 384 items related to ports, plus the various hardware pieces like fans, temp, etc. so let's just say 400 items average per device.

At that item count, I've found that several Cisco devices cannot return the data in less than the Zabbix maximum timeout window of 30 seconds.  I also have some Cisco switch stacks which have several thousand OID's to query since all the switches report via one management IP.

Arista gear seems to return the data faster, possibly due to a better SNMPv3 implementation or simply faster CPU's; their 48-port devices don't seem to have an issue getting the data out within Zabbix's timeout window.  If you go to higher port count chassis though, you ultimately run into the same problem of the data not making it before timeout.

The end result of this issue is you cannot reliably use SNMPv3 with Zabbix and a reasonable number of OID's on switches with potentially anywhere from 24 ports (Cisco) or 96 (Arista) and higher.  You will constantly have issues with items bouncing between not supported and supported, so your data will have gaps where polls have been missed.  I've had no choice but to downgrade to SNMPv2 to get around this.

My feature request contains a few components:

1) At the host level, add a configuration setting for "Maximum SNMPv3 Responses Per Second".  Note that I said responses per second and not queries per second, because the issue is not the queries, it's the responses taking longer than Zabbix is willing to wait.  Since Zabbix expresses its wait timeout in seconds, knowing a rough limit on how many responses per second a given device can output would allow Zabbix to multiply that by its known timeout value, and then poll item OID's in batches no larger than (max snmpv3 * timeout) to ensure all the responses come before timeout.

 

2) To facilitate the above feature, SNMPv3 items would need to have an additional piece of internally calculated information which would be the polling bucket the given item ends up in.  When a maximum SNMPv3 responses per second value is assigned, at that point Zabbix will calculate the maximum OID's per polling cycle, and divide the currently existing SNMPv3 items into polling buckets.  For any given host, buckets cannot be polled concurrently, it must be sequentially, because I've found if you hit the same device with two bulk requests at the same time, the overall response time increases linearly, so the issue is likely just slow CPU's or slow SNMPv3 implementation on the device.

 

Once the buckets are created and items assigned to them, the pollers can work through them in the same order each time, which should allow the assigned query frequencies to roughly align.  If more accuracy were desired, the buckets could even have offsets assigned to match Zabbix's minimum polling intervals for items on the respective host, so perhaps one bucket executes on the minute, the other always polls 30 seconds after the minute, so each bucket's one minute items are successfully queried.

 

3) If a given device has a number of items, and polling frequencies, that could never be met by a configured maximum responses per second, Zabbix should warn you.  For example, let's say we have a big 10-slot chassis switch which, for the sake of easy math, has a 50-port ethernet blade in each slot, so 500 ports.  We query for ten values per port; so 5000 items.  We query those items once per minute, so roughly 84 responses per second would need to be possible from that device to meet Zabbix's queries.  Let's say this device only outputs data at 50 OID's per second; if you type 50 in, Zabbix could warn you that you are going to miss data given the device cannot output responses fast enough for it to keep up with the queries.

This above is not a far fetched example.  I have a network closet in an office building I was trying to monitor with SNMPv3; it's a stack of six Cisco 2960XR's with 48+2 ports each.  I'm trying to collect eight OID's per port (name, admin status, operational status, errors in, errors out, last state change, bytes in, bytes out), so this host in zabbix has 2400 items.  SNMPv3 takes several minutes to output that data, SNMPv2 makes it in under the 30 second timeout I have set.

4) To facilitate measuring what a given device is capable of, it would be extremely helpful if there were some way in the Zabbix web interface to go to a given host and display a list of OID's it would normally query for a given polling cycle.  The documentation could be updated to instruct people how to use snmpbulkget or snmpbulkwalk to benchmark the response time and come up with an expected number of responses per second.



 Comments   
Comment by Colo Host [ 2018 May 26 ]

Hello, I wanted to add some additional information about this issue.  I've determined that this is an issue specific to SNMPv3 when using authPriv where privacy is enabled and AES is the chosen encryption algorithm.  If I change to either authPriv with DES privacy, or authNoPriv, the issue goes away.  The problem appears to be a combination of how large numbers of SNMP-based Zabbix Items are polled for, and network devices with slow CPU's which cannot output large numbers of AES-encrypted OID's in a short amount of time.

In poller/checks_snmp.c there appears to be logic in the zbx_snmp_get_values() function from a long time ago which is designed to split large bulk queries into multiple smaller numbers of OID's.  Unfortunately, these are all executed nearly simultaneously if there are idle pollers available.  What ends up happening is a large number of almost concurrent requests go out to the same device, it tries to process all the requests in parallel, with AES encryption, then the Zabbix timeout value is reached before a response occurs.

On the specific type of Cisco switch I'm most commonly running into this on, it has only a 600 MHz CPU with no AES offload, so querying for what is a few thousand OID's takes about 45 seconds.  If I make such a query with snmpbulkget with SNMPv3 authPriv with AES encryption, it does complete successfully, and it does begin sending data immediately, it just takes a long time for all the data to be received.  However, if I break these requests up into smaller simultaneous requests the way Zabbix is doing, it results in concurrent processing by the network device, and all the data does ultimately get returned, but there is a long pause before any of the requests begin receiving data, which is what I believe allows Zabbix's timeout to occur in zbx_snmp_get_values.  This results in the items being marked offline temporarily, or discovery failing.

My proposed solution remains the same, but would probably be safe to refine to only applying to SNMPv3 authPriv when AES is selected.





Generated at Fri Mar 29 12:19:34 EET 2024 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.