'### ========================================================================== '### '### VBScript Source File '### '### NAME: runProfileCollector_v1.2.vbs '### VERSION: 1.2 '### '### AUTHOR: Active Identity Management, Inc. (www.activeidm.com) '### DATE : 09/21/05 '### '### COMMENT: This script collect the latest MIIS Run Profile Statistics. '### 1. Replace SQL_HR_MA with your MA Name. '### 2. Prereq -- you will need a SQL Database and Table with a System DSN setup. '### ========================================================================== 'On Error Resume Next Const PktPrivacy = 6 Dim Service Dim ManagementAgent Dim Status Set Service = GetObject("winmgmts:{authenticationLevel=PktPrivacy}!root\MicrosoftIdentityIntegrationServer") Set ManagementAgent = Service.Get("MIIS_ManagementAgent.Name='SQL_HR_MA'") strDateStamp = Month(Now) & "/" & Day(Now) & "/" & Year(Now) & " " & Hour(Now) & ":" & Minute(Now) & ":" & Second(Now) strRunProfile = "SQL_HR_MA " & ManagementAgent.RunProfile() strRunStartTime = ManagementAgent.RunStartTime() strRunEndTime = ManagementAgent.RunEndTime() strNumCSObjects = ManagementAgent.NumCSObjects() strNumTotalConnectors = ManagementAgent.NumTotalConnectors() strNumConnectors = ManagementAgent.NumConnectors() strNumExplicitConnectors = ManagementAgent.NumExplicitConnectors() strNumTotalDisconnectors = ManagementAgent.NumTotalDisconnectors() strNumDisconnectors = ManagementAgent.NumDisconnectors() strNumExplicitDisconnectors = ManagementAgent.NumExplicitDisconnectors() strNumFilteredDisconnectors = ManagementAgent.NumFilteredDisconnectors() strNumPlaceHolders = ManagementAgent.NumPlaceholders() strNumImportAdd = ManagementAgent.NumImportAdd() strNumImportUpdate = ManagementAgent.NumImportUpdate() strNumImportDelete = ManagementAgent.NumImportDelete() strNumImportRename = 0 strNumImportNoChange = ManagementAgent.NumImportNoChange() strNumExportAdd = ManagementAgent.NumExportAdd() strNumExportDelete = ManagementAgent.NumExportDelete() strNumExportUpdate = ManagementAgent.NumExportUpdate() '### Write information to SQL WriteSQLData '### *************************************************************************** '### Write SQL Data To MIISMgmt Table. Sub WriteSQLData '### *************************************************************************** Const adOpenStatic = 3 Const adLockOptimistic = 3 Const adUseClient = 3 Set objConnection = CreateObject("ADODB.Connection") Set objRecordset = CreateObject("ADODB.Recordset") objConnection.Open "DSN=Automation;" objRecordset.CursorLocation = adUseClient objRecordset.Open "Select * FROM MIISMgmt WHERE DateStamp = '" & strDateStamp _ & "'", objConnection, adOpenStatic, adLockOptimistic If objRecordset.EOF Then objRecordset.AddNew objRecordset("DateStamp") = strDateStamp objRecordset("runProfile") = strRunProfile objRecordset("runStartTime") = strRunStartTime objRecordset("runEndTime") = strRunEndTime objRecordset("numCSObjects") = strNumCSObjects objRecordset("numTotalConnectors") = strNumTotalConnectors objRecordset("numConnectors") = strNumConnectors objRecordset("numExplicitConnectors") = strNumExplicitConnectors objRecordset("numTotalDisconnectors") = strNumTotalDisconnectors objRecordset("numDisconnectors") = strNumDisconnectors objRecordset("numExplicitDisconnectors") = strNumExplicitDisconnectors objRecordset("numTotalDisconnectors") = strNumTotalDisconnectors objRecordset("numFilteredDisconnectors") = strNumFilteredDisconnectors objRecordset("numPlaceHolders") = strNumPlaceHolders objRecordset("numImportAdd") = strNumImportAdd objRecordset("numImportUpdate") = strNumImportUpdate objRecordset("numImportDelete") = strNumImportDelete objRecordset("numImportRename") = strNumImportRename objRecordset("numImportNoChange") = strNumImportNoChange objRecordset("numExportAdd") = strNumExportAdd objRecordset("numExportDelete") = strNumExportDelete objRecordset("numExportUpdate") = strNumExportUpdate objRecordset.Update Else objRecordset("DateStamp") = strDateStamp objRecordset("runProfile") = strRunProfile objRecordset("runStartTime") = strRunStartTime objRecordset("runEndTime") = strRunEndTime objRecordset("numCSObjects") = strNumCSObjects objRecordset("numTotalConnectors") = strNumTotalConnectors objRecordset("numConnectors") = strNumConnectors objRecordset("numExplicitConnectors") = strNumExplicitConnectors objRecordset("numTotalDisconnectors") = strNumTotalDisconnectors objRecordset("numDisconnectors") = strNumDisconnectors objRecordset("numExplicitDisconnectors") = strNumExplicitDisconnectors objRecordset("numTotalDisconnectors") = strNumTotalDisconnectors objRecordset("numFilteredDisconnectors") = strNumFilteredDisconnectors objRecordset("numPlaceHolders") = strNumPlaceHolders objRecordset("numImportAdd") = strNumImportAdd objRecordset("numImportUpdate") = strNumImportUpdate objRecordset("numImportDelete") = strNumImportDelete objRecordset("numImportRename") = strNumImportRename objRecordset("numImportNoChange") = strNumImportNoChange objRecordset("numExportAdd") = strNumExportAdd objRecordset("numExportDelete") = strNumExportDelete objRecordset("numExportUpdate") = strNumExportUpdate objRecordset.Update objRecordset.Close objConnection.Close End If End Sub Sub ErrorHandler (ErrorMessage) WScript.Echo ErrorMessage WScript.Quit(1) End Sub