[Jrds-developpers] metrologie windows avec wmi
Status: Beta
Brought to you by:
fbacchella
From: Fabrice B. <fba...@sp...> - 2010-01-11 14:34:40
|
Il existe un agent jrds pour collecter des sondes via WMI sur serveur windows : https://sourceforge.net/projects/jrds/files/Agents/jrdswmi.jar/download WMI permet de collecter un très grand nombre de valeurs sur un serveur windows, c'est par ce moyen que les applications remontent normalement leurs informations. Procédure d'installation: -télecharger et déclarer à jrds la nouvelle sonde : https://sourceforge.net/projects/jrds/files/Agents/jrdswmi.jar/download -installer aussi j-interop : http://www.j-interop.org/ Sur la machine windows, la procédure est plus compliquée. 1/configurer jrds pour effectuer la collecte avec les droits administrateur en déclarant les informations suivants dans le fichier du nœud windows : <connection type="jrds.wmi.WMIConnection"> <arg type="String" value="domain ou host" /> <arg type="String" value="Administrator" /> <arg type="String" value="mot de passe administrator" /> </connection> <probe type="PerfOS_Processor"> <arge type="String" value="1" /> </probe> C'est une étape nécessaire pour préparer l'étape 5, rasssurez-vous ce n'est que provisoire. Il faut effectuer au moins une collecte avec cette configuration. 2/créer un utilisateur dédié, (monitor par exemple) et le placer dans les groupes "Performance monitor users" et "Performance log users" 3/Il est nécessaire de donner le droit de lecture à ce compte sur la clé de registre : HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurePipeServers\winreg Il faut pour cela lancer regedit, sélectionner la clé, bouton de droit -> Permissions cf http://www.windowsreference.com/security/how-to-disablerestrict-remote-registry-access-in-windows/ 4/Utiliser "WMI control" pour donner les droits à l'utilisateur pour le bon name space. Dans Windows 2008, c'est accessible dans le "serveur manager" -> Configuration -> WMI Control -> click droit -> Properties sélectionnez l'onglet "security", puis dans l'arbre Root/CIMV2, bouton "Security" Donnez les droits "Enable Account" et "Remote Enable" à l'utilisateur cf http://msdn.microsoft.com/en-us/library/aa393613(VS.85).aspx 5/Lancez l'application dcomcnfg dans Console Root->Component Services->Computers->My Computer->click droit->Properties sélectionnez l'onglet "COM security", dans les 2 boutons Edit Limits, donnez tout les droit au compte dans Console Root->Component Services->Computers->My Computer->DCOM Config->76A6415B-CB41-11d1-8B02-00600806D9B6>click droit->Properties Sélectionnez l'onglet "Security" Pour "Launch and Activation Permissions", ainsi que dans "Access Permissions", donnez tout les droits au compte de collecte Dans "Configuration Permissions", les droits "Read" sont suffisants. Si vous avez sauté le point 1, l'entrée "Console Root->Component Services->Computers->My Computer->DCOM Config->76A6415B-CB41-11d1-8B02-00600806D9B6" n'existera pas. 6/Changez la configuration jrds pour que ce soit l'utilisateur précédemment crée qui fasse la collecte. Et voila ! Je sais c'est lourd, mais si un spécialiste Windows veut bien se pencher dessus et la simplifier, il sera le bienvenu. Quelques sondes wmi disponibles actuellement : <probe type="PerfOS_Memory" /> <probe type="PerfOS_Processor"> <arge type="String" value="${processor}" /> </probe> <probe type="PerfOS_System" /> <probe type="Process" > <arg type="String" value="Process name" /> <arg type="String" value="process command regexp" /> </probe> ${processor} pouvant être un numéro de cœur ou "_Total" pour avoir la valeur totale. |