Better Insights, Faster: Our Latest Integration for System Monitoring
The challenge
One of our customers had issues with lacking visibility into the huge volume of product updates from inriver PIM to Optimizely CMS.
The PIM (product information management) system holds all information about products, such as product information, images, resources and varieties. Via the integration platform this information is sent to the online store.
Thousands of products, variants and complex data target more than 20 different markets. These entities are flowing through the integrated systems at all times. For various reasons, there is a great risk for disruptions in the data flow from time to time impacting the web shop, and correcting issues timely is of vital importance.
The solution
The customer wanted full visibility in the flow of data from inriver PIM to Optimizely CMS, including real-time alerts in case of errors with easy access to information on technical issues or errors.
So we created an observability dashboard to monitor the flow of data. This can also be used for all integrations where requests are sent.
This observability stack has real time dashboards with a quick and clear overview of the integration, including traffic flow and general health. Alerts can be set up to address issues as they occur. There are several panels with heatmaps, graphs, geomaps and more to choose from.
The set up traces each step on an entity through the flow. In case an entity fails somewhere, it is easy to figure out where and why it happened. Which saves a lot of time for both developers and the customer.
Our observability stack was built for the most common cloud platforms, with open source technologies such as Grafana. This way our services can easily be adjusted for other use-cases as well.
Key takeaways
- State of health and statistics for the integration at any given time
- Rich set of dashboards to choose from
- Custom alerts inform you of errors in real-time
- Track entities through the whole flow
- Easy to search logs by entity, batch, type, failed/successful status, etc.
- Useful for developers as a troubleshooting tool
- Generic and easy to adapt to other companies and use-cases