Will Application Monitoring Bridge the Gap for DevOps?
As operations, we look at a new platform/protocol/architecture/interface/tool, search a bit on Google®, and generally find that manageability challenges fall somewhere under a normal curve, or at least within the guardrails. However, new buzzword technologies including cloud, hybrid IT, containers, microservices, CI/CD, DevOps, and SDX have us facing unfamiliar territory and new requirements. While we’re not required to immediately adopt all these technologies wholesale, especially not without a blip to the general running and maintenance of IT systems, there remains one pain point that is increasingly difficult to avoid: distributed application components. And there’s always heartburn when we’re accountable for infrastructure our tools can’t see.
Cue DevOps. DevOps bridges the cultural divide between application development and operation teams. Feedback loops between the two teams, one of the core tenets of DevOps culture, should be as strong and simple as the services being created. Cloud-native is a great example of where lots of independent, simple services are easier to repurpose over time. Once you break indivisible applications into distributed architectures, the question isn’t will there be an increase in the interconnected complexity and number of components, but how much? And how many?
These new distributed architectures create a need for all tech pros and DevOps teams to prioritise new technology, and new learning that will facilitate innovation and lead to new opportunities that our businesses demand. Every vendor is on a unique journey toward equality with tools they’ve relied on for years, perhaps even decades, creating an awkward void for the industry. As tech pros experience growing pains, how are we reaching new heights of expertise and systems performance?
Modern Applications Need Modern Monitoring
For consumers, applications are often the prime interaction channel, driving experiences that can define brands. When apps went viral, the need to add new features and respond to user experience on a more frequent basis shook the app development landscape, not only in monitoring applications, but also for observing them. Many organisations are still playing catch-up. As the ease of development, frequency, and automation of deployment increases, so does the likelihood of introducing dark corners that ops team may have no idea exist.
Increasingly, legacy apps have been deconstructed into new, alien forms, becoming more complex and difficult to monitor. Polling-based monitoring methods remain key for infrastructure, network, and package applications, but these methods don’t account for the huge volume of distributed back-end transaction steps required for single mobile app screen refreshes. At the same time, the need for tech pros to understand the actual user experience, with real user transaction data for troubleshooting, becomes critical. Application performance monitoring (APM) delivers a broad focus on observability, not just monitoring, but enrolling itself as an important tool at the forefront as an important tool.
But APM tools like transaction tracing aren’t yet standard-issue in monitoring toolboxes, having not been perceived as necessary until app customisation became commonplace as well as the rollout of a continuous delivery. 2018 has witnessed a growing number of admins asking for just that: extensions of what was once DevOps-driven instrumentation into existing NOC dashboards. Often declared as “the delayed and conservative approach” to new technology, there is often a lag between new application technology and the tools to manage them. This approach can be an advantage, as skipping over bleeding-edge tools to land on increasingly mature, if still new, integrated options can offer the best of both worlds by not having to endure continuous updates for programmes that didn’t exist 12 months ago.
But today, a new breed of tools is emerging on the scene, with the ability to focus on the overall observation of multiple elements of applications that follow the same model as the distributed services they monitor. Rather than a full big-bang deployment, the introduction of smaller, single purpose services enables the single replacement of individual components over time. Don’t want to be torn between the two? A dedicated search to finding these tools that match and broaden the capabilities and effectively integrate with your current toolset may be a slight change, but assuredly offers the best of both worlds by providing additional and shifting capabilities without the burden of a completely new solution, or duplication of functions you already own.
Data is the Currency, Insight is the Price
The data pool is getting larger every second. Tech pros are learning to swim amongst the data but are increasingly understanding the importance of gathering meaningful insights from applications originating across the range of on-prem, hosted, hybrid IT, and cloud environments. Performance issues, bottlenecks, and downtime—not to mention data to drive orchestration, dynamic resource allocation, and more—lie at the heart of poor user experiences. But without the right tools, are we doing more harm than good? While the tools (or lack of) aren’t returning us to the dark ages, the cause(s) of these problems and the complexity of troubleshooting is beginning to keep admins up at night. By combining traditional monitoring capabilities with tracing (and ideally, events and logs), it synthesises polled and observed metrics into a useful, actionable whole.
Environments are becoming increasingly more distributed and complex to keep an eye on. The pivot between application metrics, traces, and infrastructure statistics quickly becomes second nature to not just keep the lights on or to solve performance problems, but to identify opportunities for improvement. And that’s something businesses are always excited to see. Unlike a jigsaw, we don’t yet have all the pieces, or in this case tools, to provide a complete picture of our IT environments that seamlessly work together. Perhaps it will be application performance data and operations feedback loops that finally bridge the gap between application developers and operations.