top | item 32424755

The four pillars of data observability: metrics, metadata, lineage, and logs

155 points| kzh_ | 3 years ago |metaplane.dev

27 comments

order

pbowyer|3 years ago

We're good at logging text, but how do you handle logging assets (images, audio - anything non-textual but generated) and associating them with your logs?

For example an image processing pipeline. You don't always want to log (it'd never scale) but as part of a trace you might want to keep the intermediate files so you can track down where the problem is. You've already got text logging for each step, recording metrics like duration and which filters were involved. I have saved files and referenced them in the logfile, but no log viewers I've seen understand anything beyond text. So I then have to build my own UI or open the images in turn.

Is there a pattern to handle this?

kzh_|3 years ago

+1 on existing log viewers being particularly well suited for text over non-textual assets. My experience here is limited but I believe Grafana has a dynamic image plugin if you store a link to an asset in blob storage or Base64 encode it.

I've also heard of people storing those links in a database like Snowflake then creating displays on top using Tableau or Looker, to avoid having to build a web app from scratch.

nerdponx|3 years ago

It might be interesting to have something like "statistical logging", which saves the intermediate image files 1% of the time and discards them after 30 days.

pm90|3 years ago

Maybe wild idea: generate a unique text identifier for the image + an s3 url, log that identifier rather than the image. I guess its logging metadata rather than the actual data.

SnowHill9902|3 years ago

- unused memory is wasted, you may be able to store the raw image. - if your process is deterministic store a hash. - store a low resolution image.

swordsmith8|3 years ago

Seems like the the key pillars are: freshness, volume, schema, distribution, and lineage.

Makes more sense this way, I think...

If you think about metrics, traces, and logs (software observability pillars) as three distinct things, it's hard to view metadata separate from metadata, lineage, or logs. Metadata is kind of the glue that holds everything together.

This article has more relevant sources, IMO, even if it is from a SaaS vendor.

https://www.montecarlodata.com/blog-what-is-data-observabili...

xcambar|3 years ago

Off topic: there seems to be a growing trend at HN of posts reaching the homepage with a reasonable number of upvotes yet without comments.

I don't know how to proceed with these posts (and this one), yet the temptation of mentally flagging these as friendly upvotes or point hoarders is strong, and I must admit that such posts receive less attention and more suspicion from me.

YMMV.

kzh_|3 years ago

OP here, I posted this a few days ago and was surprised to see it on the front page this morning. Not sure why it says I submitted 4 hours ago when I wasn’t awake, maybe the second-chance pool (https://news.ycombinator.com/item?id=26998308)?

But I’m also generally skeptical of high upvote/comment ratios, because as a long-time HNer too I also want to read things that are genuinely interesting. In this case, I can promise you neither I nor anyone on the team is soliciting upvotes for this post.

On that note, if anyone has any comments about the content itself, happy to discuss further.

metadat|3 years ago

Edit: I went and read TFA, and must say there were some red flags. CS people who add "PhD" beside their name are not only pretentious, but are trying to throw their academic weight around instead of letting their ideas and presentation stand on its own. Filled with more marketing fluff than useful information. Ugh.

I'm siding with you on this. I've "undowned" you and upvoted instead; Sorry xcamber!

--

If you're really concerned, email dang (hn@ycombinator.com) and ask him to look into it. As a sidenote, if you actually flag out of suspicion of a voting ring or other feelings without real evidence, it is abusing the power you've been entrusted with. Threads like this one are also way off topic, seems more considerate to submit an "Ask HN" post rather than hijack the story discussion.

The group dynamics are often surprising on HN.

rubiquity|3 years ago

You could try reading the article and commenting with your own original thoughts.

vbezhenar|3 years ago

My guess is that people are interested with this topic and want to read discussions from other people, but don't really have anything to add right now. Sometimes I upvote topics using those thoughts.

ctxc|3 years ago

Fair point. Although I must admit it affects (people like?) me directly - I make it a point to always go through the comments before I read the article as a matter of habit.

MonkeyMalarky|3 years ago

I often upvote articles because I have a passing interest in the topic and want to see the content/author get intellectually flogged by HN users.

Dowwie|3 years ago

There's not enough information shared about what metrics people monitor and why. Accurately measuring complex system performance and utilization over time is hard work! Observability platforms such as DataDog and New Relic are very expensive. Engineering teams repeat mistakes, recording too much information, getting the bill, and rushing high-priority pruning exercises through engineering to stop the financial bleeding. I encourage everyone to share their monitoring setups!

AishwaryaVenkat|3 years ago

We use Atatus, that can help with application performance troubleshooting and optimization, helping us to identify slow database queries and optimize query performance.

awinter-py|3 years ago

nobody needs this new saas stuff. I prefer the traditional pillars of: emails from users, live chat feature in product where users shame you publicly if something is wrong, twitter search 'is X down', and 4) having laptop open in passenger seat on commute, tethered to blackberry, and periodically hitting F5 on the page which hits the most APIs