2
6 Comments

Disappointed by Datadog – Alternatives?

Hey everyone!

I was wondering what services you use to stay on top of the log messages from your servers, your Docker containers, etc.

Last month I signed up to Datadog, which seemed perfect for my purposes, but I find their pricing so intransparent and complicated that I'll delete my account there (I just got my first invoice and was billed for services that I didn't want or use and don't remember signing up for).

My requirements are roughly:

  • Should easily integrate into Docker, since I run most of my backend APIs in Docker containers.
  • Monitoring server metrics (CPU/RAM) is a plus.
  • Support for AWS Lambda logs would be ideal.
  • Alerts
  • Monthly cost for ~1M logs should be below 10$.

What services are you using? Or how else are you staying on top of your logs?

Have a great start to the week,
Johannes

on November 16, 2020
  1. 1

    Hi @jgontrum, where do you run your application? Is it on AWS? And how do you run your containers? What’s their scheduler/orchestrator?

  2. 1

    I'm figuring out how to set up the ELK stack on Dokku. I believe it can do everything you're asking for but you would kind of have to manage it yourself.

    1. 1

      I was toying with that idea because I already have an elasticsearch cluster running (+ kibana), but since I use that in the backend of some projects, I don't really want to use the same cluster for monitoring my application. But the more I think about it, you're right with ELK. I'll see if I can find a cheap, managed solution.

      1. 2

        Let me know if you find something affordable or manage to get it up yourself!

  3. 1

    I used to use (and loved) New Relic, but their pricing also changed to be really hard to work out what I was paying for, so I switched to AppSignal. They are pretty good, and they do give CPU/RAM etc. for all servers, but there are a few things that I really wish they had, plus I wish I could rename servers or categorise them as "app server", "background worker" etc. to separate my reporting. AS tends to try and guess which server does what and it isn't very good at it.

    AS has good monitoring and alerts as well, and you can specify the conditions and how you want the alerts (email, SMS, Slack etc.)

    Sentry.io also seems pretty good, and I might give them a try. I hear lots of good reports in various places about it.

    1. 1

      Thanks for the tip on AppSignal! Unfortunately, I'm looking for something more technology agnostic, since my main use case is sending all the logs from my Docker containers to a service where I can view and analyze them. In these containers, I run Nginx, traefik, Python APIs, databases, Wordpress, and so on. If I understand AppSignal correctly, they are integrated directly into the code of certain applications.

      Same goes for Sentry–I use it to be notified if there is a bug in a JS frontend or one of my Python APIs. But what's missing (hence the log analytics) is a way for me to see at what time there are the most requests to my API, how fast does it respond, what IPs are calling my services, etc. As @nahtnam already pointed out, using ELK stack for this would probably be the best solution for this.