This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

SAM Best Practice / Approaches

To All -

I have 5 servers that are part of a custom application suite.  One database, two app servers, and two web servers.

We are in the process of cleaning up the SW server that is monitoring these servers to better monitor the entire application.

The application team is currently is looking to monitor CPU usage and memory usage for these servers and they want to be alerted when CPU and memory usage reach certain thresholds.  One threshold for warning and one for critical

My question is what is the best way to approach the solution?  What is best practice?

From my perspective I think I have two options.

Option 1 

  • Use the Management section of each node.
  • Edit Node \ Override Orion General Thresholds for CPU and memory usage with values provided by the AppDev Team.
  • Create alerts for the servers in the application suite.

Option 2

  • Use SAM / Application Monitors
  • Create a Custom AppMon Template
  • Add a Component Monitor
  • Add a Performance Counter Monitor for % Processor Time
  • Set the Statistics Threshold
  • Repeat for Memory
  • Assign the monitor to the nodes in the application suite.

I think option 1 is the simpler and easier approach while option 2 provides more granularity.  I would like to keep this as simple as possible but still follow best practice or best methodology.

TIA.

  • Option 2 sounds crazy to me.  I don't see any reason to build application monitors for this.

    I would set the thresholds in Edit Nodes.  Keep in mind, you can select multiple nodes on the Manage Nodes page and change the thresholds all to the same value.  Then create your alert(s) to look for a Warning or Critical state.

  • I've done it both ways, usually depends on access levels. If the app team has admin in Sam but maybe the systems team normally manages nodes and the related alerts then I can offload the responsibility of the custom requests to the app team by giving them their own template and letting them go crazy with it. It does create additional overhead in terms of load on the pollers and db space, but for me admin time is the more precious resource we need to conserve. If the environment is smaller and the sw admin is the owner of everything then I typically go with opt 1
  • I decided to go with option 1.  The reason I considered option 2 is because I may still need to create custom app monitors for these servers because there are other processes that may need to be monitored for the application.  If I had the app monitor already created, then when additional processes need to be added I could then just add the component to the existing app monitor.  To keep it simple for myself at this time I went with option 1.  Additionally, I don't believe the devs know their app to the level of detail where they could provide the numbers needed to break out the CPU processes which would be needed to configure the process monitor in an app monitor.

    Thanks for the feedback.

  • Good point. 

    If the app team has admin in Sam but maybe the systems team normally manages nodes and the related alerts then I can offload the responsibility of the custom requests to the app team by giving them their own template and letting them go crazy with it.

    They do not have access to SAM and I don't envision them having it in the future.  They don't know SW let alone SAM so it further makes sense that option 1 was the better choice.

    Thanks for the feedback.

  • So which option does not cost an additional license AppInsight or SAM?