manual:introduction:whatsnew600

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Previous revision
manual:introduction:whatsnew600 [2017/08/25 12:35]
manual:introduction:whatsnew600 [2021/10/27 12:02] (current)
martins-v host editing as a popup (ZBXNEXT-6757)
Line 1: Line 1:
 +===== 5 What's new in Zabbix 6.0.0 =====
 +
 +<note important>​ Zabbix 6.0.0 is not released yet.</​note>​
 +
 +==== Services ====
 +
 +Several updates have been made in the new version to the high-level overview of the monitored infrastructure offered by the services functionality.
 +
 +=== Tag-based mapping of services to problems ===
 +
 +The availability of [[:​manual/​web_interface/​frontend_sections/​monitoring/​it_services|services]] in previous Zabbix versions depended on triggers and their states. In the new version that is replaced by a tag-based mapping to problems for the respective service.
 +
 +The configuring and viewing of services is now merged in //​Monitoring//​ -> //​Services//,​ and a separate section for service configuration no longer exists in //​Configuration//​ -> //​Services//​.
 +
 +In service configuration,​ hard and soft dependencies no longer exist. Instead, a service can have multiple parent services. ​
 +
 +=== Status ​calculation ​and propagation rules ===
 +
 +There are new status calculation rules and flexible ​additional rules for calculating the status of a parent service based on the statuses and weight of direct children. It is now also possible to set flexible rules for propagating a service status to parent services.
 +
 +=== Permissions to services ===
 +
 +Flexible permissions to services have been implemented on [[:​manual/​web_interface/​frontend_sections/​administration/​user_roles|user role]] level. Read-write or read-only access can be granted to all, none or selected services (based on name or tags).
 +
 +=== Root cause analysis ===
 +
 +A new //Root cause// column lists the underlying problems that directly or indirectly affect the service status.
 +
 +{{:​manual:​introduction:​root_cause.png|}}
 +
 +If you click on the problem name you can see more details about it in //​Monitoring//​ -> //​Problems//​.
 +
 +=== Alerting on service status change ===
 +
 +It is now possible to receive automated alerts about service status changes, similar to the alerts about trigger status changes. ​
 +
 +A new [[manual/​config/​notifications/​action|service action]] type has been added to the //Actions// menu. Service actions may include steps for problem, recovery, and update operations related to services. It is possible to configure two types of actions: sending a message to the specified recipients and executing a remote command on Zabbix server. Similarly to trigger actions, service actions support problem [[manual/​config/​notifications/​action/​escalations|escalation]] scenarios. ​
 +
 +New message templates //​Service//,​ //Service recovery//, and //Service update// have been added to [[manual/​config/​notifications/​media#​common_parameters|media types]] and should be defined to enable correct sending of notifications for service actions. ​
 +
 +=== Service cloning ===
 +
 +Services now can be cloned. The //Clone// button has been added to the [[:​manual/​web_interface/​frontend_sections/​monitoring/​it_services#​service_configuration|configuration form]] of a service. When a service is cloned, its parent links are preserved, while the child links are not.
 +
 +==== Simple macros replaced by expression macros ====
 +
 +A new expression syntax for triggers and calculated items was introduced in [[https://​www.zabbix.com/​documentation/​5.4/​manual/​introduction/​whatsnew540|Zabbix 5.4]]. However, the old syntax still remained in use in simple macros. In the new version, the functionality of simple macros has been transferred to expression macros and the new expression syntax is used. See the comparison below for details of the change:
 +
 +^In Zabbix 6.0^Before Zabbix 6.0^
 +|''​%%{?​avg(/​host/​key,​1h)}%%''​\\ \\ Example of an expression macro in the new version. ​ |''​%%{host:​key.avg(1h)}%%''​\\ \\ Example of a simple macro in previous versions. ​ |
 +
 +The existing simple macros will be converted to expression macros during the upgrade. The scope of expression macros covers the same that was offered by simple macros. Thus, expression macros can be used in:
 +
 +  * problem notifications and commands
 +  * problem update notifications and commands
 +  * map element labels
 +  * map link labels
 +  * map shape labels
 +  * graph names
 +
 +==== Positional macros no longer supported ====
 +
 +The support for positional macros in item name ($1, $2...$9), deprecated since Zabbix 4.0, has been fully removed.
 +
 +==== New functions ====
 +
 +=== Functions for Prometheus histograms ===
 +
 +It has been possible to collect [[:​manual/​config/​items/​itemtypes/​prometheus|Prometheus metrics]] in Zabbix for a while now, but some of the metrics are difficult to work with. Specifically,​ the metrics of histogram type can be presented in Zabbix as multiple items with the same key names, but different parameters. However, even though such items are logically related and represent the same data, it has been difficult to analyze the collected data without specialized functions. To cover this functionality gap in the new version, **rate()** and **histogram_quantile()** functions, producing the same result as their PromQL counterparts,​ have been added.
 +
 +Other new additions to complement this functionality are the **bucket_rate_foreach()** and the **bucket_percentile()** functions. For more information see:
 +
 +  * [[:​manual/​appendix/​functions/​history#​history_functions1|History functions]] (see **rate()**)
 +  * [[:​manual/​appendix/​functions/​aggregate#​aggregate_functions1|Aggregate functions]] (see **histogram_quantile()**,​ **bucket_percentile()**)
 +  * [[:​manual/​appendix/​functions/​aggregate/​foreach|Foreach functions]] (see **bucket_rate_foreach()**)
 +
 +=== Monotonic change ===
 +
 +It is now possible to check for monotonic increase or decrease in item values using the new **monoinc()** or **monodec()** [[:​manual/​appendix/​functions/​history|history functions]].
 +
 +=== Entity count ===
 +New [[manual/​appendix/​functions|functions]] have been added to simplify the counting of specific hosts, items, or values, returned by [[:​manual/​appendix/​functions/​aggregate/​foreach|foreach functions]].
 +
 +Aggregate functions: ​
 +  * **count** - total number of values in an array returned by a foreach function (returns an integer); ​
 +  * **item_count** - total number of currently enabled items that match filter criteria (returns an integer).
 +
 +Foreach function:
 +  * **exists_foreach** - number of currently enabled items that match filter criteria (returns an array).
 +
 +==== Items ====
 +
 +== Automated type selection ==
 +Item configuration form now automatically suggests the matching type of information,​ if selected item key returns data only of the specific type (for example, **log[]** item requires //Type of information:​ Log//). //Type of information//​ parameter is now located under the //Key// parameter on the primary //Item// tab and is duplicated on the //​Preprocessing//​ tab if at least one preprocessing step is specified. If Zabbix detects a possible mismatch of the selected type of information and key, a warning icon will be displayed next to the //Type of information//​ field. ​
 +
 +== New and updated items ==
 +Several new items have been added to Zabbix agent/agent 2:
 +
 +  * **agent.hostmetadata** - return host metadata
 +  * **kernel.openfiles** - return the number of open file descriptors
 +  * **net.tcp.socket.count[]** - return the number of TCP sockets that match parameters
 +  * **net.udp.socket.count[]** - return the number of UDP sockets that match parameters
 +  * **vfs.file.get[]** - return information about a file as JSON
 +  * **vfs.file.owner[]** - return the ownership of a file
 +  * **vfs.file.permissions[]** - return a 4-digit string containing octal number with Unix permissions
 +
 +Additionally: ​
 +  * **vfs.file.cksum[]** now supports a second ''​mode''​ parameter (//crc32//, //md5//, //sha256//)
 +  * **vfs.file.size[]** now supports a second ''​mode''​ parameter (//bytes// or //lines//)
 +  * **vfs.fs.discovery** and **vfs.fs.get** now return an %%{#​FSLABEL}%% macro on Windows (with volume names)
 +
 +For more details see [[:​manual/​config/​items/​itemtypes/​zabbix_agent|agent items]].
 +
 +==== Zabbix agent 2 plugins ====
 +
 +Each Zabbix agent 2 plugin now has a separate [[manual/​appendix/​config/​zabbix_agent2_plugins|configuration file]]. By default, these files are located in the ''​./​zabbix_agent2.d/​plugins.d/''​ directory. The path is specified in the ''​Include''​ parameter of the agent 2 configuration file and can be relative to the [[manual/​appendix/​config/​zabbix_agent2|zabbix_agent2.conf]] or [[manual/​appendix/​config/​zabbix_agent2_win|zabbix_agent2.win.conf]] file location.
 +
 +==== Password requirements ====
 +
 +Custom password complexity requirements can now be provided for Zabbix internal [[manual/​web_interface/​frontend_sections/​administration/​authentication#​internal_authentication|authentication method]]. To prevent Zabbix users from setting weak passwords, it is possible to enforce the following restrictions:​
 +  * Set the minimum password length. ​
 +  * Require a password to contain a combination of uppercase and lowercase letters, digits, and/or special characters.
 +  * Prohibit usage of most common and easily guessable passwords.
 +
 +==== Databases ====
 +
 +To create the optimal user experience and ensure the best Zabbix performance in various production environments,​ the support of some older database releases has been dropped. This primarily applies to the database versions that are nearing their end of service life point and versions with unfixed issues that may interfere with normal performance.
 +
 +Starting from Zabbix 6.0, the following [[:​manual/​installation/​requirements#​Software|database]] versions are officially supported:
 +
 +  * //​MySQL/​Percona//​ 8.0.X
 +  * //MariaDB// 10.5.X - 10.6.X
 +  * //​PostgreSQL//​ 13.X
 +  * //Oracle// 19c - 21c
 +  * //​TimescaleDB//​ 2.0.1-2.3
 +  * //SQLite// 3.3.5-3.34.X
 +
 +By default, Zabbix server and proxy will not start if an unsupported database version is detected. It is now possible, though not recommended,​ to turn off DB version check by modifying AllowUnsupportedDBVersions configuration parameter for the [[:​manual/​appendix/​config/​zabbix_server|server]] or [[:​manual/​appendix/​config/​zabbix_proxy|proxy]].
 +
 +==== Zabbix get and Zabbix sender timeout ====
 +
 +Zabbix get and Zabbix sender utilities now support a ''​-t <​seconds>''​ or ''​%%--%%timeout <​seconds>''​ timeout parameter. The valid range is:
 +
 +  * 1-30 seconds for Zabbix get (default: 30 seconds)
 +  * 1-300 seconds for Zabbix sender (default: 60 seconds)
 +
 +==== Prometheus queries ====
 +
 +Zabbix Prometheus preprocessing [[manual/​config/​items/​itemtypes/​prometheus|query language]] now supports two additional label matching operators: ​
 +  * **!=** -- select labels that are not equal to the provided string;
 +  * **!~** -- select labels that do not regex-match the provided string.
 +
 +==== Javascript methods ====
 +
 +HTTP methods PATCH, HEAD, OPTIONS, TRACE, CONNECT have been added to the JavaScript engine. Also, the engine now allows sending custom HTTP method requests with the new JS method HttpRequest.customRequest.
 +
 +See also: [[:​manual/​config/​items/​preprocessing/​javascript/​javascript_objects|Additional JavaScript objects]].
 +
 +==== Audit log ====
 +
 +== Records ==
 +
 +The audit log now contains records about all configuration changes for all Zabbix objects, including changes that occurred as a result of executing an LLD rule, a network discovery action, an autoregistration action, or a script execution. Previously, configuration changes initiated from Zabbix server, for example, as a result of executing a discovery rule, were not recorded. Now such object modifications will be stored as audit records attributed to the user System.  ​
 +
 +== Record filter ==
 +
 +A functionality for filtering records by the frontend operation that caused these entries has been added. If several log records have been created as a result of a single operation, for example, linking/​unlinking a template, such records will have the same //Recordset ID//. 
 +
 +== Audit settings ==
 +
 +New [[manual/​web_interface/​frontend_sections/​administration/​general#​audit_log|section]] //Audit log// has been added to the //​Administration->​General//​ menu allowing to enable or disable audit logging. Housekeeping settings for audit, previously located under the //​Housekeeper//​ section, have also been moved to the new //Audit log// section. ​
 +
 +==== Webhook integrations ====
 +
 +A new integration is available allowing to use the [[manual/​config/​notifications/​media/​webhook|webhook]] media type for creating [[https://​git.zabbix.com/​projects/​ZBX/​repos/​zabbix/​browse/​templates/​media/​github/​README.md|Github issues]] from Zabbix notifications.
 +
 +==== Templates ====
 +
 +New official templates are available for monitoring:
 +
 +=== MikroTik ===
 +  * //MikroTik CCR1009-7G-1C-1S+ SNMP// - monitoring of MikroTik CCR1009-7G-1C-1S+ ethernet routers via SNMP;
 +  * //MikroTik CCR1009-7G-1C-1S+PC SNMP// - monitoring of MikroTik CCR1009-7G-1C-1S+PC ethernet routers via SNMP;
 +  * //MikroTik CCR1009-7G-1C-PC SNMP// - monitoring of MikroTik CCR1009-7G-1C-PC ethernet routers via SNMP;
 +  * //MikroTik CCR1016-12G SNMP// - monitoring of MikroTik CCR1016-12G ethernet routers via SNMP;
 +  * //MikroTik CCR1016-12S-1S+ SNMP// - monitoring of MikroTik CCR1016-12S-1S+ ethernet routers via SNMP;
 +  * //MikroTik CCR1036-12G-4S-EM SNMP// - monitoring of MikroTik CCR1036-12G-4S-EM ethernet routers via SNMP;
 +  * //MikroTik CCR1036-12G-4S SNMP// - monitoring of MikroTik CCR1036-12G-4S ethernet routers via SNMP;
 +  * //MikroTik CCR1036-8G-2S+ SNMP// - monitoring of MikroTik CCR1036-8G-2S+ ethernet routers via SNMP;
 +  * //MikroTik CCR1036-8G-2S+EM SNMP// - monitoring of MikroTik CCR1036-8G-2S+EM ethernet routers via SNMP;
 +  * //MikroTik CCR1072-1G-8S+ SNMP// - monitoring of MikroTik CCR1072-1G-8S+ ethernet routers via SNMP;
 +  * //MikroTik CCR2004-16G-2S+ SNMP// - monitoring of MikroTik CCR2004-16G-2S+ ethernet routers via SNMP;
 +  * //MikroTik CCR2004-1G-12S+2XS SNMP// - monitoring of MikroTik CCR2004-1G-12S+2XS ethernet routers via SNMP;
 +  * //MikroTik CRS106-1C-5S SNMP// - monitoring of MikroTik CRS106-1C-5S switches via SNMP;
 +  * //MikroTik CRS109-8G-1S-2HnD-IN SNMP// - monitoring of MikroTik CRS109-8G-1S-2HnD-IN switches via SNMP;
 +  * //MikroTik CRS112-8G-4S-IN SNMP// - monitoring of MikroTik CRS112-8G-4S-IN switches via SNMP;
 +  * //MikroTik CRS112-8P-4S-IN SNMP// - monitoring of MikroTik CRS112-8P-4S-IN switches via SNMP;
 +  * //MikroTik CRS125-24G-1S-2HnD-IN SNMP// - monitoring of MikroTik CRS125-24G-1S-2HnD-IN switches via SNMP;
 +  * //MikroTik CRS212-1G-10S-1S+IN SNMP// - monitoring of MikroTik CRS212-1G-10S-1S+IN switches via SNMP;
 +  * //MikroTik CRS305-1G-4S+IN SNMP// - monitoring of MikroTik CRS305-1G-4S+IN switches via SNMP;
 +  * //MikroTik CRS309-1G-8S+IN SNMP// - monitoring of MikroTik CRS309-1G-8S+IN switches via SNMP;
 +  * //MikroTik CRS312-4C+8XG-RM SNMP// - monitoring of MikroTik CRS312-4C+8XG-RM switches via SNMP;
 +  * //MikroTik CRS317-1G-16S+RM SNMP// - monitoring of MikroTik CRS317-1G-16S+RM switches via SNMP;
 +  * //MikroTik CRS326-24G-2S+IN SNMP// - monitoring of MikroTik CRS326-24G-2S+IN switches via SNMP;
 +  * //MikroTik CRS326-24G-2S+RM SNMP// - monitoring of MikroTik CRS326-24G-2S+RM switches via SNMP;
 +  * //MikroTik CRS326-24S+2Q+RM SNMP// - monitoring of MikroTik CRS326-24S+2Q+RM switches via SNMP;
 +  * //MikroTik CRS328-24P-4S+RM SNMP// - monitoring of MikroTik CRS328-24P-4S+RM switches via SNMP;
 +  * //MikroTik CRS328-4C-20S-4S+RM SNMP// - monitoring of MikroTik CRS328-4C-20S-4S+RM switches via SNMP;
 +  * //MikroTik CRS354-48G-4S+2Q+RM SNMP// - monitoring of MikroTik CRS354-48G-4S+2Q+RM switches via SNMP;
 +  * //MikroTik CRS354-48P-4S+2Q+RM SNMP// - monitoring of MikroTik CRS354-48P-4S+2Q+RM switches via SNMP;
 +  * //MikroTik CSS326-24G-2S+RM SNMP// - monitoring of MikroTik CSS326-24G-2S+RM switches via SNMP;
 +  * //MikroTik CSS610-8G-2S+IN SNMP// - monitoring of MikroTik CSS610-8G-2S+IN switches via SNMP;
 +  * //MikroTik FiberBox SNMP// - monitoring of MikroTik FiberBox switches via SNMP;
 +  * //MikroTik hEX lite SNMP// - monitoring of MikroTik hEX lite ethernet routers via SNMP;
 +  * //MikroTik hEX PoE lite SNMP// - monitoring of MikroTik hEX PoE lite ethernet routers via SNMP;
 +  * //MikroTik hEX PoE SNMP// - monitoring of MikroTik hEX PoE ethernet routers via SNMP;
 +  * //MikroTik hEX S SNMP// - monitoring of MikroTik hEX S ethernet routers ​ via SNMP;
 +  * //MikroTik hEX SNMP// - monitoring of MikroTik hEX ethernet routers via SNMP;
 +  * //MikroTik netPower 15FR SNMP// - monitoring of MikroTik netPower 15FR switches via SNMP;
 +  * //MikroTik netPower 16P SNMP// - monitoring of MikroTik netPower 16P switches via SNMP;
 +  * //MikroTik netPower Lite 7R SNMP// - monitoring of MikroTik netPower Lite 7R switches via SNMP;
 +  * //MikroTik PowerBox Pro SNMP// - monitoring of MikroTik PowerBox Pro ethernet routers via SNMP;
 +  * //MikroTik PowerBox SNMP// - monitoring of MikroTik PowerBox ethernet routers via SNMP;
 +  * //MikroTik RB1100AHx4 Dude Edition SNMP// - monitoring of MikroTik RB1100AHx4 Dude Edition ethernet routers ​ via SNMP;
 +  * //MikroTik RB1100AHx4 SNMP// - monitoring of MikroTik RB1100AHx4 ethernet routers via SNMP;
 +  * //MikroTik RB2011iL-IN SNMP// - monitoring of MikroTik RB2011iL-IN ethernet routers via SNMP;
 +  * //MikroTik RB2011iL-RM SNMP// - monitoring of MikroTik RB2011iL-RM ethernet routers via SNMP;
 +  * //MikroTik RB2011iLS-IN SNMP// - monitoring of MikroTik RB2011iLS-IN ethernet routers via SNMP;
 +  * //MikroTik RB2011UiAS-IN SNMP// - monitoring of MikroTik RB2011UiAS-IN ethernet routers via SNMP;
 +  * //MikroTik RB2011UiAS-RM SNMP// - monitoring of MikroTik RB2011UiAS-RM ethernet routers via SNMP;
 +  * //MikroTik RB260GS SNMP// - monitoring of MikroTik RB260GS switches via SNMP;
 +  * //MikroTik RB3011UiAS-RM SNMP// - monitoring of MikroTik RB3011UiAS-RM ethernet routers via SNMP;
 +  * //MikroTik RB4011iGS+RM SNMP// - monitoring of MikroTik RB4011iGS+RM ethernet routers via SNMP;
 +  * //MikroTik RB5009UG+S+IN SNMP// - monitoring of MikroTik RB5009UG+S+IN ethernet routers via SNMP;
 +  * //Mikrotik SNMP// - a generic template for monitoring MikroTik devices. ​
 +
 +
 +You can get these templates:
 +
 +  * In //​Configuration//​ -> //​Templates//​ in new installations;​
 +  * When upgrading from previous versions, the latest templates can be downloaded from the [[https://​git.zabbix.com/​projects/​ZBX/​repos/​zabbix/​browse/​templates|Zabbix Git repository]] and manually imported into Zabbix in the //​Configuration//​ -> //​Templates//​ section. If a template with the same name already exists, check the //Delete missing// option before importing to achieve a clean import. This way the items that have been excluded from the updated template will be removed (note, that history of the deleted items will be lost).
 +
 +==== Macros for expression debugging ====
 +
 +New macros are now supported to simplify the process of debugging trigger expressions:​
 +  * {TRIGGER.EXPRESSION.EXPLAIN},​ {TRIGGER.EXPRESSION.RECOVERY.EXPLAIN} - resolve to a partially evaluated trigger or recovery expression, where only item-based functions are applied;
 +  * {FUNCTION.VALUE<​1-9>​},​ {FUNCTION.RECOVERY.VALUE<​1-9>​} - resolve to the results of the Nth item-based function at the time of the event.
 +
 +For more details, see [[:​manual/​appendix/​macros/​supported_by_location|Supported macros]].
 +
 +==== Creating hosts from Monitoring ====
 +
 +It is now also possible to create new hosts from //​Monitoring//​ -> //​[[:​manual/​web_interface/​frontend_sections/​monitoring/​hosts|Hosts]]//​.
 +
 +{{:​manual:​introduction:​monitoring_create_host.png|}}
 +
 +The //Create host// button is available for Admin and Super Admin users.
 +
 +==== Host editing as popup ====
 +
 +The form for host creation and editing is now opened in a modal (popup) window, in //​Configuration//​ -> //Hosts//, //​Monitoring//​ -> //Hosts// and in any page, where there is a host menu or other direct link to the host configuration.
 +
 +Direct links to the host edit page still work, and are opening the host edit page in full page.
 +
 +==== Monitoring -> Overview removed ====
 +
 +The Overview section in the Monitoring menu has been removed completely. The same functionality can be still accessed by using the //Data overview// and //Trigger overview// dashboard [[:​manual/​web_interface/​frontend_sections/​monitoring/​dashboard/​widgets|widgets]].
 +
 +==== Frontend ====
 +
 +  * The default language of Zabbix web interface has been changed from British to American English. Support of British English has been dropped. ​
 +  * The Share link in the main menu has been replaced by an Integrations link, leading to the [[https://​www.zabbix.com/​integrations|Integrations]] page on the Zabbix website.
 +  * If Zabbix web interface is opened in one of the languages available on the Zabbix website, clicking the Integrations link will open the Integrations page in the appropriate language. For all other languages, including English, the Integrations page will be opened in English.
 +
 +===== Breaking changes =====
 +=== Audit log ===
 +Audit log functionality has been reworked significantly. ​ The updated Audit log contains records of all configuration changes of Zabbix objects and has an improved filter, which allows to view records grouped by frontend operation. Logging can be switched on or off in the //​Administration->​General//​ menu section. ​
 +In order to implement these changes, the previously existing database structure had to be reworked. During an upgrade DB tables ''​auditlog''​ and ''​auditlog_details''​ will be replaced by the new table ''​auditlog''​ with a different format. **Existing audit log records will be deleted.**  ​
 +
 +==== Supported DB versions check ====
 +Zabbix [[:​manual/​appendix/​config/​zabbix_server|server]] and [[:​manual/​appendix/​config/​zabbix_proxy|proxy]] will now check the database version before launch and will not start if the version is out of the supported range. It is possible to turn off this check by modifying AllowUnsupportedDBVersions configuration parameter, but this approach is not recommended. The list of [[:​manual/​installation/​requirements#​Software|officially supported database versions]] has been updated to exclude databases that are nearing their end of service life point and versions with unfixed issues that may interfere with normal performance.
 +
 +==== Zabbix agent 2 plugins ====
 +Each Zabbix agent 2 plugin now has a separate [[manual/​appendix/​config/​zabbix_agent2_plugins|configuration file]]. By default, these files are located in the ''​./​zabbix_agent2.d/​plugins.d/''​ directory. The path is specified in the ''​Include''​ parameter of the agent 2 configuration file and can be relative to the [[manual/​appendix/​config/​zabbix_agent2|zabbix_agent2.conf]] or [[manual/​appendix/​config/​zabbix_agent2_win|zabbix_agent2.win.conf]] file location.
 +