This is a translation of the original English documentation page. Help us make it better.
Table of Contents

8 Познати проблеми

Такође погледајте: Проблеми са компилацијом.

Покретање проксија са MySQL 8.0.0-8.0.17

zabbix_proxy на MySQL верзијама 8.0.0-8.0.17 не успева са следећим грешка "приступ одбијен":

[Z3001] веза са базом података 'zabbix' није успела: [1227] Приступ одбијен; потребна вам је (бар једна од) привилегија SUPER, SYSTEM_VARIABLES_ADMIN или SESSION_VARIABLES_ADMIN за ову операцију

То је због тога што је MySQL 8.0.0 почео да примењује посебне дозволе за постављање варијабли сесије. Међутим, у 8.0.18 ово понашање је уклоњено: Од MySQL 8.0.18, постављање вредности сесије ове системске променљиве више није ограничено операција.

Заобилазно решење се заснива на давању додатних привилегија zabbix корисник:

За MySQL верзије 8.0.14 - 8.0.17:

grant SESSION_VARIABLES_ADMIN on *.* to 'zabbix'@'localhost';

За MySQL верзије 8.0.0 - 8.0.13:

grant SYSTEM_VARIABLES_ADMIN on *.* to 'zabbix'@'localhost';

Надоградња

Подешавање СКЛ режима за успешну надоградњу

Поставка sql_mode у MySQL/MariaDB мора имати подешен режим "STRICT_TRANS_TABLES". Ако је одсутан, надоградња Zabbix базе података неће успети (погледајте такође ZBX-19435).

Надоградите са MariaDB 10.2.1 и раније

Надоградња Zabbix-а можда неће успети ако су табеле базе података креиране помоћу MariaDB-а 10.2.1 и раније, јер је у тим верзијама подразумевани формат реда компактан. Ово се може поправити променом формата реда у динамички (погледајте такође ZBX-17690).

Шаблони

Компатибилност шаблона у окружењима са два стека (IPv4/IPv6).

У окружењима са двоструким стеком (системи конфигурисани да подржавају и ИПв4 и ИПв6), име домаћина localhost се обично решава у IPv4 и IPv6 адресе. Због уобичајеног приоритета IPv6 над IPv4 од стране многих оперативних система и DNS разрешивача, Zabbix шаблони можда неће радити исправно ако је услуга која се надгледа конфигурисана да слуша само на IPv4.

Услуге које нису конфигурисане да слушају IPv6 адресе могу постати недоступне, што доводи до неуспеха у праћењу. Корисници могу исправно да конфигуришу приступ за IPv4, али се и даље суочавају са проблемима са везом због подразумеваног понашања давања приоритета IPv6.

Заобилазно решење за ово је да се осигура да су услуге (Nginx, Apache, PostgreSQL, итд.) конфигурисане да слушају и на IPv4 и IPv6 адресама, а Zabbix серверу/агенту је дозвољен приступ преко IPv6. Поред тога, у Zabbix шаблонима и конфигурацијама, експлицитно користите localhost уместо 127.0.0.1 да бисте осигурали компатибилност и са IPv4 и IPv6.

На пример, када надгледате PostgreSQL помоћу PostgreSQL by Zabbix агент 2 шаблон, можда ћете морати да измените pg_hba.conf да бисте омогућили везе за корисника zbx_monitor. Ако окружење са двоструким стеком даје приоритет IPv6 (систем решава localhost у ::1) и ви конфигуришете localhost али само додате IPv4 унос (127.0.0.1/32), веза неће успети јер нема подударања IPv6 унос.

Следећи пример датотеке pg_hba.conf обезбеђује да корисник zbx_monitor може да се повеже са било којом базом података са локалне машине користећи IPv4 и IPv6 адресе са различитим методама провере аутентичности:

# TYPE  DATABASE  USER  ADDRES  SMETHOD
         host  all  zbx_monitor  localhost  trust
         host  all  zbx_monitor127.0.0.1/32  md5
         host  all  zbx_monitor::1/128  scram-sha-256

Ако је потребно, такође можете користити IPv4 адресу (127.0.0.1) директно када конфигуришете PostgreSQL by Zabbix агент 2 шаблонски макро за низ везе.

Случајна инсталација EPEL Zabbix пакета

Са инсталираним и омогућеним EPEL репозиторијумом, инсталирање Zabbix-а из пакета ће довести до тога да се инсталирају EPEL Zabbix пакети уместо званичних Zabbix пакета.

У овом случају деинсталирајте Zabbix пакете из EPEL-а, тј.:

dnf remove zabbix-server-mysql

Блокирајте Zabbix пакете из EPEL-а. Додајте следећи ред у датотеку /etc/yum.conf:

exclude=zabbix7.0*

Поново инсталирајте Zabbix сервер:

dnf install zabbix-server-mysql

Обратите пажњу да званични Zabbix пакети имају реч release у низу верзије:

7.0.0-release1.el8

Zabbix пакети за RHEL на Red Hat UBI окружењима

Када инсталирате Zabbix из Red Hat Enterprise Linux пакета на Red Hat Universal Base Image окружења, обезбедите приступ потребним репозиторијумима и зависностима. Zabbix пакети зависе од библиотека libOpenIPMI.so и libOpenIPMIposix.so, које не обезбеђује ниједан пакет у подразумеваним репозиторијумима менаџера пакета омогућеним на UBI системима и довешће до неуспеха инсталације.

Библиотеке libOpenIPMI.so и libOpenIPMIposix.so су доступне у пакету OpenIPMI-libs, који обезбеђује redhat-#-for-<arch>-appstream-rpms спремиште. Приступ овом спремишту је куриран претплатама, које се, у случају UBI окружења, пропагирају монтирањем директорија конфигурације спремишта и тајних директорија RHEL домаћина у именски простор система датотека контејнера.

За више информација погледајте ZBX-24291.

Expired signing key for RHEL packages

When upgrading Zabbix on Red Hat Enterprise Linux or its derivatives, you may encounter an expired signing key issue for packages on Zabbix repository. When a signing key expires, attempts to verify package signatures will result in an error indicating that the certificate or key is no longer valid. For example:

error: Verifying a signature using certificate D9AA84C2B617479C6E4FCF4D19F2475308EFA7DD (Zabbix LLC (Jul 2022) <[email protected]>):
         1. Certificiate 19F2475308EFA7DD invalid: certificate is not alive
             because: The primary key is not live
             because: Expired on 2024-07-04T11:41:23Z
         2. Key 19F2475308EFA7DD invalid: key is not alive
             because: The primary key is not live
             because: Expired on 2024-07-04T11:41:23Z

To resolve such issues, manually reinstall the latest zabbix-release package for your specific variant of RHEL (replace the link below with the correct one from Zabbix repository).

For example, on RHEL 9, run:

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-latest.el9.noarch.rpm

Then, update the repository information:

dnf update

For more information, see ZBX-24761.

TLS веза базе података са MariaDB

TLS веза базе података није подржана са опцијом 'verify_ca' за DBTLSConnect параметар ако се користи MariaDB.

Могућа блокада са MySQL/MariaDB

Када се ради под великим оптерећењем и са више од једног LLD радника укључених, могуће је наићи на застој узроковану грешком InnoDB која се односи на стратегију закључавања редова (погледајте упстреам грешка). Грешка је исправљена у MySQL од 8.0.29, али не и у MariaDB. За више детаља погледајте ZBX-21506.

Глобална корелација догађаја

Догађаји можда неће бити правилно повезани ако временски интервал између први и други догађај је веома мали, односно пола секунде и мање.

Нумерички (флоат) опсег типова података са PostgreSQL 11 и старијим верзијама

PostgreSQL 11 и старије верзије подржавају само вредност у покретном зарезу опсег од приближно -1.34E-154 до 1.34E+154.

NetBSD 8.0 и новије

Различити Zabbix процеси се могу насумично срушити при покретању на NetBSD-у верзије 8.X и 9.X. То је због премале подразумеване величине стека (4MB), који се мора повећати покретањем:

ulimit -s 10240

За више информација погледајте повезани извештај о проблему: ZBX-18275.

Ограничења регуларног израза у Zabbix агенту 2

Zabbix агент 2 не подржава lookaheads и lookbehinds у регуларним изразима због ограничења стандардне библиотеке Go regexp.

IPMI провере

IPMI провере неће радити са укљученим стандардним пакетом библиотеке OpenIPMI Debian пре 9 (stretch) и Ubuntu пре 16.04 (xenial). Да поправим да поново компајлирајте OpenIPMI библиотеку са омогућеним OpenSSL-ом као што је објашњено у ZBX-6139.

SSH провере

  • Неке Linux дистрибуције као што су Debian, Ubuntu не подржавају шифроване приватни кључеви (са приступном фразом) ако је библиотека libssh2 инсталирана из пакети. Погледајте ZBX-4850 за више детаља.

– Када користите libssh 0.9.к на неким Linux дистрибуцијама са OpenSSH 8, SSH провере могу повремено извести "Не могу да прочитам податке са SSH сервера". Ово је узроковано од libssh издање (more detailed report). Грешка је очекивана да је поправљено стабилним издањем libssh 0.9.5. Види такође ZBX-17756 за детаље.

  • Коришћење цеви "|" у SSH скрипти може довести до а Грешка "Не могу да прочитам податке са SSH сервера". У овом случају се препоручује да надоградите верзију библиотеке libssh. Такође погледајте ZBX-21337 за детаље.

ODBC провере

  • MySQL unixODBC драјвер не би требало да се користи са Zabbix сервером или Zabbix проксијем компајлираним на MariaDB конектору библиотека и обрнуто, ако је могуће, такође је боље избегавати коришћење истог конектора као и драјвер због upstream bug. Предложено подешавање:

    PostgreSQL, SQLite или Oracle конектор → MariaDB или MySQL unixODBC драјвер MariaDB конектор → MariaDB unixODBC драјвер MySQL конектор → MySQL unixODBC драјвер

Погледајте ZBX-7665 за више информација и доступна решења.

  • XML подаци тражени од Microsoft SQL Server могу бити скраћени на различите начине на Linux и UNIX системима.

  • Примећено је да коришћење ODBC проверава за праћење Oracle база података користећи различите верзије Oracle Instant Client за Linux узрокује пад Zabbix сервера.  Такође погледајте: ZBX-18402, ZBX-20803.

  • Ако користите FreeTDS UnixODBC драјвер, потребно је да додате наредбу 'SET NOCOUNT ON' на SQL упит (на пример, SET NOCOUNT ON DECLARE @strsql NVARCHAR(max) SET @strsql = ....). У супротном, ставка монитора базе података у Zabbix-у неће успети да преузме информације са грешком "SQL упит је вратио празан резултат".
    Погледајте ZBX-19917 за више информација.

Нетачан параметар метода захтева у ставкама

Параметар методе захтева, који се користи само у HTTP проверама, може бити погрешно постављено на '1', вредност која није подразумевана за све ставке као резултат надоградите са Zabbix верзије пре 4.0. За детаље о томе како да ово поправите ситуацију, погледајте ZBX-19308.

Веб надгледање и HTTP агент

Zabbix сервер пропушта меморију на неким Linux дистрибуцијама због upstream грешка када "SSL verify peer" је омогућен у веб сценаријима или HTTP агенту. Погледајте ZBX-10486 за више информације и доступна решења.

Једноставне провере

Постоји грешка у fping верзијама старијим од v3.10 која погрешно рукује дупликати echo replay пакета. Ово може довести до неочекиваних резултата за icmpping, icmppingloss, icmppingsec ставке. Препоручује се да се користите најновију верзију fping. Молим вас погледајте ZBX-11726 за више детаљима.

Грешке са извршавањем fping-а у контејнерима без корена

Када се контејнери покрећу у режиму без корена или у окружењу са одређеним ограничењима, можете се суочити са грешкама у вези са извршавањем fping-а приликом извођења ICMP провера, као што је fping: Операција није дозвољена или су изгубљени сви пакети за све ресурсе.

Да бисте решили овај проблем, додајте --cap-add=net_raw у команде "docker run" или "podman run".

Поред тога, извршавање fping-а у окружењима која нису роот може захтевати модификацију sysctl-а, тј.:

sudo sysctl -w "net.ipv4.ping_group_range=0 1995"

где је "1995" zabbix GID. За више детаља погледајте ZBX-22833.

SNMP провере

Ако се користи OpenBSD оперативни систем, грешка без употребе у Net-SNMP библиотека до верзије 5.7.3 може изазвати пад Zabbix-а сервер ако је параметар SourceIP постављен на Zabbix серверу конфигурациони фајл. Као решење, немојте постављати SourceIP параметар. Исти проблем важи и за Linux, али не узроковати да Zabbix сервер престане да ради. Локална закрпа за нет-снмп пакет на OpenBSD је примењен и биће објављен са OpenBSD 6.3.

SNMP подаци

Примећени су скокови у SNMP подацима који могу бити повезани са одређеним физички фактори као што су скокови напона у мрежи. Видите ZBX-14318 више детаља.

SNMP замке

Пакет "net-snmp-perl", потребан за SNMP замке, је уклоњен RHEL 8.0-8.2; поново додато у RHEL 8.3.

Дакле, ако користите RHEL 8.0-8.2, најбоље решење је надоградња на RHEL 8.3.

Такође погледајте ZBX-17192 за више информација.

Пад процеса упозорења у RHEL 7

Наишли су на случајеве пада процеса упозорења Zabbix сервера у RHEL 7. Погледајте ZBX-10461 за детаље.

Надоградња Zabbix агента 2 (6.0.5 или старији)

Приликом надоградње Zabbix агента 2 (верзија 6.0.5 или старија) из пакета, може доћи до грешке у конфликту датотека у вези са додацима. Да бисте исправили грешку, направите резервну копију конфигурације агента 2 (ако је потребно), деинсталирајте агента 2 и поново га инсталирајте.

На системима заснованим на RHEL, покрените:

dnf remove zabbix-agent2
       dnf install zabbix-agent2

На системима заснованим на Debian-у покрените:

apt remove zabbix-agent2
       apt install zabbix-agent2

За више информација погледајте ZBX-23250.

Flipping frontend locales

It has been observed that frontend locales may flip without apparent logic, i. e. some pages (or parts of pages) are displayed in one language while other pages (or parts of pages) in a different language. Typically the problem may appear when there are several users, some of whom use one locale, while others use another.

A known workaround to this is to disable multithreading in PHP and Apache.

The problem is related to how setting the locale works in PHP: locale information is maintained per process, not per thread. So in a multi-thread environment, when there are several projects run by same Apache process, it is possible that the locale gets changed in another thread and that changes how data can be processed in the Zabbix thread.

For more information, please see related problem reports:

  • ZBX-10911 (Problem with flipping frontend locales)
  • ZBX-16297 (Problem with number processing in graphs using the bcdiv function of BC Math functions)

Графови

летње рачунање времена

Промене летњег рачунања времена (DST) доводе до неправилности када приказивање ознака X осе (дуплицирање датума, датум који недостаје, итд.).

Агрегација збира

Када користите sum aggregation на графикону за период краћи од једног сата, графикони се приказују нетачне (умножене) вредности када подаци потичу из трендова.

Текст се преклапа

За неке језике корисничког интерфејса (нпр. јапански), локални фонтови могу да изазову преклапање текста у легенди графикона. Да бисте то избегли, користите верзију 2.3.0 (или новију) PHP GD екстензије.

Надгледање датотеке дневника

Ставке log[] и logrt[] више пута поново читају датотеку евиденције из почиње ако је систем датотека 100% пун и датотека евиденције се додаје (погледајте ZBX-10884 за више информације).

Спори MySQL упити

Zabbix сервер генерише споре SELECT упите у случају непостојећих вредности за ставке. Познато је да се овај проблем јавља у верзијама MySQL 5.6/5.7 (за проширену дискусију погледајте ZBX-10652), а, у одређеним случајевима, може се појавити иу каснијим верзијама MySQL-а. Заобилазно решење за ово је онемогућавање index_condition_pushdown или prefer_ordering_index оптимизатор у MySQL-у. Имајте на уму, међутим, да ово решење можда неће решити све проблеме у вези са спорим упитима.

Спора синхронизација конфигурације са Oracle-ом

Синхронизација конфигурације може бити спора у Zabbix инсталацијама са Oracle DB-ом које имају велики број ставки и корака за претходну обраду ставки. Ово је узроковано брзином обраде поља типа nclob Oracle машине базе података.

Да бисте побољшали перформансе, можете да конвертујете типове поља из nclob у nvarchar2 тако што ћете ручно применити закрпу базе података [items_nvarchar_prepare.sql]((/../assets/en/manual/installation/items_nvarchar_prepare.sql). Имајте на уму да ће ова конверзија смањити максималну величину поља са 65535 бајтова на 4000 бајтова за параметре за претходну обраду ставке и параметре ставке као што су Description, поље ставке скрипте Script, Поља ставке HTTP агента Request body и Headers, поље ставке за праћење базе података SQL query. Упити за одређивање имена шаблона које треба избрисати пре примене закрпе су дати у закрпи као коментар. Алтернативно, ако је MAX_STRING_SIZE подешен, можете променити nvarchar2(4000) у nvarchar2(32767) у упитима закрпе да бисте поставили ограничење величине поља од 32767 бајтова.

За проширену дискусију, погледајте ZBX-22363.

API пријава

Велики број отворених корисничких сесија може се креирати када се користи прилагођено скрипте са user.login методом без следећег user.logout.

When opening a link to Zabbix frontend page that contains filter settings, including the time selector, the filter is automatically saved in the database for the user, replacing the previously saved filter and/or time selector settings for that page. These settings remain active until the user manually updates or resets them.

Проблем са IPv6 адресом у SNMPv3 замкама

Због нет-снмп грешке, IPv6 адреса можда неће бити исправно приказана када користећи SNMPv3 у SNMP замкама. За више детаља и могуће решење, погледајте ZBX-14541.

Исечена дуга IPv6 IP адреса у информацијама о неуспешној пријави

Порука о неуспелом покушају пријаве ће приказати само првих 39 знакова сачуване IP адресе јер је то ограничење броја знакова у бази података поље. То значи да ће IPv6 IP адресе дуже од 39 знакова бити приказан непотпуно.

Zabbix агент проверава Windows

Непостојећи DNS уноси у параметру Сервер Zabbix агента конфигурациони фајл (zabbix_agentd.conf) може повећати Zabbix агент време одговора на Windows-у. Ово се дешава због Windows DNS кеширања даемон не кешује негативне одговоре за IPv4 адресе. Међутим, за Негативни одговори IPv6 адреса су кеширани, тако да је могуће решење ово је онемогућавање IPv4 на домаћину.

YAML извоз/увоз

Постоје неки познати проблеми са YAML-ом извоз/увоз:

  • Поруке о грешкама се не могу превести;
  • Важећи JSON са екстензијом датотеке .yaml понекад се не може увести;
  • Ненаведени датуми читљиви за човека се аутоматски конвертују у Unix временске ознаке.

Чаробњак за подешавање на SUSE-у са NGNIX-ом и php-fpm-ом

Чаробњак за подешавање корисничког интерфејса не може да сачува конфигурациону датотеку на SUSE са NGINX-ом + php-fpm. Ово је узроковано подешавањем у /usr/lib/systemd/system/php-fpm.service јединица, која спречава Zabbix да писање у /etc. (уведено у PHP 7.4).

Доступне су две опције за заобилазно решење:

  • Поставите ProtectSystem опцију на 'true' уместо на 'full' у јединици php-fpm systemd.
  • Ручно сачувајте /etc/zabbix/web/zabbix.conf.php датотеку.

Chromium за Zabbix веб сервис на Ubuntu 20

Иако у већини случајева, Zabbix веб сервис може да ради са укљученим Chromium-ом Ubuntu 20.04 који користи Chromium изазива следећу грешку:

Није могуће преузети податке: chrome није успео да се start:cmd_run.go:994:
       УПОЗОРЕЊЕ: не могу креирати именик корисничких података: не могу креирати 
       "/var/lib/zabbix/snap/chromium/1564": mkdir /var/lib/zabbix: дозвола одбијена
       Жао нам је, кућни директорији изван /home тренутно нису подржани. Погледајте https://forum.snapcraft.io/t/11209 за детаље.

Ова грешка се јавља зато што се /var/lib/zabbix користи као почетни директоријум корисника 'zabbix'.

MySQL прилагођени кодови грешака

Ако се Zabbix користи са MySQL инсталацијом на Azure-у, нејасна грешка порука [9002] Дошло је до неких грешака могу се појавити у Zabbix евиденцији. Ово генерички текст грешке се шаље на Zabbix сервер или проки од стране базе података. То добити више информација о узроку грешке, проверите Azure евиденције.

Неважећи регуларни изрази након преласка на PCRE2

У Zabbix 6.0 је додата подршка за PCRE2. Иако је PCRE и даље подржан, Zabbix инсталациони пакети за RHEL 7 и новије, SLES (све верзије), Debian 9 и новије, Ubuntu 16.04 и новије су ажурирани да користе PCRE2. Иако пружа многе предности, прелазак на PCRE2 може довести до тога да одређени постојећи PCRE обрасци регуларних израза постану неважећи или да се понашају другачије. Ово посебно утиче на образац ^[\w-\.]. Да би овај регекп поново био валидан без утицаја на семантику, промените израз у ^[-\w\.] . Ово се дешава због чињенице да PCRE2 третира знак цртице као граничник, стварајући опсег унутар класе карактера.

Грешка виџета Геомапa

Мапе у Геомап виџету се можда неће правилно учитати ако сте извршили надоградњу са старије Zabbix верзије са NGINX-ом и нисте прешли на нову NGINX конфигурациону датотеку током надоградње.

Да бисте решили проблем, можете одбацити стару конфигурациону датотеку, користити конфигурациону датотеку из пакета тренутне верзије и поново је конфигурисати као што је описано у упутствима за преузимање у одељку е. Конфигуришите PHP за Zabbix кориснички интерфејс.

Алтернативно, можете ручно да уредите постојећу NGINX конфигурациону датотеку (обично, /etc/zabbix/nginx.conf). Да бисте то урадили, отворите датотеку и пронађите следећи блок:

location ~ /(api\/|conf[^\.]|include|locale|vendor) {
               deny  all;
               return  404;
       }

Затим замените овај блок са:

location ~ /(api\/|conf[^\.]|include|locale) {
               deny all;
               return  404;
       }
       
       location /vendor {
               deny all;
               return 404;
       }

Случај употребе са глобалним варијаблама које се деле у позивима вебхука

Пошто се глобалне променљиве деле у различитим позивима вебхука, следећи код ће довести до постепеног повећања бројача вредности ознаке:

try 
       {
          аа = аа + 1;
       }
       catch(e)
       {
          аа = 0;
       }

       result = {
               'tags': {
                   'endpoint': аа
               }
           };
       return JSON.stringify(result);

Препоручује се коришћење локалних променљивих уместо глобалних да бисте били сигурни да свака скрипта ради на сопственим подацима и да нема колизија између истовремених позива.

Server crash with PostgreSQL/TimescaleDB after upgrade from 7.0

Upgrading to Zabbix 7.0.1 (or later) from Zabbix 7.0.0 with PostgreSQL/TimescaleDB results in a server crash. This issue is caused by a workaround to a compression job issue in the auditlog table in Zabbix 7.0 that irreversibly changed the compression policy of the auditlog table.

To fix the issue, please perform a manual rebuild of the auditlog table. The buggy auditlog table can be detected using this query:

SELECT config FROM timescaledb_information.jobs WHERE application_name LIKE 'Compression%' AND hypertable_schema='public' AND hypertable_name='auditlog';.

If it returns a JSON object containing property compress_after (like {"hypertable_id": 14, "compress_after": 612000}) then you should rebuild the table.

Make sure that Zabbix server is at least 7.0.1rc2 version (or later); otherwise it will set the wrong compression policy again.

The simplest way for rebuilding the auditlog table is:

    CREATE TABLE auditlog_tmp (
               LIKE auditlog INCLUDING DEFAULTS INCLUDING CONSTRAINTS INCLUDING INDEXES
           );

           PERFORM create_hypertable('auditlog_tmp', 'auditid', chunk_time_interval => 604800,
                   time_partitioning_func => 'cuid_timestamp', migrate_data => true, if_not_exists => true);

           WITH moved_rows AS (
               DELETE FROM auditlog
               RETURNING *
           )
           INSERT INTO auditlog_tmp
           SELECT * FROM moved_rows;

           DROP TABLE auditlog;
           ALTER TABLE auditlog_tmp RENAME TO auditlog;

See also TimescaleDB documentation for more optimized ways to migrate data.

Since the timestamp required for partitioning is extracted from the auditid field with a custom-made function the helper procedures used for data migration from timescaledb-extras will not work.

Database restore error with PostgreSQL/TimescaleDB after upgrade from 7.0.0-7.0.4

Using pg_restore to restore a PostgreSQL/TimescaleDB backup created in Zabbix 7.0.0-7.0.4 will result in a missing base36_decode function error, causing the restore to fail:

ERROR:  function base36_decode(text) does not exist
       LINE 1: CAST(base36_decode(substring(cuid FROM 2 FOR 8))/1000 AS int...
                    ^
       HINT:  No function matches the given name and argument types. You might need to add explicit type casts.

This error occurs when restoring a backup created with pg_dump.

To fix this issue, please replace the cuid_timestamp function in your Zabbix database before creating the backup (stopping PostgreSQL/TimescaleDB before running the script is recommended):

CREATE OR REPLACE FUNCTION cuid_timestamp(cuid varchar(25)) RETURNS integer AS $$
       DECLARE
           base36 varchar;
           a char[];
           ret bigint;
           i int;
           val int;
           chars varchar;
       BEGIN
           base36 := substring(cuid FROM 2 FOR 8);
       
           chars := '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
       
           FOR i IN REVERSE char_length(base36)..1 LOOP
               a := a || substring(upper(base36) FROM i FOR 1)::char;
           END LOOP;
           i := 0;
           ret := 0;
           WHILE i < (array_length(a, 1)) LOOP
               val := position(a[i + 1] IN chars) - 1;
               ret := ret + (val * (36 ^ i));
               i := i + 1;
           END LOOP;
       
           RETURN CAST(ret/1000 AS integer);
       END;
       $$ LANGUAGE 'plpgsql' IMMUTABLE;
       DROP FUNCTION IF EXISTS base36_decode(character varying);

See also ZBX-24955 (for additional details on the error) and TimescaleDB documentation (for additional backup and restore options).

Broken LLD rule overrides in 7.0.7

In version 7.0.7, Zabbix server crashes upon processing low-level discovery rule overrides. As a workaround, disable LLD rules containing overrides. The issue has been fixed in Zabbix 7.0.8rc2.