4 ms·
The only worthy math teacher I came across once said "The right answer to 99,9% of the questions I will ask you in the oral exam is: it depends" while smiling c
by atmosx 7y ago
The only worthy math teacher I came across once said "The right answer to 99,9% of the questions I will ask you in the oral exam is: it depends" while smiling cunningly. To answer your questions, the answer is "it depends". What you're really looking for however is not logging, what you're looking for is observability which has 3 pillars:
- Logs
- Metrics
- Tracing and/or APM
The above are true for systems and applications but let's talk applications. Your decision should be based on assessment of at leat the following:
- Do you have compliance requirements? (e.g. GDPR)
- What is your logs/metrics/traces retention period? (let's assume 30 days)
- What is your logs/metrics/traces lifecycle requirements? (are you going to need logs older the 30 days? If not, I'd say don't bother delete everything, keeping them around has managerial and hosting costs)
I advice to take a look at ElasticSearch:
- ElasticSearch for hosting logs
- For sending logs, metrics and tracer you can use filebeat, metricbeat and ElasticSearch APM or Jaeger.
If you are a small startup, I'd say go with ElasticSearch Cloud and use their tools. They do all you need and more.
[1]: I prefer metricbeat over prometheus/grafana because it solves the high availability headache for those who already have an ES cluster and you don't have to support (setup, monitor, manage, scale) an additional stack. You can use a push model which has it's own pros and cons.
ps. No affiliation with elastic, I just spent some time with a variety of their products and like what I see so far.