DISCLAIMER: This project was developed as part of an innovation / hacker day from Dynatrace R&D. It is not complete, nor supported and only intended as a starting point for those wanting to integrate the OneAgent SDK for C/C++ with Ruby.
This repository provides a partial Ruby binding for the Dynatrace OneAgent SDK for C using FFI. The FFI module is defined in oneagentsdk.rb
and sample code using it can be found in oneagentsdk_demo.rb
.
Currently the bindings for the following features of the OneAgent SDK are implemented:
- Incoming web request tracing
- Outgoing web request tracing
- SQL database query tracing
An object-oriented wrapper might be desirable when including the FFI module in your Ruby application, as the module's methods mostly resemble the plain C functions provided by the SDK. Please refer to the OneAgent SDK for C documentation for usage information.
The sample binding and demo app were tested with MRI/CRuby v2.5.1 and FFI v1.9.25 on Ubuntu 18.04 x64 with OneAgent SDK for C v1.2.0 so far.
- Dynatrace OneAgent SDK for C version 1.2.0 (and above)
- see its documentation for requirements and compatible Dynatrace OneAgent versions
- Ruby FFI
This project is NOT SUPPORTED and is provided "AS IS" by Dynatrace.
We welcome community work in this project! Extensions and fixes can be provided via pull request, to report issues and/or ask questions please use GitHub issues.