31 Oct 2023 08:52 PM
Hi,
I have an application that runs on Ruby on Rails version 2.78 and I need to update to 3.0.
Based on this scenario, I have a few questions:
1. Does Dynatrace support this 3.0 version of Ruby on Rails?
2. Does Dynatrace support use with Nginx+Passenger?
3. If I want to migrate to Puma, what is the support like?
The Dynatrace documentation does not clarify my doubts.
I need to be sure.
Thanks.
Solved! Go to Solution.
31 Oct 2023 09:06 PM
Dynatrace only supports Ruby through OpenTelemetry at this time as stated here. There is no direct support for Ruby in OneAgent. You can however also use OneAgent SDK fo C for tracing manually or use the third party module for that. NGINX as a web server is supported and it should give you the basic request level visibility, but no further tracing or other metrics besides OS or process level metrics.
What kind of support and features are you looking for?
01 Nov 2023 12:55 PM
Thanks for the prompt response Julius.
OpenTelemetry is not satisfactory, because for some reason the Trace ID is lost, we were recommended the possibility of doing manual instrumentation but this would be unfeasible for our current infrastructure.
We saw Spica's solution, but as we are Dynatrace partners, we would like Dynatrace to solve the problem itself.
We would like a more concrete response from Dynatrace, really, we don't provide support and for it to be supported we need the environment to look like this...
I hope I was able to be clear in our need, tks.
01 Nov 2023 01:54 PM
For this reason, we wrote our own extension, as DT could not provide us with anything other than OpenTel.
01 Nov 2023 02:37 PM
@RafaelMsantos OpenTelemetry for Ruby provides automatic instrumentation in a similar way to how Dynatrace provides autoinstrumentation for other supported technologies such as Java or .NET, so there is no need to manually instrument your code.
For native OneAgent Ruby support, I'd recommend asking in this thread, however, I also see low demand among (our) Dynatrace customers. The future of collecting telemetry data is OpenTelemetry anyway, so I'd recommend to start using it.
Can you explain more about your issue with lost trace id?
OpenTelemetry is not satisfactory, because for some reason the Trace ID is lost, we were recommended the possibility of doing manual instrumentation but this would be unfeasible for our current infrastructure.
Typically Trace ID is lost within a process when there is a thread-to-thread communication or between processes if trace context is not sent out or received properly. To be able to suggest any resolutions, it's necessary to precisely know your issue and context.
@RafaelMsantos can you elaborate more on
03 Nov 2023 12:46 PM
Hi Julius,
We opened a tiecket for Dynatrace to analyze and they were unable to tell us the reason for this problem, for this reason we dismantled the testing environment. 😞
03 Nov 2023 01:13 PM
If you want let's catch up on LinkedIn and try to help you 🙂 - maybe we will come up with a common idea.
03 Nov 2023 02:21 PM
Oh, that's unfortunate. Nevertheless, I highly recommend taking the OpenTelemetry way for interoperability since solutions based on OneAgent SDK can't use W3C trace context. But one needs to know the details of what exactly did not work for you and the conditions of your environment.
03 Nov 2023 02:27 PM
Ok, Ok, thank you very much Julius and Radek.
31 Oct 2023 11:02 PM
If you need to monitor a Ruby on Rails based application then I recommend our plugin that @Julius_Loman mentioned. If you need more information on how it works or help with configuration then let me know 😉 we'll figure it out!
Radek