makara icon indicating copy to clipboard operation
makara copied to clipboard

DTrace probes?

Open sax opened this issue 10 years ago • 7 comments

I have some DTrace probes added to a branch I created to test out #87 in our infrastructure. Would you be interested in having a pull request for these?

I can understand your response either way... Feature utility vs. feature maintenance. Just let me know!

sax avatar Aug 25 '15 21:08 sax

hey @sax - a few thoughts. maybe we could generically hook those spots you found interesting in a callback or something. then people could do what they wanted. analytics_handler or something. for example if you just said dtrace maybe that ones built in but you could also give a proc or a class name.

I'm thinking there are lots of spots to allow named or generic callbacks like that. one case is from https://github.com/taskrabbit/makara/issues/85 where there is a way to have an override the pool selection.

@mnelson suggested

master_node_selector: 'Makara::NodeSelectors::SingleWithFailover'

bleonard avatar Jan 06 '16 16:01 bleonard

This sounds like a good solution. I'll work on a pull request now.

sax avatar Jan 06 '16 18:01 sax

@sax @jacobbednarz any thoughts on these two PRs (https://github.com/taskrabbit/makara/pull/126 and https://github.com/taskrabbit/makara/pull/103)?

I'm just catching up and attempting to be a good citizen here. Are you using either one of them in prod?

bleonard avatar Sep 09 '16 17:09 bleonard

I'm no longer at the company where we did this work. They are still using #103 in production, but I don't see any problems with going directly to ActiveSupport::Notifications (unless you want to eventually drop the hard dependency on ActiveSupport). It would be pretty easy to switch over the DTrace probes to hook into AS notifications rather than the custom notification module.

#126 doesn't provide any tests for the notifications, if you care about such things.

sax avatar Sep 09 '16 18:09 sax

Thanks @sax

bleonard avatar Sep 09 '16 18:09 bleonard

The purpose behind my pull request was getting some sort of framework in place so that we could monitor behaviour before launching it into production. Due to the scale this was going to be used on, I wasn't comfortable using this without some instrumentation that we could benchmark against our existing stack and confirm this didn't introduce performance regressions.

I will be revisiting the read/write split for our DB's however at this stage, it won't be in the immediate future so you're free to do whatever you'd like with the pull request. You're more than welcome to work on that branch if you'd like to continue it.

jacobbednarz avatar Sep 10 '16 22:09 jacobbednarz

Instacart system is embedded with fraud inside the whole system how drivers are rated and tips being paid .....

metatron1973 avatar Jun 23 '22 18:06 metatron1973