Blog de Florent Appointaire

Blog sur les technologies Microsoft (Windows Server, System Center, Azure, Windows Azure Pack/Azure Stack, etc;)

SCOM2012

Aujourd’hui je vais vous expliquer comment générer des rapports SCOM avec Excel 2013. Ces rapports sont bien plus faciles et rapides à générer, et surtout, beaucoup plus lisible. Je me suis inspiré de cet article, écrit par Mark DREWFS.

Pour commencer, vous devez installer Excel 2013. Pour ma part, je l’ai installé sur mon serveur SCOM. Une fois installé, il faut charger le plugin PowerPivot et Power View. Pour faire ceci, allez dans Fichier puis cliquez sur Options et choisissez Add-Ins :

image

Tout en bas, dans le menu déroulant correspond à Manage, sélectionnez COM Add-ins et cliquez sur GO :

image

Dans la fenêtre qui s’ouvre, sélectionnez Microsoft Office PowerPivot for Excel 2013 et Power View puis cliquez sur OK :

image

Il faut maintenant configurer une source de données pour la base de données Data Warehouse de SCOM. Dans Excel, cliquez sur POWERPIVOT puis sur Manage :

image

Dans la nouvelle fenêtre qui s’est ouverte, cliquez sur From Database puis From SQL Server :

image

Dans la nouvelle fenêtre, donnez un nom à votre connexion. Indiquez ensuite le nom de votre serveur SQL qui héberge la base de données Data Warehouse. Choisissez également le type d’authentification que vous souhaitez, dans mon cas, étant SysAdmin, j’utilise l’authentification Windows. Pour finir, choisissez la base de données Data WareHouse, OpertaionsManagerDW par défaut. Une fois ceci fait, cliquez sur Test Connection :

image

Si la connexion fonctionne, cliquez sur Next. Maintenant, vous avez 2 options pour importer les données. Soit vous sélectionnez les tables, soit vous utilisez la deuxième option qui est d’écrire la requête SQL. Je vais utiliser la deuxième option avec la requête suivante, qui est disponible également sur le site du début d’article :

SELECT PERF.ManagedEntityRowId
,PR.RuleRowId
,PERF.DateTime
,PERF.AverageValue
,PERF.MinValue
,PERF.MaxValue
,PERF.SampleCount
,PR.ObjectName
,PR.CounterName
,PRI.InstanceName
FROM Perf.vPerfHourly PERF
INNER JOIN vPerformanceRuleInstance PRI ON PRI.PerformanceRuleInstanceRowId = PERF.PerformanceRuleInstanceRowId
INNER JOIN vPerformanceRule PR ON PR.RuleRowId = PRI.RuleRowId
WHERE PERF.DateTime > (GETUTCDATE() - 7)
/*WHERE PERF.DateTime > (getutcdate() + 1) — Dummy condition to return no rows*/

image

Cliquez sur Validate pour valider que la requête est correcte. Une fois que vous avez cliquez sur Finish, les données vont êtes récupérées.

image

Une fois terminé, cliquez sur Close. On va refaire ceci pour 2 autres requêtes. Cliquez sur Existing Connections et sélectionnez la source que l’on a créé plus tôt en cliquant sur Open.

image

Choisissez d’écrire la requête et renseignez celle-ci :

SELECT distinct
ME.ManagedEntityRowId
,ME.Name
,ME.DisplayName
,ME.Path
,MET.ManagedEntityTypeDefaultName
from Perf.vPerfHourly PERF
inner join vManagedEntity ME on ME.ManagedEntityRowId = PERF.ManagedEntityRowId
inner join vManagedEntityManagementGroup MEMG on MEMG.ManagedEntityRowId = ME.ManagedEntityRowId
inner join vManagedEntityType MET on MET.ManagedEntityTypeRowId = ME.ManagedEntityTypeRowId
where PERF.DateTime > (GETUTCDATE() - 7)
order by MET.ManagedEntityTypeDefaultName

Faites de même pour la requête suivante :

SELECT distinct RU.RuleRowId
,MP.ManagementPackDefaultName
,MP.ManagementPackSystemName
,RU.RuleDefaultName
FROM vManagementPack MP
inner join vRule RU on RU.ManagementPackRowId = MP.ManagementPackRowId
inner join vPerformanceRule PR on PR.RuleRowId = RU.RuleRowId
where PR.LastReceivedDateTime > (GETUTCDATE() - 7)

Vous devriez maintenant avoir quelque chose qui ressemble à ça :

image

Faisons maintenant la relation entre les différentes données. Cliquez sur Diagram View :

image

Sur la nouvelle vue, cliquez sur ManagedEntityRowId de Data Performance et déplacez le sur ManagedEntityRowId de Performance Entities and Types :

image

Faites de même pour RuleRowId de Data Performance vers Management Packs and Rules :

image

Vous pouvez maintenant fermer PowerPivot. Sur votre fichier Excel, cliquez sur INSERT, puis sur PowerView :

image

image

Sur le nouvel onglet, cliquez dans la vue Power View Fields sur Performance Entities and Types :

image

Déplacez l’objet ManagedEntityTypeDefaultName dans la colonne Filters :

image

image

Ici, sélectionnez ce que vous souhaitez faire apparaître. Je vais choisir Windows Operating System pour afficher par exemple le CPU utilisé, ou encore la mémoire utilisé :

image

Dans la colonne Power View Fields, cliquez sur Data Performance et cochez ObjectName :

image

Une fenêtre est apparu sur la colonne principale :

image

Sélectionnez la fenêtre et cliquez sur Slicer dans la barre du haut. Des carrés ont du apparaitre devant les objets :

image

image

Cliquez ailleurs pour déselectionner la fenêtre ObjectName et dans la fenêtre Power View Fields, sélectionnez dans Data Performance les champs AverageValue  et DateTime.

image

Une fenêtre est apparue, avec les valeurs moyennes des performances :

image

Pour l’afficher sous forme de graphique, sélectionnez cette fenêtre et cliquez sur Other Chart, puis Line :

image

Les valeurs apparaissent maintenant sous forme de graphique :

image

Vous pouvez bien entendu ajuster la taille du graphique :

image

Pour avoir des valeurs cohérentes, il faut associer les bonnes valeurs avec les bons compteurs. Sélectionnez la colonne CounterName dans Data Performance et faites la glisser le le champ TILE BY :

image

Dans VALUES, choisissez Average :

image

Votre vue a du changer et vous devez avoir maintenant des valeurs cohérentes :

image

Les courbes qui sont affichées sont la valeur moyenne de tous les objets Windows Operating System. Pour afficher les valeurs des différents serveurs, dans la vue Power View Fields, sélectionnez All, dépliez Performance Entities and Types et glissez Path dans LEGEND :

image

Si vous cochez la case, vous allez pouvoir sélectionner un ou plusieurs serveurs en cochant les cases :

image

La courbe s’affiche maintenant, par exemple pour le CPU de mon serveur SCOM durant ces 7 derniers jours :

image

Si vous choisissez l’onglet mémoire disponible :

image

Vous pouvez enregistrer votre fichier Excel et le réutiliser quand vous le souhaitez. Pour récupérer à chaque fois les dernières valeurs, cliquez sur Refresh dans la vue PowerPivot en sélectionnant la vue Data Performance qui contient toutes les données :

image

Si je n’ai pas été assez clair ou que vous avez des questions, n’hésitez pas à me contacter.

Facebook Like
Anonymous