Instrumentation Library for Serverless Telemetry Decoupling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In serverless environments, developers face challenges in generating telemetry data using open standards due to limitations in proprietary formats, leading to tight-coupling with proprietary observability tools and restricted support for advanced telemetry data types like distributed tracing.
Innovation Solution
A method and instrumentation library that facilitate telemetry data collection in serverless environments by invoking stateless functions with an instrumentation library module. This module processes trace data from specific services, converts it into telemetry data, and emits it to observability tools, supporting open standards like OpenTelemetry.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If applications emit telemetry data in accordance with proprietary formats, then important telemetry data types (distributed tracing, logging) are supported, but applications become tightly coupled with proprietary observability tools
Solution Approach 1:
The patent introduces an intermediary component (instrumentation library or adapter layer) that sits between the application code and the observability tool. This intermediary handles the conversion and formatting of telemetry data, allowing the application to emit data in proprietary formats while maintaining the ability to switch between different observability tools without modifying the core application logic. The intermediary absorbs the coupling dependency, preserving application independence.
Solution Approach 2:
The patent segments the telemetry data emission functionality into separate, modular components. By dividing the observability integration into distinct modules (instrumentation libraries for different languages, service-specific functional units), the system can selectively enable support for proprietary data types while maintaining the flexibility to connect to different observability backends. This segmentation allows independent management of data format conversion and tool integration.
2Adaptability or versatility
If applications emit telemetry data in accordance with open standards, then observability tool independence is achieved, but important telemetry data types are not supported
Solution Approach 1:
The instrumentation library acts as an intermediary that enriches open standard telemetry data with proprietary data types. While the core emission follows open standards for compatibility, the intermediary layer adds distributed tracing and logging data types that would otherwise be unsupported, enabling both open standard compliance and comprehensive telemetry capability.
Solution Approach 2:
The patent merges open standard telemetry data with proprietary data types into a unified telemetry stream. By combining the benefits of open standards (tool independence) with proprietary extensions (advanced data types), the system achieves both observability tool versatility and comprehensive telemetry support through integrated instrumentation libraries.
3Ease of operation
If proprietary observability tools are used, then telemetry data collection is well integrated, but development costs and time increase due to tight coupling
Solution Approach 1:
The patent implements preliminary action by providing pre-configured instrumentation libraries that contain all necessary code for integrating with proprietary observability tools. These libraries are prepared in advance with service-specific functional units for common services (API Gateway, database, message queues), eliminating the need for developers to write custom integration code and reducing both initial development time and future maintenance efforts.
Solution Approach 2:
The patent uses copying by providing template instrumentation code that can be replicated across multiple services and functions. The service-specific functional units serve as reusable templates that can be copied and adapted for different services, significantly reducing development time compared to writing custom instrumentation code for each service from scratch.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Disclosed herein is a method of generating telemetry data in a serverless environment. The method comprises the steps of: invoking a stateless function, said stateless function comprising an instrumentation library module configured to facilitate telemetry data collection during the execution of the stateless function, said instrumentation library comprising at least a first functional unit, said first functional unit associated with a first service at least by being configured to process trace data associated with that first service; receiving data, at the stateless function, from the first service; extracting, by the functional unit, trace data from the received data; converting the trace data into telemetry data, and emitting the telemetry data to an observability tool.