Decoupled Application Monitoring

Decoupled Application Monitoring

What are we doing now

There is are a lot of new monitoring tools out there. The tools are becoming more sophisticated and there are more of them. How do you keep up with the new Application Monitoring tools when every time you want to try a new monitoring tool you have to update your applications? This slows down your speed of change. So why not decouple your applications from your monitoring tools.

It used to be that a lot of tooling is API based. This means you from your application send data to a API of your monitoring application. To do this your application has to talk the protocol that the Monitoring tool understands. And if you want to switch monitoring tools you will have to upgrade your application.

There are also more and more monitoring tools that use a pull system like Prometheus these pull data from your application. Your application needs to expose an endpoint to the Monitoring tool. This endpoint has to provide the data in a way that the monitoring tool understands. Again this means that if you want to switch your monitoring tool you have to upgrade your application.

All these scenarios have one thing in common the Application and Monitoring tool are tightly coupled. If we want to be able to move between Monitoring tools or do quick POC’s (Proof of concept) with new and upcoming tools we will need to change our approach to monitoring.

Decoupling your Monitoring

The best way I can see is to decouple your Monitoring tools from your application something like this

Application -> Bus Software -> Data Base -> Monitoring Tool

If you want an example of one of these chains:

Application -> KAFKA -> Elastic Search -> Kibana

I am not saying that this is THE chain I am just saying this is a way to setup a Monitoring system.

Some more advantages

If you do this on of the advantages is that what was a series of hard-wired (1:1) data sets, evolved into reusable (1:N) data sets, and is now converging on a common solution (M:N) for the overall IT data collection sector. And this 1:N data set can be used in other Monitoring tools. This would make running POC’s a lot easier and faster. The reason being you do not have to rewrite your application to connect to any new Monitoring Tool. You can even run multiple Monitoring tools from the same streaming data. All do I would not advise you to store the data multiple times but you could use it in more than one Monitoring Tool in real time. If you get most of your monitoring data in one BUS system then it also becomes a lot easier to start correlate your data. Lets say your application has a failure when talking to a Database this database uses a NAS and in that NAS there is a disk Failure. Before you have correlated your failure to the disk you could have been looking into multiple systems or talked t different teams. If all this data was on the BUS and storage in one place you could have found it a lot sooner. This links in with my earlier article on “THE INFLUENCE OF BIG DATA on OPERATIONS.” https://www.dhirubhai.net/pulse/influence-big-data-operations-marcel-koert/

The other major advantages are that your monitoring tools can be switch out without changing your application. Switching Elastic Search to HADOOP is easier now than when you would have to rewrite part of your application.

There are drawbacks

There are some drawbacks. The big one is that you have a extra application in between your monitoring tools and the Application the BUS. This will add latency and risk that the BUS application fails then you would not be able to monitor your application.

But when the setup of your BUS system is done correctly you can mitigate most of these issues.

Conclusion

In the current climate of DEV/OPS Agile way of working , we also need to be agile in our monitoring setup. We can not do this if we have tightly coupled monitoring arrangements. We need to be able to switch quickly and we need to be able to test new monitoring idea's quickly and good enough to see if they add value to our environment or we should not proceed with them. So a Decoupled Monitoring structure is the way forward.

要查看或添加评论,请登录

Marcel Koert的更多文章

  • AI + Interdisciplinary Science

    AI + Interdisciplinary Science

    Why This Should Be Every Scientist’s Dream ?? Ever feel like your research would go further if you just had more…

    1 条评论
  • Deepfakes and AI-Generated Misinformation

    Deepfakes and AI-Generated Misinformation

    A Double-Edged Sword Imagine stumbling across a video of a world leader declaring war, only to find out later it was…

  • AI Ethics and Bias

    AI Ethics and Bias

    Building a Fairer Future with AI AI is transforming industries at an unprecedented pace, making decisions that affect…

    1 条评论
  • AI and Job Displacement

    AI and Job Displacement

    A New Era of Opportunity If history has taught us anything, it’s that technology changes the way we work—sometimes in…

    2 条评论
  • AI-Driven Decision Making

    AI-Driven Decision Making

    Transforming Critical Industries for the Better Imagine a world where AI helps doctors diagnose diseases earlier than…

  • Paying for views/advertisement for your youtube channel is that bad.

    Paying for views/advertisement for your youtube channel is that bad.

    The Debate Over Paid Views and Advertising on YouTube: A Balanced Perspective YouTube is an ever-expanding universe of…

  • Emphasizing Developer Experience in DevOps

    Emphasizing Developer Experience in DevOps

    In the realm of DevOps, the focus has traditionally been on streamlining processes, automating workflows, and enhancing…

  • Rise of Internal Developer Platforms

    Rise of Internal Developer Platforms

    The Rise of Internal Developer Platforms: A Comprehensive Guide for DevOps Engineers In the dynamic realm of software…

  • The Hype About Platform Engineering: Echoes of the SRE Revolution

    The Hype About Platform Engineering: Echoes of the SRE Revolution

    In the world of modern software development, buzzwords come and go, but some stick long enough to redefine the way we…

  • Openshift V Kubernetes

    Openshift V Kubernetes

    OpenShift and Kubernetes are both popular container orchestration platforms used in the deployment and management of…

社区洞察

其他会员也浏览了