App-V: Comment générer un rapport concernant l’usage de vos applications
Pour générer des rapports en App-V, vous avez à votre disposition un module de reporting dans la console de management.
Ce module vous permet de générer des rapports en fonctions de vos besoins au travers différents type de rapports:
- System Utilization
- Software Audit
- Application Utilization
- System Error
Comme exemple, nous allons réaliser un rapport concernant l’utilisation d’une application particulière via l’interface de management et ensuite nous nous connecterons à la base de donnée pour réaliser le même travail mais cette fois directement en SQL. Ce qui peut vous permettre de dépasser certaines limitation du module de reporting.
1. Réaliser un rapport au travers de la console de management:
Dans un premier temps, nous allons définir les paramètres servant à constituer notre rapport.
- Connectez vous à la console et sélectionnez le module de reporting
- Un fenêtre vous propose de sélectionner le type de rapport que vous souhaitez, sélectionnez Application Utilization.
- Au choix de la période du rapport, sélectionnez Weekly
- Maintenant, sélectionnez l’application dont vous désirez connaitre le taux d’utilisation. Dans mon cas, ce sera Microsoft Word 2010
A ce stage, notre définition de rapport est créé, c’est à dire qu’il contient toutes les informations nécessaire au traitement des données contenue dans App-V. Il n’y a plus qu’à lancer le traitement
- Faites un clique droit sur votre rapport et sélectionnez Run Report
- Sélectionnez votre intervalle de date
- Tadaaaaaaa Voici notre beau rapport, tout beau, tout frais !!!!
- Vous pouvez exporter le résultat sous forme de fichier PDF ou Excel en sélectionnant le module d’export dans la barre d’outil
2. Réaliser un rapport au travers de requêtes SQL:
Les rapports automatiques sont bien sympathiques, mais ils ne nous permettent pas d’avoir une grande finesse dans les résultats que l’on peut obtenir.
Pour augmenter notre productivité en terme de reporting, allons faire un tour directement dans la base de donnée.
Je suis certains qu’il n’y a pas besoin de vous rappeler que travailler directement dans la base de donnée vous oblige à être d’une extrême prudence 😉
L’outil de connexion à la base de donnée n’a que peu d’importance. Dans mon cas, j’utilise la console de gestion de SQL Server (Management Studio).
- Connectez vous sur votre base de donnée App-V dont le nom par défaut est APPVIRT.
- Les 2 tables qui vont nous intéresser, dans ce cas ci, sont:
- APPLICATION_USAGE
- REPORTING_CLIENT_INFORMATION
- Et maintenant voici quelques exemples de requêtes qui peuvent vous servir de référence:
Exemple 1:
Sélectionner l’ensemble des applications dont l’ID est 782 ou 781 et tirer le résultat par la date et heure de l’exécution.
1 2 3 4 | SELECT * FROM dbo.APPLICATION_USAGE WHERE app_id = 782 OR app_id = 781 ORDER BY start_time DESC |
Exemple 2:
Sélectionner le dernier enregistrement réalisé par App-V en donnant, entre autre, le nom de la machine et de l’utilisateur.
1 2 3 4 | SELECT au.id, au.start_time, au.end_time, au.app_name, au.app_version, au.app_id, au.username, rci.host_name FROM dbo.APPLICATION_USAGE AS au INNER JOIN dbo.REPORTING_CLIENT_INFORMATION AS rci ON au.host_id = rci.host_id WHERE au.id=IDENT_CURRENT('dbo.APPLICATION_USAGE') |
Exemple 3:
Sélectionner les 10 derniers enregistrements concernant 2 applications spécifiques en retournant uniquement les champs désirés.
1 2 3 4 5 | SELECT TOP(10)au.id, au.start_time, au.end_time, au.app_name, au.app_version, au.app_id, au.username, rci.host_name FROM dbo.APPLICATION_USAGE AS au INNER JOIN dbo.REPORTING_CLIENT_INFORMATION AS rci ON au.host_id = rci.host_id WHERE au.app_id = 782 OR au.app_id = 781 ORDER BY id DESC |