Share via


Rechercher et mettre hors service des rapports .rdl inutilisés

S’APPLIQUE À : Power BI Report Builder Power BI Desktop Power BI 2022 Report Server SQL Server 2022 Reporting Services

Votre entreprise peut traiter des centaines de rapports paginés (fichiers .rdl) dans Power BI Report Server et SQL Server Reporting Services (SSRS). Il est possible que certains de ces rapports deviennent obsolètes et doivent être supprimés. En tant qu’auteur ou administrateur de rapport, vous ne voulez pas migrer des rapports inutilisés vers le service Power BI. Lorsque vous prévoyez une migration vers le cloud, nous vous suggérons de vous débarrasser des rapports .rdl inutilisés. Cette bonne pratique vient en soutien de la gouvernance de la conservation et permet à votre organisation d’utiliser une planification de la conservation et une stratégie de données.

Il existe deux processus pour rechercher les rapports inutilisés. Nous étendons le nettoyage aux objets inutilisés ainsi que pour se débarrasser des tables de base de données inutilisées qui pourraient avoir des données potentiellement obsolètes.

Exécuter un audit (facultatif)

Tout d’abord, nous vous suggérons de créer une spécification d’audit de serveur et d’audit de base de données. L’audit d’une instance du moteur de base de données SQL Server ou d’une base de données individuelle implique le suivi et la journalisation des événements qui se produisent sur le moteur de base de données. L'auditSQL Server vous permet de créer des audits de serveur, qui peuvent contenir des spécifications d'audit de serveur pour les événements de niveau serveur, ainsi que des spécifications d'audit de base de données pour les événements de niveau base de données. Les événements audités peuvent être écrits dans les journaux d’événements ou les fichiers d’audit.

Une fois que vous avez rempli votre journal d’audit avec des tables et des procédures stockées utilisées pour les rapports, vous pouvez exporter ces objets dans un fichier Excel et les partager avec les parties prenantes. Informez vos collaborateurs que vous vous préparez à marquer comme obsolète des objets inutilisés.

Notes

Certains rapports importants ne s’exécutent que rarement : veillez donc à demander un feedback sur les objets de base de données qui sont rarement utilisés. En dépréciant un objet, vous pouvez modifier le nom de l’objet en plaçant un zdel devant celui-ci, de sorte que l’objet apparaisse en bas de l’Explorateur d’objets. De cette façon, si vous décidez ultérieurement que vous avez besoin de l’objet zdel, vous pouvez modifier à nouveau l’objet en rétablissant son nom d’origine. Lorsque vous êtes sûr d’être prêt à les supprimer de votre base de données, vous pouvez mettre en place une fréquence pour la suppression des objets inutilisés.

Créer une liste de métriques d’utilisation des rapports

Nous vous recommandons également de créer une liste de métriques d’utilisation des rapports .rdl en interrogeant la base de données du serveur de rapports. Utilisez le code T-SQL ci-dessous pour dériver les nombres d’utilisations. Si votre serveur de rapports est configuré pour stocker un an d’historique d’exécution des rapports, vous pouvez utiliser une date spécifique pour filtrer les métriques d’utilisation.


; with UnusedReportsCte 
AS 
( 
SELECT 
Cat.Name,Path,COUNT(ExeLog.TimeStart) AS Cnt 

FROM (SELECT * FROM Catalog 
WHERE type=2 and Hidden=0) AS Cat 
LEFT JOIN 
ExecutionLog AS ExeLog 
ON ExeLog.ReportID = Cat.ItemID 
AND ExeLog.TimeStart>'01/01/2021' 
GROUP BY Cat.Name,Path) 
SELECT * FROM UnusedReportsCte 
ORDER BY Cnt ASC,path 

Notes

Les sous-rapports et les rapports liés n’apparaissent pas dans le journal d’exécution si le rapport parent est exécuté.

À partir de là, vous pouvez décider de supprimer immédiatement les rapports inutilisés ou de remplacer le rapport par un message. Vous pouvez informer vos utilisateurs que le rapport n’est plus utilisé : ils peuvent alors contacter un administrateur pour obtenir du support. Vous pouvez ensuite développer une opération périodique pour les supprimer au fil du temps.