A Hands-on Useful Review of ‘eG Enterprise Tool' for Application and Infrastructure Performance Monitoring for IT Teams:
The IT landscape has changed drastically over the last few years with the advent of new application development and deployment frameworks.
Gone are the days when we had client-server applications running on physical machines.
New technologies like micro-services are giving rise to cloud-native and containerized applications which use dynamically provisioned resources based on the workload demand.
DevOps-driven organizations are going for increased agility in deploying applications to keep up their Continuous Integration and Continuous Deployment schedules.
Also read => Application Performance Monitoring in DevOps
While these new trends are benefiting businesses in their own ways, we should also note that the application architecture is, in turn, becoming more complex, heterogeneous and distributed.
Monitoring, diagnosis, and optimization of application performance are not easy anymore and the traditional approaches of monitoring an application uptime and server resource utilization are no longer enough.
Today, IT professionals are measured by the user experience of the applications that they are responsible for.
When a user complaints of slow application access, the IT teams must have the means to first validate that there is indeed a user experience problem and then diagnose what is causing the slowness i.e. is it an issue in the application code, or a backend database issue, or SAN hotspot, network latency, etc.
To get this level of user experience insight and root cause diagnostics, the IT teams require end-to-end observability and monitoring intelligence.
Here is a hands-on review of a converged application and infrastructure monitoring using eG Enterprise solution.
What You Will Learn:
- End User Experience Monitoring
- Business Transaction Monitoring and Code-Level Visibility
- Deep-Dive Performance Diagnostics
- Root Cause Diagnosis for Application Slowdown
- In-Depth Historical Reports, Trends, and Analytics
- Recommended Reading
eG Enterprise is a 100% web-based performance monitoring, diagnosis, and analytics solution for modern IT environments.
Using a universal monitoring technology, eG Enterprise provides correlated single-pane-of-glass visibility of the performance of the applications and their supporting environments (physical, virtual, cloud, container, etc.).
As a result, when a user is experiencing slow page load times or high transaction wait times as they access their application, this solution becomes your early warning system and thereby alerts you to the problem.
Many stakeholders in an IT organization can benefit from the converged application and infrastructure monitoring.
The key focus of this product is on IT operations staff and administrators. They can be proactively alerted to problems, and identify the root cause of issues and resolve them quickly, as a result of which they continue to deliver great user experience.
Helpdesk staff can also use the solution to triage problems quickly and get the right domain experts involved in troubleshooting a problem. IT architects can get analytics highlighting where the performance bottlenecks lie.
For capacity planners, eG Enterprise provides empirical data that can be used to plan intelligently, in advance. The application code-level visibility provided by the solution delivers insights to developers so that they can tune and enhance their code for peak performance.
This product review provides an overview of the key features and functionalities of eG Enterprise APM solution and briefs us how it helps to accelerate application performance monitoring & troubleshooting and as a result benefit the IT teams.
End User Experience Monitoring
eG Enterprise uses two approaches to monitoring the user experience:
#1) Synthetic Monitoring
This approach simulates typical user sessions with an application. For instance, a simulation could involve a user logging into an SAP application, checking the inventory balance, updating some records and logging out of a session.
The first step in synthetic monitoring for an IT administrator is to record a sequence of application transactions as a script. This script is then played back at periodic intervals from different locations and the results represent the experience being delivered to users of the application.
Synthetic monitoring is especially useful to obtain a consistent benchmark of an application’s performance. It can also alert on the performance problems, even when there is no active traffic to an application (E.g., during late night hours).
#2) Real User Monitoring (RUM)
The limitation with synthetic monitoring is that it measures the user experience only for the specified user sessions and that too only from the locations from where the monitoring is configured.
Application owners may still need to understand what their user population is experiencing. eG Enterprise offers Real User experience Monitoring (RUM) to obtain this.
When drilling down using RUM, you can get a breakdown of the page load time thereby showing the time taken for processing on the browser, network connection latency, server processing time and content download time.
At a glance, the application manager can easily identify the reason for slowness and get to know where to go for troubleshooting the problem. In this case, the slowness is being caused on the server-side.
Real user monitoring with eG Enterprise:
eG Enterprise RUM captures the response time for all the browser-based accesses to the web applications. Reports and dashboards are available to analyze the user experience and workload by geography, web URLs, devices and so on.
Business Transaction Monitoring and Code-Level Visibility
When the RUM indicates that there’s a server-side problem, then the application team will need further visibility into the application architecture and analyze the cause for the transaction slowness.
eG Enterprise employs byte-code instrumentation for providing code-level insights into the transaction performance. Using a tag-and-follow approach, eG Enterprise traces the application transaction flow through the application architecture across multi-tier application servers, message queues, third-party calls, and databases.
The execution time at each tier is measured, thus it is possible to isolate the tier that’s causing slowness of a specific transaction, and that of the overall application. A visual request processing transaction flow graph makes it possible for the application team to visually spot the bottlenecks easily.
Transaction flow visualized using eG Enterprise:
Slowness in the application server indicates that there’s a possible issue in the application code.
Application developers get immediate insight into the exact line of the code or method call that takes time to execute. They can also see which database queries are causing transaction slowness.
Slowness due to third-party remote calls or web service calls can also be identified easily. This code-level transaction trace analysis is available for Java and .NET web applications, regardless of whether the users access the applications from the web or mobile devices.
Deep-Dive Performance Diagnostics
When there is no issue in the application code and if still, the application is slow, then the next logical step would be to check the application server component (JBoss, Tomcat, WebLogic, IIS, etc.)
eG Enterprise provides out-of-the-box monitoring for all aspects of application server performance. This includes metrics about EJBs, servlets, JMS, JDBC connectivity, and much more.
Many times, application performance issues also stem from an incorrect memory sizing of the Java virtual machine (JVM). This, in turn, can result in frequent Garbage Collections or out of memory exceptions.
Run-away threads, deadlocks, thread or memory leaks, etc. can also impact the application performance adversely. eG Enterprise includes built-in capabilities to monitor the Java JVM and .NET CLR.
In-depth Performance Analysis of the JVM:
Root Cause Diagnosis for Application Slowdown
Application slowness can also be attributable to the underlying infrastructure. Network congestion, virtualization over-commitment, storage device failures, cloud infrastructure under-provisioning can also lead to application slowness.
Typically, when there is an infrastructure bottleneck, transactions from multiple geographies will be slow. Many database queries will be slow as seen in the transaction traces. All these highlights the need for extending the visibility of the monitoring beyond the application.
Therefore, the convergence of application and infrastructure monitoring becomes important here.
From the same console, eG Enterprise provides IT administrators the ability to monitor each and every layer and tier of the supporting infrastructure which includes databases, servers, hypervisors & VMs, cloud platforms, containers, network devices, and so on.
When there is application slowness, eG Enterprise auto-correlates the performance of the application with the underlying infrastructure stack and automatically isolates the root cause.
Auto-correlation is based on the discovery of inter-dependencies between the tiers. The dependencies from application to application, application to VM, and VM to a physical machine are discovered.
End-to-end Service topology and Root Cause Diagnosis:
Using a combination of agentless and agent-based monitoring, eG Enterprise collects the performance metrics from across the IT environment.
The telemetry collected for the end-to-end performance analytics includes out-of-the-box and custom performance metrics, transaction traces, database queries, Windows events, Syslog messages, SNMP traps, resource usage metrics, user experience metrics, configuration changes and so on.
By unifying monitoring in one tool and correlating between application and infrastructure performance, eG Enterprise truly provides converged visibility of the applications and infrastructure, eliminates finger-pointing between different teams and delivers a single source of truth for problem diagnosis and triage.
In-Depth Historical Reports, Trends, and Analytics
While real-time monitoring is important, historical analysis and reporting of performance are equally important too.
eG Enterprise includes several pre-built and customizable reports that are targeted at different stakeholders in an organization along with their unique needs (E.g., operations staff, executives, architects, capacity planners, etc.)
Domain-specific reports included in the solution are targeted at the domain experts (E.g., system admins, VMware admins, database admins, Java developers, etc.) These reports can be viewed online, or generated as PDFs and be configured for periodic email delivery.
IT teams can make use of these extensive reporting capabilities for different purposes like performance troubleshooting, post-mortem analysis, compliance and auditing, capacity planning, infrastructure right-sizing, and management/executive reporting.
Built-in Analytics and Reports:
The eG Enterprise APM tool stands out for its completeness.
Its unique combination of deep monitoring for applications, breadth of infrastructure coverage and embedded analytics capabilities, make it an attractive choice for organizations that are looking to enhance the performance of their IT applications and infrastructure.
If you try this APM tool and have any questions, feel free to share your thoughts in the comments section below!!