Reporting sur les tables système

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 1 minute de lecture
  • Par défaut, les tables système ne peuvent accéder qu’au module Reporting.

    Ces tables comprennent, sans s’y limiter :

    • Audit sys [sys_audit]
    • Journal [syslog]
    • Journal des transactions [syslog_transaction]
    • Pièce jointe [sys_attachment]
    • E-mail [sys_email]

    Cela s’explique par le fait qu’sys_audit s’agit généralement de la table la plus volumineuse dans toutes les instances. Il n’est pas rare que la table d’audit, même dans une instance de taille moyenne, pèse plusieurs gigaoctets. Dans une grande installation, cette table peut être de 50 Go ou plus.

    Lorsque nous accédons à la table sys_audit par programmation, nous savons à quoi va ressembler notre modèle de requête, nous avons donc ajouté des index de données appropriés pour correspondre à nos requêtes. Cela signifie que lorsque vous affichez, par exemple, l’historique d’un incident, la base de données peut utiliser un index pour extraire efficacement les quelques dizaines de lignes dont elle a besoin pour cette requête.

    Toutefois, avec les rapports de forme libre, nous ne pouvons pas prédire à quoi ressemblera votre modèle de requête. Peut-être voulez-vous effectuer un regroupement par nom de champ ou un tri par anciennevaleur. Il est donc possible que vos requêtes ne soient pas des requêtes indexées. Le résultat net est que vous demanderez à la base de données d’analyser un fichier de plusieurs gigaoctets, ce qui est mauvais pour les raisons suivantes :

    • Il est lent, de sorte que l’exécution de votre rapport prendra un temps inacceptable.
    • Pendant que la base de données analyse votre table, votre instance ralentit, voire devient indisponible, car les autres requêtes ne peuvent pas obtenir les ressources dont elles ont besoin.

    Si vous devez faire un rapport sur une table système, vous pouvez l’ajouter à la glide.ui.permitted_tables propriété. Accédez à la Propriétés système > Propriétés de l'interface utilisateur et localisez la propriété intitulée Liste des tables système (commençant par « sys_ », séparées par des virgules) qui peuvent figurer dans un rapport. Par défaut, les tables système ne peuvent pas faire l’objet d’un rapport. Procédez avec prudence.