Continued from page 1.
Developers can use AppDynamics to determine the health of a distributed application, understand transaction paths, determine the root cause of service failures, and gain other key insights into a microservices architecture. AppDynamics APIs can help extend and customize the platform’s features.
Image Credit: Instana
Instana, a monitoring and management platform for Web-scale applications, was founded in April 2015. One of its key features is Stan, an intelligent virtual robot assistant.
Stan helps Instana users (that is, developers and DevOps) monitor and optimize complex applications and architectures via immediate notifications. Stan has extensive DevOps knowledge built in, and continuously learns about and understands cutting-edge application components and architectures. The robot assistant relies on several technologies including a dynamic dependency graph, automatic discovery and sensoring, and health prediction for components and systems. Instana also includes a real-time knowledge engine that automatically discovers application topology and interdependencies.
Instana uses machine learning, mathematical algorithms, and a proprietary knowledge system to provide dynamic graphs and visualizations. With Instana, the company promises, developers can measure the health of a distributed application (latency, error rate, etc.), understand service relationships and interdependencies, investigate specific incidents and service failures (real time and historical), and gain a better understanding of the overall application.
Image Credit: Netsil
Founded in 2016, Netsil’s distributed application monitoring and analytics platform automatically discovers complete application topologies, continuously monitors distributed applications, performs distributed tracing, and analyzes application metrics (historical to present).
Microservices-based applications consist of several services, often built using different languages and frameworks. While the services of a distributed application may use numerous languages and frameworks, the protocols of these services are generally the same (REST, HTTP, RPC, pub/sub, etc.). Some APM tools like Netsil can be integrated with these common protocols monitoring services regardless of language or framework.
Netsil monitors and captures distributed application service interaction data to create visualizations that help developers discover and manage incidents, measure an application’s overall health, and understand an application’s components and dependencies.
Image Credit: OpsClarity
Launched in December 2015, OpsClarity is an intelligent monitoring and analytics platform for high-velocity Web-scale applications. OpsClarity promises features that include automated topology discovery and metric collection, topology visualization, and performance monitoring.
One of its components is an Operational Knowledge Graph which understands and continuously learns operational data models, service topologies, and other application/system performance baselines. Developers can take advantage of the OpsClarity RESTful API to capture custom metrics, tag annotations for each metric, and push metrics and events. OpsClarity also provides monitoring and analysis tools that show a top-down, consolidated view as well as drill-down data visualizations.
OpsClarity uses AI and graph analysis to visualize and analyze distributed applications at scale. Infrastructure hostmaps show the health of each host or service; topology graphs help developers to understand service dependencies and infrastructure components; and the time-line feature enables developers to go back and look at previous system statuses to learn how errors and failures occurred.
Most of the APM tools highlighted in this article include common capabilities such as automatic discovery of application topology and interdependencies, monitoring of application health, service level alerting, and replay system statuses.
Automatic discovery of application topology and interdependencies saves developers time and reduces the mean time to repair (MTTR). Developers do not have to spend hours trying to figure out service associations and mapping application components. Visualization of application topology can help developers identify and reduce bottlenecks in service dependencies.
Services within a distributed application may have latency issues, errors, and other problems that impact the overall health of the application. Tools that monitor application health and provide service level alerts help developers quickly discover and fix application problems.
Some APM solutions include historical replay capabilities that help developers investigate and determine the root cause of service failures and errors. Historical replay of system statuses can also help developers discover topology changes and gain a better understanding of the overall application.
A New Generation of APM Tools
The number of complex distributed applications continues to skyrocket, creating a need for new types of application monitoring and visualization tools to help the fretting developer, lost in a maze of debugging, figure out, “Why isn’t this working the way it should?!”
Several application monitoring and management platforms are doing their best to give developers insight into these complex, interrelated applications. These APM platforms are leveraging advanced technologies such as artificial intelligence, machine learning, and graph analysis.
Traditional application monitoring and management platforms are no longer enough. As application architectures continue to evolve and become more complex, the tools to monitor, analyze, and manage applications must evolve as well.