[comment]: # ({131bd647-137ecc03})
# 10 Notes de mise à niveau pour 7.4.0

Ces notes concernent la mise à niveau de Zabbix 7.2.x vers Zabbix 7.4.0.

Toutes les notes sont regroupées en :

-   **Modifications incompatibles** - changements susceptibles de rompre les installations existantes et autres informations critiques liées au processus de mise à niveau
-   **Autres** - toutes les autres informations décrivant les changements
    dans les fonctionnalités de Zabbix

Voir aussi :

-   [Procédure de mise à niveau](/manual/installation/upgrade) pour toutes les informations pertinentes sur la mise à niveau depuis des versions antérieures à Zabbix 7.4.0 ;
-   [Mise à niveau du cluster HA](/manual/concepts/server/ha#upgrading-ha-cluster) pour des instructions sur la mise à niveau des serveurs dans un cluster à **haute disponibilité** (HA).

[comment]: # ({/131bd647-137ecc03})

[comment]: # ({5f77a7e6-6f14cd5e})
#### Processus de mise à niveau

Pour mener à bien la mise à niveau du serveur Zabbix sur MySQL/MariaDB, il peut être nécessaire de définir `GLOBAL log_bin_trust_function_creators = 1` dans MySQL si la journalisation binaire est activée, qu’aucun privilège de superutilisateur n’est disponible et que `log_bin_trust_function_creators = 1` n’est pas défini dans le fichier de configuration MySQL.

Pour définir la variable à l’aide de la console MySQL, exécutez :

    mysql> SET GLOBAL log_bin_trust_function_creators = 1;

Une fois la mise à niveau correctement terminée, cette option peut être désactivée :

    mysql> SET GLOBAL log_bin_trust_function_creators = 0;

[comment]: # ({/5f77a7e6-6f14cd5e})

[comment]: # ({b7a15027-2a68033f})
## Changements majeurs

[comment]: # ({/b7a15027-2a68033f})

[comment]: # ({45607e9c-1ea0243a})
#### Bibliothèque PCRE abandonnée

La bibliothèque [PCRE](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions) (ou PCRE1) a été abandonnée. Zabbix est désormais compilé avec PCRE2.

[comment]: # ({/45607e9c-1ea0243a})

[comment]: # ({8cfe7c52-96b60caa})
#### Gestion des médias de l'utilisateur

Tous les utilisateurs sont désormais autorisés à gérer leurs propres médias par défaut.

Les autorisations des utilisateurs à modifier les détails de leurs propres médias peuvent être accordées ou révoquées en fonction de leur [rôle utilisateur](/manual/web_interface/frontend_sections/users/user_roles) (voir l'option *Créer et modifier ses propres médias*).

De plus, les autorisations des utilisateurs Super admin à modifier les détails des médias d'autres utilisateurs peuvent également être accordées ou révoquées en fonction de leur [rôle utilisateur](/manual/web_interface/frontend_sections/users/user_roles) (voir l'option *Créer et modifier les médias des utilisateurs*).

Lors d'une mise à niveau depuis des versions plus anciennes, les deux options seront activées pour tous les rôles ayant l'option *Accès par défaut aux nouvelles actions* activée. Notez que si *Accès par défaut aux nouvelles actions* n'est pas activé, les administrateurs et les super administrateurs **peuvent perdre** la possibilité de modifier les médias après la mise à niveau.

[comment]: # ({/8cfe7c52-96b60caa})

[comment]: # ({ba2821d9-f8845237})
#### Échappement des barres obliques inverses dans les paramètres des fonctions d'historique

Un échappement correct des barres obliques inverses a été ajouté dans les paramètres de chaîne des fonctions d'historique depuis Zabbix 7.0.0.

Comme des barres obliques inverses supplémentaires sont ajoutées lors de la mise à niveau depuis des versions de Zabbix antérieures à la version 7.0, cela entraîne des paramètres plus longs, ce qui peut provoquer des fonctions de déclencheur défectueuses si la longueur du paramètre dépasse la taille maximale des données de 255 caractères.

Pour éviter ce problème, il est recommandé de déplacer manuellement les paramètres longs dans des macros utilisateur avant la mise à niveau.

Des vérifications supplémentaires de la longueur du paramètre résultant ont été ajoutées pour les mises à niveau depuis des versions de Zabbix antérieures à la version 7.0. Si la longueur résultante dépasse la taille maximale, ces paramètres ne sont **pas mis à niveau**, et un avertissement est affiché dans les journaux demandant aux utilisateurs de corriger manuellement les paramètres listés.

Voir aussi [problèmes de mise à niveau liés à l'échappement](/manual/installation/known_issues/db_upgrade_escaping).

[comment]: # ({/ba2821d9-f8845237})

[comment]: # ({dfa5ad6e-4da3169c})
#### Mise à jour du plugin MSSQL Zabbix agent 2

Le modèle [MSSQL by Zabbix agent 2](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/mssql_agent2) a été mis à jour avec des filtres permettant d'inclure ou d'exclure les membres de quorum découverts par nom, ainsi qu'avec un filtre de service qui permet de filtrer par nom de cluster afin d'exclure les clusters vides. Pour que le modèle fonctionne sans erreurs, le [plugin MSSQL Zabbix agent 2](/manual/appendix/config/zabbix_agent2_plugins/mssql_plugin) doit être mis à jour vers une version égale ou supérieure à 7.4.0.

[comment]: # ({/dfa5ad6e-4da3169c})

[comment]: # ({288ffaab-6d93d23d})
#### Version minimale requise de libssh2

La version minimale requise de libssh2 a été relevée de 1.0.0 à 1.8.0.

[comment]: # ({/288ffaab-6d93d23d})

[comment]: # ({4feee55e-39aedc0b})
#### Prototypes d'hôte sur les hôtes découverts

Si votre configuration actuelle inclut des [prototypes d'hôte](/manual/discovery/low_level_discovery/host_prototypes) qui utilisent des modèles contenant d'autres prototypes d'hôte, la mise à niveau vers Zabbix 7.4 entraînera l'application à tous les hôtes découverts des prototypes d'hôte définis dans ces modèles.
Si ce comportement n'est pas souhaité, veuillez supprimer manuellement les prototypes d'hôte des modèles concernés avant la mise à niveau.

Pour identifier les hôtes découverts qui recevront des prototypes d'hôte pendant la mise à niveau, vous pouvez exécuter la requête SQL suivante dans votre base de données Zabbix :

```sql
SELECT h.hostid,ht.templateid
FROM hosts_templates ht
JOIN hosts h ON ht.hostid=h.hostid
WHERE h.flags=4
  AND EXISTS (
    SELECT NULL
    FROM items i,host_discovery hd
    WHERE i.hostid=ht.templateid
    AND hd.parent_itemid=i.itemid
    )
ORDER BY hostid;
```

[comment]: # ({/4feee55e-39aedc0b})

[comment]: # ({3d7f2be9-fdf1e4ea})
#### Paramètres de connexion à la base de données

[DBPort](/manual/appendix/config/zabbix_server#dbport) et [DBSocket](/manual/appendix/config/zabbix_server#dbsocket) sont désormais mutuellement exclusifs. Lors de la spécification des paramètres de connexion à la base de données, vous pouvez définir soit DBPort soit DBSocket, ou laisser les deux non définis pour utiliser les valeurs par défaut.

[comment]: # ({/3d7f2be9-fdf1e4ea})

[comment]: # ({d336b73c-57e1557d})
## Autres

[comment]: # ({/d336b73c-57e1557d})

[comment]: # ({c4d5276b-8f6c5f75})
#### Éléments SNMP walk/discovery non pris en charge sans OID valides

Les éléments SNMP [walk](/manual/config/items/itemtypes/snmp#step-3), dans le cas où aucun des OID ou des instances d'OID n'existe, renvoient désormais une erreur et l'élément devient non pris en charge. Les détails de l'OID/de l'instance inexistants sont consignés avec DebugLevel=5. Auparavant, ils renvoyaient une chaîne vide dans de tels cas.

De même, les éléments SNMP [discovery](/manual/discovery/low_level_discovery/examples/snmp_oids), dans le cas où aucun des OID ou des instances d'OID n'existe, renvoient désormais une erreur et l'élément devient non pris en charge. Auparavant, ils renvoyaient un tableau vide dans de tels cas.

Notez qu'une chaîne vide/un tableau vide n'est désormais renvoyé que si l'OID/l'instance existe, mais qu'aucune donnée n'est disponible pour celui-ci.

[comment]: # ({/c4d5276b-8f6c5f75})

[comment]: # ({a484cf2f-b7bd639f})
#### Gestion du cache d'historique

Dans certains scénarios de collecte de données, des éléments spécifiques peuvent bloquer temporairement le cache d'historique du serveur/proxy.
Cela peut retarder l'écriture des données d'historique dans la base de données et ralentir le système.
Pour aider à gérer le cache d'historique, les améliorations suivantes ont été introduites :

-   **Vidage manuel du cache :** La nouvelle commande d'exécution `history_cache_clear=target` pour le [serveur](/manual/concepts/server#runtime-control) Zabbix/[proxy](/manual/concepts/proxy#runtime-control) permet de vider manuellement le cache d'historique pour un élément spécifique à l'aide de son ID.
-   **Vidage automatique du cache :** Lorsque vous désactivez un élément, il est immédiatement supprimé du cache d'historique (à l'exception de sa dernière valeur, conservée pour les journaux). De même, lorsque vous désactivez un hôte, tous ses éléments sont supprimés du cache d'historique (à l'exception de leurs dernières valeurs).
-   **Journalisation des diagnostics du cache :** Lorsque le cache d'historique est plein, le serveur/proxy Zabbix consigne désormais les informations de diagnostic du cache d'historique à partir de [DebugLevel=3](/manual/appendix/config/zabbix_server#debuglevel) (auparavant DebugLevel=4). Le journal contient les éléments ayant le plus grand nombre de valeurs dans le cache d'historique.

Pour assurer la stabilité du système à long terme, veillez à ce que la collecte de données soit équilibrée par rapport aux ressources disponibles (performances de la base de données, taille du cache, intervalles de collecte, paramètres des éléments de journal, etc.).
Vous pouvez surveiller le cache d'historique Zabbix à l'aide de l'élément interne [zabbix[wcache]](/manual/config/items/itemtypes/internal#wcache).
Vous pouvez également envisager d'augmenter la taille du cache d'historique pour le [serveur](/manual/appendix/config/zabbix_server#historycachesize) Zabbix/[proxy](/manual/appendix/config/zabbix_proxy#historycachesize).

[comment]: # ({/a484cf2f-b7bd639f})

[comment]: # ({ef1d6149-1059e5ec})
#### Section de menu distincte pour les notifications des utilisateurs

Pour une meilleure visibilité des médias des utilisateurs, les notifications des utilisateurs disposent désormais de leur propre [section de menu](/manual/web_interface/user_profile) dans *Paramètres utilisateur*.

La nouvelle section Notifications contient deux onglets - *Média* et *Notifications de l'interface*, qui faisaient auparavant partie de la section du profil utilisateur.

[comment]: # ({/ef1d6149-1059e5ec})

[comment]: # ({35d6cac2-cd6bf45f})
#### Informations correctes provenant des groupes d'hôtes imbriqués dans les cartes

Les informations provenant des groupes d'hôtes imbriqués sont désormais correctement affichées dans les cartes, par exemple :

-   L'étiquette du groupe d'hôtes affiche désormais le résumé des problèmes de tous les hôtes des groupes d'hôtes imbriqués ;
-   La vue "Host group elements" affiche désormais un élément de carte distinct pour chaque hôte des groupes d'hôtes imbriqués ;
-   L'étiquette de la carte affiche désormais le résumé de tous les problèmes contenus dans les groupes d'hôtes imbriqués.

[comment]: # ({/35d6cac2-cd6bf45f})

[comment]: # ({287fe3d7-3e5a1f4e})
#### Table de base de données pour les paramètres convertis

La table `settings` remplace désormais la table `config` pour le stockage des paramètres de [configuration globale](/manual/web_interface/frontend_sections/administration/general).
La nouvelle table utilise un format clé-valeur au lieu de stocker les paramètres dans une seule ligne avec une colonne par paramètre.
Pour un exemple de l'impact sur l'échange de données, consultez [Protocole d'échange de données serveur-proxy](/manual/appendix/protocols/server_proxy) (objet `"settings"`).

[comment]: # ({/287fe3d7-3e5a1f4e})

[comment]: # ({c0320633-c04dac65})
#### Augmentation des tailles maximales de cache pour le serveur et le proxy

Les tailles maximales de cache ont été portées de 2 Go à 16 Go afin de retarder l'épuisement du cache et de maintenir le fonctionnement pendant des problèmes temporaires (par exemple, de configuration, de base de données ou de réseau) :

-   serveur : la valeur maximale de [HistoryCacheSize](/manual/appendix/config/zabbix_server#historycachesize), [HistoryIndexCacheSize](/manual/appendix/config/zabbix_server#historyindexcachesize) et [TrendCacheSize](/manual/appendix/config/zabbix_server#trendcachesize) a été augmentée ;
-   proxy : les valeurs maximales de [HistoryCacheSize](/manual/appendix/config/zabbix_proxy#historycachesize) et [HistoryIndexCacheSize](/manual/appendix/config/zabbix_proxy#historyindexcachesize) ont été augmentées.

[comment]: # ({/c0320633-c04dac65})

[comment]: # ({01a59c99-013b708e})
#### Période de stockage par défaut réduite des sessions utilisateur

La [période de stockage](/manual/web_interface/frontend_sections/administration/housekeeping#configuration) par défaut des données de session utilisateur a été réduite de 365 jours à 31 jours. Ce changement affecte le paramètre [hk_sessions](/manual/api/reference/housekeeping/object), qui a désormais pour valeur par défaut 31d au lieu de 365d.

[comment]: # ({/01a59c99-013b708e})

[comment]: # ({6b2e934c-4ba32c29})
#### Version minimale de Go prise en charge

La version minimale de Go prise en charge a été relevée de 1.21 à 1.23.

Si vous avez précédemment compilé Zabbix [agent 2](/manual/concepts/agent2), les [plugins chargeables](/manual/extensions/plugins#loadable-plugins) de agent 2 ou le [service web](/manual/concepts/web_service) à partir des sources à l'aide d'une version de Go antérieure à 1.23, il est recommandé de recompiler ces composants avec une [version de Go prise en charge](/manual/installation/requirements#agent-2) afin de recevoir les dernières mises à jour de sécurité et corrections de bogues.
Les composants compilés avec une version plus ancienne de Go continueront de fonctionner, mais leur [mise à niveau](/manual/installation/upgrade/sources#agent-upgrade-process) nécessitera un environnement Go plus récent.

[comment]: # ({/6b2e934c-4ba32c29})

[comment]: # ({da32c242-45a80b88})
#### Mise à niveau des modèles pour l'assistant d'hôte

Le nouvel [assistant d'hôte](/manual/config/hosts/host_wizard) introduit une interface guidée, étape par étape, pour configurer votre cible de supervision (périphérique, application, service, etc.) dans Zabbix.
Il simplifie la configuration des hôtes nouveaux ou existants en guidant les utilisateurs à travers des étapes clés telles que la sélection d'un modèle, l'installation de l'agent Zabbix, l'ajout d'interfaces d'hôte, et plus encore.

Après une mise à niveau depuis une version antérieure de Zabbix, les modèles doivent être mis à niveau pour fonctionner avec l'assistant d'hôte.
Pour obtenir des instructions, consultez [Mise à niveau des modèles](/manual/config/templates_out_of_the_box#template-upgrade).

[comment]: # ({/da32c242-45a80b88})
