5 Replies Latest reply on Feb 20, 2016 11:22 AM by orioncrack

    Report to list all settings within all assigned application monitors

    joedissmeyer

      I received an insane request from some senior admins in my organization and I don't think it can be done using the report writer. But I'd like to confirm first.

       

      What I need to do is export all of my current assigned SAM templates, where they are assigned to, how each app monitor is configured, and what protocol or credential is being used in the SAM template. The report has to look something like this:

       

      • Monitored Server name
        • Application Monitor name (SAM Template name) assigned to the server
        • Description of the app monitor
          • The components of the template
            • Every detailed settings and configuration in the template
            • Every threshold setting in each component
          • Description of each component
        • Credential \ Protocol used by the monitor

       

      Can this be done?

        • Re: Report to list all settings within all assigned application monitors
          Leon Adato

          Yes. I just pulled this one together this afternoon. IT's a SQL query based report, but it's do-able:

           

          select Nodes.NodeID, Nodes.StatusLED, Nodes.Caption, Nodes.IP_Address, Nodes.DNS, Nodes.SysName,

          APM_Application.ID as AppID, APM_Application.Name as AppName,

          APM_Component.ID as CompID, APM_Component.Name as Component,

          CPUCrit.Critical as CPUCrit, PMemCrit.Critical as PMEMCrit, VMemcrit.Critical as VMEMCrit,

          [Credential].Name,

          from [Credential]

          join APM_ComponentSetting on [Credential].ID = APM_ComponentSetting.Value

          left join APM_Component on APM_ComponentSetting.ComponentID = APM_Component.ID

          join APM_Application on APM_Component.ApplicationID = APM_Application.ID

          left join (select APM_Threshold.ID, APM_Threshold.Critical from APM_Threshold where APM_Threshold.ThresholdName = 'CPU') CPUcrit on APM_Component.ID = CPUcrit.ID

          left join (select APM_Threshold.ID, APM_Threshold.Critical from APM_Threshold where APM_Threshold.ThresholdName = 'CPU') PMEMcrit on APM_Component.ID = PMEMcrit.ID

          left join (select APM_Threshold.ID, APM_Threshold.Critical from APM_Threshold where APM_Threshold.ThresholdName = 'CPU') VMEMcrit on APM_Component.ID = VMEMcrit.ID

          join Nodes on APM_Application.NodeID = Nodes.NodeID

          where APM_ComponentSetting.[Key] = '__CredentialSetId'

          2 of 2 people found this helpful
            • Re: Report to list all settings within all assigned application monitors
              joedissmeyer

              Leon,

               

              Thank you very much! This is a great start. I wasn't sure where to begin but this query helps tremendously. I will mark this as the correct answer and build on this query to get more details per component. Thanks again!

              - Joe

              • Re: Report to list all settings within all assigned application monitors
                joedissmeyer

                adatole

                 

                I wanted to let you know what I did so far. Using your example as a base, I pulled together this:

                 

                 

                select

                    Nodes.Caption 'NODE NAME',

                    APM_Application.Name 'APM NAME',

                    APM_ComponentDetails.Name 'COMPONENT NAME',

                    APM_ComponentDefinition.name 'COMPONENT TYPE',

                    APM_ComponentDetails."Key" 'VARIABLE',

                    APM_ComponentDetails."Value" 'VARIABLE VALUE'

                from

                    APM_ComponentDefinition,

                    APM_ComponentDetails

                    join APM_Application on APM_ComponentDetails.ApplicationID = APM_Application.ID

                    join Nodes on APM_Application.NodeID = Nodes.NodeID

                where

                    Nodes.Assigned_Group = 'eCommerce Operations' AND

                    Nodes.MachineType NOT LIKE 'XP' AND

                    APM_ComponentDefinition.ComponentType = APM_ComponentDetails.ComponentType and

                    APM_ComponentDetails."Value" is not NULL and

                    APM_ComponentDetails."Value" != ''

                order by

                    APM_ComponentDetails.Name,

                    APM_Application.Name,

                    Nodes.Caption,

                    APM_ComponentDetails."Key"

                 

                There is another post in the forum that I used for this example too but I cannot find it so I cannot take all the credit for this query. This works for my situation and the report satisfies our auditors I have a large network with a lot of SAM monitors (somewhere around 5000) so this report takes a good 120 seconds to run. But at least it works.

                - Joe