Library Constructor for Go Telemetry Without Kernel Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing telemetry intercept and analysis tools are not readily adaptable for programming languages that do not use standard libraries or provide kernel access, such as Go, making it difficult to monitor runtime operations of these languages.
Innovation Solution
The use of an intelligent library constructor that modifies the application executable to allow telemetry data collection by an interception library, even if the application does not call functions in the interception library, enabling monitoring of system calls in programming languages like Go without kernel mode access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If telemetry intercept tools use kernel mode access to monitor runtime operations, then monitoring capability is improved, but system complexity and security restrictions increase
Solution Approach 1:
The patent introduces a library constructor as an intermediary component that modifies the application executable to include calls to the interception library. This mediator enables telemetry data collection without requiring direct kernel mode access, thus maintaining monitoring capability while reducing system complexity and avoiding security restrictions associated with kernel mode operations.
2Adaptability or versatility
If programming languages use standard libraries with kernel access, then telemetry interception is enabled, but language versatility and security are reduced
Solution Approach 1:
The library constructor performs preliminary modification of the application executable during the build or loading phase. It inserts calls to the interception library into the executable code before runtime, enabling telemetry interception without requiring the programming language to inherently provide kernel access or use traditional standard libraries. This preliminary action maintains language versatility while ensuring security.
3Ease of operation
If an interception library is directly called by the application, then telemetry data collection is simplified, but applicability to languages like Go is lost
Solution Approach 1:
The library constructor enables the application executable to self-modify by inserting calls to the interception library. This self-service mechanism automatically adapts the executable to work with the telemetry system without requiring manual intervention or language-specific implementations, thereby maintaining ease of operation while achieving broad language compatibility including Go.
Data Source
AI summary
Systems, methods, and computer-readable media for telemetry intercept and analysis tools to work with programming languages that do not provide kernel access are provided. Programming languages such as Go do not provide kernel access and do not call standard library functions during operation of the application executable. A library constructor can be used to modify the application executable so that telemetry data can be obtained by an interception library even though the application executable does not call any functions in the interception library.


