Closed arnaudlevy closed 1 week ago
@arnaudlevy I'm excited where you're going with this! fyi, there is some discussion in #438 about such a feature. Let me know when you'd like me to review it and give you feedback.
Hey @bensheldon, glad you like it! Maybe what I did there could be a first step. Tell me what you think about the names, so I can walk in your steps and adjust. I put all chart config back in ruby, is that ok?
@bensheldon what do you think about denormalizing runtime_latency
?
It would be easier to manipulate as a field in the table.
@arnaudlevy there's a little about storing the latency in #1053.
I would say:
duration_ms
on the good_job_executions
table. I don't think we want to store a float.Tell me what you think about the names, so I can walk in your steps and adjust. I put all chart config back in ruby, is that ok?
Sorry if that's a lot. Only two changes are truly necessary I think (calculate in DB, rename to Performance)
Hey @bensheldon ! Renaming to performance was easy, it's done. I did some SQL limits (start / end), but i'm not too sure what you think about. Here is the current graph (very suboptimal, as every execution is shown).
The idea, for us, is to spot the "slow elephants", the ones that are really long. What do you think?
Don't know if you noticed @bensheldon but @SebouChu added a fix to the filters
@SebouChu added a fix to the filters
Nice! Could you break that out into its own PR?
On that same note, I'd like to isolate this PR just down to the PerformancesController#index
controller/view. That would help me really isolate down this feature and we can work on making it performant/possible. Once we get that done/shipped, then focus on additional features for drilling down (don't throw it away! I just want to make it easier to move forward the first piece)
Hi @bensheldon!
The filters fix is now on this PR if you want: https://github.com/bensheldon/good_job/pull/1373 !
@bensheldon Just finished adjustments here, mainly having one SQL request for the Performances#index, and focusing on the page only.
Right now, the request gets the execution duration with EXTRACT(EPOCH FROM (finished_at - created_at))
, but with #1374, it will be simplified so feel free to merge this one so that I can adjust the SQL request here!
@bensheldon I made the adjustment in the Performance Controller to use duration instead of extracting EPOCH, should be good now!
I had to open a new PR (#1388) in order to push up changes to it (it seems like when a PR is opened from a branch named main
I'm unable to push changes to it 🤷🏻). It looks great and I'm about to merge it 🎉
Thanks @bensheldon, that's really cool!
Perfect, thanks!