[ZBX-23930] invalid partitioning function cuid_timestamp Created: 2024 Jan 11  Updated: 2024 Feb 15

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Installation (I)
Affects Version/s: 7.0.0alpha8, 7.0.0alpha9
Fix Version/s: None

Type: Problem report Priority: Critical
Reporter: Richard Ostrochovský Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

RHEL 8.8, PostgreSQL 15.5 (upgraded from v11), TimescaleDB 2.10.1 (upgraded from 1.7.2), PHP 8.2 (upgraded), Zabbix 7.0.0alpha8/9 (upgraded from 5.0.40)



 Description   

Steps to reproduce:

  1. Upgrade Zabbix 5.0.40 -> 7.0.0alpha8 or alpha9
VERSION='7.0.0-alpha8.release1.el8'; echo $VERSION
sudo dnf upgrade -y zabbix-web-pgsql-$VERSION zabbix-server-pgsql-$VERSION 

(it's possible, this is not needed, but I did not test fresh 7.0.0alpha8/9 installation)

  1. Install SQL scripts for upgraded version:
sudo yum install -y zabbix-sql-scripts-$VERSION 
  1. Try to execute timescaledb.sql as instructed here:

Result:

  1. timescaledb.sql is not there, but timescaledb/schema.sql (documentation not updated after ZBX-23797 In zabbix-sql-scripts missing timescaledb.sql (after release 7.0.0alpha8) - ZABBIX SUPPORT ?)
  2. running timescaledb/schema.sql instead returning error (the same for 7.0.0alpha9):
[automat@zbxdemo ~]$ cat /usr/share/zabbix-sql-scripts/postgresql/timescaledb/schema.sql | sudo -u zabbix psql zabbix

could not change directory to "/home/automat": Permission denied
Password for user zabbix:
NOTICE:  function base36_decode(pg_catalog.varchar) does not exist, skipping
DROP FUNCTION
CREATE FUNCTION
NOTICE:  function cuid_timestamp(pg_catalog.varchar) does not exist, skipping
DROP FUNCTION
CREATE FUNCTION
NOTICE:  PostgreSQL version 15.5 is valid
NOTICE:  TimescaleDB extension is detected
NOTICE:  TimescaleDB version 2.10.1 is valid
NOTICE:  table "history" is already a hypertable, skipping
NOTICE:  table "history_uint" is already a hypertable, skipping
NOTICE:  table "history_log" is already a hypertable, skipping
NOTICE:  table "history_text" is already a hypertable, skipping
NOTICE:  table "history_str" is already a hypertable, skipping
WARNING:  column type "character varying" used for "note" does not follow best practices
HINT:  Use datatype TEXT instead.
WARNING:  column type "character varying" used for "ip" does not follow best practices
HINT:  Use datatype TEXT instead.
WARNING:  column type "character varying" used for "resourcename" does not follow best practices
HINT:  Use datatype TEXT instead.
ERROR:  invalid partitioning function
HINT:  A valid partitioning function for open (time) dimensions must be IMMUTABLE, take the column type as input, and return an integer or timestamp type.
CONTEXT:  SQL statement "SELECT create_hypertable('auditlog', 'auditid', chunk_time_interval => 604800,
                        time_partitioning_func => 'cuid_timestamp', migrate_data => true, if_not_exists => true)"
PL/pgSQL function inline_code_block line 69 at PERFORM 
  1. If ignored and started zabbix_server anyway:
  8918:20240111:125835.296 Starting Zabbix Server. Zabbix 7.0.0alpha9 (revision 6c4616adff7).
  8918:20240111:125835.296 ****** Enabled features ******
  8918:20240111:125835.296 SNMP monitoring:           YES
  8918:20240111:125835.296 IPMI monitoring:           YES
  8918:20240111:125835.296 Web monitoring:            YES
  8918:20240111:125835.296 VMware monitoring:         YES
  8918:20240111:125835.296 SMTP authentication:       YES
  8918:20240111:125835.296 ODBC:                      YES
  8918:20240111:125835.296 SSH support:               YES
  8918:20240111:125835.296 IPv6 support:              YES
  8918:20240111:125835.296 TLS support:               YES
  8918:20240111:125835.296 ******************************
  8918:20240111:125835.296 using configuration file: /etc/zabbix/zabbix_server.conf
  8918:20240111:125835.538 current database version (mandatory/optional): 05000000/05000007
  8918:20240111:125835.539 required mandatory version: 06050175
  8918:20240111:125835.539 mandatory patches were found
  8918:20240111:125835.540 starting automatic database upgrade
  8918:20240111:125835.558 completed 0% of database upgrade
...
  8918:20240111:125903.932 completed 97% of database upgrade
NOTICE:  function items_name_upper_upper() does not exist, skipping
  8918:20240111:125903.982 completed 98% of database upgrade
  8918:20240111:125904.042 completed 99% of database upgrade
  8918:20240111:125904.090 completed 100% of database upgrade
  8918:20240111:125904.104 database upgrade fully completed
  8918:20240111:125904.149 database could be upgraded to use primary keys in history tables
  9165:20240111:125904.209 starting HA manager
  9165:20240111:125904.247 HA manager started in active mode
  8918:20240111:125904.250 server #0 started [main process]
  9167:20240111:125904.256 server #1 started [service manager #1]
  9168:20240111:125904.257 server #2 started [configuration syncer #1]
  9172:20240111:125904.432 server #3 started [alert manager #1]
  9173:20240111:125904.445 server #4 started [alerter #1]
  9177:20240111:125904.448 server #7 started [preprocessing manager #1]
  9180:20240111:125904.456 server #10 started [lld worker #2]
  9175:20240111:125904.459 server #5 started [alerter #2]
  9176:20240111:125904.460 server #6 started [alerter #3]
  9179:20240111:125904.462 server #9 started [lld worker #1]
  9178:20240111:125904.463 server #8 started [lld manager #1]
  9181:20240111:125904.473 server #11 started [housekeeper #1]
  9182:20240111:125904.493 server #12 started [timer #1]
  9183:20240111:125904.495 server #13 started [http poller #1]
  9185:20240111:125904.503 server #14 started [discovery manager #1]
  9186:20240111:125904.533 server #15 started [history syncer #1]
  9190:20240111:125904.562 server #16 started [history syncer #2]
  9192:20240111:125904.570 server #17 started [history syncer #3]
  9193:20240111:125904.573 server #18 started [history syncer #4]
  9194:20240111:125904.576 server #19 started [escalator #1]
  9195:20240111:125904.587 server #20 started [proxy poller #1]
  9196:20240111:125904.592 server #21 started [self-monitoring #1]
  9203:20240111:125904.651 server #22 started [task manager #1]
  9204:20240111:125904.671 server #23 started [poller #1]
  9205:20240111:125904.693 server #24 started [poller #2]
  9206:20240111:125904.697 server #25 started [poller #3]
  9207:20240111:125904.699 server #26 started [poller #4]
  9209:20240111:125904.733 server #27 started [poller #5]
  9210:20240111:125904.734 server #28 started [unreachable poller #1]
  9212:20240111:125904.736 server #29 started [trapper #1]
  9213:20240111:125904.739 server #30 started [trapper #2]
  9214:20240111:125904.742 server #31 started [trapper #3]
  9215:20240111:125904.745 server #32 started [trapper #4]
  9230:20240111:125904.746 server #47 started [configuration syncer worker #1]
  9216:20240111:125904.747 server #33 started [trapper #5]
  9225:20240111:125904.758 server #42 started [trigger housekeeper #1]
  9220:20240111:125904.764 server #37 started [history poller #2]
  9219:20240111:125904.767 server #36 started [history poller #1]
  9218:20240111:125904.770 server #35 started [alert syncer #1]
  9217:20240111:125904.771 server #34 started [icmp pinger #1]
  9231:20240111:125904.772 server #48 started [internal poller #1]
  9221:20240111:125904.774 server #38 started [history poller #3]
  9222:20240111:125904.776 server #39 started [history poller #4]
  9229:20240111:125904.779 server #46 started [snmp poller #1]
  9223:20240111:125904.798 server #40 started [history poller #5]
  9224:20240111:125904.803 server #41 started [availability manager #1]
  9228:20240111:125904.826 server #45 started [agent poller #1]
  9227:20240111:125904.830 server #44 started [http agent poller #1]
  9226:20240111:125904.831 server #43 started [odbc poller #1]
  9229:20240111:125904.861 thread started
  9228:20240111:125904.902 thread started
  9227:20240111:125904.903 thread started
  9177:20240111:125904.969 [3] thread started [preprocessing worker #3]
  9177:20240111:125904.969 [1] thread started [preprocessing worker #1]
  9177:20240111:125904.969 [2] thread started [preprocessing worker #2]
  9181:20240111:125905.000 [Z3005] query failed: [0] PGRES_FATAL_ERROR:ERROR:  table "auditlog" is not a hypertable
 [select set_integer_now_func('auditlog', 'zbx_ts_unix_now', true)]
  9181:20240111:125905.000 Table "auditlog"is not hypertable. Run timescaledb.sql script to upgrade configuration.
  9213:20240111:125905.038 Proxy "zbxdemo" version 5.0.40 is not supported by server version 7.0.0.
  9185:20240111:125905.050 thread started [discovery worker #1]
  9185:20240111:125905.050 thread started [discovery worker #2]
  9185:20240111:125905.050 thread started [discovery worker #3]
  9185:20240111:125905.050 thread started [discovery worker #4]
  9185:20240111:125905.050 thread started [discovery worker #5]

Expected:

No errors, or missed I any prerequisites?

Sub-question: this is maybe unrelated (also mentioned by thiagodiniz in ZBX-23146 TSDB upgrade doesn't work - ZABBIX SUPPORT), but is it correct?:

NOTICE:  function items_name_upper_upper() does not exist, skipping


 Comments   
Comment by Richard Ostrochovský [ 2024 Jan 12 ]

This may be related as well: TimescaleDB has 2 variant interfaces for create_hypertable():

Comment by Richard Ostrochovský [ 2024 Jan 30 ]

Issue still present in 7.0.0beta1 (after upgrade from Zabbix 5.0.41 running on PostgreSQL 16 + TimescaleDB 2.13.1):

 

cat /usr/share/zabbix-sql-scripts/postgresql/timescaledb/schema.sql | sudo -u zabbix psql zabbix
Password for user zabbix:
NOTICE:  function base36_decode(pg_catalog.varchar) does not exist, skipping
DROP FUNCTION
CREATE FUNCTION
NOTICE:  function cuid_timestamp(pg_catalog.varchar) does not exist, skipping
DROP FUNCTION
CREATE FUNCTION
NOTICE:  PostgreSQL version 16.1 is valid
NOTICE:  TimescaleDB extension is detected
NOTICE:  TimescaleDB version 2.13.1 is valid
NOTICE:  table "history" is already a hypertable, skipping
NOTICE:  table "history_uint" is already a hypertable, skipping
NOTICE:  table "history_log" is already a hypertable, skipping
NOTICE:  table "history_text" is already a hypertable, skipping
NOTICE:  table "history_str" is already a hypertable, skipping
WARNING:  column type "character varying" used for "note" does not follow best practices
HINT:  Use datatype TEXT instead.
WARNING:  column type "character varying" used for "ip" does not follow best practices
HINT:  Use datatype TEXT instead.
WARNING:  column type "character varying" used for "resourcename" does not follow best practices
HINT:  Use datatype TEXT instead.
ERROR:  invalid partitioning function
HINT:  A valid partitioning function for open (time) dimensions must be IMMUTABLE, take the column type as input, and return an integer or timestamp type.
CONTEXT:  SQL statement "SELECT create_hypertable('auditlog', 'auditid', chunk_time_interval => 604800,
                        time_partitioning_func => 'cuid_timestamp', migrate_data => true, if_not_exists => true)"
PL/pgSQL function inline_code_block line 69 at PERFORM 
5058:20240130:151623.289 Starting Zabbix Server. Zabbix 7.0.0beta1 (revision 9bc845eca94).
...
5058:20240130:151623.523 current database version (mandatory/optional): 05000000/05000007
5058:20240130:151623.523 required mandatory version: 06050209
5058:20240130:151623.523 mandatory patches were found
5058:20240130:151623.524 starting automatic database upgrade
5058:20240130:151623.542 completed 0% of database upgrade
...
5058:20240130:151648.147 completed 94% of database upgrade
NOTICE:  function items_name_upper_upper() does not exist, skipping
5058:20240130:151648.201 completed 95% of database upgrade
...
5058:20240130:151648.701 completed 100% of database upgrade
5058:20240130:151648.712 database upgrade fully completed
5058:20240130:151648.747 database could be upgraded to use primary keys in history tables
...
5099:20240130:151649.530 [Z3005] query failed: [0] PGRES_FATAL_ERROR:ERROR:  table "auditlog" is not a hypertable  [select set_integer_now_func('auditlog', 'zbx_ts_unix_now', true)]
5099:20240130:151649.530 Table "auditlog"is not hypertable. Run timescaledb.sql script to upgrade configuration.




[ZBX-17995] If hosts uses ipv4/ipv6, template examples with web.page.get/etc... will not work correctly Created: 2020 Jun 30  Updated: 2024 Feb 13

Status: Need info
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Edgar Akhmetshin Assignee: Denis Rasikhov
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
Team: Team INT
Story Points: 0.3

 Description   

Steps to reproduce:

  1. Open https://www.zabbix.com/integrations/nginx#tab:official2
  2. Setup dual stack system where localhost and primary DNS can be resolved to ipv6 or ipv4.

Result:
Result - web server is not running/accessible.

Reason:
Dual stack system will have localhost pointed to the ipv6 and ipv4, and if web server is listen only ipv4 - template will not work. IPv6 has priority if name can be resolved in ipv4 and ipv6.

Expected:
Notice should be added about IPv6 behaviour of the templates like NGINX/Apache, etc.






[ZBX-19659] improve doc how to install oracle client to use with agent2 Created: 2021 Jul 08  Updated: 2023 Nov 21

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.13, 5.4.2
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Jurijs Klopovskis
Resolution: Unresolved Votes: 7
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Sprint: Sprint 93 (Oct 2022), Product delivery backlog, Sprint 94 (Nov 2022), Sprint 95 (Dec 2022), Sprint 96 (Jan 2023), Sprint 97 (Feb 2023), Sprint 98 (Mar 2023), Sprint 99 (Apr 2023), Sprint 100 (May 2023), Sprint 101 (Jun 2023), Sprint 102 (Jul 2023), Sprint 103 (Aug 2023), Sprint 104 (Sep 2023), Sprint 105 (Oct 2023)

 Description   

Many zabbix user who try to use official solution have troubles. Items get unsupported with error:

Connection failed: ORA-00000: DPI-1047: Cannot locate a 64-bit Oracle Client library: "libclntsh.so: cannot open shared object file: No such file or directory". See https://oracle.github.io/odpi/doc/installation.html#linux for help.

It happens because by default oracle client is installed by default on a path which is not a part where dynamic linker is searching libraries.

I'm very sure it must be documented in zabbix documentation how to configure that.



 Comments   
Comment by Colum Flannigan [ 2022 May 24 ]

In the mean time is it possible someone can update this ticket with the correct steps needed?? i am trying to get an Oracle DB monitored right now and i face this exact error and i am not sure on the solution.

Comment by Denis [ 2022 Jun 07 ]

@colum.flannigan, make sure you have installed Oracle client or you have already a full installed Oracle database on this host. Specify the environment variables ORACLE_HOME and LD_LIBRARY_PATH for the zabbix-agent2 in the /etc/sysconfig/zabbix-agent2. For example (for CentOS 7),

# cat /etc/sysconfig/zabbix-agent2
ORACLE_HOME=/ora/db12
LD_LIBRARY_PATH=/ora/db12/lib:/lib:/usr/lib

Make sure you have the file $ORACLE_HOME/network/admin/tnsnames.ora (where the connection names are described, it will be used in {$ORACLE.SERVICE}). And don't forget to restart zabbix-agent2 daemon.

P.S. If you have multiple SIDs on one host (more than one instance), you need to make a clone of the host by changing the hostname and changing {$ORACLE.SERVICE}.

Comment by mc flurry flurryson [ 2022 Jul 07 ]

Working great for oracle with one instance, but what if I have 2 instances with different ORACLE_HOME/LD_LIBRARY_PATH paths?

Comment by Oleksii Zagorskyi [ 2022 Sep 06 ]

This article should be good source how that could be documented https://blog.zabbix.com/agentless-oracle-database-monitoring-with-odbc/15589/





[ZBX-20367] Enhance Agent selector for Solaris with SunOS version Created: 2021 Dec 16  Updated: 2022 Oct 20

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent (G), Documentation (D)
Affects Version/s: 3.0.32rc1, 4.0.36, 5.4.9rc1, 6.0.0beta1
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Edgar Akhmetshin Assignee: Jurijs Klopovskis
Resolution: Unresolved Votes: 0
Labels: Agent, Download
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot 2021-12-16 at 15.42.59.png    
Issue Links:
Causes
Team: Team B

 Description   

Steps to reproduce:
https://www.zabbix.com/download_agents?version=5.4&release=5.4.5&os=Solaris&os_version=11&hardware=i386&encryption=OpenSSL&packaging=P5P&show_legacy=0

Result:
Users are confused with output of the kernel/sunos version and Solaris version.

For recent versions please set:

  • Solaris 11 (5.11)
  • Solaris 10 (5.10)

For legacy:

  • Solaris 2 (5.0) to 11 (5.11)

Correct list: https://en.wikipedia.org/wiki/Oracle_Solaris






[ZBX-20995] After upgrade to 6.0, unexpanded positional variables $N pop up for web scenario items. Created: 2022 May 05  Updated: 2022 May 05

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Major
Reporter: Oleksii Zagorskyi 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 1.PNG     PNG File 2.PNG    
Issue Links:
Duplicate

 Description   

It happened after ZBXNEXT-7115 change.

In the past we used positional variables in web scenarios and it's quite possible that they are still there.

would be better if they would be converted by server automatically during db upgrade.

If not, here is a workaround - open such web scenario and just update it. All item names will be converted on such update and the positional variables will be changed to fixed values.

It's possible to find such outdated scenarios by SQL:

select hostid, name from items where name like '% scenario "$1%' order by hostid;

Maybe this small issue should be reflected in documentation.






[ZBX-21959] API documentation Trigger object shows wrong type for triggerid property Created: 2022 Nov 22  Updated: 2022 Nov 23

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.2.3
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Rodrigo P Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-11-21-20-00-47-502.png     PNG File image-2022-11-21-20-01-49-428.png    

 Description   

Trying to use API method trigger.get using parameter search [1], as example below:

 

{
    "output": ["triggerid", "description"],
    "search": {"triggerid": "88"},
    "sortfield": "triggerid",
    "sortorder": "ASC",
    "limit": 100
} 

 

Filter using triggerid field with search parameter doesn't work and all data is returned, regardless of the filter applied for triggerid.

 

Documentation says search parameter can be only used with string and text fields:

 

Trigger object documentation [2] says triggerid field is type string, but actually when looking at database structure triggerid is a bigint.

 

Please check documentation for triggerid field type.

 

 

[1]https://www.zabbix.com/documentation/current/en/manual/api/reference_commentary

[2]https://www.zabbix.com/documentation/current/en/manual/api/reference/trigger/object






[ZBX-22066] Please emphasize interface name parameter importance Created: 2022 Dec 11  Updated: 2023 Jan 02

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Templates (T)
Affects Version/s: 5.0.30, 6.0.12, 6.2.6, 6.4.0beta4
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Peter Szabo Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: Discovery, Interfaces, PFSence, documentation, filters
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The "PFSense by SNMP" template's documentation would be better if emphasized in the instructions section the importance of correctly setting the value of the  {$NET.IF.IFNAME.MATCHES} macro.

 

https://www.zabbix.com/integrations/pfsense#pfsense_snmp

 

The current default is


^em[0-9]+${code}
which is the "Intel(R) PRO/1000 Gigabit Ethernet adapter driver", and this configuration limits the template's out-of-the-box autodiscovery to this old adapter only.

Issue:

  1. user associate template with host, and everything works, except the network interface discovery (important thing on firewalls)
  2. Checking the logs does not help, as there is no error, the filtering doing its job
  3. Checking the documentation does not help, as there is no reference to this setting in the installation instructions

 

Solution:

Please add a few words about this macro to the documentation in the "Setup" section. Example:

"

...

5. Check the type of your network card on your PFSense installation and update the value of the {$NET.IF.IFNAME.MATCHES} macro accordingly. Failing to set up this macro results in none or only a subset of the network interfaces discovered and monitored.
"






[ZBX-22374] Oracle Plugin doesn't support connect mode for all user privileges Created: 2023 Feb 17  Updated: 2024 Mar 21

Status: READY TO DEVELOP
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent2 plugin (N), Documentation (D)
Affects Version/s: 5.0.31, 6.0.13, 6.2.7, 6.4.0rc1
Fix Version/s: 6.0.29rc1, 6.4.14rc1, 7.0.0beta3 (master), 7.0 (plan)

Type: Problem report Priority: Major
Reporter: Edgar Akhmetshin Assignee: Eriks Sneiders
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBXNEXT-8071 Add as sysasm connection option to Za... Closed
Duplicate
Team: Team INT
Sprint: Sprint 99 (Apr 2023), Sprint 100 (May 2023), Sprint 101 (Jun 2023), Sprint 102 (Jul 2023), Sprint 103 (Aug 2023), Sprint 104 (Sep 2023), Sprint 105 (Oct 2023), Sprint 106 (Nov 2023), Sprint 107 (Dec 2023), Sprint candidates, S2401
Story Points: 1

 Description   

Steps to reproduce:

  1. https://support.zabbix.com/browse/ZBXNEXT-8071
  2. Try to use SysDG for replica or SysBkp

Expected:
Allow all common for Oracle






[ZBX-22383] New script on action execution problem Created: 2023 Feb 20  Updated: 2023 Mar 24

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 6.2.7
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Evgeny Semerikov Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-02-20-14-14-09-184.png     PNG File image-2023-02-20-14-22-01-078.png    

 Description   

Hello! I'm trying to use new script execution feature and get a lot of problems.

First, I'm created a new script definition:

Second, I'm create action with this script, but have disappointed, because in action creation dialog I must chose where action must be executed, but this is defined in script creation dialog (on zabbix server)!

Third, if I use macro like ({EVENT.DATE} {EVENT.TIME}) ant try to use script in recovery action, then date and time inserts when event occurs, insted when event closed, because for this I must user another macroses ({EVENT.RECOVERY.DATE} {EVENT.RECOVERY.TIME}). Of course, this can be circumvented by adding another script, but somehow it's too much I think.



 Comments   
Comment by Edgar Akhmetshin [ 2023 Feb 22 ]

Second, I'm create action with this script, but have disappointed, because in action creation dialog I must chose where action must be executed, but this is defined in script creation dialog (on zabbix server)!

Thank you for reporting this, documentation and implementation confuses. Confirmed.

Third, if I use macro like (

Unknown macro: {EVENT.DATE}

Unknown macro: {EVENT.TIME}

) ant try to use script in recovery action, then date and time inserts when event occurs, insted when event closed, because for this I must user another macroses (

Unknown macro: {EVENT.RECOVERY.DATE}

Unknown macro: {EVENT.RECOVERY.TIME}

). Of course, this can be circumvented by adding another script, but somehow it's too much I think.

Works by design.





[ZBX-22405] Macro Expansion Broken For Users Without Read Access to Templates Created: 2023 Feb 23  Updated: 2023 Nov 10

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 6.0.12, 6.2.7
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Ryan Eberly Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-02-22-22-00-00-815.png     PNG File image-2023-02-22-22-00-36-121.png     PNG File image-2023-02-22-22-03-35-116.png     PNG File image-2023-02-22-22-05-17-088.png     PNG File image-2023-02-22-22-11-00-401.png    

 Description   

Steps to reproduce:

  1. This can easily be reproduced using the built-in Zabbix server host and 'Zabbix Server health' Template
  2. Create a User group, call it 'test'
  3. Under Host Permissions, give it access to 'Zabbix Servers'
  4. Give no permissions for Template Permissions.
  5. Under Problem tags filters, add Zabbix Servers without any specific tags to grant access to all tags:.
  6. Create a user, i.e. 'favorite-zabbix-customer', and add it to the 'test' user group. I set the user role to the built in 'User Role'. The same behavior can be observed for 'Admin Role'. 
  7. Sign in as the user you just created (favorite-zabbix-customer)
  8. Navigate to Monitoring -> Problems.
  9. Select any current or previous Event by clicking on the timestamp in the timeline to bring up the event details. Several of the fields contain the words "ERROR" (expression) and unresolved macros (description field from the templated trigger). The user macros expand only in the trigger name. 
  10. Watch as 'favorite-zabbix-customer' becomes 'sad-zabbix-customer'

Expected:
I think usermacros should expand/resolve for any user that has permissions to the object. For example, in all of my triggers I include the names of the usermacros used in that trigger for the purpose of indicating to the user what is customizable:

Configurable Thresholds:

    $SOME_MACRO - {$SOME_MACRO}

    $ANOTHER_MACRO:"{#WITH_CONTEXT}" - {$ANOTHER_MACRO:"

{#WITH_CONTEXT}

"}

This is useful so the users don't need to guess which values are configurable in the trigger.

 

Also, the only way for the user created above (favorite-zabbix-customer) to be able to see the macros resolved is to go back and give that user Template permissions to the template group that Zabbix server health belongs in. In the case of Zabbix server health that is Templates/Applications. What this does is override the Host permissions and now the user will have read access to every host linked to a template in Templates/Applications. This is probably not what we want.



 Comments   
Comment by Ryan Eberly [ 2023 Nov 10 ]

 This also prevents those users from visualizing graphs where the history and trends include usermacros. For example, 'history: {$MACRO:"

{#MACRO}

"}' for an item will give a user an error in any graph widget. Current workaround is to give all users read access to the templates, but in an environment with many different templates in use it becomes more difficult to manage. It's much easier and straightforward for Zabbix administrators to only have to specify the host groups the user should have visibility into.





[ZBX-22828] Database upgrade failed on Azure appliance Created: 2023 May 22  Updated: 2023 May 23

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.17, 6.4.2, 7.0.0alpha1
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Mateusz Dampc Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 6.0 Azure Appliance


Attachments: Text File database upgrade failed-1.txt    
Issue Links:
Causes

 Description   

Upgrade from Zabbix 6.0.4 to version bigger than Zabbix 6.0.10 will fail on Azure Appliance because user on database zabbix_srv@localhost doesn't have enough privileges to his zabbix database. It requires bigger. **

Steps to reproduce:

  1. Create VM with installed zabbix 6.0 LTS via Azure Appliance (it will install Zabbix 6.0.4)
  2. Prepare to upgrade your Zabbix to latest LTS version. => Login to mysql and put command (according to changes in database from Zabbix 6.0.11):
    "set global log_bin_trust_function_creators = 1;"
  3. Upgrade your Zabbix server with commands:
    {}"# systemctl stop zabbix-server"{}
    "# dnf update zabbix-server -y"
    "# systemctl start zabbix-server"

Result:
Zabbix server is not running because zabbix_srv@localhost user doesn't have permission to create trigger on database (see attached logs).

User zabbix_srv@localhost doesn't have correct permission on database:

 

mysql> show grants for 'zabbix_srv'@'localhost';
+------------------------------------------------------------------------------------------------------------------------+
| Grants for zabbix_srv@localhost                                                                                        |
+------------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `zabbix_srv`@`localhost`                                                                         |
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER ON `zabbix`.* TO `zabbix_srv`@`localhost` |
+------------------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)mysql>  

Expected:
Database schema upgrade should pass successfuly.

 

Workaround and possible solution:
Give to zabbix_srv@localhost full privilage to database (as it's provided on [zabbix.com/download(https://www.zabbix.com/download?zabbix=6.0&os_distribution=centos&os_version=9&components=server_frontend_agent&db=mysql&ws=apache) instruction)

"grant all privileges on zabbix.* to zabbix_srv@localhost;"

 

 

 






[ZBX-22960] LTS MariaDB 10.6.1->10.6.14+ CE/EE causes blocker downtimes due to the endless list of MDEV bugs on every release Created: 2023 Jun 13  Updated: 2024 Mar 07

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 4.0.46, 5.0.35, 6.0.18, 6.4.3, 7.0.0alpha1
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBX-20706 Zabbix SQL Query causing 100% Usage w... Closed
Duplicate
Sub-task
depends on ZBX-20936 Zabbix 6 Upgrade Fails on Server Proc... Closed
depends on ZBX-24198 Inefficient MariaDB requirements for ... Confirmed

 Description   

Steps to reproduce:

  1. use MariaDB 10.6.x, where x any release from 1 to 14

Not the full list of issues causing downtime in different configurations:

Result:
MariaDB crash, freeze, memory leak, etc...

Expected:
Requirements page should contain warning - not to upgrade higher than MariaDB 10.5, since quality of the database backend in these versions is extremely bad and can be disruptive for Zabbix monitoring system. Moreover there are no specific causes and remediations for this behavior.






[ZBX-22968] ServiceNow webhook expects all custom parameters to start with u_ which is not necessarily the case Created: 2023 Jun 15  Updated: 2023 Jul 14

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Templates (T)
Affects Version/s: 6.0.18, 6.4.3
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Elina Kuzyutkina (Inactive) Assignee: Denis Rasikhov
Resolution: Unresolved Votes: 0
Labels: snow, webhook
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

From the documentation we have just:
To export information into a ServiceNow custom field, add a parameter with the custom field ID as a key (if you need help finding custom field ID, see this page in ServiceNow community).
https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/servicenow?at=release/6.0
The link provided there is not clear.
Judging by the text of the script, it is expected that all custom parameters are named as columns in system tables (starting with u_)

lse if (key.startsWith('u_')) { fields[key.substring(2)] = params[key]; }

all other parameters are ignored
But there are some custom parameters that should be passed without u_. For example:
"assignment_group", "impact", "channel"
Please add the ability to use such custom parameters and clarify in the documentation how to use them.

Regards, Elina






[ZBX-22990] Web monitoring example in documentation for 6.4 doesn't work. Created: 2023 Jun 16  Updated: 2023 Nov 09

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 6.4.2, 6.4.3
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Facundo Vilarnovo Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-06-14-12-59-25-978.png    
Issue Links:
Duplicate

 Description   

Steps to reproduce:

  1. Use Zabbix 6.4.*
  2. Follow the example (real life scenario), error in {sid} from step 2 (https://www.zabbix.com/documentation/current/en/manual/web_monitoring/example)

Result:
(screenshot)

Zabbix 6.0 and 6.2 work as expected. Could be this related?
https://www.zabbix.com/documentation/6.4/en/manual/introduction/whatsnew640#csrf-tokens

Regards.-



 Comments   
Comment by Elina Kuzyutkina (Inactive) [ 2023 Jun 19 ]

Hi,
Yes, you are right, it's related to randomly generated CSRF tokens instead of static session-based tokens that Zabbix frontend uses now

Regards, Elina

Comment by Michael Lindauer [ 2023 Nov 09 ]

Hi,

could you update the Real-life scenario for this?

 

The amount of available tokens varies heavily depending on the opened page.

If the scenario states that the configured user should not have set a specific URL (after login), this shouldn't be an issue.

 

Any Dashboard contains several tokens that can be used with a small change from

regex:name="csrf-token" content="([0-9a-z]{16})"

to something like

regex:_csrf_token(?::|',)\s*"([0-9a-z]{64})"

Regards, Michael

 





[ZBX-22998] Example widget module does not work in recent 6.4.3 Created: 2023 Jun 20  Updated: 2023 Oct 02

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.4.3
Fix Version/s: None

Type: Incident report Priority: Major
Reporter: Oleksii Zagorskyi 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 error.png     Zip Archive lesson_gauge_chart.zip    
Issue Links:
Duplicate

 Description   

https://www.zabbix.com/documentation/current/en/devel/modules/tutorials/widget

I've tried to perform the steps with zabbix 6.4.0 (when the how-to doc was written, I guess) and it was almost working.
Still I could not get latest value displayed, just a spinning icon was displayed. 

But when I copied and tried to use the module on 6.4.3 - I get the "Unexpected server error." when trying to add a widget on dashboard.

I reached "Add JavaScript to the widget" step from the doc and did not implement it.

 

I'm attaching the module I made manually by copy-pasting code from the doc, to be 100% identically.
lesson_gauge_chart.zip



 Comments   
Comment by Oleksii Zagorskyi [ 2023 Jun 20 ]

Also, in the example I'd suggest to change "author": "Zabbix SIA" (in manifest.json) to different value, because currently it's hard to distinguish this demo module in the list of official modules.
I think value "Doc example" would be fine.





[ZBX-23010] Scripts that are links under AlertScriptsPath do not work anymore Created: 2023 Jun 22  Updated: 2024 Mar 21

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S)
Affects Version/s: 5.0.35
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: NAT Helpdesk Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-1.png     PNG File image-2023-06-22-11-18-12-651.png     PNG File image.png    

 Description   

We updated our Zabbix server from version 5.0.31 to 5.0.35 and since then scripts that are links under AlertScriptsPath do not work anymore.
With and till version 5.0.31 we always used links under /usr/lib/zabbix/alertscripts/ without any issue!
Screenshot of the error message:

To workaround this issue we replaced our symbolic links under /usr/lib/zabbix/alertscripts/ with real files!
Maybe this issue has something to do with (ZBX-22688).



 Comments   
Comment by Mark Moses [ 2024 Mar 21 ]

I'm seeing the same behaviour with version 6.0.25





[ZBX-23074] AuthnContextClassRef/PasswordProtectedTransport is not changed if SSO requires urn:oasis:names:tc:SAML:2.0:ac:classes:Kerberos Created: 2023 Jul 07  Updated: 2024 Mar 28

Status: Need info
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 6.0.19, 6.4.4, 7.0.0alpha2
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Edgar Akhmetshin Assignee: Elina Pulke
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

LTS 6.0


Attachments: PNG File image.png    
Issue Links:
Causes
Sub-task
Team: Team C
Sprint: Prev.Sprint, S24-W12/13

 Description   

Steps to reproduce:

  1. try to configure SSO with ADFS
  2. configure SP name ID format to urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos (https://www.zabbix.com/documentation/current/en/manual/web_interface/frontend_sections/users/authentication/saml)
  3. get error

Result:
SSO doesn't work

Expected:
Working SSO.

Workaround - modify manually:

grep -P "AuthnContextClassRef.*SAML" /usr/share/zabbix/vendor/onelogin/php-saml/src/Saml2/AuthnRequest.php
        <!-- <saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml:AuthnContextClassRef> -->
        <saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:Kerberos</saml:AuthnContextClassRef>





[ZBX-23247] Aggregate item. Each key parameter require * character for filtering Created: 2023 Aug 11  Updated: 2023 Aug 11

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S)
Affects Version/s: 6.0.20
Fix Version/s: None

Type: Incident report Priority: Major
Reporter: Oleksii Zagorskyi Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: aggregate, wildcard
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

In documentation we have Example #2 for formula:

sum(last_foreach(/host/net.if.in[*]))

https://www.zabbix.com/documentation/6.0/en/manual/config/items/itemtypes/calculated/aggregate

But we do not show what searched item key it will match.
Yes, the "net.if.in" requires one key mandatory parameter, which would work in this case. But if 2nd key parameter (optional) will be used - it will cause that the aggregated key will fail.

Examples.
Using formula for aggregated item:

avg(last_foreach(/*/test.item[*]))

Sending a value and debug log:

# zabbix_sender -vv -z 127.0.0.1 -p 10051 -k 'test.item[some,foo]' -s it0 -o 555
641103:20230811:144621.365 zbx_expression_eval_execute() expression:'avg(last_foreach(0))'
641103:20230811:144621.365 In expression_init_query_many() /*/test.item[*]?[]
641103:20230811:144621.365 query [txnlev:0] [select i.itemid,i.hostid,i.key_ from items i where i.key_ like 'test.item[%]']
641103:20230811:144621.365 End of expression_init_query_many() items:0
641103:20230811:144621.365 In expression_eval_history() function:last_foreach
641103:20230811:144621.365 In expression_eval_many() last_foreach(/*/test.item[*]?[],...)
641103:20230811:144621.365 End of expression_eval_many():SUCCEED value:double vector[0:0] flags:double vector
641103:20230811:144621.365 End of expression_eval_history():SUCCEED error:
641103:20230811:144621.365 End of zbx_expression_eval_execute():FAIL value: error:Cannot evaluate expression: no input data for function at "avg(last_foreach(/*/test.item[*]))"
641103:20230811:144621.365 get_value_calculated() error:Cannot evaluate expression: no input data for function at "avg(last_foreach(/*/test.item[*]))"
641103:20230811:144621.365 End of get_value_calculated():NOTSUPPORTED
641103:20230811:144621.365 Item [it0:caclagrr] error: Cannot evaluate expression: no input data for function at "avg(last_foreach(/*/test.item[*]))"
641103:20230811:144621.365 End of get_value():NOTSUPPORTED

so, it failed, while actually the SQL really gets the searched item from DB!, while it's actually not visible in the debug:

mysql> select i.itemid,i.hostid,i.key_ from items i where i.key_ like 'test.item[%]';
+--------+--------+---------------------+
| itemid | hostid | key_                |
+--------+--------+---------------------+
|  42741 |  10516 | test.item[some,foo] |
+--------+--------+---------------------+

Changing formula to (we do not have such doc examples!):
Using formula for aggregated item:

avg(last_foreach(/*/test.item[*,*]))

result:

# zabbix_sender -vv -z 127.0.0.1 -p 10051 -k 'test.item[some,foo]' -s it0 -o 555
641103:20230811:144941.524 zbx_expression_eval_execute() expression:'avg(last_foreach(0))'
641103:20230811:144941.524 In expression_init_query_many() /*/test.item[*,*]?[]
641103:20230811:144941.524 query [txnlev:0] [select i.itemid,i.hostid,i.key_ from items i where i.key_ like 'test.item[%,%]']
641103:20230811:144941.524 expression_init_query_many() itemid:42741
641103:20230811:144941.524 End of expression_init_query_many() items:1
641103:20230811:144941.524 In expression_eval_history() function:last_foreach
641103:20230811:144941.524 In expression_eval_many() last_foreach(/*/test.item[*,*]?[],...)
641103:20230811:144941.524 In zbx_vc_get_values() itemid:42741 value_type:3 count:1 period:0 end_timestamp '2023.08.11 14:49:41.524161779'
641103:20230811:144941.524 End of zbx_vc_get_values():SUCCEED count:1 cached:1
641103:20230811:144941.524 End of expression_eval_many():SUCCEED value:double vector[0:1] flags:double vector
641103:20230811:144941.524 End of expression_eval_history():SUCCEED error:
641103:20230811:144941.524 End of zbx_expression_eval_execute():SUCCEED value:555 error:
641103:20230811:144941.524 get_value_calculated() value:555
641103:20230811:144941.524 End of get_value_calculated():SUCCEED
641103:20230811:144941.524 End of get_value():SUCCEED

we see SQLs is slightly different (not a key point) but now C code in functions expression_init_query_many and/or expression_get_item_candidates handles it correctly and works!

Conclusion:
If we do not want to fix that in C code, we have to adjust our documentation plus provide such example.

In doc state cleanly that:
1. Each item key parameter requires its own wildcard character *, separated by comma, as in searched original key.
2. Wildcard character * works only for whole key parameter, not for its part.

p.s. I've tried to do it for part of key parameter - it fails, because prepared SQL is not correct to find such item:

641103:20230811:145751.944 In get_value_calculated() key:'caclagrr' expression:'avg(last_foreach(/*/test.item[packetloss,isp*]))'
641103:20230811:145751.944 In zbx_expression_eval_init()
641103:20230811:145751.944 End of zbx_expression_eval_init()
641103:20230811:145751.944 In substitute_simple_macros_impl() data:EMPTY
641103:20230811:145751.944 In zbx_expression_eval_execute()
641103:20230811:145751.944 zbx_expression_eval_execute() expression:'avg(last_foreach(0))'
641103:20230811:145751.944 In expression_init_query_many() /*/test.item[packetloss,isp*]?[]
641103:20230811:145751.944 query [txnlev:0] [select i.itemid,i.hostid from items i where i.key_='test.item[packetloss,isp*]']
641103:20230811:145751.944 End of expression_init_query_many() items:0
641103:20230811:145751.944 In expression_eval_history() function:last_foreach
641103:20230811:145751.944 In expression_eval_many() last_foreach(/*/test.item[packetloss,isp*]?[],...)
641103:20230811:145751.944 End of expression_eval_many():SUCCEED value:double vector[0:0] flags:double vector
641103:20230811:145751.944 End of expression_eval_history():SUCCEED error:
641103:20230811:145751.944 End of zbx_expression_eval_execute():FAIL value: error:Cannot evaluate expression: no input data for function at "avg(last_foreach(/*/test.item[packetloss,isp*]))"
641103:20230811:145751.944 get_value_calculated() error:Cannot evaluate expression: no input data for function at "avg(last_foreach(/*/test.item[packetloss,isp*]))"
641103:20230811:145751.944 End of get_value_calculated():NOTSUPPORTED
641103:20230811:145751.944 Item [it0:caclagrr] error: Cannot evaluate expression: no input data for function at "avg(last_foreach(/*/test.item[packetloss,isp*]))"
641103:20230811:145751.944 End of get_value():NOTSUPPORTED





[ZBX-23341] Wrong type of a parameter in the API documentation for sla.getsli Created: 2023 Aug 30  Updated: 2023 Oct 10

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.21, 6.4.6, 7.0.0alpha4
Fix Version/s: None

Type: Problem report 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

Attachments: PNG File Screenshot 2023-08-30 093207.png    
Issue Links:
Duplicate

 Description   

The parameter periods is listed as array but is actually an integer. This is also indicated by “Possible values: 1-100” and the fact that the Zabbix API endpoint throws errors when attempting to use arrays.

Documentation link for 6.0:
https://www.zabbix.com/documentation/6.0/en/manual/api/reference/sla/getsli



 Comments   
Comment by Constantin Oshmyan [ 2023 Oct 10 ]

Looks like a duplicate of ZBX-20784.





[ZBX-23367] Update documentation about DB connection parameters Created: 2023 Sep 06  Updated: 2023 Sep 12

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 6.0.21, 6.4.6, 7.0.0alpha4
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Denis Rasikhov Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 1
Labels: configuration, documentation, frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-09-06-16-06-20-999.png     PNG File image-2023-09-06-16-07-52-355.png     PNG File image-2023-09-06-16-17-48-223.png    
Team: Team D
Story Points: 1

 Description   

Currently we have misleading information about some DB connection parameters in documentation and configuration files when PostgreSQL is used as the DB engine for Zabbix.

1) DBHost:

### Option: DBHost
#       Database host name.
#       If set to localhost, socket is used for MySQL.
#       If set to empty string, socket is used for PostgreSQL.
#       If set to empty string, the Net Service Name connection method is used to connect to Oracle database; also see
#       the TNS_ADMIN environment variable to specify the directory where the tnsnames.ora file is located.
#
# Mandatory: no
# Default:
# DBHost=localhost

Also documentation is saying that "With PostgreSQL only empty string results in attempt to use socket.".

In fact, if you specify the directory with the socket file here, it will also use the socket connection. I guess this parameter actually behaves the same way as the "-h hostname" parameter in the psql utility and "If the value begins with a slash, it is used as the directory for the Unix-domain socket." Check the psql documentation. So you can specify the custom directory with if for some reason socket file is placed in non-standard location.

For example, I've set up the PostgreSQL-based Zabbix instance to work throgh PgBouncer and the following parameter works perfectly fine for me:

DBHost=/var/run/pgbouncer

I would suggest to change it to something like "If the value begins with a slash, it is used as the directory for the Unix-domain socket for PostgreSQL. If set to empty string, default socket location /var/run/postgresql is used for PostgreSQL."

Or maybe we could somehow combine it with DBSocket parameter instead, which is currenlty used for MySQL only - that would sound more logical from the users's perspective

 

2) DBPort:

### Option: DBPort
#       Database port when not using local socket.
#       If the Net Service Name connection method is used to connect to Oracle database, the port number from the
#       tnsnames.ora file will be used. The port number set here will be ignored.
#
# Mandatory: no
# Range: 1024-65535
# Default:
# DBPort= 

If socket connection is used with PostgreSQL, this parameters behaves as described in the "-p port" parameter in the psql utility: "Specifies the TCP port or the local Unix-domain socket file extension on which the server is listening for connections."

So if you would like to change the port of DB server to some other value and want to use socket connection, you will also need to set it here, becase it affects which file will be used for the connection ("/var/run/pgbouncer/.s.PGSQL.6432" in that case with the DBHost parameter specified in p.1, if the DBPort is set to 6432).

 


 

Also, setup section during the first frontend launch probably should be rethinked as well, because it's not clear that you can actually set the socket path in the host field:

And looks like with MySQL it's not possible to set custom socket for frontend connection at all, there is no "Database socket" option and "Database host" here doesn't accept filepaths:

 

And that looks wrong - you can change this parameter for the server-DB connection but not for the frontend-DB. Why so?






[ZBX-23449] Zabbix v6.0.x documentation issues, part 6 Created: 2023 Sep 21  Updated: 2024 Mar 28

Status: IN DOCUMENTING
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.21
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Constantin Oshmyan Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
depends on ZBX-23960 Zabbix v6.0.x documentation issues, p... Needs documenting
depends on ZBX-24176 Zabbix v6.0.x documentation issues, p... IN DOCUMENTING
Team: Team D
Sprint: Documentation backlog
Story Points: 0.1

 Description   

This is a continuation of ZBX-22233, ZBX-22437, ZBX-22819, ZBX-23129 and ZBX-23291 (it could be great to link it here; unfortunately, I have no such permissions).

During my work on documentation translation, I sometimes run into issues with the original (English) version of documentation.
In most cases they are small: broken links or broken formatting.
Probably, it is inefficient to create a separate ZBX on each of them, so I'll summarize just a lot of details in comments below.
[...]
Just note: I'm writing these comments reading the current version of documentation about Zabbix 6.0.
Probably, some of them (or, maybe, most of them) relates to the later versions, too (6.2 and 6.4); I didn't check that.



 Comments   
Comment by Constantin Oshmyan [ 2023 Sep 21 ]

The "Zabbix agent" page

The description of the system.run metric earlier had link to the Command execution page; however, during the last modifications this useful link has been lost.

The "What's new in Zabbix 6.0.22" page

The "Return value limit" section has a broken link to "scripts" (the leading "/" is absent).

The "Appendixes" -> "FAQ and Troubleshooting" page

Answer to the 3rd question could be formatted better (code emphasizing, list).

Comment by Constantin Oshmyan [ 2023 Sep 21 ]

The "Appendixes" -> "Secure connection to the databas" page

The "Overview" section has links to a vendor's documentation. The first link is obsolete (the documentation has been modified), it should be updated.

The same page, the "Use cases" section contains a table.
The last two rows of this table has a numeric lists in the "Description" column with items number "6", but without number "5". Something missed or just a misprint?

The "Appendixes" -> "PostgreSQL encryption configuration" page

The description of the "Verify CA mode" for the frontend tells that "Database TLS key file" and "Database TLS certificate file" fields should be filled in.
However, it contradicts to the screenshot, example of 'zabbix.conf.php' and information in the "Use cases" table here: both these parameters are needed for the 'verify_full' mode, but not needed for the 'verify_ca' mode.

The "Appendixes" -> "Elasticsearch setup" page

This section has the broken link "Requirement page" near the end of the section: the final part of link "#server" does not exist, there should be "#serverproxy" instead.

The "Appendixes" -> "Running agent as root" page

The section for Zabbix agent 2 has the following phrase:

Reload daemons and restart the zabbix-agent service:

Probably, the result of copy/paste. There should be "the zabbix-agent2 service" (correct name of service, ending with "2").

The "Appendixes" -> "SAML setup with Okta" page

This page, probably, should be rewritten again:

  • "Zabbix configuration" section has a bit messy table in the first item (where are Zabbix settings - right or left?);
  • item 2 mentions Zabbix 5; additionally it has a broken directory name (too many slashes);
  • link to the "SAML Authentication" at the same subsection is broken;
  • note int the item 5 says about "private and public encryption certificates"... Maybe, private and public keys? What is the "private certificate"?
Comment by Constantin Oshmyan [ 2023 Sep 21 ]

The "Appendixes" -> "Zabbix server" page

The description for the CacheUpdateFrequency parameter on this page has broken link. Probably, last part of link (subsection) should be "#runtime-control" instead of unexisting "#server-process".
The same note is true for some other parameters, too: DebugLevel, HousekeepingFrequency.

The same page, the descriptions of parameters UnavailableDelay, UnreachableDelay and UnreachablePeriod have broken links (the appropriate page does not have subsections "#unavailable_host" and "#unreachable_host").
This note relates to the Proxy configuration page, too.

The same page, the very end (footnote 2) has the following phrase:

For example, if we only have to remove 1 item prototype, but this prototype is linked to 50 hosts [...]

It looks like a "template" word has been missed there:

For example, if we only have to remove 1 item prototype from the template, but this template is linked to 50 hosts [...]

The "Appendixes" -> "Zabbix agent (UNIX)" page

Comment for HostnameItem here:

The output length is limited to 512KB.

At the same time, comment for the previous parameter (Hostname) tells:

Maximum length: 128 characters per hostname, 2048 characters for the entire line.

Is it not a mistake, does HostnameItem really support up to 512 kilobytes??
(the same is true for the Zabbix agent 2 (UNIX), Zabbix agent (Windows) and Zabbix agent 2 (Windows), too)

The description of the "MaxLinesPerSecond" parameter mentions "'log' and 'eventlog' active checks", and at the following sentence:

The provided value will be overridden by the parameter 'maxlines', provided in 'log' or 'eventlog' item key.

However, the 'eventlog' item is supported on Windows platforms only. Probably, there should be "'log' and 'logrt' active checks" here (and, possible, 'log*.count', too).
The same note is also true for the Zabbix agent 2 (UNIX) page (for the "Plugins.Log.MaxLinesPerSecond" parameter).

The "Appendixes" -> "Zabbix agent (Windows)" page

On this page, the descriptios for "HostMetadataItem" and "HostnameItem" contain the following sentense:

Supports system.run[] regardless of EnableRemoteCommands value.

However, the EnableRemoteCommands parameter is obsolete now, it has been replaced by AllowKey/DenyKey pair (see desrciptions of the same parameters for other agents nearby - for UNIX, Agent 2 for UNIX and Agent 2 for Windows).

The description of the "HostnameItem" parameter also has link "See also a more detailed description". This link is broken: there is no "#configuration" section on the target page; probably, right section is "#hostname-parameter".

Comment by Constantin Oshmyan [ 2023 Sep 21 ]

The "Appendixes" -> "Zabbix agent 2 (Windows)" page

This page seems copy-paste from the appropriate page for UNIX.
So, it has examples of filesystem pathes in UNIX format (with forward slash instead of the back slash) and items used - see descriptions of "Alias", "UserParameter" and "UserParameterDir" parameters.
It mentions "unix socket" in description of the "PluginSocket" parameter.
As well, it does not mention "PerfCounter" and "PerfCounterEn" parameters (supported by Zabbix agent for Windows) - are they supported by the Zabbix agent 2 for Windows?

The "Appendixes" -> "Process configuration" -> "Zabbix agent 2 plugins" -> all plugins

On the subsections for every plugin here there should be specified units for the "Plugins.<plugin>.Timeout" parameter (usually, the last row in the table).
What units are used here - seconds, milliseconds, minutes, ticks, something else?

The "Appendixes" -> "Modbus plugin" page

This page has description of the "Plugins.Modbus.Sessions.<SessionName>.SlaveID" parameter.
This description has a link, that could be a bit more specific: either point to "(/manual/config/items/itemtypes/zabbix_agent#modbus-data) section (with the "#modbus-data" section name), or just to "/manual/appendix/items/modbus" (for me, the first one is better).

In the description if the "Plugins.Modbus.Sessions.<SessionName>.Timeout" parameter the units should be specified (seconds? milliseconds? minutes?).

The "Appendixes" -> MySQL plugin" page

This page: it's unclear the difference between the first an last parameters ("Plugins.Mysql.CallTimeout" and "Plugins.Mysql.Timeout"), some clarification is needed.

Comment by Constantin Oshmyan [ 2023 Sep 21 ]

The "Appendixes" -> "History functions" page

This page has mis-spelled link for the fuzzytime function:

[common-parameters](#common parameters)

instead of the correct one:

[common parameters](#common-parameters)

The same page, the description of the "countunique" function:

count() calculates "bitwise AND" from the value and the mask and compares the result to number_to_compare_with.

There should be "countunique()" instead of "count()".

The same page, the description of the "fuzzytime()" function:

difference between the passive item value (as timestamp) and Zabbix server/proxy timestamp (clock of value collection) is less than or equal to T seconds

However, the "T" parameter is not defined anywhere. Probably, there should be: "...less than or equal to sec seconds"

Comment by Edgar Akhmetshin [ 2023 Sep 21 ]

Hello Constantin,

Thank you, confirmed.

Regards,
Edgar





[ZBX-23581] upgrade notes + what's new missing for 5.0.37, 5.0.38 Created: 2023 Oct 19  Updated: 2024 Jan 12

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Richard Ostrochovský Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Just a formal thing, although there is a convention to publish upgrade notes and what's new also with explicit "This minor version does not have any upgrade notes.", these releases:

Release Notes for Zabbix 5.0.37

Release Notes for Zabbix 5.0.38

But the last upgrade notes and what's new are:

40 What's new in Zabbix 5.0.36

46 Upgrade notes for 5.0.36 (zabbix.com)



 Comments   
Comment by Richard Ostrochovský [ 2023 Oct 19 ]

Also this is missing: https://www.zabbix.com/documentation/5.4/en/manual/installation/upgrade_notes_5412

Comment by Richard Ostrochovský [ 2023 Oct 31 ]

Also 5.0.39 upgrade notes + what's new missing.

Comment by Richard Ostrochovský [ 2024 Jan 12 ]

This seems to be resolved, ticket can be closed.





[ZBX-23630] Add missing selectInventory value Created: 2023 Oct 31  Updated: 2023 Nov 01

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.23, 6.4.7, 7.0.0alpha7
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Damiano Gualandri Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

What happened:

I was trying to use Zabbix API selectInventory, I wanted to get all the fields but docs specifically said that "I can only specify desired fields by passing an array"

However, I remembered this was an option in previous Zabbix versions, so I've found out that in Zabbix 2.0 there is this wording "Possible values are true to return all of the data, or an array of property names to return only specific properties." that is correct.

This works on 6.4 (latest).{}

 

Steps to reproduce:

  1. Go to: https://www.zabbix.com/documentation/current/en/manual/api/reference/host/get
  2. See that under selectInventory the diciture is missing
  3. Go to: https://www.zabbix.com/documentation/2.0/en/manual/appendix/api/host/get
  4. See that here is present

Since it is missing, but it's really important and useful, I'd like that sentence in latest docs too.

Thanks in advance!






[ZBX-23765] Problem widget shows resolved issues which are suppressed during maintenance Created: 2023 Nov 30  Updated: 2023 Nov 30

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 6.0.24rc1, 6.4.9rc1, 7.0.0alpha8
Fix Version/s: None

Type: Problem report 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:
Duplicate

 Description   

Steps to reproduce:

  1. create maintenance with data collection
  2. filter problems in a problem widget by suppression status
  3. no problems displayed during maintenance
  4. get some problems resolved

Result:
Get RESOLVED problems listed, even if they were suppressed and are not selected to be shown.

Expected:
Do not show resolved issue which are suppressed.






[ZBX-23770] Avoid SELECT_CATALOG_ROLE for Oracle template Created: 2023 Dec 01  Updated: 2023 Dec 01

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Templates (T)
Affects Version/s: 6.0.24, 6.4.9, 7.0.0alpha9
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 0
Labels: Oracle, Permissions, hardening
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

Steps to reproduce:

  1. https://www.zabbix.com/integrations/oracle#oracle_odbc

Result:
SELECT_CATALOG_ROLE permissions are given to the user, not secure

Expected:
– Example: Avoid SELECT_CATALOG_ROLE for zabbix_mon to select v$restore_point

connect sys as sysdba


CREATE OR REPLACE TYPE user_restore_point_row AS OBJECT (

  SCN                          NUMBER,

  DATABASE_INCARNATION#        NUMBER,

  GUARANTEE_FLASHBACK_DATABASE VARCHAR2(3),

  STORAGE_SIZE                 NUMBER,

  TIME                         TIMESTAMP(9),

  RESTORE_POINT_TIME           TIMESTAMP(9),

  PRESERVED                    VARCHAR2(3),

  NAME                         VARCHAR2(128),

  CLEAN_PDB_RESTORE_POINT      VARCHAR2(3),

  PDB_INCARNATION#             NUMBER,

  REPLICATED                   VARCHAR2(3),

  CON_ID                       NUMBER 

);

/

CREATE OR REPLACE TYPE user_restore_point_tab IS TABLE OF user_restore_point_row;

/

 

CREATE OR REPLACE FUNCTION user_get_restore_point return user_restore_point_tab pipelined as

begin

  for i in (select * from v_$restore_point)

loop

   pipe row (user_restore_point_row(i.SCN,i.DATABASE_INCARNATION#,i.GUARANTEE_FLASHBACK_DATABASE,i.STORAGE_SIZE,i.TIME,i.RESTORE_POINT_TIME,i.PRESERVED,[i.NAME|http://i.NAME],i.CLEAN_PDB_RESTORE_POINT,i.PDB_INCARNATION#,i.REPLICATED,i.CON_ID));

  end loop;

return;

end;

/

 

GRANT EXECUTE ON user_get_restore_point to zabbix_mon;

GRANT CREATE VIEW TO zabbix_mon;

REVOKE SELECT_CATALOG_ROLE FROM zabbix_mon;

connect zabbix_mon

select * from table(SYS.user_get_restore_point);

CREATE OR REPLACE VIEW zabbix_mon.v$restore_point as select * from table(SYS.user_get_restore_point);

select * from v$restore_point;





[ZBX-23848] Missing fields in User object Created: 2023 Dec 15  Updated: 2023 Dec 15

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Piotr Wegrzyn 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   

By executing the "user.get" method with 'selectMedias: "extend"' in Zabbix 6.4, Zabbix indicates that the following structure is returned: https://www.zabbix.com/documentation/current/en/manual/api/reference/user/object#media.

However, the fields "mediaid" and "userid" are returned in addition to the documented fields.

These fields would have to be added to the documentation.






[ZBX-23862] Add ODBC setup page for official MSSQL UnixODBC drivers Created: 2023 Dec 18  Updated: 2023 Dec 18

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.41rc1, 6.0.26rc1, 6.4.11rc1, 7.0.0alpha9
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: MSSQL, ODBC, connections, drivers, strings, unixodbc
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Open https://www.zabbix.com/documentation/current/en/manual/config/items/itemtypes/odbc_checks/unixodbc_mssql
  2. Only FreeTDS option exists

Result:
FreeTDS is used as an only solution.

Expected:

  • Connection string usage example from command line with isql and from item:
#item key:
db.odbc.get["MSSQL example",,"Driver={ODBC Driver 18 for SQL Server};Server=127.0.0.1;Port=1433;UID=zbx_monitor;PWD=zbx_monitor_password;Encrypt=no"]
# command line:
isql -v -k "Driver={ODBC Driver 18 for SQL Server};Server=127.0.0.1;Port=1433;UID=zbx_monitor;PWD=zbx_monitor_password;Encrypt=no"

Full list of MSSQL DSN and Connection String Keywords and Attributes:
https://learn.microsoft.com/en-us/sql/connect/odbc/dsn-connection-string-attribute

Driver setup:
https://learn.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server






[ZBX-23960] Zabbix v6.0.x documentation issues, part 8 Created: 2024 Jan 18  Updated: 2024 Mar 06

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.25
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Constantin Oshmyan Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File screenshot-2024-01-18_01.PNG    
Issue Links:
Sub-task
depends on ZBX-24176 Zabbix v6.0.x documentation issues, p... IN DOCUMENTING
part of ZBX-23291 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-22233 Zabbix v6.0.x documentation issues Closed
part of ZBX-22437 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-22819 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-23129 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-23739 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-23449 Zabbix v6.0.x documentation issues, p... IN DOCUMENTING
Team: Team A
Sprint: Documentation backlog
Story Points: 0.1

 Description   

This is a continuation of ZBX-22233, ZBX-22437, ZBX-22819, ZBX-23129, ZBX-23291, ZBX-23449 and ZBX-23739 (it could be great to link it here; unfortunately, I have no such permissions).

During my work on documentation translation, I sometimes run into issues with the original (English) version of documentation.
In most cases they are small: broken links or broken formatting.
Probably, it is inefficient to create a separate ZBX on each of them, so I'll summarize just a lot of details in comments below.
[...]
Just note: I'm writing these comments reading the current version of documentation about Zabbix 6.0.
Probably, some of them (or, maybe, most of them) relates to the later versions, too (6.2 and 6.4); I didn't check that.



 Comments   
Comment by Constantin Oshmyan [ 2024 Jan 18 ]

The "Appendixes" -> "Escaping examples" page

This page has some issues:

  • all examples with LLD macro functions actually don't make sense: the regexp does not contain any capturing group, so "\1" parameter will always return an empty string;
  • the 3-rd example ("LLD macro function inside user macro context") has disappeared backslash in the "User macro with context" line:

The "Web interface" -> "Dashboard" page

The first section "Overview" on this page has link to the host permissions page.
This link is broken: it refers to the unexisting "#permissions-to-groups" section. Probably, the correct section name is "#permissions-to-host-groups".

The same page, the Widget menu section:
the table has a broken links to the graph/classic graph widgets in the "In dashboard view mode" row. The last parts of these links should be:

  • "/widgets/graph" (instead of "/widgets#graph")
  • "/widgets/graph_classic" (instead of "/widgets#graph-classic")
Comment by Constantin Oshmyan [ 2024 Jan 18 ]

The "Web interface" -> "Problems by severity" page

This page has the following issues:

  • the screenshot only contains part of settings (part of them are out of this picture);
  • the "Show operational data" field:
    • is located in a different place (just after the "Layout" field on the screen, but after "Hide groups without problems" in the table);
    • has different type (not a checkbox, but a radio-button);
    • link to the "Operational data" is a bit inaccurate: it refers to the "#overview" section, but more correct section is "#operational-data-of-problems".

The "Web interface" -> "2 Web scenarios" page

This page has the following sentence:

The maximum number of scenarios displayed per page depends on the Rows per page user profile setting.

The link at the end is broken: the appropriate page does not have a section "#configuration"; probably, the "#user-profile" section is correct.

The "Web interface" -> "4 Latest data" page

This page has a broken link (due to a wrong formatting) near the end of section "Overview" (the last sentence, just before the note "Attention:")

Comment by Constantin Oshmyan [ 2024 Jan 18 ]

The "Web interface" -> "Services" page

This page has the section "Viewing services" with the table describing displayed data:

  • The description in the "Status" row tells: "(trigger color and severity) - indicates a problem and its severity". The severity of problem can differ from the severity of trigger (due to possibility to modify the existing problem with acknowledgement). It's unclear, which of severities will a service have in this case.
  • The space is missing at the beginning of the "Tags" description (just after the first link). Moreover, this link is a bit strange and non-informative; probably, this one could be better.

The "Web interface" -> "Inventory" -> "Hosts" page

This page has the following sentence in the "Overview" section:

To display all host inventories, select no host group in the filter, clear the comparison field in the filter and press "Filter".

However, there is no "Filter" button on this screen. As you can see at the screenshot, there are only "Apply" and "Reset" buttons here.
Moreover, the "Reset" button does exactly what is described for this task (clears host groups and filter); i.e. it's enough just to click the "Reset" button.

The same page, "Inventory details" section a bit later:

The Overview tab contains some general information about the host along with links to predefined scripts...

I can't see any predefined scripts here (on the screenshot or in real life).

The "Web interface" -> "Reports" -> "System information" page

The "System stats" section here has a broken link in the description of the "Database history tables upgraded" parameter: the last part of the link should contain a section name "#enabling-extended-range-of-numeric-float-values" (instead of "#enabling_extended_range_of_numeric_float_values", dashes instead of underscores).

The same page and section, the link "Housekeeping" under the table is broken. Probably, the correct link should be "/manual/web_interface/frontend_sections/administration/general#housekeeper" (instead of non-existing "/manual/web_interface/frontend_sections/administration/housekeeping").

Comment by Constantin Oshmyan [ 2024 Jan 18 ]

The "Zabbix processes" -> "High availability" page

The "Enabling high availability" section has a broken link into "Reports → System information". There is no "#status-of-ha-cluster-nodes" section on that page; probably, the correct section name is "#high-availability-nodes".

The "Web interface" -> "Rebranding"

This page is absent in the table of contents on the left.

The "Web interface" -> "Reports" -> "Scheduled reports" page

The "Using filter" section mentions the "Report owner" option of filter; however, this option is really just called "Show" (as you can see on the screenshot on this page).

The same section contains the sentence:

The filter is located above the Scheduled reports bar.

As you can see on the same screenshot, there is no bar with such name (besides the section name; but the filter is located below the section name, not above).

The "Web interface" -> "Reports" -> "Availability report" page

The"Using filter" section here has the following at the end of section:

The filter is located below the Availability report bar. It can be opened and collapsed by clicking on the Filter tab on the left.

Actually, the Filter tab is located on the right.
(The same is true for the "Using filter" subsection on the "Triggers top 100" and "Action log" pages).

The same page, a bit later: the section "Filtering by trigger template" has a broken formatting of the parameter "Template trigger".

Comment by Constantin Oshmyan [ 2024 Jan 18 ]

The "Web interface" -> "Reports" -> "Audit" page

This page has the following description of the "Resource" column:

Type of the affected resource (All, API token, Action, Authentication, Autoregistration, etc.).

"All" is the valid choice in the filter, but, probably, not a valid value displayed in this column.

The "Web interface" -> "Reports" -> "Action log" page

This page has the following description of the "Type" column:

Operation type is displayed - Email or Command.

In fact, it does not display the "Command" text: it really displays the "Email" for notifications, but this field is empty for any commands.
Actually, since version 5.4 there is no "Command" operations anymore; all action's commands are transformed into global scripts.

The same table, the description of the "Message" column:

The content of the message/remote command is displayed.

This is not quite correct. The content is displayed for the messages and for the global scripts with the Type=Script. For example, for global scripts with Type=Webhook, their name is displayed (instead of script's content).

The "Web interface" -> "Time zones" page

This page has a broken link at the very end: the link to "user profile" has the unexisting section name "#configuration" (probably, there should be "#user-profile").

Comment by Constantin Oshmyan [ 2024 Jan 18 ]

The "Web interface" -> "Administration" -> "General" page

The GUI section has the broken link at the description of the "Show technical errors" parameter: the link onto "Zabbix Super Admins" page has the section "#users1" at the end, but really this section is "#users-1" (the dash missed).

The same table, the "Max history display period" parameter has the following description:

Maximum time period for which to display historical data in Monitoring subsections: Latest data, Web, and in the Data overview dashboard widget.

However, there is no a "Web" subsection in the "Monitoring" menu.

The same page, the "Icon mapping" section has a broken link "network map configuration" (it contains the extra space).

The same page, the "Geographical maps" section has a broken link at very beginning: the correct link onto Geomap dashboard widget ends with "/widgets/geomap" (not "/widgets#geomap").

The same page, the "Other parameters" section: the description of the "User group for database down message" parameter has garbage in an example of a sent message:

[MySQL\|PostgreSQL\|Oracle] database...

The backslashes are not necessary here.

The "Web interface" -> "Administration" -> "Proxies" page

The table in the "Proxies" section does not describe the "Compression" column.

The "Web interface" -> "Administration" -> "Authentication" page

The "SAML authentication" section has some formatting issues:

  • the very end of the "Setting up the identity provider" subsection: it seems like the <path_to_zabbix_ui> examples are a bit broken (some percentage signs look like a garbage);
  • the table in the "Setting up Zabbix" subsection: it looks like the name of the "Username attribute" parameter is bad-formatted.

(that's all for now)

Comment by Edgar Akhmetshin [ 2024 Jan 18 ]

Hello Constantin,

Thank you, confirmed.

Regards,
Edgar

Comment by Constantin Oshmyan [ 2024 Feb 01 ]

Hi, guys!

I have a small portion of additional notes. Probably, it's my final part for the v6.0
How it will be better – to add these notes just here, or create a new ticket for them?

Regards,
Constantin

Comment by Constantin Oshmyan [ 2024 Mar 02 ]

How it will be better – to add these notes just here, or create a new ticket for them?

During the last month I've collected some more materials to open the new ticket (ZBX-24176); I hope, it will be the last one in this series.
Thank you for your job, guys!





[ZBX-24048] "Item value" widget does not respect the "s" units Created: 2024 Feb 06  Updated: 2024 Mar 27

Status: Doc. sign-off
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.25
Fix Version/s: 6.0.29rc1, 6.4.14rc1, 7.0.0beta3 (master), 7.0 (plan)

Type: Documentation task Priority: Major
Reporter: Constantin Oshmyan Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 1
Labels: widget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2024-02-21-11-14-21-969.png     PNG File image-2024-02-21-11-14-58-367.png     PNG File image-2024-02-21-11-16-15-262.png     PNG File screenshot-2024-02-06_01.PNG     PNG File screenshot-2024-02-06_02.PNG     PNG File screenshot-2024-02-26_01.PNG    
Team: Team A
Sprint: Documentation backlog, S24-W8/9
Story Points: 1

 Description   

Steps to reproduce:

  1. Create some item with "Type of information"="Numeric (unsigned)" and Units="uptime" (for example, the standard "system.uptime" metric from some OS template);
  2. Create a duplicate item with the same "Type of information"="Numeric (unsigned)", "Type"="Dependent", master item = <created on the previous step>, Units="s";
  3. Put to a dashboard 2 widgets with type="Item value" and select for them just created items (default config should be enough);
  4. Compare visualization of these items on the "Latest data" screen and on the dashboard.

Result:
See screenshots attached.
"Latest data" screen displays identical values (for example, "00:10:26" and "10m 26s"); but the dashboard does not transform seconds into a minutes for the "s" units: is displays the same "00:10:26" for the "uptime" units, but "10.43m" for the "s" units.

Latest data:

Dashboard:

Expected:
Correct time transformation into a string, as described in the documentation:

s - translated to "yyy mmm ddd hhh mmm sss ms"; parameter is treated as number of seconds.
For example, if you receive the value as 881764 (seconds), it will be displayed as "10d 4h 56m"



 Comments   
Comment by Edgar Akhmetshin [ 2024 Feb 06 ]

Hello Constantin,

Thank you for reporting the issue. Confirmed.

Regards,
Edgar

Comment by Alexander Vladishev [ 2024 Feb 24 ]

This is intentionally done within ZBX-22166. The strategy of rounding the most significant time unit is applied when decimal digits are specified > 0. When decimal digits are equal zero, the standard approach is used.

Comment by Constantin Oshmyan [ 2024 Feb 26 ]

Wow, really.
I can confirm that if I set the "Decimal places" widget parameter into zero (instead of default value "2"), then it displays the value as expected:

So, it's really more a documentation problem.





[ZBX-24078] Server resolves wrong {TRIGGER.NAME} values in trigger Action Created: 2024 Feb 12  Updated: 2024 Mar 22

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.26, 6.4.11, 7.0.0beta1
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Edgar Akhmetshin Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Team: Team A
Sprint: Documentation backlog, S24-W8/9, S24-W10/11
Story Points: 1

 Description   

Steps to reproduce:

  1. Install Zabbix
  2. Configure trapper items or any other to receive values, at least 2
  3. Configure triggers for this items
  4. Configure some Action to use
    {TRIGGER.NAME} with this items
  5. Generate events (by sending something to items), so that ns/clock will be almost the same, but for different triggers
  6. Get mixed values in Event/Action log for the macro
    {TRIGGER.NAME}. 

Result:

Mixed up values inside notifications. 

Expected:
Correct resolving for the macro value. 






[ZBX-24115] Aggregated and calculated checks BNF grammar is not documented Created: 2024 Feb 19  Updated: 2024 Mar 21

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.26, 6.4.11, 7.0.0beta1
Fix Version/s: 6.0.29rc1, 6.4.14rc1, 7.0.0beta3 (master), 7.0 (plan)

Type: Documentation task Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team D
Story Points: 1

 Description   

Steps to reproduce:

  1. https://www.zabbix.com/documentation/current/en/manual/appendix/functions/aggregate#aggregate-functions-1
  2. https://www.zabbix.com/documentation/current/en/manual/config/items/itemtypes/calculated/aggregate

Result:
Users has questions left unanswered:
https://support.zabbix.com/browse/ZBXNEXT-6452?focusedId=657583&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-657583

It seems the new syntax of calculated (and, especially, aggregated) checks was not documented enough. At least, I could not find a lot of details in the documentation.
The attached document "New unified syntax for triggers, aggregated and calculated checks.pdf" has the following sentence:

BNF grammar must be created and documented

Where can we find this grammar? Probably, the best place for it – some appendix (like the list of Macro's, functions, or detailed description of Zabbix protocols).

Additional quote from the same document:

Must support expressions as function parameters like func3(10*func1(), func2(), 123)

Unfortunately, this moment is also not documented (was it implemented?) and has no examples.

Some additional notes and questions:

  • there should be a clearly description of rules about the star character ("*") usage as a wildcard for aggregation functions:
    • is it possible to use it in any aggregate function or in the foreach functions only?
    • what part of key could be replaced by star? For example, what of the following constructions is valid:
      • /*/some.key (star replaces the entire hostname)
      • /host/* (star replaces the entire key)
      • /*/* (star replaces both entire hostname and entire key simultaneously)
      • /host/some.key[*] (star replaces entire key parameter)
      • /host/some.key[param1,*,param2] (star replaces some of key parameters)
      • /host*/some.long.key.* (star replaces some part of hostname or key)
      • /host*ends/some.long.*.key (the same as previous, but star is in the middle of string)
      • /host/net.if.in[eth*] (star replaces the part of key parameter)
  • the common syntax of filters for aggregations must be described. Documentation has some examples (like: /*/key?[group="ABC" and tag="tagname:value"]), but:
    • all examples include the question mark and square brackets, but it is not mentioned explicitly;
    • it is not clear if spaces are allowed (around the question mark, brackets, equal mark);
    • it is not clear if quotes characters (") are mandatory or optional (for readability only);
    • it is not clear if the filtering is performed by exact matching or just as a substring, case-sensitive or not (for all possible cases: group names, tag names and tag values).

At the moment we've migrated to version 6.0.3; but all these questions are still actual.

Expected:
Instead of some corner case examples mentioned in the documentation rules should be described.






[ZBX-24132] Maintenance period for Services Created: 2024 Feb 21  Updated: 2024 Mar 21

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.26, 6.4.11, 7.0.0beta1
Fix Version/s: 6.0.29rc1, 6.4.14rc1, 7.0.0beta3 (master), 7.0 (plan)

Type: Documentation task Priority: Major
Reporter: Egor Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix 7.0.0 Beta1


Team: Team D
Sprint: Documentation backlog
Story Points: 0.5

 Description   

In documentation:

https://www.zabbix.com/documentation/devel/en/manual/maintenance

"You can define maintenance periods for host groups, hosts and specific triggers/services in Zabbix."

Fot triggers, hosts etc all is clear but for services - not clear at all.

What is it mean in terms of alerting with "Service action"? "Service actions" have some differences comparing "trigger actions".

No any information.

 






[ZBX-24176] Zabbix v6.0.x documentation issues, part 9 Created: 2024 Mar 01  Updated: 2024 Mar 25

Status: IN DOCUMENTING
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.26
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Constantin Oshmyan Assignee: Konrad Tomala (Inactive)
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
part of ZBX-23291 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-22233 Zabbix v6.0.x documentation issues Closed
part of ZBX-22437 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-22819 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-23129 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-23739 Zabbix v6.0.x documentation issues, p... Closed
part of ZBX-23960 Zabbix v6.0.x documentation issues, p... Needs documenting
part of ZBX-23449 Zabbix v6.0.x documentation issues, p... IN DOCUMENTING
Team: Team D
Sprint: Documentation backlog
Story Points: 3

 Description   

This is a continuation of ZBX-22233, ZBX-22437, ZBX-22819, ZBX-23129, ZBX-23291, ZBX-23449, ZBX-23739 and ZBX-23960 (it could be great to link it here; unfortunately, I have no such permissions). I hope, it is a final part

During my work on documentation translation, I sometimes run into issues with the original (English) version of documentation.
In most cases they are small: broken links or broken formatting.
Probably, it is inefficient to create a separate ZBX on each of them, so I'll summarize just a lot of details in comments below.
[...]
Just note: I'm writing these comments reading the current version of documentation about Zabbix 6.0.
Probably, some of them (or, maybe, most of them) relates to the later versions, too (6.2 and 6.4); I didn't check that.



 Comments   
Comment by Constantin Oshmyan [ 2024 Mar 01 ]

The "Web interface" -> "Administration" -> "User groups" page

The table on this page describes only 3 possible values for the "Frontend access" parameter. In reality, it can have once more value – "LDAP".

The "Web interface" -> "Administration" -> "User roles" page

The table on this page has a bit broken row in the section "Inventory" -> "Overview".

The "Web interface" -> "Administration" -> "Media types" page

The very last sentence in the "Overview" section is:

To import a media type from XML, click on the Import button in the top right-hand corner.

At the same time, at the next paragraph it's told that "Export" button allows to "export the media types to a YAML, XML or JSON file".
Is it really possibly to export in three different formats (YAML, XML or JSON), but to import in XML only?

The "Web interface" -> "Administration" -> "Scripts" page

The table on the "Overview" section of this page tells the following about the "Commands" column:

All commands to be executed within the script are displayed.

It is not true for the scripts with Type=Webhook: nothing is displayed.

Comment by Constantin Oshmyan [ 2024 Mar 02 ]

The "Web interface" -> "Configuration" -> "Host groups" page

The table here has a broken link in the description of the "Name" field: the correct section name on this page is "#creating-a-host-group" (not "#configuring_a_host_group").

The "Web interface" -> "Configuration" -> "Templates" -> "Items" page

The filtering table here starts with the parameter "Host groups" (this parameter is really has this name). However, the screenshot there displays that this parameter is called "Template groups".

The "Web interface" -> "Configuration" -> "Templates" -> "Trigger prototypes" page

The table on this page misses the description of "Expression" column.

The "Web interface" -> "Configuration" -> "Hosts" page

The "Overview" section in this page has broken link in description of the "Name" column. The last part of this link refers to unexisting section "#configuring-a-host" (probably, there shoud be "#configuration").

The "Web interface" -> "Configuration" -> "Actions" page

The "Overview" section has the following sentense:

The actions displayed are actions assigned to the selected event source (trigger, service, discovery, autoregistration, internal actions).

However, the service actions in v6.0 are not available in the Configuration → Actions section; they are located in different section (Services → Service actions).

The same section, later (in the "Note"):

Actions for services are maintained in a similar way in the Services->Service actions menu section. User's access to specific service actions depends on the user role permissions set in the Access to services menu section.

There are two notes here:

  • the "->" sequence could be replaced by the arrow ("→") character used in other similar places;
  • the menu does not have Access to services section. Probably, you mean the "Access to services" section of the user roles configuration.
Comment by Constantin Oshmyan [ 2024 Mar 02 ]

The "Web interface" -> "Configuration" -> "Hosts" -> "Discovery rules" page

The table in the "Overview" section has the following note for the "Interval" column:

Note that discovery can also be performed immediately by pushing the Check now button below the list.

However, this button has name "Execute now" (not "Check now").
The same note is true a bit later, for the "Mass editing options" section.
Both these notes are also true for the page "Web interface" -> "Configuration" -> "Hosts" -> "Items".

The "Introduction" -> "Manual structure" page

The "Sections" section contains some obsolete information:

Zabbix concepts explain the terminology used in Zabbix and provides details on Zabbix components.

Starting from version 3.4, "Zabbix concepts" section has been splitted into two sections: "Definitions" and "Zabbix processes".

IT services section details...

Since the same verion 3.4, the "IT services" section was renamed into "Service monitoring".

Maintenance, Regular expressions, Event acknowledgment and XML export/import are...

Since version 2.0, this section is named "Configuration export/import" (not "XML export/import").

The "Zabbix processes" -> "Server" -> "High availability" page

The "Enabling high availability" section has a broken link onto "Reports → System information". This link has no section "#status-of-ha-cluster-nodes"; probably, the correct name is "#high-availability-nodes".

The same link is also a bit later, in the "Managing HA cluster" section of that page.

Comment by Constantin Oshmyan [ 2024 Mar 02 ]

The "Installation" -> "Installation from packages" -> "Windows agent installation from MSI" page

The table near the end of this page has comment for the "ALLOWDENYKEY" parameter:

Sequence of "AllowKey" and "DenyKey" parameters separated by ;. Use \\; to escape the delimiter.

Is it really necessary to use the double backslash before the semicolon? Probably, it is just a formatting defect.

The same table: parameters "ADDPROGRAM" and "ADDLOCAL" have identical comments. It is unclear what is the difference between them, some additional clarification is needed.

The "Installation" -> "Upgrade procedure" -> "Upgrade from sources" page

The long table in the "Overview" section has a broken link near the very end of this table: link to the "database creation scripts" has unexisting section name "#mysql", but actially this section has the name "#mysqlmariadb".

The same note is true for both pages about upgrading from packages (RHEL and Debian/Ubuntu).

The "Installation" -> "Known issues" page

The "Timescale DB: high memory usage with large number of partitions" section has a broken link "see problem report". More accurate, this link is not valid anymore, as the domain "www.postgresql-archive.org" does not exist now

The "Appendix" -> "Command execution" page

This page has the following sentence:

Additional log entry is created for remote commands on Zabbix server to save script execution output and can be enabled using LogRemoteCommands agent parameter.

Is it not a mistake here? Really, a parameter in a Zabbix Agent configuration file will influence onto log entry on Zabbix Server, won't it?
By the way, the parameter "LogRemoteCommands" is described on the Zabbix Agent and Zabbix Proxy configuration page, but absent on the Zabbix Server configuration page. Is this correct?

Comment by Edgar Akhmetshin [ 2024 Mar 04 ]

Hello Constantin

Thank you for the ticket. Confirmed.

Regards,
Edgar

Comment by Constantin Oshmyan [ 2024 Mar 25 ]

Hi, guys!

One more note.
The page "Templates out of the box" contains the following sentence:

If you are upgrading from previous versions, you can find these templates in the zabbix/templates directory of the downloaded latest Zabbix version. While in Configuration → Templates you can import them manually from this directory.

The similar phrase presents in many "What's new" articles. Example:

If you are upgrading from previous versions, you can download new templates from Zabbix Git repository or find them in the zabbix/templates directory of the downloaded latest Zabbix version.

The problem is: it is unclear, what is the "downloaded latest Zabbix version". For example, the archives with sources downloaded by links here do not contain the zabbix/templates directory. What does it mean "downloaded latest Zabbix version" in this context?





[ZBX-24198] Inefficient MariaDB requirements for LTS 7.0 release Created: 2024 Mar 07  Updated: 2024 Mar 07

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 7.0.0beta1
Fix Version/s: None

Type: Problem report Priority: Major
Reporter: Edgar Akhmetshin Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: LTS, MariaDB, Requirements
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot 2024-03-07 at 10.13.22.png    
Issue Links:
Sub-task
part of ZBX-22960 LTS MariaDB 10.6.1->10.6.14+ CE/EE ca... Confirmed

 Description   

Steps to reproduce:

  1. https://www.zabbix.com/documentation/devel/en/manual/installation/requirements

10.5.00-11.2.X InnoDB engine is required.

The recommended version is 10.5.

We recommend using the MariaDB Connector/C library for building server/proxy.

See also: Possible deadlocks with MariaDB.

Result:
https://mariadb.com/kb/en/mariadb-server-release-dates/:

10.7 -> 10.10 already not supported by MariaDB
10.5 -> support ends in 1 year
10.6 -> support ends in 2 years

Expected:
For LTS 7.0 with 5 year support consider using recent LTS version of a MariaDB database.

Works OOB:

  • 10.11.+ (recommended in a requirements)
  • 10.6.+ (due to the Enterprise version of MariaDB)

Works with AllowUnsupportedDBVersions:

  • 10.5.+

Not able to start even with AllowUnsupportedDBVersions:

  • 10.7-10.10
  • <10.5

Make base and recommended version: MariaDB 10.11 (such version even provided by recent Debian 12.x), also there is no issue to install it from official MariaDB repository.



 Comments   
Comment by Vladislavs Sokurenko [ 2024 Mar 07 ]

It would be best if AllowUnsupportedDBVersions would allow everything but just write warning in frontend.





[ZBX-24221] Update request for zabbix_sender document page(ListenBacklog) Created: 2024 Mar 14  Updated: 2024 Mar 14

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.41, 6.0.27, 6.4.12
Fix Version/s: None

Type: Documentation task Priority: Major
Reporter: Syusei YIn Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It appears that the ListenBacklog setting in the agentd configuration file is also being read by the Zabbix sender.

6.0 source
static void	zbx_load_config(const char *config_file)
{
	char	*cfg_source_ip = NULL, *cfg_active_hosts = NULL, *cfg_hostname = NULL, *cfg_tls_connect = NULL,
		*cfg_tls_ca_file = NULL, *cfg_tls_crl_file = NULL, *cfg_tls_server_cert_issuer = NULL,
		*cfg_tls_server_cert_subject = NULL, *cfg_tls_cert_file = NULL, *cfg_tls_key_file = NULL,
		*cfg_tls_psk_file = NULL, *cfg_tls_psk_identity = NULL,
		*cfg_tls_cipher_cert13 = NULL, *cfg_tls_cipher_cert = NULL,
		*cfg_tls_cipher_psk13 = NULL, *cfg_tls_cipher_psk = NULL;
	struct cfg_line	cfg[] =
	{
		/* PARAMETER,			VAR,					TYPE,
			MANDATORY,	MIN,			MAX */
		{"SourceIP",			&cfg_source_ip,				TYPE_STRING,
			PARM_OPT,	0,			0},
		{"ServerActive",		&cfg_active_hosts,			TYPE_STRING_LIST,
			PARM_OPT,	0,			0},
  ~~~
		{"TLSCipherPSK",		&cfg_tls_cipher_psk,			TYPE_STRING,
			PARM_OPT,	0,			0},
		{"ListenBacklog",		&CONFIG_TCP_MAX_BACKLOG_SIZE,		TYPE_INT,
			PARM_OPT,	0,			INT_MAX},
		{NULL}
	};

Isn't ListenBacklog missing from below description?

-c, --config config-file
Only parameters Hostname, ServerActive, SourceIP, TLSConnect, TLSCAFile, TLSCRLFile, TLSServerCertIssuer, TLSServerCertSubject, TLSCertFile, TLSKeyFile, TLSPSKIdentity and TLSPSKFile are supported.

https://www.zabbix.com/documentation/5.0/en/manpages/zabbix_sender
https://www.zabbix.com/documentation/5.2/en/manpages/zabbix_sender
https://www.zabbix.com/documentation/5.4/en/manpages/zabbix_sender
https://www.zabbix.com/documentation/6.0/en/manpages/zabbix_sender
https://www.zabbix.com/documentation/6.2/en/manpages/zabbix_sender
https://www.zabbix.com/documentation/current/en/manpages/zabbix_sender
https://www.zabbix.com/documentation/devel/en/manpages/zabbix_sender






[ZBX-19627] API doesn't specify if filtering is done by and/or Created: 2021 Jul 01  Updated: 2021 Oct 15

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: API (A), Documentation (D)
Affects Version/s: 5.0.13, 5.4.2
Fix Version/s: None

Type: Incident report Priority: Minor
Reporter: Edgars Melveris 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   

In API documentation for host.get method:
https://www.zabbix.com/documentation/current/manual/api/reference/host/get
it does not clearly specify if the filters are applied with "and"or "or" relationship.

The term used there is confusing, for example for groupids

Return only hosts that belong to the given groups.

Can be interpreted as returning only hosts that belong to ALL listed grouid's ("and" relationship) while in reality it returns all hosts that belong to ANY of the given groupids.

There is also another option which in this case doesn't make much sense:
https://www.zabbix.com/documentation/current/manual/api/reference_commentary

searchByAny boolean If set to true return results that match any of the criteria given in the filter or search parameter instead of all of them.
Default: false.

This suggests that by default search should use "AND" and only switch to "OR" if this is enabled.

There should be an option to search using "AND" parameter and the behavior should be clearly documented.






[ZBX-20284] Exclamation mark for password field, docker containers Created: 2021 Nov 26  Updated: 2021 Nov 26

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.17
Fix Version/s: None

Type: Problem report Priority: Minor
Reporter: Aigars Kadikis 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

 Description   

When creating a MySQL zabbix application user, which contains an exclamation mark in password field, then we cannot use character directly to connect to the container. For example, while creating one database with 2 users:

CREATE DATABASE newname CHARACTER SET utf8 COLLATE utf8_bin;
CREATE USER 'zabbix_a'@'%' IDENTIFIED BY 'a@cd#efgh';
CREATE USER 'zabbix_b'@'%' IDENTIFIED BY 'a@cd!efgh';

GRANT SELECT, UPDATE, DELETE, INSERT, CREATE, DROP, ALTER, INDEX, REFERENCES ON newname.* TO 'zabbix_a'@'%';

GRANT SELECT, UPDATE, DELETE, INSERT, CREATE, DROP, ALTER, INDEX, REFERENCES ON newname.* TO 'zabbix_b'@'%';

FLUSH PRIVILEGES;

As a result, the user 'zabbix_a' will succeed to connect:

docker run --name z5017 -e TZ="Europe/Riga" \
-e DB_SERVER_HOST="10.133.80.228" \
-e MYSQL_USER="zabbix_a" \
-e MYSQL_PASSWORD="a@cd#efgh" \
-e MYSQL_DATABASE="newname" \
-e DB_SERVER_PORT="3306" \
-d zabbix/zabbix-server-mysql:ol-5.0.17

But user 'zabbix_b' will not be able to connect:

docker run --name z5017 -e TZ="Europe/Riga" \
-e DB_SERVER_HOST="10.133.80.228" \
-e MYSQL_USER="zabbix_b" \
-e MYSQL_PASSWORD="a@cd!efgh" \
-e MYSQL_DATABASE="newname" \
-e DB_SERVER_PORT="3306" \
-d zabbix/zabbix-server-mysql:ol-5.0.17

Output of none working case:

docker logs z5017 -f                                                  ** Preparing Zabbix server
** Using MYSQL_USER variable from ENV
********************
* DB_SERVER_HOST: 10.133.80.228
* DB_SERVER_PORT: 3306
* DB_SERVER_DBNAME: newname
********************
**** MySQL server is not available. Waiting 5 seconds...
**** MySQL server is not available. Waiting 5 seconds... 

Please document this exception.






[ZBX-20336] add a fping6 known-issue note to documentation based on ZBX-18467 report Created: 2021 Dec 09  Updated: 2023 Jun 06

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.18, 5.4.8, 6.0.0alpha7
Fix Version/s: None

Type: Documentation task Priority: Minor
Reporter: Oleksii Zagorskyi 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 ZBX-18467 fping interval detection breaks ICMP ... Confirmed
Duplicate

 Description   

There is a technical details in this comment:
https://support.zabbix.com/browse/ZBX-18467#comment-608017

Based on the comment, as this issue still may be valid for quite long time, before we hopefully fix this fping6's issue in zabbix code (detect and workaround it), I'd add this note on the Known issues page:
https://www.zabbix.com/documentation/current/en/manual/installation/known_issues#simple-checks

If OS kernel is configured with IPv6 support disabled, fping6 binary cannot be used and produces unexpected error, like missing SUID bit set.
To workaround this, configure zabbix server/proxy to not be able to find the binary by defining and setting Fping6Location parameter to an empty value.






[ZBX-20784] Documentation issues in API Services/SLA Created: 2022 Mar 23  Updated: 2022 Oct 11

Status: IN DOCUMENTING
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.2
Fix Version/s: None

Type: Documentation task Priority: Minor
Reporter: Constantin Oshmyan Assignee: Andrejs Verza
Resolution: Unresolved Votes: 0
Labels: API, documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Documentation about API v6.0


Team: Team A
Story Points: 0.25

 Description   

Method service.get

The value of parameter "evaltype" should be described in more details. It is not clear how to understand the phrase: "0 - (default) And/Or", some explanation is required.

The "tag" parameter has the following description: "Exact match by tag and case-sensitive or case-insensitive search by tag value depending on operator value". However, there is no any explanations: when the tag value has case-sensitive search and when – case-insensitive.
The same note is for the "problem_tags" parameter.

The "SelectChildren" and "selectParents" parameters have the following description:

Return a children property with the child services.

and

Return a parents property with the parent services.

However, there is no children and parents properties in the description of Service objects. It's needed some explanation and example: what these properties could contain (unfortunately, the example contains an empty arrays for these properties, it is not very useful).

The last table (before the "Return values" section has a broken formatting.

SLA object

Description of "SLA service tag" object should include an explanation: if a tag name and tag value use a case-sensitive or case-insensitive comparison.

Method sla.getsli

The parameter "slaid" describes with type="string" and the following description:

IDs of services to return availability information for.

If it really can contain multiple IDs (for multiple services), its type should be "string/array" (the same as the "sla.get" method has).
Otherwise (if the only single ID is allowed), the description should be fixed.

The "period_from" and "period_to" parameters described as "starting date" and "ending date". However, really they are a timestamps (but dates). It is unclear: what will be returned if their values are not at the day's border. For example, daily SLA for 1 period ending today at 18:30:00: will be returned data for today only, for yesterday only, for the period from yesterday 18:30:00 up to today 18:29:59?

The "periods" parameter is described with the type=array, but according to description and example it, probably, has the "integer" type.

It's unclear if it is possible to limit the unneeded information in results. For example: if I need the "sli" values only, is it possible to filter out (i.e. do not return to me) other fields – such as "error_budget" and "excluded_downtimes"?



 Comments   
Comment by Constantin Oshmyan [ 2022 Mar 23 ]

In addition, SLA has the following description of the "status" field:

Possible values:
0 - (default) enabled SLA;
1 - disabled SLA.

It seems that really returned values are just opposite: 0 for disabled SLA and 1 for enabled.

Comment by Constantin Oshmyan [ 2022 Mar 24 ]

Another additions regarding the sla.getsli method.

1.

The "period_from" and "period_to" parameters are described as integer. However, the example on the same page provides the "period_from" as a string: value is quoted in a request, but integer value should be unquoted (as in reply).

2.

The "period_to" parameter describes as:

Ending date (exclusive) to report the SLI for.

If I need a daily statistics for a yesterday (23-Mar-2022), then, according to this description, I'm telling a single daily period and the midnight of today (00:00:00 of 24-Mar-2022, or 1648072800 in unixtime accoring to our timezone (EET, GMT+2). So, my request contains the following part of JSON:

"params": {
  "slaid": "28",
  "period_to": 1648072800,
  "periods": 1,
  "serviceids": ["106", "107",...]
}

However, I'm receiving back the wrong period:

    "result": {
        "periods": [
            {
                "period_from": 1648072800,
                "period_to": 1648159200
            }
        ],
        "serviceids": [
            106,
...

1648072800 is a midnight (00:00:00) of today (24-Mar-2022), and 1648159200 is a 00:00:00 of tomorrow (25-Mar-2022).

According to documentation, there should be:

 The last periods specified by the periods parameter before the specified date.

I.e. the real behaviour is different.

At the same time, if I'm sending a timestamp one second earlier (1648072799 instead of 1648072800), then I'm receiving a needed period:

"params": {
  "slaid": "28",
  "period_to": 1648072799,
  "periods": 1,
  "serviceids": ["106", "107",...]
}
    "result": {
        "periods": [
            {
                "period_from": 1647986400,
                "period_to": 1648072800
            }
        ],
        "serviceids": [
...

[1647986400 – 1648072800] is needed period from 00:00:00 23-Mar-2022 to 00:00:00 24-Mar-2022.
However, this behaviour contradicts documentation.

Comment by Constantin Oshmyan [ 2022 Mar 24 ]

Once more addition for the sla.getsli method.

3.

Parameter "serviceids" (both input and output) is defined as "IDs of services"; for the input parameter its type is defined as "string/array". It's correct, as the type of "serviceid" property for a Service object is defined as "string" (link).
However, in the examples for sla.getsli method both request and reply have the "serviceids" field as integer (unquoted in JSON).

Moreover, if this API (at least, in Zabbix v6.0.2) successfully accepts the string (quoted) parameter in request, the reply really contains an unquoted values (i.e. integers instead of strings), that is a bug! It could break processing of JSON (depending of the JSON-parser used).

Comment by Constantin Oshmyan [ 2022 Mar 25 ]

Method sla.getsli

The parameter "slaid" describes with type="string" and the following description:

IDs of services to return availability information for.

If it really can contain multiple IDs (for multiple services), its type should be "string/array" (the same as the "sla.get" method has).
Otherwise (if the only single ID is allowed), the description should be fixed.

I've checked with Zabbix version 6.0.2: it accepts only single ID in the "slaid" parameter, and replies with error if this parameter contains an array of strings.

Comment by Andrejs Verza [ 2022 Apr 03 ]

Notes for the future resolution of this task:

  1. Meaning and description of the evaltype parameter is the same across multiple API object.
    1. The description should be fixed equally for each API object having tags.
    2. Or means requiring ANY group of rules for the same tag to resolve as true, while each group itself is resolved as true if any individual rule is resolved as true.
      1. Example: (TAG_A = 123 OR TAG_A = 789) OR (TAG_B = 555).
    3. And/Or means requiring ALL groups of rules for the same tag to resolve as true.
      1. Example: (TAG_A = 123 OR TAG_A = 789) AND (TAG_B = 555).
  2. Exact match by tag and case-sensitive or case-insensitive search by tag value depending on operator value.
    1. The same story. This should be fixed for all API object having tags.
    2. Case-insensitive search is used for CONTAINS / DOES NOT CONTAIN.
  3. However, there are no children and parents properties in the description of Service objects.
    1. The Service object indeed does not contain children or parents properties.
    2. Those properties won't be returned if required in the output parameter and need to be requested separately.
  4.  It's needed some explanation and example: what these properties could contain (unfortunately, the example contains an empty arrays for these properties, it is not very useful).
    1. Well, it's array of services, as per manual:
      1. It's array because the type of parameter is a query.
      2. And the input can contain anything which is accepted by the output parameter of the services.
  5. Description of "SLA service tag" object should include an explanation: if a tag name and tag value use a case-sensitive or case-insensitive comparison.
    1. Agreed. It should also mention that the OR logic is used for SLA-Service matching.
  6. The parameter "slaid" describes with type="string" and the following description: IDs of services to return availability information for.
    1. Wrong description (copy&paste?). It's an ID of a single SLA.
  7.  The "period_from" and "period_to" parameters described as "starting date" and "ending date". However, really they are a timestamps (but dates). It is unclear: what will be returned if their values are not at the day's border.
    1. Disagree:
      1. The parameters are described as timestamps.
      2. It's also mentioned that the period_from is inclusive and the period_to is exclusive.
    2. It is not required to specify period at day boundaries. A greedy approach will be used then.
  8. The "periods" parameter is described with the type=array, but according to description and example it, probably, has the "integer" type.
    1. It's integer. Documentation issue.
  9. It's unclear if it is possible to limit the unneeded information in results. For example: if I need the "sli" values only, is it possible to filter out (i.e. do not return to me) other fields – such as "error_budget" and "excluded_downtimes"?
    1. No. This does not significantly affect performance of calculation.
  10. The comment about the status field.
    1. Agree. It's opposite.
  11. API reply have the "serviceids" field as integer (unquoted in JSON).
    1. Agree. IDs must be strings. Although in the near future we're planning to improve the APIs to return strictly typed data. Like integers for integers.

constantin.oshmyan, thank you for your effort in making Zabbix better!!

Comment by Andrejs Verza [ 2022 Apr 03 ]

constantin.oshmyan, I've also checked your case for sla.getSli for daily statistics. It's actually a documentation issue. Both period_from and period_to are inclusive.

Thank you once again for spending you time and figuring out issues.

Comment by Constantin Oshmyan [ 2022 Apr 04 ]

averza, thank you very much for your detailed comments!
I hope, both Zabbix documentation and Zabbix API will be fixed to improve this wonderful product.

The only note about period_from and period_to parameters (especially, period_to).
The API behaviour should be consistent both in request and reply.
Pay attention, please, to the examples in my comment.
Really, period_to parameter (in the current implementation) is inclusive in request, but is exclusive in reply.
Moreover, in all cases its value in the reply differs from the value in the request.
It confuses; probably, the API should be fixed according to documentation (i.e. be exclusive both in request and in reply).

Comment by Constantin Oshmyan [ 2022 Oct 10 ]

alexei, we discussed that during the Zabbix Summit-2022 recently.
Pay attention, please, onto this my comment.
I'd like to repeat my previous comment:

Really, period_to parameter (in the current implementation) is inclusive in request, but is exclusive in reply.
Moreover, in all cases its value in the reply differs from the value in the request.
It confuses; probably, the API should be fixed according to documentation (i.e. be exclusive both in request and in reply).

Comment by Andrejs Verza [ 2022 Oct 11 ]

Hi, constantin.oshmyan!

Thank you for reminding us about the issue with period_to parameter.

As was mentioned before, this is a documentation error. It will be fixed soon along with some other documentation inaccuracies regarding the SLA.

Comment by Constantin Oshmyan [ 2022 Oct 11 ]

averza, thank you also.
Nevertheless, I stay with my opinion: behaviour described in the documentation at the moment is much more logical and straightforward rather than the current implementation:

  • the meaning of period_to parameter is inconsistent in a request and a reply (in a request: including, in a reply: excluding);
  • when we use one value in a request, we receive another value in a reply to this request;
  • we need always remember and take into account these differences (especially if we need to process several periods), it just makes calculations a bit more complex.




[ZBX-21063] API queries using filters for fields containing id Created: 2022 May 16  Updated: 2022 May 16

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: API (A), Documentation (D)
Affects Version/s: 5.0.23, 6.0.4
Fix Version/s: None

Type: Problem report Priority: Minor
Reporter: Elina Kuzyutkina (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 8
Labels: API
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

We are using id as numbers. But as potentially it can big numbers so, FE is working with them as strings
In some cases, we have ids as additional properties for some objects. For example r_eventid or c_eventid in an event object
If you want to filter on these properties, it would be logical to use filter
But if you read the documentation - for text and string types search should be used.
But none of them actually work =) Usually it's not a problem as we have specific Parameters for them (eventids,objectids, etc...)
First:
If we can get these properties, let's make it possible to use them for filtering?
Second:
It is necessary to explicitly deal with the type for the *id and explicitly indicate if some properties cannot be used for filtering






[ZBX-21726] TimscaleDB implementation workaround Created: 2022 Oct 04  Updated: 2022 Oct 04

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Minor
Reporter: Aleksey Volodin 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

 Description   

TimscaleDB plugin implementation for environment with large amount of history and trends data can cause OOM issue.

Documentation should contain mentioned about this and also workaround solution.






[ZBX-22978] maintenance (without data collection) nuances are not limited by proxy only Created: 2023 Jun 16  Updated: 2023 Jun 16

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.18
Fix Version/s: None

Type: Documentation task Priority: Minor
Reporter: Oleksii Zagorskyi 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   

In documentation it's stated that:

A proxy will always collect data regardless of the maintenance type (including "no data" maintenance). The data is later ignored by the server if 'no data collection' is set.

https://www.zabbix.com/documentation/6.0/en/manual/maintenance

 

I was surprised to find that actually server also does the same - polls data from hosts which are in maintenance (without data collection)!

Was it by design all these years? Or it's some regression? (I've just have tested it in 6.0.18)
If by design, then why do we mention "proxy" in the doc statement?
I consider that as it's exclusively applied to proxies only.
If not - it misleads!

If it's by design, the statement should be rewritten to not falsely indicate that the behavior is specific for proxy only.






[ZBX-23106] "permissions" management using Tags is not obvious and not documented well Created: 2023 Jul 14  Updated: 2023 Aug 10

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 6.0.19, 6.4.4
Fix Version/s: None

Type: Incident report Priority: Minor
Reporter: Oleksii Zagorskyi 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   

Documemtation:
https://www.zabbix.com/documentation/6.0/en/manual/config/users_and_usergroups/usergroup#configuration

There are details, yes, but general logic is not obvious at all and not described on documentation.

I.e. it should be stated the Tag settings allow to perform optional and additional limitations to what the user should see.

Also, it should be stated explicitly, that this affects ONLY problems visibility.

Also, a table with example of resulted filters is not clear at all. I feel like it should be split to 2 separate tables.
Also, it makes sense to create an additional table (as 3rd table probably), where will be No visible problems.

 

Frontend:
Ideally would be good to update strings in Fronted to reflect these details somehow  without forcing zabbix users to read documentation to understand it.

For example, on the tab, "Permissions" could be renamed to "Filters to see problems".
Yes, "Filters", as it's more correct term here. It's not a permission actually.
Using different terms here even will help to separate these 2 different kinds.






[ZBX-23577] tags with - (dash) in name are not expanded in {EVENT.TAGS.*} macro Created: 2023 Oct 18  Updated: 2023 Oct 18

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S)
Affects Version/s: 6.0.23rc1
Fix Version/s: None

Type: Incident report Priority: Minor
Reporter: Oleksii Zagorskyi Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File tag-is-there.png    

 Description   

Of course such tag is defined and inherited to an event, see "item-tag" tag name.

Zabbix 6.0.23rc1 debug for escalator:

2077438:20231018:180300.778 In substitute_simple_macros_impl() data:'Problem started at {EVENT.TIME} on {EVENT.DATE}
Problem name: {EVENT.NAME}
Host: {HOST.NAME}
Severity: {EVENT.SEVERITY}
Operational data: {EVENT.OPDATA}
Original problem ID: {EVENT.ID}
{TRIGGER.URL}
{EVENT.TAGS.hosttag}
{EVENT.TAGS.triggertag}
{EVENT.TAGS.item-tag} with dash
{EVENT.TAGS.itemtag} without dash
{EVENT.TAGS.location}
{EVENT.TAGS.lower}
{EVENT.TAGS.UPPER}
'
2077438:20231018:180300.778 In DBget_trigger_value()
2077438:20231018:180300.779 In DBget_item_value()
2077438:20231018:180300.779 End of DBget_trigger_value():SUCCEED
2077438:20231018:180300.779 In resolve_opdata()
2077438:20231018:180300.779 In DBitem_get_value()
2077438:20231018:180300.779 query [txnlev:0] [select value_type,valuemapid,units from items where itemid=42741]
2077438:20231018:180300.779 In zbx_vc_get_values() itemid:42741 value_type:3 count:1 period:1697641380 end_timestamp '2023.10.18 18:03:00.999999999'
2077438:20231018:180300.779 End of zbx_vc_get_values():SUCCEED count:1 cached:1
2077438:20231018:180300.779 In zbx_format_value()
2077438:20231018:180300.779 In replace_value_by_map() value:'888' valuemapid:0
2077438:20231018:180300.779 End of replace_value_by_map() value:'888'
2077438:20231018:180300.779 In add_value_suffix() value:'888' units:'' value_type:3
2077438:20231018:180300.779 In is_blacklisted_unit()
2077438:20231018:180300.779 End of is_blacklisted_unit():FAIL
2077438:20231018:180300.780 End of add_value_suffix() value:'888'
2077438:20231018:180300.780 End of zbx_format_value()
2077438:20231018:180300.780 End of DBitem_get_value():SUCCEED
2077438:20231018:180300.780 End of resolve_opdata()
2077438:20231018:180300.780 In substitute_simple_macros_impl() data:EMPTY
2077438:20231018:180300.780 End substitute_simple_macros_impl() data:'Problem started at 18:02:59 on 2023.10.18
Problem name: Last value more 5 (888)
Host: it0
Severity: Average
Operational data: 888
Original problem ID: 268266

hosttagval
triggertag-val
{EVENT.TAGS.item-tag} with dash
item-tag-val without dash
location-val
2222val
1111val
'
2077438:20231018:180300.780 End of add_user_msg()

Maybe there are other characters which cause the macro to not work.

This should be fixed or documented.






[ZBX-24149] user macros support for preprocessing is not listed on a page Created: 2024 Feb 26  Updated: 2024 Feb 28

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.27, 6.4.12
Fix Version/s: None

Type: Documentation task Priority: Minor
Reporter: Oleksii Zagorskyi 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   

On this page https://www.zabbix.com/documentation/6.0/en/manual/appendix/macros/supported_by_location_user
it probably makes sense to somehow mention Javascript preprocessing as a location where user macros are supported
https://www.zabbix.com/documentation/6.0/en/manual/config/items/preprocessing/javascript#using-macros-in-scripts






[ZBX-3932] unify entity references in help messages and manpages Created: 2011 Jul 07  Updated: 2017 May 30

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: richlv Assignee: Andris Mednis
Resolution: Unresolved Votes: 1
Labels: documentation, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

manpages and help output references multiple things that are not named consistently and often include spaces that are non-trivial to properly format in the manpages. these should be unified.

+ when referencing a file, always reference just "file" (not config-file or inputfile);
+ when referencing a host, always reference just "host" (not "host IP or...", not "server" etc);
+ when referencing an item key, reference just "key"
+ when referencing a port number, reference just "port"
+ when referencing ip address, reference - just "IP" or just "address" ?
+ "node", "ID" or "nodeid" ?

what about a "host" which is host name in zabbix config ?



 Comments   
Comment by Marc [ 2014 Sep 24 ]

Even when "IP" seems to be commonly used, "IP address" sounds still very right to me.

Comment by Andris Mednis [ 2014 Oct 02 ]

This proposal seems a bit controversial and needs to be discussed. Changing "config-file" to just "file" in my opinion makes it less readable. As Marc's comment shows, "IP" or just "address" is less readable than "IP address".





[ZBX-4390] Inconsistency in the units and suffixes usage. Created: 2011 Nov 24  Updated: 2023 Jun 19

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 3
Labels: suffixes, triggerline, units
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

tested on 1.8.9


Attachments: PNG File units-suffixes_inconsistency.png    

 Description   

huh, many issues were analyzed, ZBXNEXT-954 is similar to this, but I still decided to create this one.

Documentation page (search the "units" word): http://www.zabbix.com/documentation/1.8/manual/web_interface/configuration
Quote:
"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"

On the page related to suffixes:
http://www.zabbix.com/documentation/1.8/manual/config/suffixes
no any information what will be used for multiplier - 1000 or 1024.

Testing GUI:
On first step our item "test.item" doesn't have specified "Unit", i.e. it's empty. See on top of attached picture.
For three graphs items values are 1024, 1024^2, 1024^3
As you see a trigger line doesn't correspond to the Y axis scale.

On next step item has unit "B" specified. See bottom of attached picture.

Testing server side:
For trigger expression "host:test.item.last(0)}<1G" a value 1073741823 is PROBLEM event but for the value 1073741824 is OK event.
The same for "M" 1048575 - PROBLEM, 1048576 - OK and "K" 1023 - PROBLEM, 1024 - OK

So suffixes always are using the multiplier 1024 and it's some sort of inconsistency with the default multiplier 1000 for units.
Yes, server side: "./src/libs/zbxcommon/misc.c" function str2double() uses 1024 as multiplier.

Question: why default value for units has been changed to 1000 but for suffixes was not?

I don't know what would be better to do to improve the situation. Seems would be more consistent to change 1024 to the 1000 for suffixes, but it's not very good currently.

The best would be to change default multiplier to 1000 and perform the trigger calculation in more intelligent way.
For instance, if at least one item used in the trigger expression has specified unit as "B" then use multiplier 1024 for all suffices in expression. For all another cases use multiplier 1000.

What do you think?

Highly connected issue: ZBXNEXT-954



 Comments   
Comment by Oleksii Zagorskyi [ 2011 Dec 09 ]

(1) I guess that this issue cannot be resolved without changes at the server side.
Why here no any comments about how this inconsistency has been resolved?

I see "isDiskVolume" in the source code, but how about "isNetworkTraffic" ?
If this variable is a base for 1024 multiplier, why its name locked to the "Disk" only ? It's not clear

<SlaVa> When i gave name to this variable, i mean that this variable can be used only for naming of disk volume (HDD, RAM, etc).
Do we have this problem with network also?? As i understand problem exist only with prefixes K,M,G,T ...?? It is mistake?

<zalex> all values measured in the BYTES and BITS have the multiplier 1024. They are: disk volume, ram size, network traffic, etc.
So, IMO, variable's name "isDiskVolume" is not clear, why not "isNetworkTraffic" or "isRamAmount" or so? It can confuse when view to source code.
I would suggest something neutral like "is1024Base" or so.
<Slava>
<richlv> actually, for any issue which changes anything like this a couple of things must be done :
a) clear, complete specification must be written (https://zabbix.org/wiki/Category:Specifications might be a good location);
<Slava>Resolved
b) it must be documented in "upgrade notes"

Comment by richlv [ 2011 Dec 10 ]

fix for this issue is being developed in svn://svn.zabbix.com/branches/dev/ZBX-4390

Comment by richlv [ 2011 Dec 10 ]

(3) changelog entry does not conform to guidelines :
a) does not start with lowercase letter;
b) does not tell what was changed actually (should explain actual change in user-friendly terms)
<Slava>RESOLVED

Comment by Vjacheslav Shipillo (Inactive) [ 2011 Dec 20 ]

<Slava>Waiting for server side

Comment by Alexey Fukalov [ 2011 Dec 20 ]

Specs: http://zabbix.org/wiki/Docs/specs/ZBXNEXT-4390

Could you please add more specific description to specification, it's still hard to understand what and where suffixes are used and what multiplier is used.

<richlv> specs moved to the correct page at https://zabbix.org/wiki/Docs/specs/ZBX-4390

Comment by Alexander Vladishev [ 2011 Dec 20 ]

It won't be fixed in version 1.8. It's not a blocker.

At present the server always uses a multiplier 1024 for calculation of trigger expressions. Therefore on graphs the trigger lines are used too by the multiplier 1024.

We leave the decision of this problem for later versions. Probably introduction of suffixes Ki, Mi, Gi...

Comment by Janne Korkkula [ 2014 Oct 24 ]

Still an issue! Xi-prefixes for everything 1024 (also triggers) considered a welcome and explicit change, as would be a per item selection of base-10 or base-^2 prefixing/dividers.

Comment by user185953 [ 2021 Aug 02 ]

I like the proposed solution of "choosing the right one by looking at the unit". But frankly, I don't care much if things show base-10 or base-^2, as long as triggers are consistent!

Currently (5.0) the natural workflow "See the graph peak at 100Mbps, set the trigger for 100M" fails and creates a trigger at ~105Mbps and got get an actual 100Mbps trigger I must write "100000000".





[ZBX-5169] parameters countOutput, groupCount for HISTORY.GET method do not work. others seem also Created: 2012 Jun 11  Updated: 2022 Jun 15

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: API (A), Documentation (D)
Affects Version/s: 2.1.0
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: patch
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File history.get.patch    
Issue Links:
Duplicate
duplicates ZBX-4487 Grouping doesn't work in history.get ... Closed
is duplicated by ZBX-4362 API - history.get. Bad documentation. Closed
Sub-task
depends on ZBX-17846 Zabbix api history.get sort issue Confirmed

 Description   

(1)
See an attached "history.get.patch"
It will fix support for countOutput, groupCount parameters.

After the fixes, generated SQLs are:
SELECT count(h.itemid) as rowscount,h.itemid FROM history_uint h WHERE (h.itemid IN ('25461','26249')) AND h.itemid BETWEEN 000000000000000 AND 099999999999999 GROUP BY h.itemid
SELECT count(h.itemid) as rowscount,i.hostid FROM history_uint h,items i WHERE (i.hostid IN ('10106','10017')) AND h.itemid=i.itemid AND i.hostid BETWEEN 000000000000000 AND 099999999999999 GROUP BY i.hostid

The patch tested of course.

(2)
Also, consider to remove from API and documentation a parameter "groupOutput". More about the "groupOutput" you can read in ZBX-5117
history.get it's a single method where this option available, it's a "not standard" parameter, it's strange for me and as I see it not used in the code anywhere.
Try and you will see that it doesn't have any affect:
"sortfield":"clock",
"groupOutput":1,
and Apache with this parameter uses CPU A LOT AND VEEEEEERY LONG TIME !!! (try for 20000 returned values)

(3)
Please explain in documentation what a "triggerids" means, does it work at all ?



 Comments   
Comment by Oleksii Zagorskyi [ 2012 Jun 11 ]

(4) [code, documentation]
Chistory.php:

$defOptions = array(
'history' => ITEM_VALUE_TYPE_UINT64,

and:

switch ($options['history']) {
...
default:
$sqlParts['from']['history'] = 'history h';

together look not very good.

Documentation says: "All parameters are optional except “history”."
Sounds incorrectly because if "history" is not specified then "ITEM_VALUE_TYPE_UINT64" will be used.
If the value is incorrect then "ITEM_VALUE_TYPE_FLOAT" will be used - it's sort of inconsistency.

I'm sure - in both cases (wrong or missing "history") must be used identical type of item value.

If “history” is really REQUIRED then method must return error if the "history" is missing or wrong.
Or documentation must be fixed there and explain what will happen is such cases.

Comment by Pavels Jelisejevs (Inactive) [ 2012 Oct 25 ]

(5) The preservekeys parameter should also be removed: history records have a composite primary key.

Comment by richlv [ 2013 Sep 13 ]

are all of the above still valid ?

Comment by Oleksii Zagorskyi [ 2013 Sep 19 ]

(2) the groupOutput parameter has been removed from doc as the process of new API doc publishing:
https://www.zabbix.com/documentation/2.0/manual/appendix/api/history/get?do=diff&rev2%5B0%5D=1345804295&rev2%5B1%5D=1352123579

But it's still in the API code:

api/classes# grep -R groupOutput *
CHistory.php:			'groupOutput'				=> null,
CHistory.php:		// groupOutput
CHistory.php:		$groupOutput = false;
CHistory.php:		if (!is_null($options['groupOutput'])) {
CHistory.php:			if (str_in_array('h.'.$options['groupOutput'], $sqlParts['select']) || str_in_array('h.*', $sqlParts['select'])) {
CHistory.php:				$groupOutput = true;
CHistory.php:					if ($groupOutput) {
CHistory.php:						$dataid = $data[$options['groupOutput']];

Other sub-issues should be retested.

Comment by Stas Shaklein [ 2013 Oct 22 ]

Zabbix trunk
Last Changed Rev: 39484
Last Changed Date: 2013-10-22 20:29:52 +0700 (Втр, 22 Окт 2013)

Resolving only "countOutput" parameter:

diff --git a/frontends/php/api/classes/CHistory.php b/frontends/php/api/classes/CHistory.php
index e1a2292..11f4432 100644
--- a/frontends/php/api/classes/CHistory.php
+++ b/frontends/php/api/classes/CHistory.php
@@ -175,7 +175,7 @@ class CHistory extends CZBXAPI {
                // countOutput
                if (!is_null($options['countOutput'])) {
                        $options['sortfield'] = '';
-                       $sqlParts['select'] = array('count(DISTINCT h.hostid) as rowscount');
+                       $sqlParts['select'] = array('count(DISTINCT h.itemid, h.clock) as rowscount');
 
                        // groupCount
                        if (!is_null($options['groupCount'])) {

With "DISTINCT h.itemid, h.clock" taken into account:

  • single/multiple items in parameters
  • scheme of all history tables
  • duplicates in database (for example, after manual data insertion)
Comment by Pavels Jelisejevs (Inactive) [ 2014 Feb 07 ]

A related issue - ZBX-7750.

Comment by Fernando [ 2017 Apr 25 ]

Hi, Is there a new patch for 3.2.3 ? I am trying to create a report of amount of "log" items sent to the server but since countOutput does not work in history.get I am not able to accomplish it.

Comment by Oleksii Zagorskyi [ 2019 Feb 01 ]

Related fixes might be performed in ZBX-15562





[ZBX-5605] it's not clear that "Width" property for user graphs is actually for preview only Created: 2012 Sep 24  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 2.0.3
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: graphs, trivial, unsquashable, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

It looks like a "Width" property of a user graph doesn't have a clear meaning.
In menu Monitoring -> Graphs it's ignored and uses full width of a display, for screens there is its own "width" property.

Single place where we can see the impact is the graph Preview.

Possible resolution:
We could replace text "Width" to "Width (for preview only)" in the graph configuration page.

There is also a "Width" column in list of graphs, no idea what would be better to do with it.

This also should be clarified on this page http://www.zabbix.com/documentation/2.0/manual/config/visualisation/graphs/custom

Specs: http://zabbix.org/wiki/Docs/specs/ZBX-5605



 Comments   
Comment by richlv [ 2012 Sep 24 ]

better - autoscale width in preview as well and remove that parameter for the graph itself

<zalex> sounds logically, I'd agree

<sasha> +1

Comment by richlv [ 2014 Jan 31 ]

it's more complicated than that - width is also used for pie graphs...





[ZBX-6844] map.create requires elementid set for elementtype image Created: 2013 Aug 01  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: API (A), Documentation (D)
Affects Version/s: 2.0.6
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Volker Fröhlich Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: api, element, maps
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

zabbix_api.ZabbixAPIException: (u'Error -32602: Invalid params., Wrong fields for element. while sending {"params": {"width": 800, "selements": [

{"iconid_off": "26", "x": 72, "elementtype": 4, "y": 272, "label": "10.110.6.141"}

], "name": "blubber", "height": 600}, "jsonrpc": "2.0", "method": "map.create", "auth": "52ff0506678d3b8728198b2d9c3d7d94", "id": 1}', -32602)

This call does not succeed until elementid is specified. Please document or change!






[ZBX-7548] ITEM.VALUE1 not working in email if item's keep history is set to 0 Created: 2013 Dec 16  Updated: 2022 Jun 15

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S)
Affects Version/s: 2.0.10
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Strahinja Kustudic Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: history, lastvalue, macros
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates ZBX-10374 triggers do not work for items with "... Closed

 Description   

If you create an item with Keep history set to 0 (don't keep history), ITEM.VALUE1 doesn't work in the email notification. The email just displays *UNKNOWN*, but if you read the lastvalue of the item in the Zabbix database, you can see the correct value. Why not just use the lastvalue, if there is no history?

This is extremely useful when you have a text item which displays a message when there is a problem, and you don't want to save that message each time, since you cannot use it for trending.



 Comments   
Comment by Strahinja Kustudic [ 2014 Mar 15 ]

This same issue still exists in the latest version 2.2.2.

I would like to explain a little bit more why is this useful. When you make a sanity check which either returns 0 or 1 (e.g. agent.ping), or if you have an item which returns a string with the problem, or something similar, there is no point in saving that information in the database history tables. That information is useless in the history tables, since you either cannot trend it (if it is a text item) and there is no point in trending 0 and 1. You also have the information when a trigger for that item was triggered in events, so you have all the information you need.

Maybe this is not relevant for small Zabbix installations, but on larger installations every item less written in the history tables helps with performance.

Comment by richlv [ 2014 Mar 16 ]

in 2.2, there is no 'lastvalue' field anymore, so history is the only place to get any values from

Comment by Strahinja Kustudic [ 2014 Mar 16 ]

How did I miss that? 2.2 must be working a lot faster than older version just because of that change.

Since there is no 'lastvalue', could this information be stored in cache for items like this and read from it?

Comment by richlv [ 2014 Mar 16 ]

that might be problematic. imagine an escalation started for a trigger against such an item, then server gets restarted. now cache values are gone and you get UNKNOWN

or imagine somebody using not the last value but avg over last hour in notifications.

Comment by Strahinja Kustudic [ 2014 Mar 16 ]

Everything you said is a problem even now if you set Keep history to 0, so I don't see a problem in any of those. If this is documented correctly it will be a nice addition.

What exactly do you mean about using avg in notifications? You mean using avg for a trigger functions? Right?

Comment by richlv [ 2014 Mar 17 ]

well, with cache the behaviour would not be consistent

avg - you can use things like

{host:item.avg(10m)}

in notifications

Comment by Strahinja Kustudic [ 2014 Mar 17 ]

You are right about consistency, but it would still be better than now, since the consistency would only be lost if the server is restarted.

I didn't know I could put something like that in a notification, I always thought the only thing that could be used in notifications from the item is ITEM.VALUE1,2,... How does that even work, since the notification is usually generic for all triggers, how will it know how to change "host"?

Sorry for derailing this issue with this question, but I never seen something like that in the documentation. Could you give me a link to where that is explained how it works?

Comment by richlv [ 2014 Mar 19 ]

as for the last macro, see supported macro table in the manual. you can also nest them like {{HOST.HOST}:item.func(param)}

Comment by Oleksii Zagorskyi [ 2015 Sep 18 ]

I suppose the only thing we can do is document it
Probably here https://www.zabbix.com/documentation/2.4/manual/config/items/item

When documenting it, take a look to ZBX-10374 and include details related to triggers.





[ZBX-13372] Document access privileges to database objects Created: 2014 Jan 02  Updated: 2020 Jul 16

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Defect (Security) Priority: Trivial
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: database, installation, privilege, security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A

 Description   

Documentation lacks of (minimum) required access privileges needed by several components (frontend, server, proxy).

Ideally it becomes part of installation guide to create separate users for frontend and server/proxy with proper GRANTs per database platform.






[ZBX-7795] PostgreSQL unix sock connections issues Created: 2014 Feb 12  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 2.2.1
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Don Conry Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: PostgreSQL, regression
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

openSUSE 12.3
PostgreSQL 9.2-2.1.1



 Description   

I encountered a problem during upgrade from Zabbix server 2.0.9 to 2.2.1, via openSUSE monitoring repo packages. Previously Zabbix (2.0.7, 2.0.8, & 2.0.9) was connecting using a unix-style socket file (instead of a listening network socket). After upgrading, this type of connection seems to be failing - from the server log:

-------------------------
13632:20140204:174820.079 Database is down. Reconnecting in 10 seconds.
13632:20140204:174830.080 [Z3001] connection to database 'zabbix' failed: [0] could not connect to server: No such file or directory
Is the server running locally and accepting connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
-------------------------

Note this /tmp/.s.PGSQL.5432 file does exist, with proper permissions. While troubleshooting this, I verified that SELinux is not active, that I can connect using psql (command line tool), and that PostgreSQL & Zabbix server ARE actually running. Since no postgres config changed were made during the upgrade, I suspect this may be due to a change in Zabbix 2.2 branch.

Previously I'd followed instructions for the zabbix-server.conf file for using unix sockets with Zabbix, by setting DBHost to blank. Relevant snippet below:

--------------
DBHost=
DBName=zabbix
DBUser=zabbix
DBSocket=/tmp/.s.PGSQL.5432
--------------

At this point I am wondering if the syntax in zabbix-server.conf required to force Unix domain socket connections has changed, or is broken, between 2.0.9 and 2.2.1. I've tried fiddling with different combos of this syntax, but so far no luck.

For now I've allowed Postgres to listen on localhost via network socket, and am (successfully) allowing Zabbix to connect that way instead. The database was upgraded properly & new setup is (mostly) working, but I'd like to go back to using Unix sockets if possible.

I've searched for similar existing bugs, but not found any recent related to this. Am willing to help troubleshoot with add'tl info/testing as needed. Thanks!



 Comments   
Comment by Don Conry [ 2014 Feb 12 ]

One more item of info, zabbix server version was initially upgraded to 2.2.1-2.1 from repo, has since been upgraded to 2.2.1-4.1.

Comment by Don Conry [ 2014 Feb 12 ]

Also, this may be related to ZBX-7610. Will test 2.2.2 when I can...

Comment by Aleksandrs Saveljevs [ 2014 Feb 13 ]

Note that DBSocket parameter is only used for MySQL:

### Option: DBSocket
#	Path to MySQL socket.
#
# Mandatory: no
# Default:
# DBSocket=/tmp/mysql.sock
Comment by Don Conry [ 2014 Feb 20 ]

Upgraded to 2.2.2 via openSUSE monitoring repo this morning... no change i.e. config that was working in 2.0.9 is producing connection errors in 2.2.2. I also tried both with & without the DBSocket parameter, seems to have no effect (which is probably expected, since it applies only to MySQL).

The error in Zabbix Server log on startup is same as above, even though that sock file exists with permissions & PGSQL config unchanged from working system w/Zabbix 2.0.9:

srwxrwxrwx 1 postgres postgres 0 Feb 20 13:54 .s.PGSQL.5432

Will continue testing the newest release using all combinations of parameters, & hopefully find a working config. For now, Zabbix Server is connecting via localhost:5432.

Comment by Eugene Istomin [ 2014 Feb 21 ]

The same problem,

OpenSUSE 13.1, Zabbix server v2.2.2, PostgreSQL 9.3.2

9063:20140221:104418.566 Database is down. Reconnecting in 10 seconds.
9063:20140221:104428.566 [Z3001] connection to database 'zabbix' failed: [0] could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?

DBHost=
DBName=zabbix
DBUser=zabbix
DBPassword=XXX
DBSocket=/tmp/.s.PGSQL.5432

Comment by Don Conry [ 2014 Mar 10 ]

I believe I have discovered the cause of this. OpenSUSE implementation bug, see e.g. https://bugzilla.novell.com/show_bug.cgi?id=857459

Fix for me was:

1) Edit /usr/lib/systemd/system/zabbix-server.service
2) Change line:
PrivateTmp=true
to:
PrivateTmp=false

Thank you, Lennart Poettering. I will see about contacting the OpenSUSE packager to get this incorporated in the next package build.

Comment by Don Conry [ 2014 Mar 11 ]

Add'tl notes: after making the edit above, you'll need to poke systemd and then restart the zabbix server. Don't forget to set 'DBHost=' in Zabbix server config file first.

1) systemctl daemon-reload
2) systemctl restart zabbix-server

Comment by richlv [ 2014 Mar 11 ]

thanks for the update. can somebody else who had this problem try the solution from don ?
if that works, we might want to document it in troubleshooting section, probably

Comment by Don Conry [ 2014 Apr 16 ]

Just a note, it is possible to work around this by moving the PostgreSQL sock file from the default /tmp to a different location which is not affected by the systemd PrivateTmp 'feature'.

Took a moderate amount of trial & error to figure out the proper syntax everywhere, the steps are listed as a reply to my original forum post here:

https://www.zabbix.com/forum/showthread.php?t=44140

Comment by Marc [ 2018 Jan 09 ]

richlv,
I can also confirm that this did the trick on CentOS 7:

# mkdir /etc/systemd/system/httpd.service.d
# cat > /etc/systemd/system/httpd.service.d/noprivtmp.conf << EOF
[Service]
PrivateTmp=false
EOF
# systemctl daemon-reload
# systemctl restart httpd

Special thanks to dconry without whose comment I'd possibly never have found out about PrivateTmp!





[ZBX-8027] It is not clear how to use PerfCounter Created: 2014 Apr 02  Updated: 2019 Dec 10

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 2.0.12, 2.2.2
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Alexey Pustovalov Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate

 Description   

We have PerfCounter like an UserParameter, but it is not clear described. Do not clear how to use <parameter_name>



 Comments   
Comment by Oleksii Zagorskyi [ 2014 Apr 03 ]

Hmm, where do we have the "<parameter_name>" ?

zalex_ua well, it's here https://www.zabbix.com/documentation/2.2/manual/appendix/config/zabbix_agentd_win

Comment by Martins Valkovskis [ 2014 Apr 04 ]

"The parameter name is to be used as the item key when creating an item." - this text has been added to:

https://www.zabbix.com/documentation/2.0/manual/appendix/config/zabbix_agentd_win
https://www.zabbix.com/documentation/2.2/manual/appendix/config/zabbix_agentd_win
dotneft CLOSED

Comment by richlv [ 2014 Apr 11 ]

(1) this is now different from the conf file in the sources - let's update it, too





[ZBX-8739] precompiled zabbix_agentd doesn't have ldap support enabled Created: 2014 Sep 10  Updated: 2019 Dec 10

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Gabriele Armao Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: agent, curl, documentation, ldap
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Precompiled zabbix_agentd downloaded from zabbix.com doesn't have ldap support compiled, this means "net.tcp.service[ldap]" and "net.tcp.service.perf[ldap]" don't work (NOT_SUPPORTED).



 Comments   
Comment by Aleksandrs Saveljevs [ 2015 Jan 20 ]

Some people would want precompiled agents to have LDAP support compiled in, some would not, because they do not have LDAP library installed. So in order to make everyone happy, we would have to provide several versions of the precompiled agent: with LDAP and without, with cURL and without, resulting in four versions in total. This seems to be unnecessary overhead, thefore, closing.

Comment by Gabriele Armao [ 2015 Jan 20 ]

Hello Aleksandrs,
thanks for the update, absolutely fine by me, but I'd suggest you to write it on the download page, maybe something like "(without cURL and LDAP support)", otherwise it could be very hard to understand why some valid item keys are returning "NOT_SUPPORTED", since even the 2.4 agents are just reporting "NOT_SUPPORTED" without any additional reason.

just my 2 cents

Comment by richlv [ 2015 Jan 20 ]

i'd agree on mentioning this somewhere - reopening to make sure this is not forgotten about





[ZBX-16413] Zabbix agent (Windows) describe minimal permissions. Created: 2014 Oct 31  Updated: 2022 May 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleg Ivanivskyi Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 2
Labels: permissions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Windows server 2008R2


Attachments: PNG File error.png    
Issue Links:
Duplicate

 Description   

After the agent installation, it will be started as the "Local System" account by default (which has the high class of permission). In some cases it is necessary to reduce the risk of abuse.
I've tried to start Zabbix agent on a Windows server as LocalService, NetworkService, User, Power User, Performance Monitor Users and Administrator. I was able to start it as the Administrator user only.

Error message during the start and error from the event log is added:

- System 
  - Provider 
   [ Name]  Service Control Manager 
   [ Guid]  {555908d1-a6d7-4695-8e1e-26931d2012f4} 
   [ EventSourceName]  Service Control Manager 
  - EventID 7034 
   [ Qualifiers]  49152 
   Version 0 
   Level 2 
   Task 0 
   Opcode 0 
   Keywords 0x8080000000000000 
  - TimeCreated 
   [ SystemTime]  2014-10-31T07:46:12.211433100Z 
   EventRecordID 6075 
   Correlation 
  - Execution 
   [ ProcessID]  484 
   [ ThreadID]  572 
   Channel System 
   Computer W...A 
   Security 
 - EventData 
  param1 Zabbix Agent 
  param2 3 

It would be great to have a description of the minimal permissions which need to start the agent.



 Comments   
Comment by Matt M [ 2018 May 25 ]

I know this is old but... I just got zabbix agent running successfully in Windows under a service account.

as far as I know these are the minimal requirements for a service account:

  • password does not expire
  • member of local performance monitor users group
  • local security policy - log on as a service rights
  • Read/Write permissions on the Zabbix Agent install directory

I think without that last one, you would get the error described in the screenshot.  The service wouldn't be able to start because the user it's running as wouldn't have access to write the log files, read the config, or execute the agent.

 

Comment by itcbsops [ 2018 Jun 12 ]

Hi,

Although all the rights and permission are granted for the AD user, I still can't start the agent.

And yet, it starts well when ran from a command line (same user).

Still same error 1067.

Any clue ?

 

Comment by itcbsops [ 2022 Jan 31 ]

The issue was fixed with a more recent agent. Like 3.0.10 or something... we were using 2.4.x or so.
Anyway, as far as I'm concerned, the issues doesn't exist anymore, in particular with recent agents.





[ZBX-9370] bad and not described logic of "Remember me for 30 days" checkbox on login form Created: 2015 Mar 04  Updated: 2021 Aug 16

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 2.0.14, 2.2.8, 2.4.2
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: cookie, login, profile, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File screenshot-1.png     PNG File screenshot-2.png    
Issue Links:
Duplicate
is duplicated by ZBX-8051 Checkbox auto-logout mostly doesn't work Closed
Sprint: Sprint 24, Sprint 25, Sprint 26

 Description   

Starting from 2.0 zabbix frontend login form has a "Remember me for 30 days" checkbox and it's enabled by default.

What I observed:
if user profile option "Auto-login" is *un*checked and if the "Remeber .." checkbox in login form is checked - zabbix frontend performs these SQLs:

BEGIN
SELECT   u.userid,u.alias,u.autologin,u.autologout FROM users u WHERE u.userid='1'
UPDATE users SET  autologin='1', userid='1', autologout='0' WHERE userid='1'
COMMIT

when an "Auto-login" in user profile is checked and the "Remeber .." is *un*checked on login form, then these SQLs:

BEGIN
SELECT   u.userid,u.alias,u.autologin,u.autologout FROM users u WHERE u.userid='1'
UPDATE users SET  autologin='0', userid='1' WHERE userid='1'
COMMIT

Note: these SQLs are not visible in frontend at all, they can be caught only by general mysql logging.

As the result "Auto-logout (min 90 seconds)" parameter value is lost !
I have to admit that it's enough unexpected.
It's not reflected in documentation at all !

Using/unusing the "Remeber .." checkbox during login an user loses its own value for "Auto-logout (min 90 seconds)" parameter in profile.
Losing any configuration value - it's very bad, IMO.

Actually the "Auto-login" option just enables an expiration date for a "zbx_sessionid" cookie, so it's preserved for 30 days when browser may be restarted.

What to do - will de described in comments, to discuss.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Mar 04 ]

(1) [frontend]
I think we need to review all these 3 options and:
a) probably hide "Auto-login" option from user profile as it doesn't have any sense to be controlled by zabbix user in profile.
a.a) or just rename "Auto-login" checkbox to "Remember me for 30 days" <- at least it will be much better
b) preserve "Auto-logout (min 90 seconds)" option value and do not update it database.

When "Remember me for 30 days" is enabled during login or in user profile (if renamed) - gray out profile "Auto-logout (min 90 seconds)" parameter (disable its changing) and show additional note (with red color) after it, like: "Remember me for 30 days" option was enabled on login, Auto-logout does not work in this case.

Note - we do something like that for missing locales, I mean an optional note (with red color) if required.

Comment by richlv [ 2015 Mar 04 ]

also see :

Comment by Oleksii Zagorskyi [ 2015 Mar 04 ]

(2) [documentation]
On this page we mention login form https://www.zabbix.com/documentation/2.4/manual/quickstart/login
Also related page is https://www.zabbix.com/documentation/2.4/manual/web_interface/user_profile
They should be updated in any case - even if we don't perform changes suggested in (1)

Take into account please also ZBX-9366 when working on documentation.

zalex_ua CLOSED for now as related detail is included to doc when working on the ZBX-9366.

Comment by Oleksii Zagorskyi [ 2015 Mar 19 ]

(3) similarly to (1):
we also could add an optional red note in user profile after "Auto-logout (min 90 seconds)" value.
this suggestion is a result of ZBX-9366 investigation.
It should appear when the global "Show warning if Zabbix server is down" option is enabled.

The note could be like:
Global "Show warning if Zabbix server is down" option is enabled, it leads to not affecting Auto-logout parameter
Although, in such case we would need to take into account also individual widget refreshes on dashboard, but it looks like too complicated thing ... not sure what to do.





[ZBX-9485] flexible interval "0" is considered to be more frequent than others Created: 2015 Apr 15  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S)
Affects Version/s: 2.4.4
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: richlv Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 0
Labels: flexibleintervals
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

zabbix manual says on flexible intervals : "If multiple flexible intervals overlap, the smallest Interval value is used for the overlapping period"

this would seem to be intended to use more frequent interval.

but if a positive number interval overlaps with interval 0, item is not checked - that is, 0 is just considered "smaller" than the other number.

it should probably be considered "larger" interval instead.

if this is changed, the behaviour should be also clarified in the manual (item and lld rule pages); if it is not changed, it should be documented



 Comments   
Comment by Martins Valkovskis [ 2015 Apr 15 ]

Is this more of a bug report about current behaviour of flexible intervals, rather than documentation?

Just wanted to add that in the current documentation, in "smallest Interval value", "Interval" is actually in italics to emphasize that it is the field value, not necessarily a smaller "interval" in reality.

Comment by richlv [ 2015 Apr 15 ]

yes, it's suggested to change the current behaviour as it seems to go against the overall logic to make the more frequent polling win - but if it is decided against that, a specific note on how "0" works would be appreciated

Comment by Martins Valkovskis [ 2015 Apr 15 ]

Just in case the current behaviour remains in place, I added "Note that if the smallest value of overlapping flexible intervals is '0', no polling will take place" to flexible interval information.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jan 05 ]

Another counter-intuitive aspect (for me) is that flexible interval overrides default update interval, even if default is shorter. Therefore flexible interval with 1-7,00:00-24:00 period is different from "simple" update interval.

Documentation says:

Up to seven flexible intervals can be defined.

I haven't seen such limitation in C code and I have just created item with 8 flexible intervals in the frontend.

Comment by richlv [ 2017 Jan 06 ]

regarding the limit of 7 flexible intervals, this was enforced by the frontend. 7 was chosen as the highest possible flexible interval count that would never (or unlikely ?) exceed the database field length. it might or might not have changed with the development of scheduling.

note that the limit of 7 was added some time ago, as this comment from 2012 already talks about that limit.





[ZBX-9533] Detailed Time-value on creating a trigger-expression Created: 2015 May 03  Updated: 2017 May 30

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 2.4.5
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Konstantin Manna Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: expressions, timeperiod, trigger
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

When creating a new trigger-expression with the dialog in zabbix it is not obvious what unit/interval for "Last of (T) time" is chosen (Minutes/Seconds). Although it might be documented somewhere in the manual, it would improve usability if the user immediately knows what this value means, like "Time in seconds" or "Time (s)"



 Comments   
Comment by Marc [ 2015 May 03 ]

Note that the value might also be given with a unit (30s, 5m, 1h, ...)

Comment by Konstantin Manna [ 2015 May 04 ]

Thanks for the addition. Then especially a little note would be very helpful explainint the default(if you do not specify s,m,h,...)





[ZBX-9943] formula for action with "Custom expression" not updated after condition deletion - Breaks action Created: 2015 Oct 07  Updated: 2022 Oct 08

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: API (A), Documentation (D), Frontend (F)
Affects Version/s: 2.4.5
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Larry Dorman Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: actions, customexpression, delete, documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

vanilla Zabbix, MySQL db, linux (oel 6)


Issue Links:
Duplicate
is duplicated by ZBX-10363 Zabbix actions with an invalid custom... Closed

 Description   

1) Create trigger action with a custom expression such as "A and (B or C or D or E) and F and G and H and I" where B, C, D, and E are templates.

2) Delete template referenced by D

Custom expression does not get automatically updated. That action will now fire for a variety of events that have nothing to do with the trigger. One must find and update the custom expression manually to get the action to quit firing.



 Comments   
Comment by Oleksii Zagorskyi [ 2015 Oct 08 ]

Related issue ZBXNEXT-551.
Current issue description does not contain all details, I mean that action disabled automatically too, as it should (documented in ZBX-7948).

Key point here is custom expression.
I can reproduce it on frontend 2.4.7rc1.
Simpler custom expression to reproduce is "A and B and C" where one of them is template/host or probably any other entity type, documented in https://www.zabbix.com/documentation/2.4/manual/config/notifications/action/conditions#actions_disabled_due_to_deleted_objects.

Even if you have custom expression with two members only "A and B", then deleting one of them leaves the custom expression unmodified in database (actions.formula) but it's not visible in frontend because with single condition, "Type of calculation" settings are not displayed at all and it's even worse.

Hard to decide how it could be improved for custom expressions.
If fix expression automatically- which and|or to remove? before or after removed reference (if both exists)?
It could be possible, when and|or are before or after reference only. Or when C reference has identical "and" or "or" on both sides, like "... and C and ..." or "... or C or ..."
But if for example we remove D from "... and D or ...", what should be removed with D "and" or "or"? Good question ....

If not fixed in code - then have to be additionally documented, definitely.

Server side was not tested.

CONFIRMED.

Comment by Larry Dorman [ 2015 Oct 08 ]

Prohibiting removal of templates used in custom expressions would put the burden on the admin and protect the system.

Comment by James Cook [ 2016 Feb 09 ]

I think things can be solved / prevented here by:

  • As mentioned above by preventing objects being deleted that are involved with actions
  • Do not allow the enabling of actions via the actions list status toggle that have invalid custom expressions or as I experienced many events actions were invoked.




[ZBX-10449] Trigger function last() for text values can be legally used in expressions Created: 2016 Feb 24  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 3.0.0
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Glebs Ivanovskis (Inactive) Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 2
Labels: expressions, strings, triggerfunctions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screen Shot 2018-03-03 at 10.45.50.png    
Issue Links:
Duplicate
is duplicated by ZBX-11369 Last() don't work with char/text Closed
is duplicated by ZBX-11776 Trigger issue when dealing with text Closed

 Description   

Documentation says that supported item types for last() and prev() trigger functions are float, int, str, text, log and result type is same as input type. This leads to several problems.

  1. Confusion. Support of string output values of trigger functions makes user think that strings can be directly operated upon in expressions. For example, compared using "=", "<", ">", "<=", ">=" and "<>" operators. This is not true.
  2. Injection. Generally speaking, text value inserted instead of numeric value will break expression evaluation. But strings like "2+2" or "1G" can exploit our way of evaluating expressions and silently produce invalid result.
  3. Unexpected result. If someone will use previous "feature" intentionally, he might get not what he expects. For example, expression "2*{host:key.last()}" for "2+2" will evaluate to 6, not 8.

Different solutions are possible and therefore different components will need to be fixed.

  1. Prohibit last() and prev() usage for string, text and log items. I struggle to imagine any use for them without ZBXNEXT-702/ZBXNEXT-1316 functionality.
  2. Validate values for being numeric before insertion like we do for macros.


 Comments   
Comment by Aleksandrs Saveljevs [ 2016 Feb 29 ]

Initially discussed in ZBX-10429. Note that after the fix in ZBX-10429 expression "2*{host:key.last()}" for "2+2" evaluates to 8, not 6.

Comment by Oleg Ivanivskyi [ 2018 Mar 03 ]

The testing trigger form doesn't accept text value in the Frontend also. The test item has "text" value type but value in the testing form accepts numeric value only (see screenshot).

Comment by Glebs Ivanovskis [ 2018 Sep 19 ]

Causing some confusion in ZBX-14869.





[ZBX-13108] Compose "Getting started" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 18

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

www.zabbix.com/documentation


Epic Link: "Howtos" in documentation
Team: Team D
Sprint: Sprint 1, Sprint 46, Nov 2018, Sprint 47, Dec 2018, Sprint 48, Jan 2019, Sprint 49 (Feb 2019), Sprint 50 (Mar 2019)

 Description   

Compose Getting started section of HowTos with the following pages:

  • How to add server to monitoring
  • How to configure a user
  • How to define a problem state
  • How to receive a problem notification
  • How to receive a single metric

providing quick manuals and solutions for the objectives stated in the headers.






[ZBX-13103] Compose "Service monitoring" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1
Story Points: 12

 Description   

Compose Service monitoring section of HowTos with the following pages:

  • How to monitor DNS availability
  • How to monitor FTP availability
  • How to monitor HTTP availability
  • How to monitor HTTPS availability
  • How to monitor IMAP availability
  • How to monitor LDAP availability
  • How to monitor NNTP availability
  • How to monitor POP availability
  • How to monitor SMTP availability
  • How to monitor SSH availability
  • How to monitor TCP availability
  • How to monitor Telnet availability

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2016 Nov 11 ]

Please review and approve/comment.





[ZBX-13106] Compose "Server monitoring" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Aleksandrs Larionovs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1, Sprint 56 (Sep 2019), Sprint 55 (Aug 2019), Sprint 54 (Jul 2019)
Story Points: 12

 Description   

Compose Server monitoring section of HowTos with the following pages:

  • How to aggregate metric values
  • How to calculate metric values
  • How to monitor disk statistics
  • How to monitor filesystems
  • How to monitor memory data
  • How to monitor network traffic
  • How to monitor operating system data
  • How to monitor processor load
  • How to monitor sensor readings
  • How to monitor server availability
  • How to monitor SLA
  • How to monitor statistics per process

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2016 Dec 13 ]

Documented version is currently in Playground.

Please review / comment.





[ZBX-13102] Compose "Log file monitoring" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1, Sprint 20
Story Points: 3

 Description   

Compose Log file monitoring section of HowTos with the following pages:

  • How to extract values from a log line
  • How to monitor a log file
  • How to monitor a log file with file rotation support

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2017 Jan 02 ]

Ready for review (currently placed in the Playground section)





[ZBX-13101] Compose "Network device monitoring" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1
Story Points: 2

 Description   

Compose Network device monitoring section of HowTos with the following pages:

  • How to monitor an IPMI device
  • How to monitor an SNMP device

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2017 Jan 02 ]

Ready for review.





[ZBX-13100] Compose "Web service monitoring" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1
Story Points: 2

 Description   

Compose Web service monitoring section of HowTos with the following pages:

  • How to monitor web page availability
  • How to monitor web page content

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2016 Nov 15 ]

Initial versions of How to monitor web page availability and How to monitor web page content are ready.
Please review/approve/comment.





[ZBX-13107] Compose "Virtual machine monitoring" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Aleksandrs Larionovs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1, Sprint 56 (Sep 2019), Sprint 55 (Aug 2019), Sprint 54 (Jul 2019)
Story Points: 2

 Description   

Compose Virtual machine monitoring section of HowTos providing quick manuals and solutions for the objectives stated in the header.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2017 Jan 02 ]

Ready for review.





[ZBX-13099] Compose "Application monitoring" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Aleksandrs Larionovs (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1, Sprint 56 (Sep 2019), Sprint 55 (Aug 2019), Sprint 54 (Jul 2019)
Story Points: 5

 Description   

Compose Application monitoring section of HowTos with the following pages:

  • How to monitor JBoss
  • How to monitor MySQL
  • How to monitor Nginx
  • How to monitor PosgreSQL
  • How to monitor Tomcat

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2017 Jan 02 ]

Ready for review.





[ZBX-13105] Compose "Problem notifications" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1
Story Points: 3

 Description   

Compose Problem notifications section of HowTos with the following pages:

  • How to execute a remote command
  • How to get notified by e-mail
  • How to get notified by SMS

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2017 Jan 02 ]

Ready for review.





[ZBX-13098] Compose "Visualization" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1
Story Points: 3

 Description   

Compose Visualization section of HowTos with the following pages:

  • How to compare several metrics in a graph
  • How to create network maps
  • How to view a single-metric graph

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2017 Jan 02 ]

Ready for review.





[ZBX-13104] Compose "Templates" section of "HowTos" Created: 2016 Nov 11  Updated: 2019 Oct 20

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Vladimir Silin (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Epic Link: "Howtos" in documentation
Sprint: Sprint 1
Story Points: 3

 Description   

Compose Templates section of HowTos with the following pages:

  • How to apply a template to host
  • How to export a template
  • How to import a template

providing quick manuals and solutions for the objectives stated in the headers.



 Comments   
Comment by Vladimir Silin (Inactive) [ 2017 Jan 02 ]

Ready for review.





[ZBX-11733] Windows Agent doesn't support item key "vm.vmemory.size" Created: 2017 Jan 24  Updated: 2019 Dec 10

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 3.2.3
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Christian Anton Assignee: Alexander Vladishev
Resolution: Unresolved Votes: 2
Labels: key, template, windows
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Documentation says the key "vm.vmemory.size" exists for "Virtual Memory": https://www.zabbix.com/documentation/3.2/manual/config/items/itemtypes/zabbix_agent/win_keys.

Also, the Windows Default Template delivered with Zabbix Server 3.2.3 (fresh install) uses this item key, for the item with name "Free virtual memory, in %" (item key: "vm.vmemory.size[pavailable]").

Nevertheless, the Windows Agent (version 3.2.0 running, latest stable) seems not to support this key:

aanton@zabbix:~$ zabbix_get -s 192.168.1.3 -k vm.vmemory.size
ZBX_NOTSUPPORTED: Unsupported item key.



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2017 Jan 24 ]

Turns out, this item was added in minor versions of 3.0 and 3.2. Documentation should say so. Related to (1) from ZBXNEXT-3487.

Comment by Christian Anton [ 2017 Jan 24 ]

So, the version where this new key is implemented is not yet stable and therefore not yet available for download here: http://www.zabbix.com/download?

Is there a download link for the newer one somewhere?

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jan 24 ]

You want at least 3.0.7 or 3.2.3 agent for this key.

Comment by Christian Anton [ 2017 Jan 24 ]

...and where can I download 3.2.3?

Comment by Glebs Ivanovskis (Inactive) [ 2017 Jan 24 ]

Pre-compiled agents fall behind, but repo.zabbix.com and packages/sources on the download page should be up-to-date.

Comment by Vladislavs Sokurenko [ 2017 Jan 26 ]

Documentation have been updated under ZBXNEXT-3487.
However Zabbix pre-compiled agents still fall behind on http://www.zabbix.com/download

Comment by Christian Anton [ 2017 Jan 26 ]

Good to know. But actually, why don't you consider updating the agents on the Downloads page, so that the Windows template delivered with Zabbix 3.2.3 (latest stable) is in sync with the latest Agent. Would make things easier for other people that might stumble over the same thing. I am actually myself not too motivated to compile stuff on Windows, and I suppose many other Zabbix users will feel the same way.

Comment by richlv [ 2017 Aug 22 ]

glebs.ivanovskis, https://www.zabbix.com/documentation/3.0/manual/introduction/whatsnew306 says this key was added in 3.0.6 - is there an issue in that version why 3.0.7 is needed ? nothing listed in https://www.zabbix.com/documentation/3.0/manual/installation/known_issues

similar with 3.2, this item key is listed for https://www.zabbix.com/documentation/3.2/manual/introduction/whatsnew322 , and nothing about any issues in https://www.zabbix.com/documentation/3.2/manual/installation/known_issues

glebs.ivanovskis 3.0.7/3.2.3 contain fixes for this issue.

<richlv> ah, thanks. so agent should be good





[ZBX-11811] Add more examples of C standard library and Unix system call usage in dummy module Created: 2017 Feb 14  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Installation (I)
Affects Version/s: 2.2.17rc1, 3.0.8rc1, 3.2.4rc1, 3.4.0alpha1
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Glebs Ivanovskis (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 2
Labels: loadablemodule
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Examples may include the usage of:

  • semaphores;
  • shared memory;
  • timeouts and alarms;
  • signals;
  • pipes;
  • files;
  • sockets;
  • ...
  • formatted input and output;
  • memory allocation and deallocation;
  • sorting;
  • ...

From ZBXNEXT-3353 (1):

...we should provide an example of synchronization in module developer documentation.

Currently in dummy module we call srand() in zbx_module_init() which is called by Zabbix main process before forking. This means that all poller processes will give out the same sequence of pseudo random numbers when polling dummy.random[]. Sorting this issue can be a good ground for an example.






[ZBX-11813] "Good conduct rules" for loadable modules Created: 2017 Feb 14  Updated: 2018 May 24

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Installation (I)
Affects Version/s: 2.2.17rc1, 3.0.8rc1, 3.2.4rc1, 3.4.0alpha1
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Glebs Ivanovskis (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 7
Labels: loadablemodule
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Current documentation leaves a lot of room for guessing and misinterpretation. There must be an explicit list of rules of what loadable modules must not do in any circumstances and guidelines on what they should do in case of certain failures (e.g. inability to allocate necessary resources). Quoting ZBXNEXT-3353.(2):

We should be explicit on what is and is not supported in modules:

  • calling Zabbix internal functions (DB API, logging, locking, data structures, memory mgmt.), using macros except the ones specifically mentioned in module API;
  • using Zabbix locks and/or attaching to shared memory segments used by Zabbix;
  • linking against other libraries that might be used by Zabbix itself;
  • loading and unloading other modules on behalf of Zabbix;
  • exporting fake history data through other modules on behalf of Zabbix;
  • compiler ABI requirements (does the module have to be compiled with the same compiler, release of the compiler as Zabbix);
  • security considerations - running 3rd party code directly in Zabbix for which there might be exception policies set in SELinux, etc.
  • accessing, modifying global variables, objects;
  • accessing, modifying Zabbix DB;
  • overriding signal handlers;
  • subset of standard C, POSIX functions and syscalls (exit() is a clear example, but there are others);
  • naming conventions;
  • etc.





[ZBX-11904] Cover every component in version compatibility Created: 2017 Mar 07  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Marc Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: compatibility
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Shouldn't the Version compatibility chapter every Zabbix components?



 Comments   
Comment by Glebs Ivanovskis (Inactive) [ 2017 Mar 12 ]

If the issue is all about documentation, shouldn't it be moved to ZBX project?

Comment by Marc [ 2017 Mar 12 ]

Wasn't sure it is indeed agreed on as a must have - thus opened as feature request However, feel free to move it to ZBX.

Comment by Glebs Ivanovskis (Inactive) [ 2017 Mar 13 ]

Moved. There is a priority to distinguish must, should and may have.





[ZBX-12168] "Recovery message" is sent though not matching the condition of the action Created: 2017 May 12  Updated: 2019 Dec 10

Status: Need info
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 2.2.17, 3.0.8, 3.0.22, 4.0.0
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Kotaro Miyashita Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File executing-recovery-host-group-was-changed-between-problem-ok-state.png     PNG File probelmwithrecovermsg.png     PNG File problemevent.png     File zabbix-2.2.17-fix-check-condition-send-recovery-msg.patch    
Sprint: Sprint 33, Sprint 34
Story Points: 0

 Description   

"Recovery message" is sent with PROBLEM event after removing the certain condition of the action.

How to reproduce :

Preparation:
1.Create a host.
2.Create a host group.
3.Add the host to the grop.
4.Create an item in the host.
5.Create a trigger for the item with using "Multiple PROBLEM events generation" option.
6.Create an action with including the trigger and the group to the condition and using "Recovery message" option.
To find out the problem add EVENT.RECOVERY.ID macros to the "Recovery message" field.

Procedure:
1.Make a PROBLEM event.
2.Remove the host from the grop.
3.Make a PROBLEM event.
4.Confirm a Recovery message is sent.

The problem occurs because escalator execute escalation
without checking the condition of the action when execute escalations.

I have found out this problem on version 2.2.7 and 3.0.7 .
And I made an patch for fixing this problem for 2.2.7.
Please see the attached patch.



 Comments   
Comment by Alexander Vladishev [ 2018 Jun 03 ]

We cannot reproduce this issue. Please attach additional information and screenshots. Thank you!

Comment by Kotaro Miyashita [ 2018 Jun 14 ]

I attached screenshots at procedure 1. and 4.

I confirmed above things on version 3.0.11.

I believe you need to wait after procedure 2 for refrection to the cache.

And DB was as follow at procedure 1.

MariaDB [zabbix]> select * from events where eventid=869583;
-----------------------------------------------------------------+

eventid source object objectid clock value acknowledged ns

-----------------------------------------------------------------+

869583 0 0 13933 1528953172 1 0 946668744

-----------------------------------------------------------------+
1 row in set (0.00 sec)

MariaDB [zabbix]> select * from escalations where eventid=869583;
-----------------------------------------------------------------------------

escalationid actionid triggerid eventid r_eventid nextcheck esc_step status itemid

-----------------------------------------------------------------------------

44 18 13933 869583 NULL 1528956773 1 0 NULL

-----------------------------------------------------------------------------

And at 4.

MariaDB [zabbix]> select * from escalations where eventid=869583;
Empty set (0.00 sec)

MariaDB [zabbix]> select * from events where eventid=869583;
-----------------------------------------------------------------+

eventid source object objectid clock value acknowledged ns

-----------------------------------------------------------------+

869583 0 0 13933 1528953172 1 0 946668744

-----------------------------------------------------------------+
1 row in set (0.00 sec)

 

 

Comment by Aigars Kadikis [ 2018 Oct 08 ]

This is reproducible on 3.0.22, 4.0.0. Here is an overview of the problem.

To reproduce I created a host 'newhost' with hostgroup 'newhostgroup' with trapper key 'rec.key' and trigger '{newhost:rec.key.last()}>0'

Scenario:

# generated one problem
zabbix_sender -z 127.0.0.1 -s "newhost" -k rec.key -o 7
# wait till the email comes

# move host from 'newhostgroup' to 'another' host group
zabbix_server -R config_cache_reload

zabbix_sender -z 127.0.0.1 -s "newhost" -k rec.key -o 0

# the email still comes even not matching condition

 

 

Comment by Kotaro Miyashita [ 2018 Nov 13 ]

I have checked this issue on version 4.0.0 .The problem was not reproduced .

  1. Make a PROBLEM event.
  2. Remove the host from the group of action's condition.
  3. Make a PROBLEM event.
  4. No PROBLEM message sent

Please note make PROBLEM event on 1. and 3.

If make a NORMAL event on 4. , a RECOVERY message was sent.

However , I do not know it would be a problem or not.

 

Comment by Kotaro Miyashita [ 2018 Nov 13 ]

I have checked this problem on version 3.0.22.

The problem is still reproducible by the following procedure.

A RECOVERY message is sent with a PROBLEM event on 4.

  1. Make a PROBLEM event.
  2. Remove the host from the group of action's condition.
  3. Make a PROBLEM event.
  4. RECOVERY message is sent




[ZBX-12322] Clarify LDAP host and Port on LDAP Authentication configuration Created: 2017 Jun 28  Updated: 2017 Jun 30

Status: Closed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Daniel Rodríguez Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: frontend, usability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team C
Sprint: Sprint 11

 Description   

The Port field on the LDAP Authentication configuration is not used when LDAP host is in LDAP URI format, this is, adding ldap:// or ldaps:// to the ip or hostname. Using this format, a custom ldap port must be specified in the URI. Like ldaps://hostname:3269. If not specified, the default ports are 389 for ldap:// and 636 for ldaps://.

This is the behavior of the ldap_connect php function, which is used by Zabbix: http://php.net/manual/en/function.ldap-connect.php

Please, add this information to the LDAP Authentication section in the Zabbix documentation.

Thank you very much.



 Comments   
Comment by Martins Valkovskis [ 2017 Jun 30 ]

Thanks, Zabbix documentation updated in versions 2.0-3.2.





[ZBX-16408] Improve Elasticsearch setup documentation Created: 2018 Sep 19  Updated: 2022 Oct 20

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: jchegedus Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File zabbix-elastic-cfg.txt    
Team: Team D
Sprint: Sprint 56 (Sep 2019), Sprint 55 (Aug 2019), Sprint 54 (Jul 2019), Sprint 57 (Oct 2019), Sprint 58 (Nov 2019), Sprint 59 (Dec 2019), Sprint 60 (Jan 2020), Sprint 61 (Feb 2020), Sprint 62 (Mar 2020), Sprint 63 (Apr 2020), Sprint 64 (May 2020), Sprint 65 (Jun 2020), Sprint 66 (Jul 2020), Sprint 67 (Aug 2020), Sprint 68 (Sep 2020), Sprint 69 (Oct 2020), Sprint 70 (Nov 2020), Sprint 71 (Dec 2020), Sprint 72 (Jan 2021), Sprint 73 (Feb 2021), Sprint 74 (Mar 2021), Sprint 75 (Apr 2021), Sprint 76 (May 2021), Sprint 77 (Jun 2021), Sprint 78 (Jul 2021), Sprint 79 (Aug 2021), 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), Technical backlog, Sprint 89 (Jun 2022), Sprint 90 (Jul 2022)
Story Points: 0.25

 Description   

So I have been testing Zabbix with Elasticsearch for quite some time now.
Some of the problems I encountered and resolved with zabbix - es configuration.
I think this should be properly reflected on the configuration to help others set up this properly.
I am attaching the list of commands to be executed on Kibana's Dev Tools console, this will work perfectly with Zabbix version 4 (beta1,beta2) and ES 6.x.

It is important to mention that:

{{"number_of_shards": "5",
"number_of_replicas": "1"}}

Means:

Replica set to 1 = two data nodes

If the user is running with 1 elastic data node (for testing for instance) the replica should be set to ZERO (0) – 2 data nodes = 1 and so on.

If this is not set correctly his cluster will be Yellow.






[ZBX-15201] Frontend requirements update: Add php filter extension Created: 2018 Nov 22  Updated: 2019 Dec 10

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 4.0.1, 4.0.2rc1
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Danilo G. Baio Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. Make sure when you don't have php filter extension installed.
  2. Login to Zabbix
  3. Click the user profile icon (Looks like a silhouette head and shoulders)
  4. Click update
  5. Get the below stack trace and profile is not updated.

Result:

Fatal error: Uncaught Error: Call to undefined function filter_var() in /usr/local/www/zabbix4/include/classes/validators/CEmailValidator.php:35 Stack trace: #0 /usr/local/www/zabbix4/include/classes/api/services/CUser.php(673): CEmailValidator->validate('jdmulloy@gmail....') #1 /usr/local/www/zabbix4/include/classes/api/services/CUser.php(450): CUser->validateMediaRecipients(Array, Array) #2 /usr/local/www/zabbix4/include/classes/api/services/CUser.php(316): CUser->validateUpdate(Array, Array) #3 /usr/local/www/zabbix4/include/classes/api/clients/CLocalApiClient.php(123): CUser->update(Array) #4 /usr/local/www/zabbix4/include/classes/api/wrappers/CFrontendApiWrapper.php(97): CLocalApiClient->callMethod('user', 'update', Array, '5fc4e351b8a5582...') #5 /usr/local/www/zabbix4/include/classes/api/wrappers/CApiWrapper.php(94): CFrontendApiWrapper->callClientMethod('update', Array) #6 /usr/local/www/zabbix4/include/classes/api/wrappers/CFrontendApiWrapper.php(63): CApiWrapper->callMethod('update', Array) #7 /usr/local/www/zab in /usr/local/www/zabbix4/include/classes/validators/CEmailValidator.php on line 35

 

Reported by: Joseph Mulloy
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=233005

 

IMHO needs a patch on `CFrontendSetup.php` and in the documentation.

https://www.zabbix.com/documentation/current/manual/installation/requirements
https://github.com/zabbix/zabbix/blob/trunk/frontends/php/include/classes/setup/CFrontendSetup.php



 Comments   
Comment by Edgar Akhmetshin [ 2018 Nov 22 ]

Hello, Danilo G. Baio

Thank you for the information about the defect found. Unfortunately for us, we do not supply official ports or packages for FreeBSD. However, please note that only in FreeBSD (OpenBSD?) the maintainers separate the basic filter module of PHP and deliver it with security/php5-filter package. PHP filter module is built-in module for most Linux based distros, checked it up on Oracle Linux 7.6, Ubuntu 18.04.1 and Red Hat 8 beta 1 with DNF package manager. No separate module filter for the PHP. You can install base PHP without any modules on any modern Linux and check it with php -I or php -m.

Looks like FreeBSD packaging system bug, but we will add this information to the documentation.

Regards,
Edgar

Comment by Danilo G. Baio [ 2018 Nov 22 ]

Hi Edgar, thank you taking a look on this.
 
On FreeBSD we like to give the users the opportunity to choose only what they want/need.
 
Filter is enabled by default as session, sockets and gettext are on these OS’s you said (at least Red Hat), and those are checked through `CFrontendSetup.php` and also documented.
 
And that’s why I don't consider this a FreeBSD bug, and will be very helpful to check if filter is installed and also document this requirement that was introduced on Zabbix 4.
 
And thank you again for your time.
 
Regards.

Comment by Edgar Akhmetshin [ 2018 Nov 22 ]

We will take into account your information and make adjustments. Thank you.

Regards,
Edgar





[ZBX-15627] Remove unused idx references Created: 2019 Feb 08  Updated: 2019 Feb 11

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 4.2.0alpha3
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Mārtiņš Tālbergs (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: codequality, documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

1) Please remove these keys from documentation and from code, because system only writes to these keys, but they are never read from. Please double check if that surely is so.

  • web.items.filter_ipmi_sensor
  • web.screenconf.config

2) Please rename all references to "cm" into "inventory" in code.
This includes menu array keys. Profile keys in code and in documentation. Database minor patch should be created that updates idx in profiles table.
These are few of the profile keys:

  • web.cm.druleid
  • web.cm.graphid
  • web.cm.groupid

3) Please rename idx web.items.filter_delay into web.items.filter_update_interval.

4) web.menu.login.last - wrong filename saved. Please rename <login> into <profile>. This idx now currently to file name of last page visited in the "Profile" tab. Also these menu idx seems not to work so well. Isn't the purpose of these to position user to the same page he visited during his last session?






[ZBX-16167] create_old2new_and_copy_of tries to create a very huge table Created: 2019 May 23  Updated: 2020 Jan 19

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent (G), Documentation (D)
Affects Version/s: 4.0.7, 4.2.1
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Cédric Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: crash
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Ubuntu server 16.04.5
Zabbix Agent 4.0.7
Zabbix Server 4.0.7


Sprint: Sprint 52 (May 2019), Sprint 53 (Jun 2019)
Story Points: 2

 Description   

create_old2new_and_copy_of function tries to allocate +100GB in RAM and finally crashes. Code does not change on 4.2.1.

We have 3 servers and only 1 have this problem (the most critical of course else there is no fun !)

Biggest log file is 2.2GB long other logs are mere few kB.

Steps to reproduce:

  1. Start the agent with log collection turned on
  2. Wait 20 minutes

Result:

A child process crash, the main process exits with code 0

Log:

   886:20190523:162821.565 Starting Zabbix Agent [XXXXX]. Zabbix 4.0.7 (revision 92831).
   886:20190523:162821.570 **** Enabled features ****
   886:20190523:162821.570 IPv6 support:          YES
   886:20190523:162821.570 TLS support:           YES
   886:20190523:162821.570 **************************
   886:20190523:162821.570 using configuration file: /etc/zabbix/zabbix_agentd.conf
   886:20190523:162821.573 agent #0 started [main process]
   890:20190523:162821.575 agent #1 started [collector]
   891:20190523:162821.577 agent #2 started listener #1
   893:20190523:162821.582 agent #4 started listener #3
   894:20190523:162821.583 agent #5 started active checks #1
   892:20190523:162821.589 agent #3 started listener #2
   894:20190523:165017.515 file:logfiles.c,line:1163 zbx_malloc: out of memory. Requested 102359681469 bytes.
   886:20190523:165017.544 One child process died (PID:894,exitcode/signal:1). Exiting ...
zabbix_agentd [886]: Error waiting for process with PID 894: [10] No child processes
   886:20190523:165017.562 Zabbix Agent stopped. Zabbix 4.0.7 (revision 92831).

Expected:
No crash or at least service restarted



 Comments   
Comment by Andris Mednis [ 2019 May 23 ]

Ok, crash is bad. There is no upper limit for file list size.

But there must be something unusual in your configuration or environment if you get so large list of matching files.

Do you have about 300 000 log files to be analyzed by a single logrt[] item? Then there must be 1 current log file and, say, 299 999 older log files produced by rotation and no more changing.

What is your log item key then?

(Log file size does not matter here, it is a number of files matched by the first parameter of log item which matters).

Comment by Glebs Ivanovskis [ 2019 May 23 ]

This may be useful.

Comment by Andris Mednis [ 2019 May 24 ]

Thanks, Gleb! That is a good blog, size overflow checking in calloc() was new to me.

Comment by Cédric [ 2019 May 24 ]

Our biggest log rotation only uses 7 older logs (for the moment).

For the moment we disabled log collection but this is one of the maior reasons we deployed Zabbix.

@andris : What do you mean by "What is your log item key then"?

Comment by Andris Mednis [ 2019 May 24 ]

log item key is like

   logrt["/home/zabbix/logs/^logfile[0-9]{1,3}$",,,100]

Do you have many logrt[] items defined? Or you try to monitor all log files with just one logrt[] item?

Comment by Cédric [ 2019 May 24 ]

Here are our log items:

logrt["/var/log/zabbix-agent/.*.log"] => 1 file
logrt["/var/log/crimson/.*.log"] => 320,790 files
logrt["/opt/keycloak/standalone/log/*.log.*"] => 111 files
logrt["/var/log/mongodb/.*.log"] => 1 files
logrt["/var/log/nginx/.*.log"] => 3 files

 

I think it does not like the 320,790 files entry, which are not rotated logs in fact.

Comment by Andris Mednis [ 2019 May 24 ]

Thanks!

Let's turn to logrt["/var/log/crimson/.*.log"], which apparently selects to monitor 320,790 log files.

The model of logrt[] is that there is only one current log file, for example, "app.log" and there could be many rotated log files, like "app_20190523.log", or "app_yesterday.log, or "previous_app.log" etc. (names of rotated log files do not matter as far as they match your regexp ( ".*.log")). What matters is that rotated log files do not change anymore.

If you happen to have several active log files in /var/log/crimson/ directory (e.g. "app1.log", db.log", "access.log", "errors.log") which are getting updated then you need a separate logrt[] item for each of them.

For example: logrt["/var/log/crimson/^app.*\.log$"], logrt["/var/log/crimson/^db.*\.log$"], logrt["/var/log/crimson/^access.*\.log$"], logrt["/var/log/crimson/^errors.*\.log$"].

Comment by Cédric [ 2019 May 24 ]

This was an error on our configuration. Those files should not have been recorded at all.

I changed the configuration and restarted the log polling. Every thing is fine.

BTW, I don't close the issue as it has revealed a problem on your side.

Thanks for you support.

Comment by Glebs Ivanovskis [ 2019 May 24 ]

andris, I was hinting that calloc() can be used instead of malloc() to magically reduce the amount of real physical memory needed to store a huge sparse (I believe it is sparse) old2new matrix like in numpy example from the article.

Comment by Andris Mednis [ 2019 May 24 ]

I see. Yes, usually it is pretty sparse (except corner cases). Currently we write explicit 0, 1, or 2 into old2new matrix and do not rely on assumption that representation of 0 is always the same as calloc() supplies.

Comment by Andris Mednis [ 2019 May 24 ]

What can we do?

  • Option 0: document the issue but do not modify code:
    • no arbitrary limit, user can do whatever he wants.
    • the code is 5 years old, since version 2.0.13 and this is the first case of crash.
    • misconfigured logrt[] item can crash monitoring.
  • Option 1: to prevent crash limit number of files to, for example, 10 000 ("should be enough for everybody"). Then no more than 100 MB of memory will be asked.
    • misconfigured logrt[] will not crash monitoring (if 100 MB can be allocated),
    • modification is trivial.
    • an arbitrary limit is introduced.
  • Option 2: change algorithm to work with less memory (look at calloc()):
    • modification will take work and time.
    • number of files will not be limitless, the limit will be just higher.
Comment by Cédric [ 2019 May 24 ]

I think you should rename Option 0 to "Document the issue and code nothing".

That way, Option 0 and 1 are the most reasonable ones.

Comment by Andris Mednis [ 2019 May 24 ]

Thanks, cedric.s!  Fixed.





[ZBX-16297] bcdiv(): Division by zero in Graph widget Created: 2019 Jun 25  Updated: 2020 Jun 17

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 4.0.9
Fix Version/s: 4.4 (plan)

Type: Documentation task Priority: Trivial
Reporter: Tamahome Assignee: Kristians Pavars
Resolution: Unresolved Votes: 0
Labels: graphwidget
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File defines.inc.php     File func.inc.php     File test.func.inc.php     PNG File Снимок экрана от 2019-06-25 10-24-16.png    
Issue Links:
Sub-task
part of ZBX-10911 Zabbix frontend locales flapping Closed
Team: Team D
Sprint: Sprint 56 (Sep 2019), Sprint 55 (Aug 2019), Sprint 53 (Jun 2019), Sprint 54 (Jul 2019), Sprint 57 (Oct 2019), Sprint 58 (Nov 2019), Sprint 59 (Dec 2019), Sprint 60 (Jan 2020), Sprint 61 (Feb 2020)

 Description   
  • bcdiv(): Division by zero [zabbix.php:21 → require_once() → ZBase->run() → ZBase->processRequest() → CController->run() → CControllerWidgetSvgGraphView->doAction() → CSvgGraphHelper::get() → CSvgGraph->draw() → CSvgGraph->calculatePaths() → convert_units() → bcdiv() in include/func.inc.php:790]
  • bcdiv(): Division by zero [zabbix.php:21 → require_once() → ZBase->run() → ZBase->processRequest() → CController->run() → CControllerWidgetSvgGraphView->doAction() → CSvgGraphHelper::get() → CSvgGraph->draw() → CSvgGraph->calculatePaths() → convert_units() → bcdiv() in include/func.inc.php:790]

Steps to reproduce:

  1. Create dashdoard
  2. Use NEW 

Result:
See screenshot...



 Comments   
Comment by Aleksejs Petrovs [ 2019 Jun 26 ]

Hello Tamahome,

Could you please attach some more files form your environment as we're struggling to reproduce the issue:

/usr/share/zabbix/include/defines.inc.php
/usr/share/zabbix/include/func.inc.php

Also in a few minutes, I'll attach the file which should be copied to the frontend folder and opened in the browser. We will need that info as well.

Thank you!
Regards,
Aleksejs!

Comment by Tamahome [ 2019 Jun 26 ]

I attached the files, though they were on a different path.
/var/www/localhost/htdocs/zabbix/include

Thank.

Comment by Vasily Goncharenko (Inactive) [ 2019 Jul 16 ]

Hello Tamahome,

We still have difficulty reproducing this issue.

At the moment, it is clear that an error occurs when calculating label names on the Y axis.
Perhaps the issue is reproduced only on your data.

Can you, please, do the following to provide us with more debug information:
1) Enable debug mode for your user. It would be best, if your user would be the only one with debug mode at moment of this test.

2) Backup your original /var/www/localhost/htdocs/zabbix/include/func.inc.php;

3) Replace func.inc.php with file test.func.inc.php, that is attached to this issue (after replacement it should be named as original file: func.inc.php);

4) Reproduce the issue and then close this browser window (to prevent extra logging when graph will refresh).
The file zbx.test.log should appear in the /tmp directory.

5) Attach it to this issue so we can analyze it;

6) Restore your original func.inc.php in the /var/www/localhost/htdocs/zabbix/include directory;

Thank you!

Regards,
Vasily!

Comment by Tamahome [ 2019 Jul 22 ]

After I followed the advice of Andrey from the ZBX-10911 this also solved this problem.
(ZBX-10911, Andrey added a comment - 2018 Dec 09 17:12 )

Seem to be (USE="-threads" APACHE2_MPMS="prefork" - for gentoo users) solve this problem to.
After rebuilding the Apache, the problem is not reproduced.
Thank you!

Comment by Valdis Murzins [ 2019 Jul 22 ]

To work with big data we are using BC Math functions (in this case bcdiv). This function should receive data separated by full stop. Normally Zabbix is managing this, when setting locale.
But as "The locale information is maintained per process, not per thread.", in multi-thread environment, when there are several projects run by same Apache process, it is possible, that locale will be changed in other thread and it will change, how data will be processed in Zabbix thread. It may result in error displayed in this issue.

This behavior should be documented in known issues.

P.S. Thank you Tamahome for reporting your solution.

Comment by Valdis Murzins [ 2020 Feb 05 ]

Documentation on known issues is updated: 4.0, 4.4, 5.0.





[ZBX-16868] MySQL templates are not updated in Zabbix after upgrade to 4.4.x Created: 2019 Nov 04  Updated: 2019 Nov 06

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S), Templates (T)
Affects Version/s: 4.4.0, 4.4.1
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Alex Grebenschikov Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: Agent, Versioning, templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Sub-task
part of ZBXNEXT-4327 Template Versioning Open
part of ZBXNEXT-1111 Add a version attribute to templates Closed

 Description   

Steps to reproduce:

  1. Install Zabbix server 4.2.x or older version
  2. Enable MySQL monitoring
  3. Upgrade Zabbix server to 4.4.x in place
  4. See MySQL monitoring corrupted

Result:

# zabbix_get -s 1.2.3.4 -k mysql.ping
mysqladmin: connect to server at '-P' failed
error: 'Unknown MySQL server host '-P' (-2)'
Check that mysqld is running on -P and that the port is 3306.
You can check this by doing 'telnet -P 3306'

 

 

Expected:
Success MySQL monitoring without a need to manually modify templates in Zabbix-server.

 

Older versions of Zabbix server use the following format:

zabbix_get -s 1.2.3.4 -k mysql.ping

and Zabbix 4.4 uses format as the following:

zabbix_get -s 1.2.3.4 -k "mysql.ping[localhost,3306]"

 

Zabbix documentation should mention the changes and warn users about it.

Zabbix template should be upgraded to use new-way calls to Zabbix-agents.

Regards,
Alex.



 Comments   
Comment by Valentins Grins [ 2019 Nov 04 ]

Hello,

It seems that together with upgrade your userparameters_mysql.conf file was updated and existing keys are not supported anymore. Please download latest template from https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mysql and update it. New template considers usage of macros for hostname, port and other parameters.





[ZBX-17031] Virtual appliance should use net.ifnames=0 biosdevname=0 for old if naming or use netplan/NetworkManager policy Created: 2019 Dec 04  Updated: 2019 Dec 04

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Appliance (L), Documentation (D)
Affects Version/s: 3.0.28, 4.0.15, 4.4.3, 5.0.0alpha1
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Edgar Akhmetshin 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
depends on ZBX-17030 Defaul network type/driver for VMware... Confirmed

 Description   

Steps to reproduce:

  • convert vmdk image to the esxi
  • import image
  • try to setup like mentioned in the guide: network

Result:
Interface name enp33s1, etc...;

Expected:
eth0 or correct example how to use netplan/NetworkManager






[ZBX-17266] User and LLD macro support list should represent field names that are in frontend Created: 2020 Feb 05  Updated: 2020 Feb 07

Status: Doc. sign-off
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Ivo Kurzemnieks Assignee: Ivo Kurzemnieks
Resolution: Unresolved Votes: 1
Labels: documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team B

 Description   

1. user macros have shortened fields like "SNMPv3 auth pass" and "SNMPv3 priv pass", however, in frontend they are "SNMPv3 authentication passphrase" and "SNMPv3 privacy passphrase". Let's make sure all field names are matching the frontend field names.

2. LLD macros have a lot of fields named in plural, however, they should be singular. For example "SNMP OIDs", "descriptions", "IPMI sensor fields" and many more. They should be singular. Please, check all fields.






[ZBX-17544] Function CurlHttpRequest.AddHeader not working as documented Created: 2020 Apr 02  Updated: 2020 May 11

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 4.4.7
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Alex Alexandrov (Inactive) Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: CurlHttpRequest, JavaScript
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2020-04-06-15-50-22-967.png    

 Description   

I am developing webhook integration with third party application that requires authorization via tokens in headers.

When I use this code:

json = ....
...
req = new CurlHttpRequest();
req.AddHeader('Content-Type', 'application/json'); 
req.AddHeader('Auth-Token', params.user_token);
req.AddHeader('User-Id', params.user_id);
...
resp = req.Post(url, JSON.stringify(json));
...

I receive status code 401 with message "You must be logged in to do this." from third party application.

 

But when I use this code

json = ....
...
req.AddHeader('Content-Type: application/json');
req.AddHeader('Auth-Token: ' + params.user_token);
req.AddHeader('User-Id: ' + params.user_id);
...
resp = req.Post(url, JSON.stringify(json));
...

everything works fine and I receive code 200.

From this I concluded that setting the headers does not work correctly in the first code example.

According to this documentation, I pass two parameters to AddHeader function, but this not working as expected. But code examples (in the documentation) use string concatenation instead of passing two parameters and this working great.

Where is the mistake? In the documentation or code examples?



 Comments   
Comment by Aigars Kadikis [ 2020 Apr 06 ]

I do not have deep expertise in JavaScript, but by diving into DEVs work on our official media integrations for 4.4/5.0:

Opsgenie: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/opsgenie/media_opsgenie.xml?at=refs%2Fheads%2Frelease%2F4.4 is using:

    req.AddHeader('Content-Type: application/json');
    req.AddHeader('Authorization: GenieKey '+params.token); 

 

Mattermost: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/mattermost/media_mattermost.xml?at=refs%2Fheads%2Frelease%2F4.4 is using:

    req.AddHeader('Content-Type: application/json; charset=utf-8');
    req.AddHeader('Authorization: Bearer ' + params.bot_token) 

 

PagerDuty does have a closer example to your first one.

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/media/pagerduty/media_pagerduty.xml?at=refs%2Fheads%2Frelease%2F4.4

    var params = JSON.parse(value),
        req = new CurlHttpRequest(),
        fields = {},
        resp = '';
    req.AddHeader('Content-Type: application/json'); 

Hope this helps to continue the development process. Nevertheless all latest webhooks here for 4.4 and the latest version of Zabbix. Let us know what you think.

 

Kind regards,
Aigars

Comment by Alex Alexandrov (Inactive) [ 2020 Apr 06 ]

Hello Aigar Kadikis!

Yes, I absolutely agree.
But in this way it turns out that the documentation is misleading (the function has not two, but one parameter).

Comment by Aigars Kadikis [ 2020 Apr 06 ]

Thanks for the response. I must clarify. The comma is misleading?

Looking forward to hear from you,

Comment by Alex Alexandrov (Inactive) [ 2020 Apr 06 ]

Yes,  comma is misleading.





[ZBX-17562] MySQL 8.0 user creation using native authentication Created: 2020 Apr 07  Updated: 2020 Apr 13

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 4.0.19, 4.4.7
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Matej Kotras Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

MySQL 8



 Description   

When installing server/proxy and creating a user in MySQL 8.0 using existing documentation. Zabbix service returns this error in logfile:

 

13242:20200407:155638.865 [Z3001] connection to database 'zabbix' failed: [2059] Authentication plugin 'caching_sha2_password' cannot be loaded: /usr/lib64/mysql/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory   

This is due to MySQL 8 changing their default authentication modules to caching_sha2_password. Users need to be created using old auth method 'mysql_native_password' or MySQL needs to be configured to use the old one as its default

MySQL my.cnf

 

[mysqld]
default-authentication-plugin=mysql_native_password

 

Please update documentation when using MySQL 8 as DB:

 

create database zabbix character set utf8 collate utf8_bin;
create user 'zabbix'@'localhost' identified with mysql_native_password by '<PASSWORD>';
grant all privileges on zabbix.* to 'zabbixuser'@'localhost';

 

and/or support new MySQL authentication method

More info on this topic had been summarized here:
https://medium.com/@crmcmullen/how-to-run-mysql-8-0-with-native-password-authentication-502de5bac661

 



 Comments   
Comment by Matej Kotras [ 2020 Apr 13 ]

typo, should be zabbix instead of zabbixuser
grant all privileges on zabbix.* to 'zabbixuser'@'localhost';





[ZBX-18052] share.zabbix.com cant login with google account anymore Created: 2020 Jul 10  Updated: 2020 Jul 13

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: patrik uytterhoeven Assignee: Renats Valiahmetovs (Inactive)
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

https://share.zabbix.com/

login with google

it will fail with:

Logging in with Google is temporarily disabled for this app

This app has not yet been verified by Google to use the 'Log in to Google' feature.

 

 

 



 Comments   
Comment by Renats Valiahmetovs (Inactive) [ 2020 Jul 13 ]

Hello Patrik,

This issue will be raised internally, until a solution will be agreed upon, this option will not be available, unfortunately.

Best Regards,

Renat





[ZBX-18111] Monitoring Problems: Show operational data - With problem name | Not working Created: 2020 Jul 19  Updated: 2021 Mar 18

Status: Reopened
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 5.0.2
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Marco Hofmann Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: Frontend
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 10 amd64
MariaDB 10.4
Zabbix 5.0.2


Attachments: PNG File Operational_data1.png     PNG File Operational_data2.png     PNG File Operational_data3.png    
Team: Team D

 Description   

Steps to reproduce:

  1. Upgrade from 4.4.10 to 5.0.2 using repo.zabbix.com
  2. Navigate to Monitoring -> Problems in Zabbix Frontend 5.0.2
  3. Set filter like in attached screenshots
  4. Test out the three operational data filter: None / Separately / With problem name

Result:
See screenshots 1-3
Error in screenshot 3
"With problem name" behaves like "None". No operational data is seen.

Expected:
Behavior from 4.4.x
Also see description in the official docs:
https://www.zabbix.com/documentation/current/manual/web_interface/frontend_sections/monitoring/problems?s[]=operational&s[]=data
Seems like a bug introduced in 5.0.x



 Comments   
Comment by Valdis Murzins [ 2020 Jul 20 ]

Hello starko,

For these triggers, do you have the field "Operational data" filled in in the configuration. Or this field is left empty?

We are displaying operational data with trigger name only, if the operational data is configured in Trigger configuration. The default operational data is not displayed with trigger name.

Although documentation needs to be a bit updated.

Comment by Marco Hofmann [ 2020 Jul 20 ]

Hi Valdis,

I have not configured "Operational data" for any of the Trigger in the screenshots. The field is empty.

Your answer is contrary to the documentation, hence my Issue report. Quote:

"If no operational data is configured, latest values of all items from the expression are displayed."

Comment by Valdis Murzins [ 2020 Jul 20 ]

This statement is correct, but only for operational data column. It is not correct for operational data in line with problem name.

Comment by Martins Valkovskis [ 2020 Jul 21 ]

Added to documentation:

Operational data are appended to the problem name only if the Operational data field is non-empty in the trigger configuration.

Comment by Marco Hofmann [ 2020 Jul 21 ]

IMHO this is a missed chance. Here are my thoughts:

I really like the "fallback" to always show {ITEM.LASTVALUE}, if no operational data is defined, that occurs when you select "Separately" in the Problems View. That is really a great administrative user experience. Especially if you have an "old" Zabbix Server back from 2.0 and 99% of your templates don't leverage operational data, yet.

Now with operational data defined and "With problem name" you would get very pretty trigger names, but with several problems:

  1. You must set operational data on each and every template, otherwise you only see the data you "activated" and miss the rest. They are just invisible! Bad user experience!
  2. It tedious to alter each template trigger to add {ITEM.LASTVALUE}, just to "activate" a feature that would otherwise be useless, because invisible.
  3. Honestly: What's the difference if you add the same fallback to "With problem name" or me writing {ITEM.LASTVALUE} into each and every Trigger operational data?
Comment by Valdis Murzins [ 2020 Jul 21 ]

While I agree, that currently it is not exactly intuitive behavior, there is a use case, I want to point out:
User might have triggers, where he have configured nice verbose operational data message, but also this user might have a complex trigger, that calculates it's value based on some 10 different items.
The nice operational data message user will want to display in line with problem name. But he will not want to see all 10 item by problem name for the complex trigger.
So there needs to be a way for user to configure, that he doesn't want to see operational data for some problems.

That being said, I have raised this concern higher, but I have no information on how and when it will be implemented.

Comment by Marco Hofmann [ 2020 Jul 21 ]

I see your argument, but it seems like there is a missing piece in the concept.

The obvious answer would be, that someone who writes complex triggers, but want's to see only the resulting value, MUST add something into operational data. Which is kinda the opposite of my argumentation, but shows the problem of the concept.

> But he will not want to see all 10 item by problem name for the complex trigger.
Yes, that is a very true argument.

> So there needs to be a way for user to configure, that he doesn't want to see operational data for some problems.
I think that sums up your and my opinion. I would like to have a fallback to {ITEM.LASTVALUE} in both cases.
You add that there needs a way to prevent the fallback. The truth lies in between.
Maybe like a checkbox besides the Operational data filed in the trigger configuration, where you can check: Do not display (regardless of view)
Ps.: Your argument: "But he will not want to see all 10 item by problem name for the complex trigger."
does in some way also account to the view "Separately".
It seems like it's a bit unpolished that both views behave differently.

Maybe the whole problem is not the views, but the overall concept of how and when operational data is displayed and the combination with when and how a fallback is done.

Comment by Matthew Steeves [ 2021 Mar 18 ]

Just to add a workaround for @Valdis Murzins issue of:

there needs to be a way for user to configure, that he doesn't want to see operational data for some problems.

I encountered the same problem. My solution was to define a global macro called {$EMPTY_STRING} with (predictably) no value. 

Anytime I have a trigger where I don't want any operational data, I just put the macro there. I could have done without the macro, but I like it because it makes it more obvious and intentional.





[ZBX-18225] alternate port error net.tcp.service [service, <ip>, <port>] Created: 2020 Aug 10  Updated: 2022 Mar 01

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.2
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Fabio Mazzi Assignee: Eduards Matuls (Inactive)
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

In the documentation, the item simple check, is described in the key net.tcp.service [service, <ip>, <port>], however if I use net.tcp.service [https] and the port is 443, OK returns me 1, but if the port is for example 58091 and I use the net.tcp.service [https ,, 58091] key, it returns 0.
But in the documentation it says that I can use an alternative port.

I did the same test on port 80 and 58081 http and it worked.

 

Using net.tcp.service [tcp ,, 58091] returns 1 too, because Using net.tcp.service [https ,, 58091] returns 0?

 

Examples of using simple checks in the documentation:

net.tcp.service [ftp ,, 155]
net.tcp.service [http]
net.tcp.service.perf [http ,, 8080]
net.udp.service.perf [ntp]
----------------------------------

 



 Comments   
Comment by Eduards Matuls (Inactive) [ 2020 Aug 11 ]

Hello!

Thank you for reporting the issue!

Can you please specify what OS was used in your setup? Was Zabbix installed from packages? I will try to recreate your setup and test the issue.

Regards,
Eduards





[ZBX-18297] Webhook links on problem page are not related to the webhooks used Created: 2020 Aug 26  Updated: 2023 Jun 05

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.3, 5.2.0alpha1
Fix Version/s: 6.4 (plan)

Type: Documentation task Priority: Trivial
Reporter: Vjaceslavs Bogdanovs Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: links, menu, webhook
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2020-08-26-14-36-17-403.png    
Issue Links:
Duplicate
is duplicated by ZBX-21493 Integration Zabbix with Jira using ji... Closed
Sprint: Sprint 93 (Oct 2022), Documentation backlog, Sprint 94 (Nov 2022), Sprint 95 (Dec 2022), Sprint 96 (Jan 2023), Sprint 97 (Feb 2023), Sprint 98 (Mar 2023), Sprint 99 (Apr 2023), Sprint 100 (May 2023)
Story Points: 0.25

 Description   

Currently, all links with resolved macros (including links with no macros) are shown in a trigger menu on a problem page:

With the growing list of Webhooks, this bloats the trigger menu and causes confusion for users.

The proposed solution is to use an action list to determine the webhooks related to the problem. Then links will be more relevant.

 



 Comments   
Comment by Alexei Vladishev [ 2020 Sep 03 ]

I do not think it is a good idea to implement additional logic for visibility of menu entries. What we have is already sufficient.

Let's document how it works now instead. We should clearly say that menu entry is visible if and only if URL does not have any unresolved macros.





[ZBX-18590] Document and conf description mismatched Created: 2020 Oct 30  Updated: 2020 Nov 02

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent (G), Documentation (D)
Affects Version/s: 4.0.26, 5.0.5
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Kim Jongkwon Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: agent, documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File conf_StartAgents.png     PNG File document_Alias.png    
Issue Links:
Duplicate

 Description   

Option: Alias
Multiple parameters with the same Alias key are allowed.

Multiple parameters with the same Alias key are not allowed.

Document Correction is required below: (3.2 ~ current)
https://www.zabbix.com/documentation/5.0/manual/appendix/config/zabbix_agentd
https://www.zabbix.com/documentation/5.0/manual/appendix/config/zabbix_agentd_win

Source: Agent (Win) ./conf/zabbix_agentd.win.conf Correction is required :
StartAgents Range is described as 0-100. correct range is 0-63.






[ZBX-18639] Zabbix docs are very unspecific regarding SNMPv3 Authentication and Privacy settings Created: 2020 Nov 11  Updated: 2020 Nov 12

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.5
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Marco Hofmann Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Debian 10 amd64
Zabbix 5.0.5
SNMPv3


Attachments: PNG File image-2020-11-11-10-44-10-745.png     PNG File image-2020-11-11-10-44-37-280.png     PNG File image-2020-11-11-10-44-52-384.png    

 Description   

Steps to reproduce:

  1. Want to monitor a device via SNMPv3
  2. Read the docs
  3. Compare Authentication and Privacy settings between Zabbix Frontend and the device
  4. Zabbix offers SHA and AES without and hint about the details.
  5. The device expects an exact match by specifying which SHA and AES exactly

Result:
I can select SHA, but I don't know what SHA exactly.
I can select AES, but I don't know what AES exactly.
The connection fails. See screenshots.


Expected:
Like in the switch config, I expect from Zabbix Frontend and/or Zabbix Docs, that it's explained what SHA/AES exactly I choose, so I can match my settings regarding the device.



 Comments   
Comment by Marco Hofmann [ 2020 Nov 11 ]

Somebody in the Zabbix International Community (Telegram) told me, that Zabbix means SHA1 and AES-128 with it default settings. That helped a lot.
Anyway, I would expect, that the buttons not just state SHA or AES, but instead are labeled with SHA1 or AES-128 to makes things clear.





[ZBX-18735] Documentation for XML XPath Created: 2020 Dec 04  Updated: 2020 Dec 04

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.6
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Aigars Kadikis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2020-12-04-10-26-27-394.png     PNG File xpath.png    

 Description   

Looking for examples while working with "XML Path" Item preprocessing:

The guidance should somewhere here:






[ZBX-18835] Wrong default {$VFS.FS.FSNAME.NOT_MATCHES} in Windows filesystems by Zabbix agent Created: 2021 Jan 04  Updated: 2022 Aug 30

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Templates (T)
Affects Version/s: 5.2.3
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Ihor Romanyshyn Assignee: Aleksandre Sebiskveradze
Resolution: Unresolved Votes: 0
Labels: templates
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Hi!

There is "^(/dev|/sys|/run|/proc|.+/shm$)" for {$VFS.FS.FSNAME.NOT_MATCHES} in template "Windows filesystems by Zabbix agent".

But it wouldn't work. It must be something like "^(\/dev|\/sys|\/run|\/proc|.+\/shm$)".

 

Please, check. Thanks!



 Comments   
Comment by Edgars Melveris [ 2021 Jan 05 ]

Hello Ihor!

It seems that the documentation is a bit misleading here. It clearly states the Zabbix uses PCRE here, but states that you can test it with "grep -E" which is incorrect, it should be "grep -P"

https://www.zabbix.com/documentation/current/manual/discovery/low_level_discovery#filter

Which by the way works with the original format, unlike regex101.com, which shows an error with this pattern.

I'll confirm the report to fix the documentation

Comment by Ihor Romanyshyn [ 2021 Jul 12 ]

Guys, are you sure it will work like this? Because i checked there with regex101.com and it said the slashes must be escaped with backslashes.





[ZBX-18980] rename "required string" to "required pattern" in web checks Created: 2021 Feb 05  Updated: 2021 Feb 09

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 5.2.4
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Johannes Münch Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: webmonitoring
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Update by zabbix support:
**********************
after comment from cyclone below conclusion is that in frontend, in web check settings, field name "required string" is misleading, as it's actually regexp.
Suggested to rename it in a way that it will be clean that it's a regexp, for example "required pattern"
Issue summary updated accordingly.
*********************

Steps to reproduce:

  1. Create a web scenario step (for the Jenkins login page)
  2. add the "required string" of "<title>Sign in [Jenkins]</title>"

Result:
See log excerpt:

 19188:20210205:142224.442 process_httptest() use step "GET login page"
 19188:20210205:142224.442 process_httptest() use post ""
 19188:20210205:142224.442 process_httptest() go to URL "https://jenkins.example.com/login"
 19188:20210205:142224.470 process_httptest() page.data from https://jenkins.example.com/login:'
    
    
  
  
  <!DOCTYPE html><html lang="en-US"><head resURL="/static/9547cc1b" data-rooturl="" data-resurl="/static/9547cc1b" data
-imagesurl="/static/9547cc1b/images"><title>Sign in [Jenkins]</title><meta name="ROBOTS" content="NOFOLLOW"><meta name=
"viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/static/9547cc1b/css/simple-page.
css" type="text/css"><link rel="stylesheet" href="/static/9547cc1b/css/simple-page.theme.css" type="text/css"><link rel
="stylesheet" href="/static/9547cc1b/css/simple-page-forms.css" type="text/css"></head><body><div class="simple-page" r
ole="main"><div class="modal login"><div id="loginIntroDefault"><div class="logo"></div><h1>Welcome to Jenkins!</h1></d
iv><form method="post" name="login" action="j_acegi_security_check"><div class="formRow"><input autocorrect="off" autoc
omplete="off" name="j_username" id="j_username" placeholder="Username" type="text" class="normal" autocapitalize="off" 
aria-label="Username"></div><div class="formRow"><input name="j_password" placeholder="Password" type="password" class=
"normal" aria-label="Password"></div><input name="from" type="hidden"><div class="submit formRow"><input name="Submit" 
type="submit" value="Sign in" class="submit-button primary "></div><script type="text/javascript">
                  document.getElementById('j_username').focus();
                  var checkBoxClick = function(event) {
                    document.getElementById('remember_me').click();
                  }
                </script></form><div class="footer"></div></div></div></body></html>'
 19188:20210205:142224.471 In int_in_list() list:'200' value:200
 19188:20210205:142224.471 End of int_in_list():SUCCEED
 19188:20210205:142224.471 In process_step_data() rspcode:200 time:0.027836 speed:59222.000000
 19188:20210205:142224.471 query [txnlev:0] [select type,itemid from httpstepitem where httpstepid=16]
 19188:20210205:142224.474 In zbx_preprocess_item_value()
 19188:20210205:142224.474 End of zbx_preprocess_item_value()
 19188:20210205:142224.474 In zbx_preprocess_item_value()
 19188:20210205:142224.474 End of zbx_preprocess_item_value()
 19188:20210205:142224.475 In zbx_preprocess_item_value()
 19188:20210205:142224.475 End of zbx_preprocess_item_value()
 19188:20210205:142224.475 End of process_step_data()
 19188:20210205:142224.478 query without transaction detected
 19188:20210205:142224.478 query [txnlev:0] [update httptest set nextcheck=1612531404 where httptestid=16]
 19188:20210205:142224.483 cannot process step "GET login page" of web scenario "Jenkins (internal)" on host "monitoring.example.com": required pattern "<title>Sign in [Jenkins]</title>" was not found on https://jenkins.example.com/login

Expected:
I expect that required string to be found as visible in the log and therefor the check to be successful.

I checked with a diff (just to make sure) but the required string is definitely in there.
In the log excerpt above are line feeds because I copied it from the console. The original source of the page looks as follows:


    
    
  
  
  <!DOCTYPE html><html lang="en-US"><head resURL="/static/9547cc1b" data-rooturl="" data-resurl="/static/9547cc1b" data-imagesurl="/static/9547cc1b/images"><title>Sign in [Jenkins]</title><meta name="ROBOTS" content="NOFOLLOW"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/static/9547cc1b/css/simple-page.css" type="text/css"><link rel="stylesheet" href="/static/9547cc1b/css/simple-page.theme.css" type="text/css"><link rel="stylesheet" href="/static/9547cc1b/css/simple-page-forms.css" type="text/css"></head><body><div class="simple-page" role="main"><div class="modal login"><div id="loginIntroDefault"><div class="logo"></div><h1>Welcome to Jenkins!</h1></div><form method="post" name="login" action="j_acegi_security_check"><div class="formRow"><input autocorrect="off" autocomplete="off" name="j_username" id="j_username" placeholder="Username" type="text" class="normal" autocapitalize="off" aria-label="Username"></div><div class="formRow"><input name="j_password" placeholder="Password" type="password" class="normal" aria-label="Password"></div><input name="from" type="hidden"><div class="submit formRow"><input name="Submit" type="submit" value="Sign in" class="submit-button primary "></div><script type="text/javascript">
                  document.getElementById('j_username').focus();
                  var checkBoxClick = function(event) {
                    document.getElementById('remember_me').click();
                  }
                </script></form><div class="footer"></div></div></div></body></html>



 Comments   
Comment by Johannes Münch [ 2021 Feb 05 ]

It is not really visible but in the source of the page everything from

  <!DOCTYPE html>

until

<script type="text/javascript">

is in one line.

Comment by Oleksii Zagorskyi [ 2021 Feb 08 ]

It's stated in documentation that "Required string" is a regexp
https://www.zabbix.com/documentation/5.0/manual/web_monitoring

and your string "<title>Sign in [Jenkins]</title>" contains special characters [ ], which must be escaped.

Closed as won't fix.

Comment by Johannes Münch [ 2021 Feb 08 ]

I missed the part that is is a regular expression. Thank you for clarifying. It is indeed working as expected if used correctly.

<title>Sign in \[Jenkins\]</title>
Comment by Glebs Ivanovskis [ 2021 Feb 08 ]

Dear zalex_ua,

I've checked the link you provided and noticed an interesting thing — description of Required string does not use the word "string":

Parameter Description
Required string Required regular expression pattern.
Unless retrieved content (HTML) matches the required pattern the step will fail...

It uses "pattern" instead. This is usually a sign that something is misnamed. I think it would be nice to rename the field Required stringRequired pattern. This will hint that this is not a plain string, but rather a regular expression. And hopefully will stop confusing users.

Comment by Oleksii Zagorskyi [ 2021 Feb 09 ]

Gleb, you are right. Let's use this issue report to improve terms used in frontend.





[ZBX-19043] Missing Predictive trigger function details PDF Created: 2021 Feb 19  Updated: 2022 Aug 09

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: 5.4 (plan)

Type: Documentation task Priority: Trivial
Reporter: Arturs Lontons Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 2
Labels: prediction_docs
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PDF File prediction_docs.pdf    
Issue Links:
Sub-task
Team: Team D
Sprint: Sprint 74 (Mar 2021), Sprint 75 (Apr 2021), Sprint 76 (May 2021), Sprint 77 (Jun 2021), Sprint 78 (Jul 2021), Sprint 79 (Aug 2021), 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), Technical backlog, Sprint 89 (Jun 2022), Sprint 90 (Jul 2022)
Story Points: 1

 Description   

For a while now the predictive trigger function pdf, which described the math behind the functions has been missing from https://www.zabbix.com/documentation/current/manual/config/triggers/prediction

It would be quite useful to have it back, so the math behind the functions is fully transparent.



 Comments   
Comment by Marina Generalova (Inactive) [ 2021 Mar 23 ]

All zabbix.org files are now gone. Gatis has asked several times before deletion, if there is anything worth saving - and no one answered. Sorry, but now it seems that it's too late.  WON'T FIX.

<dimir> We do not and can not know what is used. You say it was asked, asked whom? Zabbix employees? They are not zorg users at all, of course they do not care. zorg users are community and did we ask them?
<mgeneralova> No problem to bring it back, thanks for attaching the file. I had talked to Gatis and he said it's too late, that's why I closed this task. Glad that we have found a solution.

Comment by dimir [ 2021 Mar 23 ]

Attached, found it from webarchive. I believe we could attach it to our documentation. According to references from community (including forum links) this document is very useful to our users. Thank you, cyclone for creating it!





[ZBX-19283] Mention that FreeTDS can be used for MS SQL monitoring solution. And vice versa Created: 2021 Apr 23  Updated: 2021 Apr 23

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Templates (T)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi 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   

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mssql_odbc
mentions that, quote:

Do not forget to install the Microsoft ODBC driver on the Zabbix server or the Zabbix proxy.
See Microsoft documentation for instructions: https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver15

while official documentation mentions FreeTDS only:
https://www.zabbix.com/documentation/5.4/manual/config/items/itemtypes/odbc_checks/unixodbc_mssql

This mismatch confuses zabbix users. Would be nice to resolve this "inconsistency" someway. Maybe mention both drivers shortly on both resources, as alternatives.






[ZBX-19383] Long page headings are truncated in documentation Created: 2021 May 15  Updated: 2021 May 17

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Glebs Ivanovskis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File truncated.png    

 Description   

See an example:

It seems to be happening on pages with table of contents. "Old revision", "Backlinks" and "Export to PDF" buttons are obscured as well.






[ZBX-19401] Documentation of API method configuration.importcompare is missing? Created: 2021 May 18  Updated: 2021 May 31

Status: Doc. sign-off
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.4.0
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Brian van Baekel Assignee: Alexander Shubin
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Story Points: 0.125

 Description   

As it seems, with the introduction of ZBXNEXT-6411 there is a new API method configuration.importcompare present, but it is not documented (at least, i cannot find it)?






[ZBX-19759] Web site discovery via Netwrok discovery Created: 2021 Jul 30  Updated: 2021 Aug 04

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.14
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Aigars Kadikis 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   

https://www.zabbix.com/documentation/5.0/manual/discovery/network_discovery

Kindly include a use case:

If we conduct a port 443 scan with a goal to identify an HTTPS resources, the task will fail if the website has been configured to listen with a specific server name (SNI) only. No workaround is available currently.

 






[ZBX-19916] count() function inconsistency with frontend and documentation Created: 2021 Sep 06  Updated: 2021 Sep 08

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 5.4.5rc1, 6.0.0alpha1
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Larisa Grigorjeva Assignee: Aleksejs Sestakovs
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File screenshot-1.png    
Team: Team B

 Description   

Accordingly to Documentation: https://www.zabbix.com/documentation/current/manual/appendix/functions/history

count() function's second parameter (time period) is mandatory. In frontend it is not possible to create such item or trigger without given time period in count function:

But if such function is passed to Zabbix server, for example in macro in action messages or media type templates: {?count(//trap)}, then such macro is resolved and function result is always 1.

Need to understand which behavior is correct and unify server, frontend and documentation.






[ZBX-20126] Documentation task bug report Created: 2021 Oct 26  Updated: 2021 Oct 27

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Isaque Profeta Assignee: Zabbix Development 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-26-12-45-25-440.png    

 Description   

Most of the Zabbix Brazillian Portuguese Docs are outdated to 3.0.0, and it causes a major issue for users, I think it's best to put it down on current version docs.

Example:

 






[ZBX-20376] SNMP trap documentation is inconsistent on source address matching Created: 2021 Dec 19  Updated: 2021 Dec 21

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.4.8
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Christian Ullrich Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Note: I'm reporting this as a documentation issue, but it may be a software bug instead. Please see the last paragraph.

https://www.zabbix.com/documentation/current/en/manual/config/items/itemtypes/snmptrap, in the "Overview" section, states that the source address of an SNMP trap is matched against either the IP or DNS address of an SNMP interface, depending on which addressing mode it is set to.

In the next section, "Configuring SNMP traps", however, this sentence appears:

The address from each received trap is compared to the IP and DNS addresses of all SNMP interfaces to find the corresponding hosts.

The following section, "Setting up SNMP trap monitoring", also reads as if both IP and DNS names are looked up:

[...] where [address] will be compared to IP and DNS addresses of SNMP interfaces on Zabbix.

The current behavior matches what is in the Overview section; the other two descriptions contradict it.

However, I think this behavior is not well thought out and should actually be replaced with what is in the other sections, i.e. both IP and DNS names should be matched against. This was the behavior prior to ZBX-5797. It was changed to the current logic apparently in response to a report that traps were processed twice if the IP address was also entered into the DNS field. A better fix back then would have been to avoid adding a second identical entry into the lookup list of SNMP interface addresses (or even just documenting the behavior). As things are now, there is a dependency between the Zabbix and, say, SNMPTT configurations because they must match in which address they put into the formatted trap. Moreover, the Zabbix manual instructs the user to always use $aA (IP address) in snmptt.conf, but does not mention that the SNMP interface must be configured to use the IP address as well.






[ZBX-20393] Switching to version without corresponding documentation session results in inability to switch back Created: 2021 Dec 27  Updated: 2022 Oct 10

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.19
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Antons Sincovs Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: GIF File Zabbix_2021_12_27_10_13-switch-between-version-to404-an-back..gif    

 Description   

In the Zabbix official online documentation when switching (using the version combobox) from a Zabbix version for which the corresponding documentation section exists to the one for which it does not - results in inability to switch back (via combobox) as now the link ending leads to "/404".






[ZBX-20580] Update for the doc page: building zabbix agent 2 from sources on Windows Created: 2022 Feb 15  Updated: 2022 Feb 15

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Василий Никитченко Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 3
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File сборка_заббикс_агента_win64.txt    

 Description   

Updated guide for building zabbix agent 2 from sources on Windows. Intended to update/replace this page: Building Zabbix agent 2 on Windows

Actual page is missing many details and cannot be used as a complete guide for newbie.

This document is for 64bit version of agent, for 32bit changes are minimal.






[ZBX-20596] some documentation issues for v6.0 Created: 2022 Feb 16  Updated: 2022 Feb 17

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.0
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi 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   

Will be provided in comments.



 Comments   
Comment by dimir [ 2022 Feb 17 ]

That doesn't look good. This is a public issue tracker, such issues do not belong here. The issue should be either clear to everyone or removed.





[ZBX-20625] Improvement with regards to numeric values in examples Created: 2022 Feb 19  Updated: 2022 Jun 15

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: 6.4 (plan)

Type: Documentation task Priority: Trivial
Reporter: Håkon Løvdal Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Story Points: 0.1

 Description   

I noticed the following when reading the documentation

Parameters with a hashtag have a different meaning with the function last - they denote the Nth previous value, so given the values 3, 7, 2, 6, 5 (from the most recent to the least recent):

last(/host/key,#2) would return '7'
last(/host/key,#5) would return '5'

While this example is technically correct, it would be much better if the example values had been 30, 70, 20, 60, 50 to eliminate any possibility for confusion/misunderstanding. As it currently is indexes 2 and 5 also overlaps values 2 and 5 which has a tiny potential for confusion.

This is a relative minor issue, but I would like to bring it up as an improvement issue not only for this single instance, but I assume the documentation contains multiple cases like this.

Us developers are typically not very creative when coming up with example data when writing documentation or unit tests, so if for instance testing our new and shiny library code we might write tests with book id 1, author id 1 and user id 1 if no specific thought is given to which values to use...

However tests are just so much easy to read if some though is given to which values are used, e.g. user ids are selected from 10-99, author ids from 100-999 and book ids from 1000-9999. And this applies to examples in documentation as well.






[ZBX-20768] Incorrect logrotate rule for snmptraps.log in containerised snmptrapd service Created: 2022 Mar 20  Updated: 2022 Mar 24

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Installation (I)
Affects Version/s: 6.0.1
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Costis C 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. Install dockerised zabbix-snmptraps service (alpine-based version)

Result:
The logrotate rule for file '/var/lib/zabbix/snmptraps/snmptraps.log' has syntax error:

bash-5.1# cat /etc/logrotate.d/zabbix_snmptraps
# https://support.zabbix.com/browse/ZBX-9858
/var/lib/zabbix/snmptraps/snmptraps.log {
    missingok
    daily
    rotate 0
    minsize 50M  notifempty
    su zabbix zabbix
}
 

E.g.

bash-5.1# logrotate -d /etc/logrotate.d/zabbix_snmptraps
WARNING: logrotate in debug mode does nothing except printing debug messages!  Consider using verbose mode (-v) instead if this is not what you want.

reading config file /etc/logrotate.d/zabbix_snmptraps
error: /etc/logrotate.d/zabbix_snmptraps:6 unknown unit 'y'
error: found error in /var/lib/zabbix/snmptraps/snmptraps.log , skipping
removing last 1 log configs
Reading state from file: /var/lib/logrotate.status
Allocating hash table for state file, size 64 entries
Creating new state
Creating new state

Handling 0 logs

Expected:
notifempty entry (l.6) should be in a line on its own, so that this rule is correctly parsed by logrotate:

 

/var/lib/zabbix/snmptraps/snmptraps.log {
    missingok
    daily
    rotate 0
    minsize 50M  
    notifempty
    su zabbix zabbix
}

 



 Comments   
Comment by Costis C [ 2022 Mar 20 ]

As an extra note, the zabbix-snmptraps:alpine docker image does not cater for rotating the produced snmptraps.log file (apart from delivering the logrotate rules).
One solution would be that the user runs periodic logrotate checks, either at the host, or sets up a container particularly for that purpose.
But I think it's best that the zabbix-snmptraps container is self-managed.

As a suggestion:
1. Include the missing logrotate package in the image (with any dependencies) in the zabbix-snmptraps image
2. Configure logrotate as a daily cron job

3. Add zabbix user, with a login-shell possibility
4. Change the image's CMD, to initiate a crond daemon, apart from the snmptrapd. E.g.

USER root
CMD ["entrypoint.sh"]

where entrypoint.sh:

#!/bin/bash

echo "*** Start crond daemon ***"
crond -b

echo "*** Start SNMP trap receiver daemon ***"
su zabbix -c '/usr/sbin/snmptrapd -n -C -c /etc/snmp/snmptrapd.conf -Lo -A'

Comment by Victor Breda Credidio [ 2022 Mar 23 ]

Hi Costis.
Thank you for your report on this, and your additonal suggestions.
I'll be forwarding this to the responsible personal to apply the corrections.

Best regards,
Victor.

Comment by Costis C [ 2022 Mar 24 ]

Hi Victor,
It's my pleasure if I can help make this great application even better.
Cheers!





[ZBX-20923] known issue for particular posgresql version 13.2 - "could not find pathkey item to sort" Created: 2022 Apr 20  Updated: 2022 Apr 20

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.23rc1, 6.0.3
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi 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   

This SQL fails for zabbix frontend:

2022-04-20 05:11:35.299 EDT [2232] ERROR:  could not find pathkey item to sort
2022-04-20 05:11:35.299 EDT [2232] STATEMENT:  SELECT DISTINCT COUNT(DISTINCT t.triggerid) AS rowscount,i.hostid FROM triggers t,functions f,items i WHERE i.hostid=62298 AND f.triggerid=t.triggerid AND f.itemid=i.itemid AND t.flags IN (0,4) GROUP BY i.hostid

Release notes for postgresql 13.3 includes a bugfix with the description:

Fix “could not find pathkey item to sort” planner errors in some situations where the sort key involves an aggregate or window function (James Coleman, Tom Lane)
https://www.postgresql.org/docs/13/release-13-3.html

Suggestion is to include this information to know issues in Zabbix documentation - https://www.zabbix.com/documentation/current/en/manual/installation/known_issues






[ZBX-21109] Full Linux template shown under CPU template module for passive/active mode Created: 2022 May 25  Updated: 2024 Feb 19

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.4, 6.2.0beta2
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Edgar Akhmetshin Assignee: Aleksandre Sebiskveradze
Resolution: Unresolved Votes: 0
Labels: Module, Template, agent, linux
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File Screenshot 2022-05-25 at 10.24.38.png    

 Description   

Steps to reproduce:
https://www.zabbix.com/integrations/linux#linux_prom

Result:

Expected:
CPU module template
or
Linux template naming header for a linux template.






[ZBX-21210] trigger housekeeper in Zabbix server health not supported (or not documented) Created: 2022 Jun 15  Updated: 2022 Jun 16

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Server (S), Templates (T)
Affects Version/s: 6.0.5
Fix Version/s: None

Type: Patch request Priority: Trivial
Reporter: Richard Ostrochovský Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 1
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

ZBX self-monitoring template:

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/zabbix_server/template_app_zabbix_server.yaml?at=refs%2Fheads%2Frelease%2F6.0

contains "trigger housekeeper" item, which seems to be not supported according to documentation:

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

There are similar issues with older version:

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/zabbix_server/template_app_zabbix_server.yaml?at=refs%2Fheads%2Frelease%2F5.4

containing following items not supported in version 5.4:

  • trigger housekeeper
  • service manager (v6.0)
  • cluster discovery (v6.0)

according to doc.:

https://www.zabbix.com/documentation/5.4/en/manual/config/items/itemtypes/internal



 Comments   
Comment by Richard Ostrochovský [ 2022 Jun 15 ]

Related ticket: ZBXNEXT-7801





[ZBX-21303] Compilation of loadable modules is broken Created: 2022 Jul 05  Updated: 2023 Aug 30

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Installation (I)
Affects Version/s: 6.2.0, 6.4.0alpha1
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Glebs Ivanovskis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: loadablemodule
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes

 Description   

Up to 6.2 it was enough to pass -I/path/to/zabbix/source/include and #include "module.h". But now module.h keeps including zbxtypes.h the old way:

#include "zbxtypes.h"

...despite zbxtypes.h has been moved to include/common/.

Even dummy module shipped with Zabbix source as an example is broken:

$ git clone --depth=1 https://git.zabbix.com/scm/zbx/zabbix.git
$ cd zabbix/
$ ./bootstrap.sh 
$ ./configure
$ cd src/modules/dummy/
$ make
gcc -fPIC -shared -o dummy.so dummy.c -I../../../include
In file included from dummy.c:25:
../../../include/module.h:23:10: fatal error: zbxtypes.h: No such file or directory
   23 | #include "zbxtypes.h"
      |          ^~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:2: dummy] Error 1

Nothing in Upgrade Notes on the topic.

P.S. Looks related to DEV-2113.



 Comments   
Comment by Zap [ 2023 Aug 30 ]

Looks like that the problem is still there in zabbix 6.4.6 . 





[ZBX-21330] Help and Oficial template inconsistency Created: 2022 Jul 12  Updated: 2022 Jul 13

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Gustavo Guido Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2022-07-12-15-26-16-604.png     PNG File image-2022-07-12-15-26-31-085.png    

 Description   

Steps to reproduce:

  1. The Linux by Zabbix Agent Active has a system.localtime active item
  2. The documentation says that must by used as passive

Result:
**

Expected:
Congruency



 Comments   
Comment by Vladimir Stepanov (Inactive) [ 2022 Jul 13 ]

Hi!
Thank you for reporting the issue. We will work to resolve the issue as soon as possible and you should see the fix in a future product update.





[ZBX-21469] Repo page contains ubuntu release version instead of code name Created: 2022 Aug 12  Updated: 2022 Sep 27

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.2.1
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Greg Bass Assignee: Jurijs Klopovskis
Resolution: Unresolved Votes: 1
Labels: trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Zabbix's Official Repository


Team: Team B
Sprint: Sprint 91 (Aug 2022), Product delivery backlog

 Description   

Steps to reproduce:

  1. Got to https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/
  2.  

Result:
You see this list:

 

../

 

zabbix-release_4.0-1+bionic.dsc

29-Jun-2020 09:06 1159

zabbix-release_4.0-1+bionic.tar.gz

29-Jun-2020 09:06 3878

zabbix-release_4.0-1+bionic_all.deb

29-Jun-2020 09:06 4012

zabbix-release_4.0-1+trusty.dsc

29-Jun-2020 09:06 1154

zabbix-release_4.0-1+trusty.tar.gz

29-Jun-2020 09:06 3883

zabbix-release_4.0-1+trusty_all.deb

29-Jun-2020 09:06 3928

zabbix-release_4.0-1+xenial.dsc

29-Jun-2020 09:06 1159

zabbix-release_4.0-1+xenial.tar.gz

29-Jun-2020 09:06 3885

zabbix-release_4.0-1+xenial_all.deb

29-Jun-2020 09:06 3934

zabbix-release_4.0-2+bionic.dsc

29-Jun-2020 09:06 1146

zabbix-release_4.0-2+bionic.tar.gz

29-Jun-2020 09:06 3892

zabbix-release_4.0-2+bionic_all.deb

29-Jun-2020 09:06 4012

zabbix-release_4.0-2+trusty.dsc

29-Jun-2020 09:06 1141

zabbix-release_4.0-2+trusty.tar.gz

29-Jun-2020 09:06 3909

zabbix-release_4.0-2+trusty_all.deb

29-Jun-2020 09:06 3938

zabbix-release_4.0-2+xenial.dsc

29-Jun-2020 09:06 1146

zabbix-release_4.0-2+xenial.tar.gz

29-Jun-2020 09:06 3910

zabbix-release_4.0-2+xenial_all.deb

29-Jun-2020 09:06 3950

zabbix-release_4.0-3+bionic.dsc

29-Jun-2020 09:06 1148

zabbix-release_4.0-3+bionic.tar.gz

29-Jun-2020 09:06 3944

zabbix-release_4.0-3+bionic_all.deb

29-Jun-2020 09:06 4068

zabbix-release_4.0-3+focal.dsc

29-Jun-2020 09:06 1144

zabbix-release_4.0-3+focal.tar.gz

29-Jun-2020 09:06 3939

zabbix-release_4.0-3+focal_all.deb

29-Jun-2020 09:06 4064

zabbix-release_4.0-3+trusty.dsc

29-Jun-2020 09:06 1143

zabbix-release_4.0-3+trusty.tar.gz

29-Jun-2020 09:06 3927

zabbix-release_4.0-3+trusty_all.deb

29-Jun-2020 09:06 3988

zabbix-release_4.0-3+xenial.dsc

29-Jun-2020 09:06 1148

zabbix-release_4.0-3+xenial.tar.gz

29-Jun-2020 09:06 3974

zabbix-release_4.0-3+xenial_all.deb

29-Jun-2020 09:06 3996

zabbix-release_4.0-4+ubuntu22.04.dsc

29-Apr-2022 17:25 1168

zabbix-release_4.0-4+ubuntu22.04.tar.gz

29-Apr-2022 17:25 4025

zabbix-release_4.0-4+ubuntu22.04_all.deb

29-Apr-2022 17:25 4204

Expected:

zabbix-release_4.0-4+ubuntu22.04.dsc

29-Apr-2022 17:25 1168

zabbix-release_4.0-4+ubuntu22.04.tar.gz

29-Apr-2022 17:25 4025

zabbix-release_4.0-4+ubuntu22.04_all.deb

29-Apr-2022 17:25 4204

 

Should really be

zabbix-release_4.0-4+jammy.dsc

29-Apr-2022 17:25 1168

zabbix-release_4.0-4+jammy[.tar.gz|https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-4%2Bubuntu22.04.tar.gz]

29-Apr-2022 17:25 4025

zabbix-release_4.0-4+jammy_all.deb

29-Apr-2022 17:25 4204

 

Ubuntu 22.04 is the only one list by name and versions instead of by release code name:

 

cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.1 LTS"

 

 






SAML documentation update regarding load balancing (ZBX-20078)

[ZBX-21516] SAML documentation update Created: 2022 Aug 26  Updated: 2022 Aug 29

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Sub-task Priority: Trivial
Reporter: Sifr Moja Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Sprint: 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)

 Description   

SAML configuration needs to be updated again to reflect changes to how the SSO settings are entered for Zabbix behind a reverse proxy. Currently it is still showing the previous fix which shows as:

$SSO_SETTINGS=['strict' => false, 'baseurl' => "https://zabbix.example.com/zabbix/", 'use_proxy_headers' => true];

It should now appear as:

$SSO['SETTINGS'] = ['strict' => false, 'baseurl' => "https://zabbix.example.com/zabbix/", 'use_proxy_headers' => true];





[ZBX-21966] Documentation: active checks protocol Created: 2022 Nov 23  Updated: 2024 Mar 06

Status: IN DOCUMENTING
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 5.0.29, 6.0.10, 6.4.0beta3
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Constantin Oshmyan Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team D
Sprint: Documentation backlog
Story Points: 2

 Description   

Unfortunately, the description of the protocol used for active checks is not very accurate, complete and consistent (link to the current LTS version 6.0; however, some other versions have the same issues).

I'll list a discovered issues a bit later as a comments.



 Comments   
Comment by Constantin Oshmyan [ 2022 Nov 23 ]

1. <DATALEN> in the header

First of all, the note related to passive checks. Documentation tells that the agent in a passive mode replies to request using the following format:

<DATA>[\0<ERROR>]

However, there should be a header before that data; format of this header is described here and includes the <DATALEN> field ("Data length").
Issue: there should be explicitly noted that this <DATALEN> field in header should include the length of entire reply (not the <DATA> field only, but optional "\0<ERROR>" part also).

2. Mandatory fields in a reply onto "active checks" request

The section "Getting the list of items" contains a table describing a server response. The most of fields in this table are marked as optional ("Mandatory" = "no"). However, it's hard to understand how to use, for example, some item without the item's key and update interval; or a regexp without an expression and type.
Probably, the fields "data" and "regexp" should be optional; but, if they are present – then some of the nested fields should be mandatory. Moreover, the same section for the version 4.0 told:

The server must respond with success. For each returned item, all properties key, delay, lastlogsize and mtime must exist, regardless of whether item is a log item or not.

It's unlikely this was changed after v4.0 (it could break a compatibility with the previous versions of agents).

Comment by Constantin Oshmyan [ 2022 Nov 23 ]

3. Type and content of the "delay" field

Up to v5.4 (including) all examples demonstrate that the "delay" field in the item' properties has the integer type (unquoted in JSON) and contains a number of seconds. However, starting with v6.0, the above mentioned table claims them as having "string" type and examples confirms that (using values like "30s" or "10m").
However, such change also should cause to incompatibility with the old agents and must be mentioned as a critical in the Upgrade notes for 6.0.0. However, these Upgrade notes do not contain any warnings about this topic, and old agents still works; so, probably, it's a mistake in documentation.

4. Sense and purpose of item's properties

The description for the "mtime" property as the "Item mtime" is useless. There should be a more detailed description: what does this property contain and what is its purpose. The same is also true for other properties ("lastlogsize", "itemid"; even "delay" could be commented: what units it contains).

Comment by Constantin Oshmyan [ 2022 Nov 23 ]

5. More descriptive explanation for a new fields

First of all, it could be useful to specify: what exactly version of Zabbix uses any new field. For example, the "session" field in agent's requests are marked as "mandatory" in documentation for v6.0. The same is for "id" property for item in the "agent data" requests. Really? What is the Zabbix version when these fields were appeared initially? Are all previous agent versions incompatible anymore?

Then, the same note as (4).
How should the "session" be generated, what are its limits (length, set of acceptable characters, etc.)? What will occur if this field changes between the agent restarts?

Is the "itemid" property for each item (returned by server onto "active checks" request) the internal Zabbix identifier that is returned by Zabbix API? Has the "id" field in the "agent data" requests some relation to the "itemid"? What is the purpose of this "itemid" field in this protocol?

Should the "session" field in "active checks" requests for v6.4 be the same as for "agent data" requests?

What should be mentioned in the "config_revision" field for the every request (for v6.4)? I could suppose that the value from the last server's reply; but what should be set in the very first request (some special value, empty value, just skipping this field)?

Comment by Constantin Oshmyan [ 2022 Nov 23 ]

6. Heartbeat message

1) the same question: what was the first version when this feature was appeared?
2) should agent sent these messages every HeartbeatFrequency seconds, regardless of any other requests? Or only in the case there is no other activity?
3) should the agent wait some reply from server onto these requests, or just "send and forget" (i.e. close the connection)? How server should reply to these requests?

7. Examples

1) All last versions of documentation contain the following sentence:

Note how in the example above the not supported status for vfs.fs.size[/nono] is indicated by the "state" value of 1 and the error message in "value" property.

However, irony is that the last version having this example is v5.4; starting from the v6.0 (and later) examples do not contain the mentioned metric.

2) examples contradict the description. For example, the "id" field for the item is described as mandatory for the "agent data" requests, but absents in examples.

3) there should be example illustrating the regexp representation (a server response onto the "active checks" request, when this response contains a global regular expression).

Comment by Constantin Oshmyan [ 2023 Apr 13 ]

The version 6.4 (even 6.4.1) has already been published. However, the documentation for this version still also has all these issues.

Comment by Martins Valkovskis [ 2023 May 19 ]

I will try to formulate some questions to the developers, based on the comments above:

1) Subissue 1 - seems kind of clear, I have added a sentence to documentation (see PR).
2) Subissue 2 - can we add a note that non-mandatory parameters under "data" and "regexp" become mandatory if "data" or "regexp" blocks exist, respectively?
3) Subissue 3 - is the reporter correct in assuming that "delay" used to be Integer before 6.0 and was then changed to Character? Or was the change (if any) made much earlier so documentation for several pre-6.0 version is incorrect?
4) The description of "mtime" has been improved (see PR).
5) Subissue 5 - a bunch of questions regarding more details about "session", "itemid" and "config_revision"...
6) Subissue 6 - The answer to the first part of the subissue seems to be 6.2. The other two questions need clarification. Here is the current documentation on heartbeat messages.
7) Subissue 7 - I have added back the missing example (with vfs.fs.size[/nono]) and "id" properties in the examples. Please check if this is correct (see PR). Also, could we add an example with a regexp?

wiper, could you help out with the subissues of this ZBX?

wiper:
(2) - lastlogsize, mtime, delay, key can be marked as mandatory if data exists and is not empty. key_orig is optional for agent and absent for agent2. itemid is mandatory for agent2 and absent for agent.

(3) delay is integer for agent and string for agent2.

(5) Session is semi-unique md5 hash value of 32 hex-characters, created during agent startup. It defines data session, which is 'alive' until agent restart. Id is incremental counter, used to identify metric results within data session to prevent from value duplication in the case data was re-uploaded due to network issues. It was added in 4.0 and is optional. However new agents will always send it, so not sure if it's right to mark it as optional just because of backwards compatibility.

Agent identifies item results by host:key while agent2 uses itemid.

Session in active request is the same data session.

config_revision is the configuration revision received from server, initially it's 0.

Looks like we are missing version field in active request. This is mandatory for agent2 and absent for agent. The format is the same as version field in proxy config/data requests:

version string Proxy version (<major>.<minor>.<build>).

(6) Heartbeat is sent every HeartbeatFrequency seconds, regardless of any other requests

Heartbeat request has no response.

(7) Added regexps to the example and removed key_orig. First - it the response contains itemid, so it's agent2 response. Second - even agent does not send key_orig if it's the same as key (the only way how they can be different is if item has user macros in key paramters, then they are expanded in key and key_orig sent as it was.

{
  "response": "success",
  "data": [
    {
      "key": "log[/home/zabbix/logs/zabbix_agentd.log, @Network interfaces for discovery]",
      "itemid": 1234,
      "delay": "30s",
      "lastlogsize": 0,
      "mtime": 0
    },
    {
      "key": "agent.version",
      "itemid": 5678,
      "delay": "10m",
      "lastlogsize": 0,
      "mtime": 0
    }
  ],
  "config_revision": 2,
  "regexp": [{
		"name": "Network interfaces for discovery",
		"expression": "^Software Loopback Interface",
		"expression_type": 4,
		"exp_delimiter": ",",
		"case_sensitive": 1
	}, {
		"name": "Network interfaces for discovery",
		"expression": "^(In)?[Ll]oop[Bb]ack[0-9._]*$",
		"expression_type": 4,
		"exp_delimiter": ",",
		"case_sensitive": 1
	}, {
		"name": "Network interfaces for discovery",
		"expression": "^NULL[0-9.]*$",
		"expression_type": 4,
		"exp_delimiter": ",",
		"case_sensitive": 1
	}, {
		"name": "Network interfaces for discovery",
		"expression": "^[Ll]o[0-9.]*$",
		"expression_type": 4,
		"exp_delimiter": ",",
		"case_sensitive": 1
	}, {
		"name": "Network interfaces for discovery",
		"expression": "^[Ss]ystem$",
		"expression_type": 4,
		"exp_delimiter": ",",
		"case_sensitive": 1
	}, {
		"name": "Network interfaces for discovery",
		"expression": "^Nu[0-9.]*$",
		"expression_type": 4,
		"exp_delimiter": ",",
		"case_sensitive": 1
	}]
}

P.S.
I'm not sure how deep we should dive in the details. Because the next thing he will ask about delay period for agent2, which can have our flexible intervals and explaining them could take a while.

<martins-v> I don't really like expanding the scope of the task, but it looks like we need separate pages for agent and agent 2 protocol details. Descriptions of "required for this agent, absent for the other" make things confusing. The pages could also be moved to the proper protocol section. What do you think, wiper?

wiper: Not sure. The protocol is mostly the same with minimal differences. Having separate pages for agent and agent2 would mean a lot of duplication. And there is high probability that agent will incorporate agent2 protocol differences in future.
On the other hand if we separate now, then in future it would be easy just to deprecate agent protocol description saying that it's old agent version and have one agent and agent2 protocol page.

<dimir> To me it looks like currently it's only needed for one guy and he needs it for agentd. So how about we treat agent2 out of scope and later, if someone will need it for agent2 we will get back to it and think how to approach it?

Comment by Constantin Oshmyan [ 2023 Jun 02 ]

About the heartbeat messages:

what was the first version when this feature was appeared?

It seems this was introduced in v6.2 (link), probably during the ZBXNEXT-5088 implementation.

However, 2 notes:

  1. it is still not described in details (after almost a year);
  2. in the release 6.4 there was implemented another enhancement – incremental refresh for agent checks (see ZBXNEXT-7852). As result, the default value of RefreshActiveChecks parameter was dramatically decreased (1 hour -> 10 seconds). So, the big question: is there still the necessity in a separate heartbeat messages (with the default interval 1 minute, i.e. 6 times longer)? By the way, this think was proposed 2 years ago by [email protected] here. Additionally, just the same approach has been implemented in Zabbix proxy v6.4.0: after the incremental proxy configuration sync (ZBXNEXT-3290) was implemented, the separate heartbeat became unnecessary and has been removed (ZBXNEXT-7931). Are there any ZBX/ZBXNEXT about the similar change for active agent protocol?
Comment by Constantin Oshmyan [ 2023 Oct 09 ]

Reminder, alexei, we discussed this issue on Zabbix Summit 2023

Comment by dimir [ 2023 Nov 17 ]

There are some differences between the ways it was implemented for agentd and agent2. This makes it bit more complicated. Do you agree that we only approach agentd in this task?

Comment by Constantin Oshmyan [ 2023 Dec 28 ]

Hi guys! Merry Christmas and Happy New Year!

I've noticed that some part of discussion (replica from 19-May-2023) becomes available in public now – probably, it was hidden before. It's very interesting for me; if you agree, I'll a bit comment it.

0) The PR is almost OK, but it seems that it's still not committed. At least, I could not see any changes in documentation for version 6.0.

1) Subissue 1...

OK.

2) Subissue 2 - can we add a note that non-mandatory parameters under "data" and "regexp" become mandatory if "data" or "regexp" blocks exist, respectively?

It's acceptable. But, for me, it's simpler just to mark the "data" and "regexp" rows in this table as optional, but all the other rows (for nested parameters) – as mandatory. Maybe, it could be valuable to make this note just in the description for the "data" and "regexp" rows: "This field is optional; however, if it exists, some of its nested fields are mandatory", – it will be simpler and cleaner rather to duplicate some text for each of the nested parameters.

3) Subissue 3 - is the reporter correct in assuming that "delay" used to be Integer before 6.0 and was then changed to Character?

Yes, it's so according to documentation. The current proposal tells more accurately: "This value is integer for Zabbix agent, and string for Zabbix agent 2". Probably, this is correct. The only note: it'll be useful to mention the units for the integer value: "This value is integer for Zabbix agent (number of seconds), and string for Zabbix agent 2".

4) The description of "mtime" has been improved (see PR).

OK, thanks. The only note: it's also needed to specify the units (something like: "the seconds in unixtime format").

5) Subissue 5 - a bunch of questions regarding more details about "session", "itemid" and "config_revision"...

Thanks a lot to wiper for these technical details.
Do I understand correctly that the presence of the "version" parameter in a request is the marker for a Zabbix server to differ between a Zabbix Agent and a Zabbix Agent 2 (and to use the appropriate format of answer)?

6) Subissue 6...

Another thanks to wiper for clarification

7) Subissue 7 - I have added back the missing example...

Thanks, it looks OK.

I'm not sure how deep we should dive in the details.

I understand you
In my opinion, it will be enough:

  • to add some example with regexp (not necessary so long, it's enough 3 sections);
  • to add some example with the user macro (and a real key/key_orig usage) – for example, set the name of logfile via user macro:
    [...]
          "key": "log[/home/zabbix/logs/zabbix_agentd.log]",
          "key_orig": "log[{$LOGFILENAME}]",
    [...]
    

    where {$LOGFILENAME} ==> /home/zabbix/logs/zabbix_agentd.log

will ask about delay period for agent2, which can have our flexible intervals...

I think, in the documentation about agent2, it's enough some short clarification to understand why the type was changed, something like: "string can include custom intervals in format described in API documentation" (if it really has this format, of course).

To me it looks like currently it's only needed for one guy and he needs it for agentd... we treat agent2 out of scope

Yes, I even know that guy
Exactly.

Thank you very much!





[ZBX-22481] Deprecated API features are not communicated properly Created: 2023 Mar 09  Updated: 2023 Mar 10

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: API (A), Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Glebs Ivanovskis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: api, compatibility, deprecated, documentation, grafana
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

API changes page currently contains two sections:

  • Backward incompatible changes
  • Other changes and bug fixes

For no better option, deprecated features are currently put under "Other changes and bug fixes". But this caption sounds neither important nor interesting, so there is very little intention to read them carefully.

There should be a dedicated section for deprecated features. This will emphasize to API consumers, what changes need to be done in advance to avoid necessity for immediate action after deprecated features are completely removed and appear in "Backward incompatible changes" section of a future release.

For example, Changes from 5.2 to 5.4 page does not even contain a word "deprecated", it just says:

user.login: Renamed parameter userusername.

Even though there was a transition period between deprecation and removal (ZBXNEXT-8085), the lack of proper communication did not allow Grafana plugin to adjust in time.






[ZBX-22562] Kubernetes Kubelet by HTTP not collecting data from Windows pod Created: 2023 Mar 21  Updated: 2023 Mar 22

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Templates (T)
Affects Version/s: 6.0.14
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Avraham Eisen Assignee: Zabbix Integration Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Azure Kubernetes Service with a Linux node cluster and a Windows node cluster where the pod for the application is also running Windows



 Description   

Steps to reproduce:

  1. Execute pre-requisites for the Kubernetes Template
  2. Allow Kubelet discovery to run

Result:
The cadvisor items for the Windows pod (CPU: Load average, 10s, CPU: System seconds, total, and CPU: User seconds, total) does not return any data.
Expected:
There's no Zabbix documentation, whether in the README of the Git repo for the template or the documentation URI, to say whether the Zabbix Kubernetes templates or its dependencies (kube-state-metrics, etc.) support a Windows node cluster or a Windows pod.  I have no way to determine whether the current state of the Zabbix Helm Charts deployment does not support monitoring Windows pods, making this expected, or whether this should be working and is an actual issue.

 

My expectation is, minimally, that any nuances of the Zabbix-provided templates to monitor Kubernetes mention whether Windows nodes, pods, and containers are supported or not






[ZBX-22706] Respect SQL command capitalization Created: 2023 Apr 20  Updated: 2023 Apr 20

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.16
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Aigars Kadikis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The https://www.zabbix.com/download wizard was improved at least 3x better during the last years.

One additional proposal to make it even better is to respect the SQL syntax - SQL commands ALL in CAPITAL letters, just like here:
https://www.dataquest.io/blog/sql-commands/

One of Zabbix official documentation pages is already using this excellent syntax:
https://www.zabbix.com/documentation/6.4/en/manual/appendix/install/db_encrypt/mysql

I would propose to convert the https://www.zabbix.com/download into a same level of readability.

For example:

mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;

Must be:

mysql> CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
mysql> CREATE USER zabbix@localhost IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost;
mysql> SET GLOBAL log_bin_trust_function_creators = 1; 

Maybe this would be even better (as it allows to use mouse to perform a double click to alter username or host name):

mysql> CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
mysql> CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
mysql> SET GLOBAL log_bin_trust_function_creators = 1;





[ZBX-22934] Several large blocks of text are duplicated in documentation Created: 2023 Jun 07  Updated: 2024 Mar 06

Status: IN DOCUMENTING
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 7.0.0alpha1
Fix Version/s: 7.0 (plan)

Type: Documentation task Priority: Trivial
Reporter: Artjoms Rimdjonoks Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Sprint: Documentation backlog, Sprint 101 (Jun 2023), Sprint 102 (Jul 2023), Sprint 103 (Aug 2023), Sprint 104 (Sep 2023), Sprint 105 (Oct 2023), Sprint 106 (Nov 2023), S2401-1, S2401-2
Story Points: 1

 Description   

Investigate if following duplications are desirable:

1) large Host web scenario tags and Template web scenario tags tables are identical.

2) ui/modules/lesson_gauge_chart/includes/WidgetForm.php (3 files with this name are present check the last) and
ui/modules/lesson_gauge_chart/views/widget.edit.php (also last presence) 40 lines of complicated php code is repeated twice

3) 60 lines from red hat and debian instructions for configuring java are identical starting from "Configuring server for use with Java gateway"

4) go code

/usr/local/zabbix/go/plugins/myip/main.go
file contents is mentioned 3 times:
Found 27 duplicate lines with fingerprint c8e7d655e2fb8401c541c754d9586d16 in the following files:
Between lines 138 and 172 in /home/zabbix/documentation/en/devel/plugins/how_to.md
Between lines 192 and 226 in /home/zabbix/documentation/en/devel/plugins/how_to.md
Between lines 239 and 273 in /home/zabbix/documentation/en/devel/plugins/how_to.md

5)
Check other duplications using simian:
java -jar /home/zabbix/SS/bin/simian-2.5.10.jar "**.md" -threshold=20






[ZBX-23133] API call trigger.get can also return object of objects Created: 2023 Jul 20  Updated: 2023 Jul 21

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: API (A), Documentation (D)
Affects Version/s: 6.4.4
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Lasse Osterild Assignee: Maksym Buz
Resolution: Unresolved Votes: 0
Labels: api, documentation, json, trigger.get
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The below API call will return an object of objects, however the documentation only states the following:

(integer/array) Returns either:

  • an array of objects;
  • the count of retrieved objects, if the countOutput parameter has been used.

 

{"jsonrpc":"2.0","method": "trigger.get",
    "params": {
        "selectHosts":       ["name"],
        "selectGroups":      ["groupid", "name"],
        "selectLastEvent":   "extend",
        "selectFunctions":   "extend",
        "expandExpression":  "true",
        "expandData":        "true",
        "expandDescription": "true",
        "skipDependent":     "true",
        "preservekeys":      "true",
        "monitored": "true",
        "output": "extend",
        "filter": {
            "value": 1
        },
        "sortfield": "priority",
        "sortorder": "DESC"
    },"id":1} 

Returns

{
  "jsonrpc": "2.0",
  "result": {
    "28110": {
      "triggerid": "28110",
      "expression": "min(/somehost/service.info[\"WinServiceBlah\",state],#3)<>0",
      "description": "\"WinServiceBlah\" (Blah bleh service) is not running",
      "url": "",
      "status": "0", 
... snip ...
  },
  "id": 1
}

I don't know if this is a documentation issue or if it's a bug and the code should never return an object of objects.

Haven't tested any other .get method to see if they have the same issue.

/Lasse



 Comments   
Comment by Lasse Osterild [ 2023 Jul 20 ]

Ok so it's preserveKeys" that does it, according to the documentation we should still get an array and not an object of objects, and this goes for all get methods.

Use IDs as keys in the resulting array.

https://www.zabbix.com/documentation/current/en/manual/api/reference_commentary#common-get-method-parameters

 





[ZBX-23207] Incorrect sort order api call in event documentation Created: 2023 Aug 04  Updated: 2023 Aug 07

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Sam Vermeulen Assignee: Andrei Gushchin (Inactive)
Resolution: Unresolved Votes: 0
Labels: documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Steps to reproduce:

  1. https://www.zabbix.com/documentation/current/en/manual/api/reference/event/get#retrieving-events-by-time-period
  2. This example uses "desc" for sorting order
  3. Response shows items in ascending order

Result:

Expected:
Request in example should use all-caps "DESC".

Response contains events in descending order, same as the description above the example.






[ZBX-23229] Zabbix Doc for upgrade..... Created: 2023 Aug 09  Updated: 2023 Oct 02

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.22, 6.4.7, 7.0.0alpha5
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Hugo Waschburger Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2023-08-09-10-22-52-088.png     PNG File image-2023-08-09-10-24-14-440.png     PNG File image-2023-08-09-10-27-36-832.png    

 Description   

try to upgrade zabbix 6.4.3 to 6.4.5, i check official documentation:

So great, I figure just one order and that's it. 

 

 

How can I update my zabbix server? Just so you know, I have unrestricted internet access :



 Comments   
Comment by Aigars Kadikis [ 2023 Oct 02 ]

Hello Hugo,

Thank you for noticing this problem in the documentation page. There is a typo. RegEx syntax is not supported for "apt".

On the page: https://www.zabbix.com/documentation/6.4/en/manual/installation/upgrade/packages/debian_ubuntu

This is not correct (not working):

$ sudo apt install --only-upgrade 'zabbix.*'
$ sudo apt install --only-upgrade 'zabbix-server.*'
$ sudo apt install --only-upgrade 'zabbix-agent.*'
$ sudo apt install --only-upgrade 'zabbix-agent2.*' 

This is correct:

$ sudo apt install --only-upgrade 'zabbix*'
$ sudo apt install --only-upgrade 'zabbix-server*'
$ sudo apt install --only-upgrade 'zabbix-agent*'
$ sudo apt install --only-upgrade 'zabbix-agent2*'




[ZBX-23271] Typo in predictive trigger function example Created: 2023 Aug 15  Updated: 2023 Oct 24

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.20, 6.4.4
Fix Version/s: None

Type: Incident report Priority: Trivial
Reporter: Oleksii Zagorskyi 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
Story Points: 0.1

 Description   

https://www.zabbix.com/documentation/current/en/manual/config/triggers/prediction has:

timeleft(/host/vfs.fs.size[/,free],1h,0)}<1h

This is likely a leftover from the older syntax. Most likely multiple documentation versions are affected.

 

Somewhat related - https://www.zabbix.com/documentation/current/en/manual/appendix/functions/prediction calls them “prediction functions”, https://www.zabbix.com/documentation/current/en/manual/config/triggers/prediction - predictive. Might be worth unifying. The latter seems better, but worth checking with an expert in English.






[ZBX-23337] Please improve documentation for Oracle template Created: 2023 Aug 30  Updated: 2023 Sep 11

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent2 plugin (N), Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Anton Demenev Assignee: Kristaps Naglis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Good day!

On documentation page for out of box template for Oracle by Zabbix agent 2 on compatibility section wrote: "This template has been tested on 12c2, 18c, 19c".

This means, that plugin not tested with Oracle 11g and lower (or upper).

But plugin's code used 'JSON_*' database query functions, introduced on Oracle 12c2 only and plugin doesn't work with Oracle lower, than 12c2.

Thanks in advance!






[ZBX-23502] README points to documentation for a different version Created: 2023 Oct 04  Updated: 2024 Mar 21

Status: READY TO DEVELOP
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.4.8rc1, 7.0.0alpha6
Fix Version/s: 6.4.14rc1, 7.0.0beta3 (master), 7.0 (plan)

Type: Problem report Priority: Trivial
Reporter: Janis Nulle Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: documentation, readme
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Sprint: Documentation backlog
Story Points: 0.25

 Description   

The README file in Zabbix Git repository points to version 6.2 documentation on release/6.4 and master branches:

On-line Zabbix documentation is available at
https://www.zabbix.com/documentation/6.2/manual/ .

Zabbix installation instructions can be found at
https://www.zabbix.com/documentation/6.2/manual/installation/ .

If you are installing Zabbix from packages the instructions can be found at
https://www.zabbix.com/documentation/6.2/manual/installation/install_from_packages/ .

Expected:
The documentation on release/6.4 should point to 6.4 documentation and to "devel" documentation on master.






[ZBX-23656] Description for "bulk" should be changed Created: 2023 Nov 03  Updated: 2023 Nov 06

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.4.9rc1, 7.0.0alpha8
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Andrejs Griščenko Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: bulk, snmp_interface
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

The description for the "bulk" property should be updated to match the one used on SNMP agent configuration page on the following pages:

The last sentence on SNMP agent configuration page mentions "since Zabbix 2.4 there is a "Use combined requests"". This option was renamed from "Use bulk requests" to "Use combined requests" in version 6.4 (ZBXNEXT-4428).






[ZBX-23689] Add notes that if for trigger\calculated item there is no latest data in the cache - how "deep" in the past we are querying the DB for values Created: 2023 Nov 09  Updated: 2024 Jan 31

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.23, 6.4.8
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Elina Kuzyutkina (Inactive) Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 1
Labels: triggerfunctions
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Team: Team A
Sprint: Documentation backlog
Story Points: 0.1

 Description   

Add notes that if for trigger\calculated item there is no latest data in the cache - how "deep" in the past we are querying the DB for the values
Also can we consider reducing this period from a week to one day?
(This affect only those functions where period doesn't specified and the last or #n values are needed)

Regards, Elina






[ZBX-23721] Change Cmd+Alt+H in the docs website to something else on macOS Created: 2023 Nov 17  Updated: 2023 Nov 17

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Alex Kalimulin Assignee: Gregory Chalenko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

On macOS Cmd+Alt+H hides all windows except for the foreground. Please bind search highlight to something else.






[ZBX-23763] Maintenance with no data collection option doesn't respect this for internal item type Created: 2023 Nov 30  Updated: 2024 Feb 22

Status: Need info
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F), Server (S)
Affects Version/s: 6.0.23, 6.4.8, 7.0.0alpha8
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Edgar Akhmetshin Assignee: Alex Kalimulin
Resolution: Unresolved Votes: 5
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
Team: Team A
Sprint: Support backlog

 Description   

Steps to reproduce:

  1. create maintenance rule for a zabbix server host with zabbix server health template without data collection

Result:
Still data is gathered.

Expected:
No data or option to on/off this behaviour. Also it should be documented.






[ZBX-23850] Improve SNMP-related documentation Created: 2023 Dec 15  Updated: 2024 Mar 06

Status: IN DOCUMENTING
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Arturs Dancis Assignee: Marianna Zvaigzne
Resolution: Unresolved Votes: 1
Labels: documentation, snmp
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team D
Sprint: Documentation backlog
Story Points: 1

 Description   

Based on user reports, SNMP documentation welcomes some improvements:

A. SNMP traps:

1. MISTAKE: <q>/tmp/my_zabbix_traps.tmp</q>
COMMENT: In the Script zabbix_trap_handler.sh the logfile is set to "/var/lib/zabbix/snmptraps/snmptraps.log". As both configs need to have the same logfile, this should also be "/var/lib/zabbix/snmptraps/snmptraps.log"

2. MISTAKE: <q>snmptrap["linkup"]</q>
COMMENT: Because of the quotes, the regex doesn't match. Also the "U" needs to be upper case. It should be: snmptrap[linkUp]

3. MISTAKE: <q>Create an SNMP item TEST:
Host SNMP interface IP: 127.0.0.1
Key: snmptrap["linkup"]
Log time format: yyyyMMdd.hhmmss</q>
COMMENT: This could be more detailed:
SNMP Interface needs to be configured in the host config
The IP needs to be the IP of the source host (port doesn't really matter in this case)
item creation is hard to find for new users (hint would be nice)

4. MISTAKE: <q>Create an SNMP item TEST:
Host SNMP interface IP: 127.0.0.1
Key: snmptrap["linkup"]
Log time format: yyyyMMdd.hhmmss</q>
COMMENT: This could be more detailed:
type needs to be "SNMP trap"
Type of information needs to be "Log"
 
B. SNMP agent:
 
1. MISTAKE: *q*This item uses GetBulk requests with SNMPv2 and v3 interfaces and GetNext for SNMPv1 interfaces* max repetitions for bulk requests are configured on the interface level./q*This item uses GetBulk requests with SNMPv2 and v3 interfaces and GetNext for SNMPv1 interfaces max repetitions for bulk requests are configured on the interface level.
COMMENT: How does max repetitions afects the blk requests? it will insist X time till it gets the data? will break the oid in groups of max repetitions OIDs ....
 
C. Configuring a host:
 
1. MISTAKE: <q>Interfaces</q>
COMMENT: Missing SNMPv3 information






[ZBX-23898] Quick reference guide for web certificate monitoring Created: 2023 Dec 29  Updated: 2024 Mar 06

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: 7.0 (plan)

Type: Documentation task Priority: Trivial
Reporter: Alex Kalimulin Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Sprint: Documentation backlog
Story Points: 1

 Description   

Agent2 has web.certificate.get which is used by template Website certificate by Zabbix agent 2. But some users have a hard time configuring certificate monitoring, especially when one needs to monitor many web sites.  We should create a new quick reference guide for this.






[ZBX-23899] Refresh FAQ in the manual Created: 2023 Dec 29  Updated: 2023 Dec 29

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: 7.0 (plan)

Type: Documentation task Priority: Trivial
Reporter: Alex Kalimulin Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: documentation
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Story Points: 1

 Description   

FAQ section of the manual contains random and very outdated information. For instance, it mentions Opera 11 (13 years old) and Linux 2.6 (15 years old). We should review these questions, remove outdated ones, and perhaps add new ones. This section could also benefit from better formatting.






[ZBX-23900] Mention tag policy in the manual, make tag examples conformant Created: 2023 Dec 29  Updated: 2024 Mar 06

Status: Needs documenting
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: None
Fix Version/s: 7.0 (plan)

Type: Documentation task Priority: Trivial
Reporter: Alex Kalimulin Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Sprint: Documentation backlog
Story Points: 1

 Description   

Zabbix 6.0 introduced a tag policy for templates. Even though it's publicly available in the template configuration guidelines it is kind of hard to find (see conventions for templates, items, and triggers) because it's not linked from the tag-related pages in the manual (or at least I wasn't able to find it). We should make the policy more noticeable by:

  • linking to it from the manual
  • changing all our tag examples to the ones that do not violate this policy

The latter will require more efforts because of the screenshots.






[ZBX-24087] Zabbix agent Timeout parameter incorrectly documented Created: 2024 Feb 14  Updated: 2024 Mar 28

Status: Doc. sign-off
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 7.0.0beta2
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Kaspars Mednis Assignee: Vladislavs Sokurenko
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team A
Sprint: S24-W6/7, S24-W8/9, Prev.Sprint, S24-W12/13
Story Points: 0.1

 Description   

Zabbix 7.0 official documentation describes agent "Timeout" parameter as a processing timeout.:

Spend no more than Timeout seconds on processing.

Default: 3
Range: 1-30

https://www.zabbix.com/documentation/7.0/en/manual/appendix/config/zabbix_agentd#timeout
https://www.zabbix.com/documentation/7.0/en/manual/appendix/config/zabbix_agent2#timeout

This behavior is changed since 7.0, Zabbix agent "Timeout" parameter defines only data sending timeout.

Please use correct description in documentation and agent configuration files.






[ZBX-24096] TimescaleDB documentation is out of date after SQL scripts were restructured Created: 2024 Feb 14  Updated: 2024 Mar 01

Status: Open
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 7.0.0alpha9, 7.0 (plan)
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Mihails Prihodko Assignee: Martins Valkovskis
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Causes
caused by ZBX-22307 Zabbix FTBFS on OpenBSD Closed

 Description   

Some documentation pages are out of date after SQL scripts were restructured in ZBX-22307.

"database/postgresql/timescaledb.sql" script was removed and "database/postgresql/timescaledb/schema.sql" seems to be the one that should be used instead (to be double-checked).

As a result, the following places (and possibly some others) should be updated:



 Comments   
Comment by Mihails Prihodko [ 2024 Mar 01 ]
        if [ -f 'database/postgresql/timescaledb.sql' ]; then
            cat database/postgresql/timescaledb.sql | sudo -u $DB_USER psql $DB_NAME
        elif [ -f 'database/postgresql/timescaledb/schema.sql' ]; then
            # after restructuring in ZBX-22307
            cat database/postgresql/timescaledb/schema.sql | sudo -u $DB_USER psql $DB_NAME
        fi




[ZBX-24140] Zabbix Agent compilation with cURL, but without SSL Created: 2024 Feb 23  Updated: 2024 Mar 26

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent (G), Documentation (D)
Affects Version/s: 6.0.26
Fix Version/s: None

Type: Problem report Priority: Trivial
Reporter: Constantin Oshmyan Assignee: Aigars Kadikis
Resolution: Unresolved Votes: 0
Labels: agent
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

SLES 15 sp5, compiling of agent from sources



 Description   

Hi, guys!

I tried to compile Zabbix Agent v6.0.23 with statically-linked libraries (see my previous comments here).
To support the "web.page.get[...]" metric with URL containing credentials, it should be linked with the cURL library (see comment in description of this metric in the documentation).
We tried to have as minimum as possible third-party components, so we didn't install any other libraries (for example, for SSL).
However, we had some problems; more detailed description is in the following 2 comments.



 Comments   
Comment by Constantin Oshmyan [ 2024 Feb 23 ]

Cosmetic issue: parameter DIR is not a directory

The help from the configure script tells that it's necessary to use a "--with-libcurl[=DIR]" parameter to build something with the cURL library.
However, the "DIR" is not very appropriate name in this case, as it must point not to some directory (for example, where this library was installed to, like with the "--with-libpcre2-lib=" parameter for a PCRE2 library).
In this case, it should be a full name of the "curl-config" utility, not a directory.

"configure" script: incorrect processing of auxilary libraries

The "configure" script several times calls the "curl-config" utility with different parameters, including "--libs" and "--static-libs".
In our case, the "curl-config" utility is a shell-script returning the following string for the "--static-libs" parameter:

/opt/lib64/libcurl.a -lldap -llber -lzstd -lz -pthread

The "configure" script use this string to form the $LIBCURL_LIBS variable to pass it to compiler then as part of the $LIBS.
However, processing of this string is implemented not very accurately. Probably, to check if the specific library is already present in this variable, this script tries to remove it before re-adding again.
The line 15390 of the "configure" script contains the following code:

test -z "${LIBCURL_LIBS##*$_lib_i*}" && LIBCURL_LIBS=`echo "$LIBCURL_LIBS"|sed "s|$_lib_i||g"`

In reality, in my case it causes to the wrong results: during the processing of the "-lz" library, it removes this substring from the already added earlier substring "-lzstd", leaving the only the "std" part.
As a result, a compiler interprets the "std" parameter just as a filename and gives an error because there is no such file.

zabbixtest1:/opt/zabbix-6.0.23 # ./configure --enable-agent --enable-static-libs --with-libpcre2-lib=/opt/lib64 --with-libcurl=/opt/bin/curl-config
[...]
checking if libs static linking with "-Wl,-b" is possible... no
checking if libs static linking with "-Wl,-B" is possible... yes
checking for gawk... (cached) gawk
checking for curl-config... /opt/bin/curl-config
checking for the version of libcurl... 8.4.0
checking for libcurl >= version 7.13.1... yes
checking for pthread.h... (cached) yes
checking for process shared libpthread support... yes
checking for main in -lpthread ... yes
checking for main in -lldap ... yes
checking for main in -llber ... yes
checking for main in -lzstd ... yes
checking for main in -lz ... yes
checking for main in -lcurl... no
configure: error: libcurl library not found

Fragment of the "config.log":

configure:14952: checking for gawk
configure:14984: result: gawk
configure:15002: checking for curl-config
configure:15037: result: /opt/bin/curl-config
configure:15047: checking for the version of libcurl
configure:15056: result: 8.4.0
configure:15063: checking for libcurl >= version 7.13.1
configure:15078: result: yes
configure:15172: checking for pthread.h
configure:15172: result: yes
configure:15179: checking for process shared libpthread support
configure:15239: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include   -rdynamic    -L/opt/lib64  conftest.c -lm -ldl  -lresolv  -lpthread >&5
configure:15239: $? = 0
configure:15287: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include   -rdynamic    -L/opt/lib64  conftest.c -lm -ldl  -lresolv  -lpthread >&5
configure:15287: $? = 0
configure:15287: ./conftest
configure:15287: $? = 0
configure:15309: result: yes
configure:15341: checking for main in -lpthread.
configure:15361: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include  -rdynamic    -L/opt/lib64 conftest.c -lpthread   -lm -ldl  -lresolv  >&5
configure:15361: $? = 0
configure:15372: result: yes
configure:15341: checking for main in -lldap.
configure:15361: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include  -rdynamic    -L/opt/lib64 conftest.c -lldap   -lm -ldl  -lresolv  >&5
configure:15361: $? = 0
configure:15372: result: yes
configure:15341: checking for main in -llber.
configure:15361: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include  -rdynamic    -L/opt/lib64 conftest.c -llber   -lm -ldl  -lresolv  >&5
configure:15361: $? = 0
configure:15372: result: yes
configure:15341: checking for main in -lzstd.
configure:15361: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include  -rdynamic    -L/opt/lib64 conftest.c -lzstd   -lm -ldl  -lresolv  >&5
configure:15361: $? = 0
configure:15372: result: yes
configure:15341: checking for main in -lz.
configure:15361: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include  -rdynamic    -L/opt/lib64 conftest.c -lz   -lm -ldl  -lresolv  >&5
configure:15361: $? = 0
configure:15372: result: yes
configure:15409: checking for main in -lcurl
configure:15429: cc -o conftest -g -O2  -DCURL_STATICLIB -I/opt/include  -rdynamic    -L/opt/lib64 conftest.c -lcurl  -lm -ldl  -lresolv   -Wl,-Bstatic -lcurl -Wl,-Bdynamic     -lpthread -lldap -llber
cc: error: std: No such file or directory
configure:15429: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Zabbix"
| #define PACKAGE_TARNAME "zabbix"
| #define PACKAGE_VERSION "6.0.23"
| #define PACKAGE_STRING "Zabbix 6.0.23"
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define PACKAGE "zabbix"
| #define VERSION "6.0.23"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define STDC_HEADERS 1
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_NETDB_H 1
| #define HAVE_SIGNAL_H 1
| #define HAVE_SYSLOG_H 1
| #define HAVE_TIME_H 1
| #define HAVE_ERRNO_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_NETINET_IN_H 1
| #define HAVE_MATH_H 1
| #define HAVE_SYS_SOCKET_H 1
| #define HAVE_DIRENT_H 1
| #define HAVE_CTYPE_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_SYS_PARAM_H 1
| #define HAVE_ARPA_INET_H 1
| #define HAVE_SYS_VFS_H 1
| #define HAVE_SYS_SYSINFO_H 1
| #define HAVE_SYS_STATVFS_H 1
| #define HAVE_SYS_STATFS_H 1
| #define HAVE_SYS_SOCKET_H 1
| #define HAVE_ARPA_INET_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_SYS_SYSCALL_H 1
| #define HAVE_SYS_SYSMACROS_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_PWD_H 1
| #define HAVE_ARPA_NAMESER_H 1
| #define HAVE_ASSERT_H 1
| #define HAVE_LINUX_KERNEL_H 1
| #define HAVE_SYS_RESOURCE_H 1
| #define HAVE_PTHREAD_H 1
| #define HAVE_SYS_WAIT_H 1
| #define HAVE_STDARG_H 1
| #define HAVE_SYS_SEM_H 1
| #define HAVE_SYS_IPC_H 1
| #define HAVE_SYS_SHM_H 1
| #define HAVE_LBER_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_SYS_FILE_H 1
| #define HAVE_GRP_H 1
| #define HAVE_EXECINFO_H 1
| #define HAVE_MNTENT_H 1
| #define HAVE_SYS_TIMES_H 1
| #define HAVE_DLFCN_H 1
| #define HAVE_SYS_UTSNAME_H 1
| #define HAVE_SYS_UN_H 1
| #define HAVE_STDDEF_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_FLOAT_H 1
| #define HAVE_RESOLV_H 1
| #define HAVE_NET_IF_H 1
| #define HAVE_SYS_MOUNT_H 1
| #define HAVE_SYS_USER_H 1
| #define HAVE_SYS_SWAP_H 1
| #define HAVE_SYS_UCONTEXT_H 1
| #define HAVE_LINUX_NETLINK_H 1
| #define HAVE_LINUX_INET_DIAG_H 1
| #define HAVE_INET_DIAG 1
| #define HAVE_LIBEXECINFO 1
| #define HAVE_LIBM 1
| #define HAVE_RES_QUERY 1
| #define ZBX_SOCKLEN_T socklen_t
| #define ZBX_SIVAL_INT sival_int
| #define HAVE_RES_NINIT 1
| #define HAVE_RES_U_EXT 1
| #define HAVE_SOCKADDR_STORAGE_SS_FAMILY 1
| #define HAVE_SYSINFO_MEM_UNIT 1
| #define HAVE_SYSINFO_FREESWAP 1
| #define HAVE_SYSINFO_TOTALSWAP 1
| #define HAVE_SYSINFO_TOTALRAM 1
| #define HAVE_SYSINFO_SHAREDRAM 1
| #define HAVE_SYSINFO_BUFFERRAM 1
| #define HAVE_SYSINFO_FREERAM 1
| #define HAVE_SYSINFO_UPTIME 1
| #define HAVE_SYSINFO_PROCS 1
| #define HAVE_TM_TM_GMTOFF 1
| #define HAVE_THREAD_LOCAL 1
| #define HAVE_UNISTD_SYSCONF 1
| #define HAVE_FUNCTION_INITGROUPS 1
| #define HAVE_FUNCTION_SETEUID 1
| #define HAVE_TIME_CLOCK_GETTIME 1
| #define HAVE___VA_COPY 1
| #define HAVE___VA_ARGS__ 1
| #define RETSIGTYPE.
| #define HAVE_GETLOADAVG 1
| #define HAVE_HSTRERROR 1
| #define HAVE_GETENV 1
| #define HAVE_PUTENV 1
| #define HAVE_SETENV 1
| #define HAVE_TZSET 1
| #define HAVE_UNSETENV 1
| #define HAVE_SIGQUEUE 1
| #define HAVE_ROUND 1
| #define HAVE_PROC 1
| #define HAVE_PROC_STAT 1
| #define HAVE_PROC_CPUINFO 1
| #define HAVE_PROC_LOADAVG 1
| #define HAVE_PROC_NET_DEV 1
| #define ARCH "linux"
| #define SIZEOF_VOID_P 8
| #define HAVE_PTHREAD_PROCESS_SHARED 1
| /* end confdefs.h.  */
|.
|.
| int
| main (void)
| {
| return main ();
|   ;
|   return 0;
| }
configure:15439: result: no
configure:15448: error: libcurl library not found

The possible temorary workaround is the edit the "curl-config" script and just delete the "-lz" library from its output; but real solution should include more accurate processing in this place of the "configure" script.

Comment by Constantin Oshmyan [ 2024 Feb 23 ]

"Cannot set allowed protocols: Unsupported protocol" after successful building

Finally, we are able to build the agent. However, in reality the metric "web.page.get" does not work at all:

zabbixtest1:/opt/zabbix-6.0.23/src/zabbix_agent # ./zabbix_agentd -t 'web.page.get["http://zabbixtest1.rietumu.lv"]'
web.page.get["http://zabbixtest1.rietumu.lv"] [m|ZBX_NOTSUPPORTED] [Cannot set allowed protocols: Unsupported protocol]

It is very strange; moreover – this metric worked before (without cURL library).
The cause is following: a Zabbix code assumes that if we use cURL, then this library always support both HTTP and HTTPS protocols.
Accessing this library, Zabbix always set both these protocols as acceptable, in our case it's a line 183 of the src/libs/zbxsysinfo/common/http.c file:

if (CURLE_OK != (err = curl_easy_setopt(easyhandle, CURLOPT_PROTOCOLS_STR, "HTTP,HTTPS")))

(a similar code occurs in the several places, for example, lines 340-342 in the src/libs/zbxhttp/http.c file).
In our case, however, we have the cURL library built without SSL, using the following options:

./configure --prefix=/opt --without-ssl --disable-shared

So, this library supports HTTP, but does not support HTTPS. As a result, the metric "web.page.get" does not work at all.
Possible temporary workaround: just to remove the "HTTPS" from the line 183 of the src/libs/zbxsysinfo/common/http.c file:

if (CURLE_OK != (err = curl_easy_setopt(easyhandle, CURLOPT_PROTOCOLS_STR, "HTTP")))

In this case, it does the check successfully, even using credentials in the URL:

zabbixtest1:/opt/zabbix-6.0.23/src/zabbix_agent # ./zabbix_agentd -t 'web.page.get["http://test:[email protected]"]'
web.page.get["http://test:[email protected]"] [t|HTTP/1.1 301 Moved Permanently
Server: nginx/1.21.5
Date: Wed, 21 Feb 2024 16:43:40 GMT
Content-Type: text/html
Content-Length: 169
Connection: keep-alive
Location: https://zabbixtest1.rietumu.lv/

<html>
<head><title>301 Moved Permanently</title></head>
<body>
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx/1.21.5</center>
</body>
</html>]

However, real solution could be:

  • long-term solution: modify code to take into account that cURL could support HTTP without HTTPS;
  • short-term solution: at least, to clearly document that if you use the cURL library, it must support the HTTPS protocol (i.e. be built with SSL).
Comment by Oleksii Zagorskyi [ 2024 Feb 23 ]

Constantin, is this reported in ZBX for intention?
We could move it if needed.

Comment by Constantin Oshmyan [ 2024 Feb 23 ]

is this reported in ZBX for intention?

Hi, zalex_ua!
I think, all these issues seem like a bugs, so I made a ticket in ZBX project.
Maybe, is there more appropriate place?

Comment by Oleksii Zagorskyi [ 2024 Feb 23 ]

Constantin, this is fine, I just wanted to be sure. Let it stay here.

Comment by Constantin Oshmyan [ 2024 Feb 23 ]

Update: I can confirm that the last issue really does not occur if the cURL library is built with the OpenSSL (and supports the HTTPS protocol).

Comment by dimir [ 2024 Mar 14 ]

constantin.oshmyan I wonder if any of these issues will be fixed with ZBXNEXT-3623. If you could test it after it's released that would be great!

Comment by Constantin Oshmyan [ 2024 Mar 26 ]

dimir, do I understand correctly that ZBXNEXT-3623 will be implemented for the new v7.0 only (i.e. won't be backported to the current versions - 6.4 and 6.0 LTS)?





[ZBX-24179] CSS for git.zabbix.com README.md Created: 2024 Mar 04  Updated: 2024 Mar 04

Status: Confirmed
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.27, 6.4.12
Fix Version/s: None

Type: Documentation task Priority: Trivial
Reporter: Aigars Kadikis Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File image-2024-03-04-10-13-46-251.png    

 Description   

Could it be possible to install CSS rule to make the hyperlinks more noticeable to the end user? For example:

https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mssql_odbc?at=refs%2Fheads%2Frelease%2F6.0

There are links which explain in detail what needs to be done to succeed in the installation:

But while briefly reading the page there is a high chance that noone will think there is a hidden hyperlink behind the text.






[ZBX-24191] Inconsistent scientific number processing in Value mapping dialog Created: 2024 Mar 05  Updated: 2024 Mar 21

Status: READY TO DEVELOP
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D), Frontend (F)
Affects Version/s: 6.0.26, 6.4.13rc1, 7.0.0beta2
Fix Version/s: 6.0.29rc1, 6.4.14rc1, 7.0.0beta3 (master), 7.0 (plan)

Type: Problem report Priority: Trivial
Reporter: Sergejs Olonkins Assignee: Zabbix Development Team
Resolution: Unresolved Votes: 0
Labels: format, valuemaps, values
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: GIF File scientific_number_incinsistancy_in_valuemaps.gif    
Team: Team B
Sprint: Sprint candidates
Story Points: 1

 Description   

Problem description: Scientific numbers are inconsistently processed in Value mapping dialog in field Value for different mapping types. The following is observed:

  1. For types "is greater than or equals" and "is less or equals" huge and super small numbers are accepted (even 1E-100000 and 1E100000), but for type "in range" scientific numbers only till the 9th degree (inclusive) are accepted.
  2. In case if host configuration, that has mappings with types "is greater than or equals" or "is less or equals" that have huge or super small numbers, is saved after re-opening such mapping configuration the huge number is replaced with "INF" and the super small number is replaced with 0. Such configuration cannot be saved repeatedly, as "INF" is not considered as a valid floating point number.

Maybe it would be good to limit the scientific format numbers in Value mapping values and properly document this behavior (currently I didn't even find a reference that scientific numbers are supported).

Steps to reproduce:
# Open configuration of any host

  1. Attempt to create a value mapping with the following mappings:
    1. type = "equals", value = "1E777", mapped to = 1
    2. type = "is greater than or equals", value = "1E666", mapped to = 2
    3. type = "is less than or equals", value = "1E-666", mapped to = 3
    4. type = "in range", value = "1E-777-1E10", mapped to = 4
      Result 1: Such configuration cannot be saved due to invalid range
  2. Change the range in the last mapping to "1E-100-1E9" and save value mapping.
  3. Note that no errors were returned and value mapping was successfully saved.
  4. Save host configuration
  5. Open host configuration
  6. Open the Value mapping configuration dialog and check the values of previously saved mappings
    Result 2:
    • for mappings with type = "equals" and "in range" the value didn't change ("1E777" and "1E-777-1E10" respectively)
    • for mapping with type = "is greater than or equals" the value was changed to "INF" (infinity)
    • for mapping with type = "is less than or equals" the value was changed to 0
  7. Attempt to save this mapping without making any changes
    Result 3: It is not possible and the following error is returned due to value "INF": Incorrect value for field "Value": a floating point value is expected.

Expected:
1 - We should not allow to initially save such configuration that gets automatically updated later and after that cannot be saved again without any modifications.
2 - I would suggest to treat scientific numbers equally for all mapping types.

Example:






[ZBX-24270] Improve information accessibility for setting up Zabbix agent 2 with loadable plugins Created: 2024 Mar 27  Updated: 2024 Mar 28

Status: IN DOCUMENTING
Project: ZABBIX BUGS AND ISSUES
Component/s: Documentation (D)
Affects Version/s: 6.0.29rc1, 6.4.14rc1, 7.0.0beta3 (master)
Fix Version/s: 6.0.29rc1, 6.4.14rc1, 7.0.0beta3 (master), 7.0 (plan)

Type: Documentation task Priority: Trivial
Reporter: Arturs Dancis Assignee: Arturs Dancis
Resolution: Unresolved Votes: 0
Labels: agent2, documentation, plugins
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Team: Team D
Sprint: Documentation backlog
Story Points: 0.5

 Description   

Add additional details, such as links to relevant resources (Plugins, Building loadable plugins, Building Zabbix agent 2 on Windows) and information on setting up Zabbix agent 2 with loadable plugins (for monitoring databases), to the "Installation" section on the Zabbix processes > Agent 2 page to improve information accessibility for users interested in monitoring databases using Zabbix agent 2 with loadable plugins. This page is accessible through the Download and install Zabbix page, where pre-compiled Zabbix agent/agent 2 binaries and archives are provided, lacking loadable plugins.






Generated at Fri Mar 29 15:53:37 EET 2024 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.