1,776 karma · joined December 27, 2013
LinkedIn: www.linkedin.com/in/kevinslin-nimbus X: https://twitter.com/kevins8 Substack: https://bit.kevinslin.com
in case folks find it helpful: https://github.com/kevinslin/safe-npm
but it’s easy to be a pessimist and pull down other work
i agree that goals are hard and in some sense, set people up to fail by making the target some ephemeral thing in the distance
maybe reframing it as a quest can help it’s something that can be hard it can change you the outcome might be different from what you intended
by all means. do quests. not goals. will go back to nike on this one. just do it
Are you referring to the `datadog.estimated_usage.logs.ingested_events` metric? It includes excluded events by default but you can get to your indexed volume by excluding excluded logs. `sum:datadog.estimated_usage.logs.ingested_events{datadog_index:*,datadog_is_excluded:false}.as_count()`
Grafana Labs comes closest in terms of breadth but their DX is abysmal (I say this as a heavy grafana/prometheus user) Same comments about new relic though they have better dx than grafana. Chronosphere has some nice DX around prometheus based metrics but lack the full product suite. I could go on but essentially, all vendors either lack breadth, DX, or both.
something to keep in mind is that most companies are not like the folks in this thread. they might not have the expertise, time or bandwidth to build invest in observability.
the vast majority of companies just want something that basically works and doesn’t take a lot of training to use. I think of Datadog as the Apple of observability vendors - it doesn’t offer everything and there are real limitations (and price tags) for more precise use cases but in the general case, it just works (especially if you stay within its ecosystem)
For folks running k8 at any sort of scale, I generally recommend aggregating metrics BEFORE sending them to datadog, either on a per deployment or per cluster level. Individual host metrics tend to also matter less once you have a large fleet.
You can use opensource tools like veneur (https://github.com/stripe/veneur) to do this. And if you don't want to set this up yourself, third party services like Nimbus (https://nimbus.dev/) can do this for you automatically (note that this is currently a preview feature). Disclaimer also that I'm the founder of Nimbus (we help companies cut datadog costs by over 60%) and have a dog in this fight.
This is my attempt to create a common model for thinking about usage based pricing across all the vendors and (make a best effort attempt) normalize and compare the actual cost of usage.
If you have any questions or comments, would love to hear them.
I see a lot of comments about how overly complex OTEL is. I don't disagree with this. in some sense, OTEL is very much the k8 for observability (good and bad)
The good is that it is a standard that can support every conceivable use case and has wide industry adoption The bad is that there is inherent complexity in needing to support the wide array of use cases
tldr: live tail is downstream of cloudwatch logs so you still have the same initial delay in first getting metrics. any logs, once ingested, will be pushed to live tail in ~2s. live tail uses websockets under the hood and is a console-first feature - there is no API
As a teaser for a followup: I've been able to create a version of this that is able to generate an extension in one shot without any issues. This is done by giving GPT more context on the expected project layout as well as a checklist of constraints in order to create a valid app. Its not hard to envision a future where all software projects can be scaffolded by a LLM
This project exists because I observed that any section of the AWS docs that start with a *Note* was something that was worth paying attention to. These sections documented gotchas, limits, and other caveats of a particular service. When not observed, they can take anywhere on the order of hours to weeks to work around.
Ironically, AWS has made an announcement yesterday to retire the github docs (https://aws.amazon.com/blogs/aws/retiring-the-aws-documentat...) which means I'll need to invest in adding a page scraping component to this project after June to keep docs up to date
The compromise I've come up with is to focus on understanding the underlying concepts (things that don't change, eg. language paradigms, networking fundamentals, etc) and then develop an index to be able to quickly externalize and reference the specific implementation details (things that change, eg. js frontend frameworks).
The post here is the distillation of this in action (I'm the author). curious how other folks manage knowledge in this space and whether this resonates.
The current one liner: dendron is an open source, developer focused note taking tool that lets you quickly find and organize your notes in vscode using flexible hierarchies.
Given a few more lines, I would add: what IDEs do for programming languages, we want to do for knowledge - that is to say, give you the tooling to manage large amounts of it using concepts like refactoring, lookup, and schemas (think of this as type definitions but for the structure of your notes)
used to work at AWS where I've worked with (and created) legacy services that failed to scale with rising usage (a good problem to have). Its not that these services were badly designed - rather, they were designed to meet the scale and constraints at a point in time. And that's okay
The future is hard to predict - so make it easy on yourself and solve the actual problems you have today vs hypothetical ones that might never materialize.
Especially in tech, by the time you do need to solve that problem, there will probably a better (serverless AI blockchain) technology that you can use to do it
I find that at the end of the day, the only thing that works over long periods of time (and a large number of notes) are hierarchies with a regular structure that can be applied consistently. The pain point with this system is that hierarchies are hard to change and the way we think of things does change. This is why I ended up creating my own note taking tool built around the idea of flexible hierarchies (https://dendron.so)
I find mental models like knowledge in general - useful only if you can find the relevant entry *when needed*. They're not useful if just collected on a shelf but ingrained into memory and lived as everyday live. That being said, first step of ingraining useful mental models is to write them down (hence, [my mental models](https://kevinslin.com/notes/LMpLWbLBIfRzkSjJlF7U1)).