App-V: Comment générer un rapport concernant l’usage de vos applications

avril 28, 2010

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

App-V Console

  • Un fenêtre vous propose de sélectionner le type de rapport que vous souhaitez, sélectionnez Application Utilization.

App-V Console 2

  • Au choix de la période du rapport, sélectionnez Weekly

App-V Console 3 

  • Maintenant, sélectionnez l’application dont vous désirez connaitre le taux d’utilisation. Dans mon cas, ce sera Microsoft Word 2010

App-V Console 4

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 :-)

App-V Console 5

  • Faites un clique droit sur votre rapport et sélectionnez Run Report

App-V Console 6

  • Sélectionnez votre intervalle de date

App-V Console 7

  • Tadaaaaaaa Voici notre beau rapport, tout beau, tout frais !!!!

App-V Console 8 

App-V Console 9

  • 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

App-V Console 11

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
It's only fair to share...Share on Facebook

Leave a Reply