4 Replies Latest reply on May 28, 2015 8:58 PM by jimspargo

    Weekly server performance report

    jimspargo


      hello,

      I am trying to produce a weekly report that will show

      Server  CPU % time  Memory pages/sec   Disk Q-length   Volume

                  Avg |Peak       Avg | Peak                 Avg  | Peak      Size | Free space | %free

      on of the techs for Solarwinds provided the following SQL query but it doesn't provide memory page/sec

       

      thanks

      Jim

        • Re: Weekly server performance report
          zackm

          Can you post the SQL query?

           

           

          -ZackM

          Loop1 Systems: SolarWinds Training and Professional Services

          • Re: Weekly server performance report
            jimspargo

            sorry forgot to add the query

            select * from

            (select  nodes.caption as NodeName,nodes.nodeid, avg(AvgLoad) as AvgCPU, max(maxload) as PeakCPU

            from cpuload, nodes

            where nodes.nodeid=cpuload.nodeid and DATEDIFF(WW,DateTime,GETDATE())=1

            group by nodes.caption, nodes.nodeid) a,

            (select volumes.nodeid, caption as VolumeName, avg([AvgDiskQueueLength]) as AvgDiskQ, max(maxdiskqueuelength) as PeakDiskQ,

            avg(AvgDiskReads) as AvgDiskRead, max(maxDiskReads) as PeakDiskReads,avg(AvgDiskWrites) as AvgDiskWrites, max(maxDiskWrites) as PeakDiskWrites

            from VolumePerformance, volumes

            where volumetypeid in (4,10,100) and volumes.volumeid=volumeperformance.volumeid and DATEDIFF(WW,DateTime,GETDATE())=1

            group by volumes.nodeid, caption) b

            where a.nodeid=b.nodeid

            order by a.nodeid

             

            cheers Jim

              • Re: Weekly server performance report
                zackm

                Just taking a cursory glance through the database, Memory Pages/sec doesn't seem to be a natively polled metric. I could have sworn I had seen this somewhere before, but it may have been in some SAM perfmon counters.

                 

                Maybe rob.hock can confirm that this doesn/does not exist in the current database natively?

              • Re: Weekly server performance report
                jimspargo


                hi all I have had some success by querying the apm alerts and stattisics data see the query below

                select * from
                (select  nodes.caption as NodeName,nodes.nodeid, avg(AvgLoad) as AvgCPU, max(maxload) as PeakCPU
                from cpuload, nodes
                where nodes.nodeid=cpuload.nodeid and DATEDIFF(WW,DateTime,GETDATE())=1
                group by nodes.caption, nodes.nodeid) a,

                (select volumes.nodeid, caption as VolumeName, avg([AvgDiskQueueLength]) as AvgDiskQ, max(maxdiskqueuelength) as PeakDiskQ,
                avg(AvgDiskReads) as AvgDiskRead, max(maxDiskReads) as PeakDiskReads,avg(AvgDiskWrites) as AvgDiskWrites, max(maxDiskWrites) as PeakDiskWrites
                from VolumePerformance, volumes
                where volumetypeid in (4,10,100) and volumes.volumeid=volumeperformance.volumeid and DATEDIFF(WW,DateTime,GETDATE())=1
                group by volumes.nodeid, caption) b,

                (SELECT   Nodes.NodeID AS NodeID,
                AVG(APM_StatisticsUsage.AvgStatisticData) AS AVERAGE_of_Statistic_Data,
                MAX(APM_StatisticsUsage.AvgStatisticData) AS MAX_of_Statistic_Data

                FROM
                (Nodes INNER JOIN APM_AlertsAndReportsData ON (Nodes.NodeID = APM_AlertsAndReportsData.NodeId))  INNER JOIN APM_StatisticsUsage ON (APM_AlertsAndReportsData.ComponentId = APM_StatisticsUsage.ComponentID)


                WHERE
                ( DateTime BETWEEN 42144 AND 42151.4583333333 )
                AND 
                (
                  (APM_AlertsAndReportsData.ComponentName = 'Page File Usage') AND
                  (
                   (APM_AlertsAndReportsData.ApplicationName = 'Windows Server 2003-2008') OR
                   (APM_AlertsAndReportsData.ApplicationName = 'Windows Server 2003-2012 Services and Counters '))
                )


                GROUP BY Nodes.NodeID, Nodes.Caption) c

                where a.nodeid=b.nodeid  and a.nodeid=c.nodeid
                order by a.nodeid

                I am not the best at SQl  so be easy on me.

                Jim