serveur_icingaweb2 appelle resoudre_base deux fois — moteur puis comptes — et le second appel ecrase les faits du premier. Les gabarits lisaient donc la seconde base partout : la console cherchait icingadb_schema dans la base des comptes et rendait une trace PHP a chaque page, pendant que les 66 tables du moteur etaient intactes a cote. Celui qui appelle un role partage deux fois doit NOMMER ses resultats avant de le rappeler. Et le cadre de migration veut une instance de base quoi qu il arrive : config_backend db + config_resource icingaweb_db. L erreur des preferences n apparaissait qu A LA CONNEXION — un journal muet ne prouvait rien tant que personne n avait ouvert de session, d ou un controle qui en ouvre une vraie. J ai attribue a tort la fin des erreurs a un rechargement manuel : les horloges disent que le handler du role avait deja redemarre php-fpm sept minutes plus tot. Mes fenetres de mesure enjambaient le correctif. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Crgis8CxCWkAGFA1ecBz3q
29 lines
1.2 KiB
Django/Jinja
29 lines
1.2 KiB
Django/Jinja
; Géré par Set-OPS (rôle serveur_icingaweb2). Ne pas éditer à la main.
|
|
[global]
|
|
show_stacktraces = "0"
|
|
{% if serveur_icingaweb2_auth == 'db' %}
|
|
; LA CONSOLE RANGE SON PROPRE ETAT DANS SA PROPRE BASE (2026-09-15).
|
|
;
|
|
; `config_backend = "ini"` laissait les preferences en fichiers, et c'etait tenable — mais
|
|
; le cadre de MIGRATION d'Icinga Web 2, lui, veut une instance de base quoi qu'il arrive.
|
|
; Sans elle, deux erreurs toutes les quinze secondes :
|
|
;
|
|
; Failed to load pending migrations : Please check if a db instance exists at all
|
|
; Cannot load preferences for user "icinga-admin" : Cannot load resource config ""
|
|
;
|
|
; La seconde n'apparaissait qu'A LA CONNEXION — un journal muet ne prouvait donc rien
|
|
; tant que personne n'avait ouvert de session.
|
|
;
|
|
; Des lors que la console A une base — celle de ses comptes — il n'y a aucune raison d'y
|
|
; ranger les comptes et pas le reste. Les preferences d'un utilisateur le suivent alors
|
|
; d'un navigateur a l'autre, ce que des fichiers locaux ne font pas.
|
|
config_backend = "db"
|
|
config_resource = "icingaweb_db"
|
|
{% else %}
|
|
config_backend = "ini"
|
|
{% endif %}
|
|
|
|
[logging]
|
|
log = "syslog"
|
|
level = "ERROR"
|
|
application = "icingaweb2"
|