At LogicMonitor, we are continuously improving our platform with regards to performance and scalability. One of the key features of the LogicMonitor platform is the capability of post-processing the data returned by monitored systems using data not available in the raw output, i.e. complex datapoints. As complex datapoints are computed by LogicMonitor itself after raw data collection, it is one of the most computationally intensive parts of LogicMonitor’s metrics processing pipeline.
Monitoring your Java applications is an essential part of ensuring high availability and good performance. And yet, many Java developers hold off on practicing application performance management (APM) until they’ve already deployed their application to a test environment, or even to production. Perhaps they don’t have access to an APM solution with the right insights, or maybe they don’t have the time or resources to deploy to a temporary environment and wait for metrics to come in.
If you are anything like us here at Sematext, you are likely always trying to automate any tedious, repetitive tasks. Repetitio est mater… boringdorum. Setting up monitoring falls in that category. You either do it manually every time you provision a new piece of infrastructure or service, or you automate it. Note that by “service” I mean either an instance of your own application or something like Nginx or Elasticsearch or MySQL or …
We all know that Prometheus is a popular system for collecting and querying metrics, especially in the cloud native world of Kubernetes and ephemeral instances. But people forget that Java has been running enterprise software since 1995, while Prometheus is a relative newcomer to the scene. It was only created in 2012! Even though Java has had its own metric collectors since before Prometheus was born, none of our new environments speak its (metric) language. How can you bridge that gap?
As important as adding new features, app developers need to start placing more emphasis on the security aspect of the applications they design. After all, more app features mean more data residing within an app. Without proper security controls in place, that data can be vulnerable to intruders.
Application developers and application operations personnel are together responsible for ensuring that Java web applications perform well. In an earlier blog, we had discussed 7 configurations that Application Operations teams can use to make their Java applications high-performing. In this blog, we will focus on Application Developers and discuss 6 ways in which they can enhance the performance of their Java applications.
There has been a lingering perception that Java applications are slower than applications written in other languages. So, if performance is important for your application, you should not be considering Java as the programming language to use. This perception was true about 20 years ago, when Java was initially used for developing applications. In the early Java implementations, it took a long time for the Java Virtual Machine (JVM) to start.
It has been 25 years since Java came into existence, and it is still one of the preferred platforms among enterprise applications. As technologies evolved, Java's functionality and programming flexibility also matured in parallel, positioning it as a relevant language for over two decades. New memory management systems and garbage collection algorithms are an outstanding example of this evolution.
In this blog post, we will show you how you can easily trace your Java application to gain insight into its runtime and performance behavior. Using inspectIT Ocelot, we show how to extract any kind of data from an application and how to analyse it with Jaeger.