Loggable

Loggable est une interface héritée par toute classe qui veut que les événements liés à ses objets membres soient enregistrés dans le journal système. ElggEntity et ElggExtender héritent tous deux de Loggable.

Loggable définit plusieurs méthodes de classe qui sont utilisées pour l’enregistrement du journal système par défaut, et peuvent être utilisées pour définir vos propres journaux (ainsi que pour d’autres objectifs) :

  • getSystemLogID() Retourne un identifiant unique pour l’objet à des fins de conservation dans le journal système. C’est généralement le GUID de l’objet

  • getClassName() Retourne le nom de la classe de l’objet

  • getType() Retourne le type d’objet

  • getSubtype() Récupère le sous-type de l’objet

  • getObjectFromID($id) Pour un ID donné, retourne l’objet qui lui est associé

Informations de la base de données

Le journal système par défaut est enregistré dans la table system_log de la base de données. Il contient les champs suivants :

  • id - Un identifiant numérique unique de la ligne

  • object_id - Le GUID de l’entité sur laquelle l’action est effectuée

  • object_class - La classe de l’entité sur laquelle l’action est effectuée (par ex. ElggObject)

  • object_type - Le type d’entité sur laquelle l’action est effectuée (par ex. object)

  • object_subtype - Le sous-type d’entité sur laquelle l’action est effectuée (par ex. blog)

  • event - L’événement enregistré (par ex. create ou update)

  • performed_by_guid - Le GUID de l’entité agissante (l’utilisateur qui réalise l’action)

  • owner_guid - Le GUID de l’utilisateur à qui appartient l’entité sur laquelle l’action est effectuée

  • access_id - Le niveau d’accès associé avec cette entrée de journal

  • time_created - Le timestamp UNIX de la date de l’événement