With a multitude of digital options available in almost every industry, it’s become increasingly critical that applications and services provide a positive user experience. Doing so requires a high level of availability, made possible (in part) by efficiently identifying and resolving issues with the system, when they occur. To achieve this, monitoring all critical components of an application and its infrastructure is a necessity.
Below, I will discuss Redis – an in-memory database that serves as a crucial component in many applications. We’ll touch on what Redis is, how it works, and how to collect and monitor the logs produced by Redis using Sumo Logic’s Redis ULM (Unified Logs and Metrics) App.
What is Redis and How Can it Help?
Redis is an open-source tool used for high-efficiency data retrieval. At its core, it’s an in-memory non-relational database built to assist developers in maximizing the ability of their applications to retrieve data in the fastest manner possible. In turn, this enables them to deliver the best possible user experience by ensuring that end users wait a minimal amount of time for data to be retrieved when requests are made.
Redis can prove useful in a variety of use cases, including that for caching data, such as that which may appear on a web page. In this instance, Redis can be leveraged to store the data, preventing a round-trip to the database from occurring each time a request is made.
For example, let’s imagine a web page that loads with data represented on the page. This page might typically be implemented in a fashion that requires the web application to make a call to the database to return the necessary data, possibly delaying the page from loading by a few seconds or more.
With Redis, this information can be stored in-memory and made available for faster retrieval. Instead of round-tripping to the database to fetch the data each time this particular page is requested, the application can first check Redis to see if the data is cached there. If it is, the information can simply be pulled from Redis, making the requested page load faster, thereby improving the end user’s experience. If not, the trip to the database can be made with the data then stored in Redis for future requests.
Monitoring Redis Logs and Metrics
All quality services produce logs, and Redis is no exception. To ensure that Redis is functioning properly and providing value, it’s important to monitor Redis logs and metrics in a consistent manner that allows DevOps teams to quickly identify problems and glean insights from the corresponding data. One way this can be accomplished is through the use of the Sumo Logic Redis ULM application.
Using Sumo Logic to collect Redis log and metrics data
The Sumo Logic Redis App is built for those running Redis in both Kubernetes and non-Kubernetes environments. Though the instructions differ depending upon the type of environment, the overarching process is basically the same:
Fields are configured within Sumo Logic to ensure that the data sent to Sumo Logic is tagged with the metadata needed by the Sumo Logic Redis app dashboards.
Collection is configured to send log and metrics data from Redis to Sumo Logic.
Installing and using the Sumo Logic Redis ULM App
Once collection has been configured for Redis log and metrics data, it’s time to install the app itself to get up and running with full-service monitoring. The app is in the Sumo Logic app catalog, where it can be accessed for installation.
Upon installation, the user is provided with preconfigured dashboards featuring visualizations that enhance the ability of DevOps personnel to gather critical insights from the collected data. These dashboards include the Redis – Overview dashboard, which enables team members to monitor cache hit rate, fragmentation ratio, and more. Additionally, another useful out-of-the-box dashboard is the Redis – Logs dashboard, which allows DevOps folks to view detailed log analysis and to monitor incoming error and warning messages generated by the Redis server.
Alerting with the Sumo Logic Redis ULM App
A monitoring strategy is hardly complete without the ability to alert when problems arise. With the Redis app from Sumo Logic, DevOps teams can rest assured that the correct personnel are notified when a Redis cluster is unavailable or performing inadequately. Sumo Logic actually goes the extra mile when it comes to enabling quick and easy setup of such notifications by providing out-of-the-box alerts with preconfigured thresholds based upon industry standards.
All applications and services experience failures. Teams that identify and resolve these failures in a timely fashion ensure the lowest possible interruption to their end users, and the best possible user experience. To do so, log and metrics data must be utilized in the most effective manner possible. This can be facilitated by leveraging monitoring tools that centralize log and metrics data, allow for the early discovery of incidents, and enable thorough and insightful analysis of this information. In the case of Redis, this is possible through the use of the Sumo Logic Redis ULM App.