The Catchpoint Open Source Software (OSS) Program
Catchpoint has always embraced new technologies and ideas. We offer a powerful monitoring platform with advanced features such as tracking digital performance from across the globe, capturing analytical data and the ability to get notified across various channels. With all these inbuilt features in hand, Catchpoint encourages its customers to build new monitors and integration that consumes monitoring data that are tailored to specific use cases. This ability to customize has helped create new custom monitors and integrations with amazing tools.
To help boost the effort, we are launching the Catchpoint Open Source Software (OSS) program. This program is aimed to share the various integrations and custom monitors build by Catchpoint publicly in our GitHub repository. New custom monitors, generic apps, and integrations will now be available for use under MIT license.
Why Open Source Software (OSS)?
OSS is used to build monitors that are not already available in the Catchpoint platform. We have built many custom monitors and integrations using open source software. A custom monitor allows you to monitor and gather specific performance metrics of a system or service. For example, You can use existing web monitor to track user journey with multi-step transactions but if you are looking for additional features, like querying a database, then you will need a custom monitor. Similarly, OSS can be used to build integrations with third-party tools that can then consume data from Catchpoint.
A number of customers have taken advantage of the custom monitor feature. We have had many instances when an integration or a custom monitor built by one developer is reused by another developer with very little or no modification at all. Making these integrations available in a centralized repository with comprehensive documentation can be a time saver. This eliminates the need to start from scratch, you can implement and monitor faster.
Catchpoint has launched a centralized repo in GitHub, one place to store them all. Each repo will have detailed instructions required for implementation and setup. We will maintain the repositories to make sure the code meets standards and is easy to be used for all developers. We currently have a custom monitor and an integration available.
Do-it-yourself (DIY)
Catchpoint has amazing do-it-yourself (DIY) features, with APIs and enterprise node setup. These are open-ended features that users customise to suit specific use cases. To understand how this works, lets take a look at some existing integrations.
Measuring VoIP Quality with SIP and RTP
Fig 1. SIP Session setup example with SIP trapezoid.
This monitor captures the performance of an audio session using an enterprise node. It calculates various SIP and RTP metrics to understand the quality of a SIP over VoIP audio session. Read more in our blog.
Native Application Monitoring with Catchpoint and Appium
Fig 2. Catchpoint and Appium set up architecture.
This monitor can be used to track native applications on an Android device. The device is connected to a physical enterprise node and a custom script is triggered to check the health of an application using Appium. Read more about the integration here.
Accelerate Observability with Catchpoint and Wavefront
Fig 3. Combination of monitoring and observability tool.
The integration uses Catchpoint’s Test Data Webhook to send performance metrics on every run. The data is stored in Wavefront and can be used to plot different charts and dashboards. Read more in this blog.
Visualize Data with Catchpoint and Tableau Integration
Fig 4. Catchpoint and Tableau set up architecture.
The Catchpoint-Tableau integration uses Catchpoint REST API and Tableau Web Data Connector. it uses Web data connectors (WDCs) to get data over HTTP/HTTPS. Data sources for a WDC can include internal web services, JSON data, REST APIs, and other sources that are available over HTTP or HTTPS. Read more in our blog.
These integrations cater to specific use cases and shows how Catchpoint’s capabilities can be extended using OSS.
GitHub Repo
The image below (Fig 5) explains what is included in the Catchpoint GitHub Repository.
Fig 5. GitHub repo contents.
Custom Monitor lets you run your own code on an Enterprise Node. You can create a script to monitor the performances of your service using the programming language of your choice. Once the code is written, just upload it and schedule a test. Catchpoint will execute your code, process the output data, and collect the metrics you defined. More details here.
Integrations with APIs allows you to pull/push data from Catchpoint. It requires the user to authenticate using OAuth 2.0 in case of a ‘pull’ method. The type of data collected can range from performance, alerts, tests, nodes, on-demand test data, and more.
Generic App allows you to passively collect data from any source over HTTP. The Generic App accepts custom-defined metrics and dimensions in a JSON payload. When sent to the Catchpoint logging servers, the data is ingested into the Catchpoint platform where the data can be processed, analyzed, reported, and used to trigger alerts.
Conclusion
Launching OSS is one step towards making a centralized repository for all Catchpoint integrations. It makes it easier to track existing custom monitors and integrations. Developers will find this helpful as they can follow the detailed instructions easily to customise the code based on their specific use cases. This will save a lot of time when implementing projects and also builds an amazing community where developers can find all the resources they need in a single space.