Datadog on Render?

I was going to integrate Datadog to give some added observability to our applications… but realized that I can’t figure out how you’d install the DD agent in any of my Ruby environments.

Probably possible if I move over to Docker for those… but anyone else have a technique here… or even with Docker, some advice?

1 Like

Hi @Hampton_Catlin ,

I haven’t tried it myself, but it might be a bit tricky without switching to Docker. If you could get the agent package installed, I bet you could run the Datadog agent in a normal Render Ruby environment if you used something like GitHub - ddollar/foreman: Manage Procfile-based applications plus a procfile to run both the agent and your application. Installing the package will be trickier, however, since you can’t install custom package with apt, etc. in our Ruby environments. It’s possible to install the packages locally (rather than globally like most package managers do), but I don’t have any guidance on how to do that, unfortunately.

1 Like

Would the application tracing that DataDog provide be enough? That’s just a gem that’s added to your project - would that give you enough visibility? These tend to suit PaaS more as the underlying infrastructure that the agent would monitor is largely out of your control

I noticed there was a Datadog example Dockerfile provided by Render, but am unsure of how it works / what it does, and how much observability itd provide. Is it essentially a proxy for my other services to send analytics to? is it meant to be a base file to pull form and extend? Im just confused as to what its actually supposed to be doing.

if theres any additional guidance on integrating Datadog within a rails app itd be greatly appreciated!

1 Like

Just wanted to add my vote for a complete example.

I was able to get the Datadog Agent running, but it’s not clear to me how to connect my Rails app to this. The Datadog docs mention creating a ruby.d/conf.yaml file which is where I kinda lose track.

1 Like

I’m trying to track Gunicorn worker utilization on Render and I’m wondering if it’s possible. According to the official guide (Gunicorn), I would need to install the datadog-agent on the same VM/container as the gunicorn process.

It looks like the agent looks at the gunicorn process directly to understand how many workers are busy. Is this achievable on Render?

We’ve considered switching to a Docker build, but it’s not clear how I could run both my app and the datadog agent inside the same container.

Hey there Francesco,

We have the Datadog agent as a deployable Docker example at https://github.com/render-examples/datadog-agent which you’d deploy alongside your existing services.

You’d use the Datadog APM and tracing in your application and deliver them to the datadog-agent which sends it to your Datadog account,

Regards,

John B

1 Like

Thanks for this. I forked this repo and installed it as a private service on Render but i’m kind of stuck here since Datadog recommends adding configs for each app source you want to collect logs from but would that mean I would need to download the image and modify it?