[spip-dev] [SPIP Zone] Erreur variables inutilisees

(Je réponds sur spip-dev, en laissant spip-zone pour cette réponse
pour assurer la continuité.)

07/10/10, Fil:

> Est-ce que 3 niveaux ne seraient pas déjà un bon progrès ?
> 1/important
> 2/info
> 3/dev

si on veut se simplifier la vie, prenons la nomenclature de syslog. Ca
donnera peut-être un jour un plugin où spip_log() envoie sur syslog
:slight_smile:

Bonne idée. Attention cependant: les niveaux utilisés par syslog
correspondent à des niveaux d'importance par rapport à la stabilité du
système. Ces niveaux sont définis dans la RFC 3164 [1]:

  0 Emergency: system is unusable
  1 Alert: action must be taken immediately
  2 Critical: critical conditions
  3 Error: error conditions
  4 Warning: warning conditions
  5 Notice: normal but significant condition
  6 Informational: informational messages
  7 Debug: debug-level messages

Par exemple, le niveau 0 (système inutilisable) ne s'appliquerait pas
si *SPIP* devient inutilisable mais si le *système* qui l'héberge le
devient. Même le niveau 3 (erreur), représente une erreur au niveau du
système, pas pour une application donnée.

Plus généralement, SPIP n'est pas censé écrire dans syslog (par exemple
même Apache n'envoie rien dans syslog), mais dans son propre fichier de
log (typiquement situé dans le répertoire /var/log pour les systèmes
type unix).

Ceci dit, rien n'empêche de s'inspirer des niveaux cités plus haut, en
prenant cette fois SPIP comme référentiel :

  0: SPIP déjà cassé
  1: Vite, ça va casser !
  2: État critique
  3: Erreur
  4: Avertissement
  5: Ça gère mais information notable
  6: Info
  7: Debug

Les niveaux proposés par Cerdic correspondraient donc respectivement à :
- important: 0 à 4 (généralement 3), ou 0 à 3
- info: 5 à 6, ou 4 à 6
- dev: 7

Du coup, on pourrait effectivement prévoir d'emblée des constantes avec
les 7 niveaux, du genre :

- _LOG_GRAVITE_HS (0)
- _LOG_GRAVITE_ALERTE_ROUGE (1)
- _LOG_GRAVITE_CRITIQUE (2)
- _LOG_GRAVITE_ERREUR (3)
- _LOG_GRAVITE_AVERTISSEMENT (4)
- _LOG_GRAVITE_INFO_IMPORTANTE (5)
- _LOG_GRAVITE_INFO (6)
- _LOG_GRAVITE_DEBUG (7)

... sachant que jusqu'à 2, ça va normalement s'afficher dans le site
(jusqu'à 3 pour les webmestres).

[1] RFC 3164 (Syslog): RFC 3164 - The BSD Syslog Protocol