appmanager | Enterprise IT Management Blog from ManageEngine

Alarms from Applications Manager can be of any of the following severity :
  1. Critical (for Health & Down for Availability) -Amber
  2. Warning - Orange
  3. Clear (for Health & Up for Availability) - Green
A few examples for Alarms can be :
  1. Service is down
  2. Server is down
  3. Process 'java.exe' is down
  4. CPU Utilization has violated the threshold value, 90% > 80% ( Can be Critical or Warning as configured )
  5. Response time is greater than the threshold value, 200 ms > 180 ms
Alarms can be notified through Email or SMS . Corrective Actions like restarting the service or server can be executed through ‘Execute Script ’ option when alarms are generated.

Let us now design an alarm workflow through Applications Manager for the scenario as shown in the diagram below :



The points below outline the solution for the above use case :

a)    In order that the first poll does not generate any alarm, you can configure to generate an alarm after ‘n’ consecutive polls

Ex : Poll 2 times consecutively before reporting the monitor is down.

You can configure this option
  1. Globally : This would mean that a Critical or Warning alert will be generated for all monitor types ( Server, Tomcat, Apache), for all attributes ( CPU, Memory, Java Heap Size ) only if the attribute has crossed the threshold 2 times
  2. At the specific attribute level : This is done while configuring the Threshold . This policy can be applied to monitors with similar attributes thereby saving time and managing escalation policies effectively.
The status of the Monitor will not change in the first poll. If the fault (or event) is still active in the second consecutive poll, the status of the Monitor changes to Critical or Warning, as the case may be.

b)    You can configure to Send Email or SMS and also execute a script for corrective action or 'Log a Ticket' in ServiceDesk Plus, when the alarm is generated in the 3rd poll. In order that this alert be raised as ticket in your helpdesk, configure the Helpdesk Email address in the Email Actions.



The second step in the above use case is thus solved. Now, the third one is to raise a ticket when the alarm is not acknowledged for 20 minutes.

c)    If the alarm is not cleared automatically or manually within the next 20 minutes, you can configure Alarm Escalation Rules .

A screenshot of the Alarm Escalation Rule is shown below :



Using these rules, you can create a ticket in your Helpdesk if the ticket is not closed within 20 minutes. You have to configure your helpdesk email address in the To Address while configuring Email Actions, so that the alarm is generated as a ticket in your helpdesk. [In case, if you would want to raise a ticket with ServiceDesk Plus , you can use the ‘Log a Ticket ’ Action or use the Email Commands Template to generate a ticket.]

The Technician can login to the Helpdesk System to add notes/work log in order to update the steps taken to resolve the problem. Once the problem is resolved, Application Manager automatically changes the status of the monitor to Clear (Green) in the next poll.

Let me know if you have a different alarm work flow, which needs to be integrated into Applications Manager.

Kevin
Remember ‘Minority Report’, the Steven Speilberg directed sci-fi movie starring Tom Cruise? The movie is set in futuristic Washington where the police force employ ‘precogs’ with precognition abilities to view murders that occur in the future. The police use these precogs to track down and stop murders before they happen, and they cut the crime rate in the city by 90%!



IT administrators might wish they had precognition too, so they can track down problems in their network before they occur. Now we can say their wish has been granted. Applications Manager has introduced Anomaly Detection, a new feature which detects potential threats to server or application performance beforehand and sends out alarms. The IT team can analyze and interpret the alarms generated and take pre-emptive action before things go out of hand.

How does Anomaly Detection work?

You have to define anomaly profiles on the performance metrics of an application or server such as CPU Utilization. Applications Manager then continually compares the performance data with the pre-defined set of best data and sends notifications if they deviate from established patterns. Any deviation from normal behavior can be interpreted as a potential threat to application performance.


The anomaly detection capability helps system administrators move from a reactive approach to troubleshooting problems towards a more proactive approach. This in turn can help improve their overall efficiency and bring down IT costs.

Anomaly Detection is available as an add-on feature to Applications Manager and works with both the Professional and enterprise editions. Feel free to try this out and let us know what you think!

How to connect your Network with Applications?

Mar 01 2010 09:59:15 AM Posted By : Kevin
Comments (0)
Now that you know the need for a Network Connector between OpManager and Applications Manager, let me detail out how to connect these 2 applications through the Network Connector.

Based on recommendations, you can install OpManager and Applications Manager on the same server or a different one.  You should have purchased the Network Connector Add-On in order to connect these two applications.

Step 1 : Configure OpManager details in Applications Manager Admin Interface : Admin -> Add-On Product Settings, click Add against OpManager.



Enter the servername, portnumber of OpManager application and the username and password to connect.



Step 2 : Once you save the settings, the “Fetch Now” image will be active, as shown in the image below. Click the Fetch Now image to fetch data from OpManager.



Step 3 : Create a New Monitor Group.



Step 4 : Click Associate Monitors.



Step 5 : Select the Network Devices which you want to monitor through Applications Manager. You will find the Network Devices, below the Available Monitors section.



Click Associate to add these devices to the monitor group.

You can find that the Alarms generated against these devices in OpManager will be propogated to the Monitor Group view in Applications Manager.

Network Devices Availability & Health :



Network Devices Alarm Snapshot :



You can click the link against the name of these devices to view their snapshot.

You should try it to know how easy and useful it is.

Kevin

Introducing Applications Manager 9.1

Feb 24 2010 03:03:39 AM Posted By : Arun B
Comments (0)
We're excited to announce the release of version 9.1 of ManageEngine Applications Manager.The new version comes loaded with several new features as well as improvements to existing features. We think you will find them handy.

Here's a quick look at the major features that release 9.1 has to offer:

- Anomaly Detection : IT administrators have traditionally approached troubleshooting in a reactive manner. They receive notifications from the monitoring tool about a server outage or a CPU spike and then react accordingly.  The new 'Anomaly Detection' feature can help them adopt a more proactive approach to troubleshooting problems. It lets them identify any potential threats to application performance beforehand.

- Real Browser Monitor :  Measure how your customers experience your web applications and web transactions, from different geographical locations. This feature proactively monitors the availability, response times and page loading time of web transactions.

- OpStor Connector : Connect with ManageEngine OpStor and view integrated application and SAN monitoring stats in a single console.

- Option to integrate website uptime data from Site24x7 into Applications Manager.

- REST APIs which help you integrate AppManager data into your intranet portals or with third-party monitoring tools, and more.

To view a complete list of all the new stuff that has gone into release 9.1, refer our forum announcement .

That's it for now. Stay tuned to this space for more feature announcements, updates and more!
Here is an easier way to integrate Email Alerts from any Network Montioring solution, be it HP OpenView, Solarwinds or ManageEngine OpManager  (& Applications Manager) into ServiceDesk Plus.

Before we begin, let me put forth few questions.
  1. Do you have trouble logging a ticket into ServiceDesk Plus?
  2. Do you feel that only a few parameters (like Technician, Priority & Category) can be set through Log a Ticket Profile?
  3. Do you feel the ServiceDesk Plus settings are cumbersome in ManageEngine OpManager & Applications Manager?
  4. Is your technician always ‘on the ground’, hardly having time to login to the Web client of ServiceDesk Plus?
  5. Do you want to create a workflow for alerts from other Network Monitoring Solutions?
  6. Do you need an API based integration for Email Alerts from HP OpenView, Solarwinds, OpManager, Applications Manager or any other network monitoring solution?
My answer to all these questions is ‘Use the Email Command Feature’ in ServiceDesk Plus. This feature helps you set Category, SubCategory, Item, Technician, Mode, Level, Priority, Urgency, Request Type, Group, Technician, Site, Asset, Resolution and any other Request Additional Field to the incoming requests from HP OpenView, Solarwinds, Applications Manager, OpManager  or any other Network Monitoring Solution.

Doesn’t it look more versatile than the Log a Ticket Profile? Yes, it really does, atleast to say so, in my opinion.

All you have to do is identify a delimiter and your email should be formatted in the following way :

@@OPERATION=AddRequest@@
@@CATEGORY=Network@@
@@SUBCATEGORY=Router@@
@@ITEM=DSL Link@@
@@MODE=Alert from OpManager@@
@@LEVEL=Tier 2@@
@@PRIORITY=High@@
@@URGENCY=Urgent@@
@@REQUESTTYPE=Alarm@@
@@REQUESTER=OpManager Alert@@
@@REQUESTEREMAIL=opmanager-noreply@yourdomain.com@@
@@GROUP=Network@@
@@TITLE=RTT Violation between 192.168.1.10 and 172.64.56.22 is more than 30 seconds@@
@@ASSET=Router1@@
@@SITE=New York@@


@@ is the delimiter in the above Email Template and you can use any delimiter like ##, $$, %% etc.

The advantage here is that any request parameter can be a part of the Email Template. ServiceDesk Plus parses this email and sets the request parameter values, based on the received template. There is no need for a business rule to redefine the request parameters.

The above example is to open a request. You can also edit, close or pick-up a ticket, provided you know the ticket id.

Let us consider the scenario that the above email alert from a Network monitoring software is generated as a Request (or Incident) and assigned to the group “Network”. The next step in the Request Workflow is 'Acknowledgement by a Technician'. The Technician will receive ‘Request Creation’ and/or ‘Request Assigned to Group’ notification. The Request ID will be available in the Notification Email. Let us assume that the Request ID is 283872. The Technician can save the below email template and replace the request id, whenever necessary, so as to pickup a request.

@@OPERATION=PickupRequest@@
@@REQUESTID=283872@@


Let us now, look at another example for closing the request. The template is as follows :

@@OPERATION=CloseRequest@@
@@REQUESTID=283872@@


Now, the only option left out is Edit Request. Let us say, that the above alert has to be assigned to Technician John Doe. The Template is

@@OPERATION=EditRequest@@
@@REQUESTID=283872@@
@@TECHNICIAN=John Doe@@


Doesn’t this sound interesting and easy?

I leave it to you to play more with this feature.

Kevin
Today’s applications are complex in nature. Applications are hosted in data centers, thousands of miles away from Head Office / Branch Offices. Administrators / Helpdesk Technicians face an uphill task to troubleshoot Application performance or issues, though they have sophisticated tools to remotely access these applications. Users frequently post these questions to Administrators:
  1. I am not able to access the application, though I am able to ping the server.
  2. The application is very slow.
  3. I am able to login to the application, but the page takes more than a minute to load
Technicians, generally, don’t know where to troubleshoot this issue. The Business Service seems to look normal when the Technician uses it. But, who owns the responsibility for the incident reported by the user? This usually is a million dollar question, as no one would want to own responsibility for any application related issue – be it the Network Team, or the Server Team, or the Database Team, or the Application Team.

Let us find an answer to this question through the Network Connector Add-On in ManageEngine Applications Manager with an example. JBOSS Application, with an Microsoft SQL backend database is hosted in Data Center in US. The Business Service is accessed by Users from the Head Office in India.

The screenshot below shows how the application server has been performing.



The health and availability of the JBOSS Application is clear, which indicates that the Business Service has no issues at the application end.

Let us look at the Database server.



The availability of the MSSQL database server is clear. However, the health is critical. If you take a closer look at the Alarm message, you can see that a couple of databases are offline and a Scheduled job is critical. These incidents cannot be deemed responsible for the application to perform slowly. So, let us ignore these alarm messages and find out if there are any spikes in the performance of the server



The performance parameters such as CPU, Memory and Disk are well within Threshold limits. The next option to look at is the Network Devices.



It can be inferred that the health of the Network devices has affected the performance of the Business Service. A Business View connecting the Data Center and Head Office from OpManager can be included into Applications Manager Dashboard. The Business View, as shown below, indicates that the link between the Data Center and Head Office is critical, which needs immediate attention.



The slow performance of the Business service may be attributed to any one of the reasons below :
 
  1. The link between these offices may be down
  2. The RTT is beyond the threshold limit

The technician can now conclude that the application was performing slowly due to the link failure between the Data Center and Head Office. He can escalate this issue to the Network Team. The Network Team can use ManageEngine OpManager to find out the root cause of this issue.

This capability of ManageEngine Applications Manager is in addition to the SNMP & Ping Monitoring. By using ManageEngine OpManager, you can get out-of-the-box support for Network Devices.

To know how to integrate Network Devices from OpManager into Applications Manager, read the guide @ http://www.manageengine.com/products/applications_manager/help/monitors/network-application-monitoring.html

You can follow my post "How to connect Network with Applications? " for the detailed steps to configure the Network Add-On in Applications Manager.

Kevin

Monitoring Tomcat Application Server

Jan 25 2010 03:28:57 AM Posted By : Kevin
Comments (0)

Today, Monitoring is an important task for an Administrator. Grab statistical data, reconfigure certain aspects of the server, add a new web application etc, form a part of the daily administration tasks. At the end of this blog, the administrator can effectively monitor these parameters and have answers to these questions:

1. Which Webapps has the maximum number of sessions ?
2. How much memory is the Tomcat JVM process taking up ?

Though much has been talked about monitoring tomcat application across the market, my insight here is into monitoring Tomcat Application Server through ManageEngine Applications Manager.

Metrics to monitor :

The following metrics serve as a guideline to monitor Tomcat Server through ManageEngine Applications Manager :

  • Uptime & Availability
  • Number of Requests received by the Server
  • Used / Free Memory of the server
  • Active Thread Count
  • Number of Open Sessions per application
  • Application Session information
  • Application Response Time
  • Servlet Response Time
  • Servlet Requests per min
  • Thread Status ( for Tomcat 5.x and above )
Supported Tomcat Versions :

The following versions are supported by ManageEngine Applications Manager :
  • Tomcat 3.x
  • Tomcat 4.x
  • Tomcat 5.x
  • Tomcat 6.x
Configuring Tomcat Server :

In order that Tomcat Server be monitored by ManageEngine Applications Manager, you have to deploy the Tomcat Agent. The procedure to deploy the agent is outlined below :

a. Tomcat 3.x & 4.x
Step 1 : Copy the agent, corresponding to the Tomcat Version, from [AppManager_Home]\classes folder to the Tomcat Installation folder. [ Tomcat3Agent.zip for Tomcat 3 and Tomcat4Agent.zip for Tomcat 4 ]
Step 2 : Extract the zip file in the Tomcat Installation folder.
Step 3 : Add the following code to conf\server.xml  file in the Tomcat Installation folder, below the Engine Tag.

<Valve className="com.adventnet.appmanager.tomcatagent.ver4.valve.AdventNetHostValve"/>

Step 4 : Restart Tomcat Server.

b. Tomcat 5.x & 6.x
Tomcat server should host the ‘Manager’ application. This application is available by default.

You can find more detailed steps to configure the agent @ http://www.manageengine.com/products/applications_manager/help/managing-business-applications/application-server-monitor.html#tomcat-server

For Tomcat version 5.x and above, the information provided in the url’s below is shown in Applications Manager.
http://tomcatservername:8080/manager/status?XML=true
http://tomcatservername:8080/manager/html/list
http://tomcatservername:8080/manager/jmxproxy?qry=*%3Aj2eeType%3DServlet%2c*

Monitoring Tomcat :

On adding a tomcat server, the metrics to monitor are associated automatically. A few screenshots below shows the Tomcat metrics, as monitored through Applications Manager.

1. Memory usage & Response Time :



2. Tomcat Thread details ( for Tomcat 5.x & 6.x )



3. Tomcat Application Summary :



4. Tomcat Servlet Details :



Click Configure Alarms against each metric to configure Thresholds.



In the above image, the health of the Tomcat server is critical. The Used memory is 17444 kB, which is beyond the threshold value of 400 kB.

You can configure corrective actions to restart Tomcat service / server through ‘Run Program Action’, when the threshold is violated or when the service is down.

Conclusion :

Monitoring Applications is a major task for a Network Administrator. It is made easier through ManageEngine Applications Manager. I hope the steps outlined above should help any administrator to monitor Tomcat Applications and troubleshoot for any performance errors, help in Capacity planning, generate reports of web usage etc.

Kevin

I am sure you should have come across any one of these messages below, in ManageEngine Applications Manager.

1. Authentication Failed. Kindly provide the correct username and password

2. SNMP Agent is not running in the system. Kindly start the SNMP Agent for Monitoring.

However, the Administrator or Technician may not know when such messages pop up in the Web Client. A configuration change has to be done in order to receive such system error notifications.

Follow these 3 easy steps :

Step 1 : Add the line, as below, to [AppManager_HOME]\conf\AMServer.Properties file.

am.sendmonerrormail.enabled=true



Save the file.

Step 2 : Click Admin -> User Administration -> Select "Admin" User and enter the administrator's email address. If this is not configured, the emails will be sent to the address configured in Admin -> Configure Mail Server.


Step 3 : Restart ManageEngine Applications Manager service.

System Errors will now be notified, if the error still persists for 3 consecutive polls. The Administrator will start to receive notifications for any such system errors.


Kevin

Well, this has been posted frequently in our forums. Customers using two or more ManageEngine products should have definitely come across this.

Why does this happen, at the first place?

All ManageEngine products have been built on the same carrier platform and all use Tomcat / JBOSS server for serving the webpages. The cookie set in the browser by these products have the same name(JSESSION_ID) and the context path. So, when you access one ManageEngine product ( say for example, OpManager ), the cookie is first set on your browser. When you access Applications Manager or ServiceDesk Plus, you will be prompted to login to the web client. The value of the cookie is now set (ie., updated) to what Applications Manager or ServiceDesk Plus server offers. However, when you try to access the OpManager pages, the value of the session cookie will now be different from what was set earlier through OpManager and hence, you are forced to relogin with a session timeout message.

You will now be interested to know how to overcome this. It is easy, though the individual products are now working to change the cookie name.

1. Access OpManager through the hostname of the server and access Applications Manager or ServiceDesk Plus through the ipaddress.

2. Install these products on different physical server or VMWare instances.

3. You can think of setting up different hostnames ( CNAME entries ) for the applications in your DNS.

I will keep you all posted when this is getting addressed.

Kevin

Every organization has its own Applications ( be it critical or non-critical ) to monitor and they have their own teams to administer these applications. Not all team members has the same level of expertise to troubleshoot the application errors. With ManageEngine Applications Manager, this is possible at any level.

[ This is a live situation that happened a few weeks ago in our Client office. We were elated to find out that with Applications Manager, there were able to find out the root cause of the issue and were able to fix it within minutes of identifying the root cause. ]

Let us take an example here to see how ManageEngine Applications Manager helps technicians to troubleshoot application errors.

Payroll System :

This system should have a frontend JSP / ASP web page and a backend MSSQL or Oracle Database. Let us fine drain this to have a JSP frontend through Tomcat Server and a MSSQL database,both the components residing on two different physical servers.

Let us say a user reports to the Payroll Administrator that the application is responding too slow that the login takes around 2-3 mins.

The Payroll Administrator has to now login into the application to validate the incident. Though it may or may not be slow to the Administrator, he has to now resolve the issue for the end user. With ManageEngine Applications Manager in place, the Administrator can get an holistic approach on the performance of the Application.

The Administrator can look for the following through ManageEngine Applications Manager while working to troubleshoot the application performance :

1. Check whether the CPU / Memory of the Server is normal.


The screenshot shows that the Memory has shot up to 94% and is always a constant at this value. This may have violated the Threshold value and indicates that there is a performance issue.

2. Now, the next area to troubleshoot is the Tomcat Server. On analyzing the tomcat server parameters, it has been found that the Used Memory of the application is 13 MB while the total memory allocated is 18 MB.

                                 

On further analysis, the administrator finds that there are 25 Current Threads for a particular connector which causes the memory to shoot up.

3. The analysis is still not complete. The Administrator drills down further to find out why the Memory used by the Tomcat Server was close to 75 %. The next area to look into is the MSSQL database.

                                                

Observing the above screenshots, the administrator concludes that the Root cause for the slow performance of the payroll application is due to 70 Active Connections per min, while the optimum value should have been at 30. There were unwanted connections by end users to the DB Instance, which has caused a degradation in the performance of the application. [ Refer my blog "Thresholds & Managing Application Performance Proactively" for more details on configuring Thresholds to various parameters ]

Now, the next question is that “Should I have to go into each of these monitors every time, an issue is reported?”. You should have guessed the answer right. The answer is “No”. 

See the various approaches which help you to be more proactive than reactive, when such incidents are reported.

1.    You can group these monitors to create a Business snapshot view. The detailed view gives an at-a-glance performance of all the monitors.

                                                                

2.    You can create a dashboard view for these monitors and publish the dashboard on a plasma screen.

The below code snippet is an example to publish your dashboard view.




 <iframe src="http://servername:9090/publishPage.do?method=getPublishedDashboard&pagekey=248a855fea1f90279460dc5e0731493b" align="center" height="768" width="1024" border="0" frameborder="0"> </iframe>


The option to publish the dashboard is available through Actions -> Publish Dashboard from the Dashboard view.


3.    You can include troubleshooting documents for various errors associated with the application performance.


 
You can extend the same steps to troubleshoot any other application error through Applications Manager. Applications Manager follows a pro-active approach and helps ease out Administrator job functions by automatically correcting the errors through custom scripts or programs.


I believe this document serves as a guide to help any administrator to troubleshoot application performance and errors through ManageEngine Applications Manager.

Kevin