bglusman

bglusman

Anyone running (or wanting to run) Live Dashboard in prod, I'd like to help you with custom metrics/history!

So I did some work on getting metrics/telemetry history into Live Dashboard (here) and I have it working well locally for my company’s production app, but I don’t have any internal use case or mandate for some of the more complex charting that LiveDashboard can provide.

I’ve already made code changes based on the feedback (passing entire metric instead of just metric name to the hook), but José has also asked for more real world data/example implementation to improve this PR, and unless I’m missing something or one of you would like to help me gather it from your applications, I’m not sure what to do next! One idea I have is PRing some telemetry and my LiveDashboard fork into GitHub - thechangelog/changelog.com: Changelog makes world-class developer pods. This is our open source platform. · GitHub (if anyone knows Jerod Santo or Cody James or others involved in it, I know of it but am not involved in the community), or maybe @doomspork is interested in me helping to add it to https://elixir-companies.com/ (It’s alwesome you guys opened up your LiveDashboard to anyone logged in Sean!). Currently they don’t have any custom metrics up there, but the hook will work for any Metrics, including Ecto, Phoenix or VM metrics, so that a visitor would have some data load in the charts immediately! I think since that’s already public facing that might be one of the best use cases if Sean is open to it, and since it’s already open source at GitHub - beam-community/elixir-companies: A list of companies currently using Elixir in production. · GitHub I could just hop in and open a PR, but want someone to be open to it first, and this seemed like the best place to find someone interested in helping to prove it out with me!

Let me know if interested, or share alternative thoughts/ideas. I can also demo running historical_data fork dashboard running from my computer for anyone who wants to see what I mean via an ngrok link if there’s any confusion. Thanks!

Most Liked

bglusman

bglusman

Feel a little silly/funny updating here without anyone else commenting, but GitHub - bglusman/phoenix_live_dashboard at historical_data · GitHub has updated code and docs, including integration with dev version of dahsboard I hadn’t noticed initially, so if you checkout my fork on git, and check out the historical_data branch, you can try out live_history feature by starting HISTORICAL_DATA=true mix dev and the VM metrics page will show you history for up to 50 events when navigating to the page. Hopefully this also helps address José’s concern over memory increase from the feature. The PR is still sitting in review at elixir-companies but I’ll update it so that one has memory history also later today.

bglusman

bglusman

Had a great NYC Elixir Meetup last night with a lot of folks interested in the history feature (and it was a perfect presentation from @SophieDeBenedetto talking about telemety and LiveDashboard which was really great, and a great lead in to talking about it this stuff with everyone else afterards, thanks again Sophie! She shared her slides after but I’ll let her decide if she wants to share here/elsewhere in the forum).

I tried to simplify my first attempt at history for the companies repo in elixir-companies today and I think this is much closer to a workable v1, with some light logic living inside the hook for interpreting data sent from history source. Right now it’s not erroring, and the history is being stored, though something seems to have broken the JS chart receiving/updating the initial history properly, though live metrics are coming in fine… both repos are updated, so I’m taking a break but if anyone want to help me rubber duck it love to schedule some time soon! cc @fhunleth @doomspork

bglusman

bglusman

Forgot to post here, the PR is merged into GitHub - beam-community/elixir-companies: A list of companies currently using Elixir in production. · GitHub and anyone willing to auth via github at https://elixir-companies.com/en and then visit https://elixir-companies.com/dashboard can go to metrics tab and see history on 3 of the 4 tabs… there is one small issue pending where the chart doesn’t render right until the first datapoint comes in AFTER the history, which on VM and Companies tab happens almost right away, but on PageViews tab you may need to go hit the indexes they measure once or something to see proper rendering… I suspect some kind of JS race condition or timing sensitivity, but if anyone has ideas/wants to help chase that down help would be welcome!

Where Next?

Popular in Discussions Top

vans163
So useless benchmarks aside, Its possible to write a webserver that can serve 300k requests per second (perhaps more with optimizations)....
New
Donovan
Hello everyone, I’m so glad to have discovered this awesome community. Thanks for creating it! This is my second post, and apologies for...
New
Ankhers
Just a little information upfront. Generally speaking, if I feel like I need to either break a pipe chain or use an anonymous function in...
New
AlexMcConnell
The reason that Rails is as popular as it is is because it’s very easy for relatively inexperienced developers to get a lot of work done....
588 19652 166
New
AstonJ
Are there any Elixir or Erlang libraries that help with this? I’ve been thinking how streaming services like twitch have exploded recentl...
New
Crowdhailer
I’ve been hearing much about the new formatter and it’s something I have been keen to try. I find examples buy far the most illuminating...
248 19327 150
New
CharlesO
Erlang :list.nth simple, but 1 - based nth(1, [H|_]) -> H; nth(N, [_|T]) when N > 1 -> nth(N - 1, T). Elixir Enum.at … coo...
New
saif
Hello everyone, Long time lurker first time poster here. I’ve recently begun working on Elixir full-time again! :raised_hands: It’s been...
New
griffinbyatt
Sobelow Sobelow is a security-focused static analysis tool for the Phoenix framework. For security researchers, it is a useful tool for g...
New
sashaafm
Piggy backing a bit on @dvcrn topic BEAM optimization for functions with static return type?, I’ve been trying to understand in a deeper ...
New

Other popular topics Top

danschultzer
None of the current solutions worked well for me, so I went ahead and built a user management system from scratch. This project took far...
548 29603 241
New
lessless
I believe there are people here who are dealing with CSV files import on the daily basis, and since Excel is a really popular tool there ...
New
minhajuddin
I have seen a lot of code which picks the first element from a list using Enum.at(0) instead of List.first. Is there a reason why people ...
New
freewebwithme
Using vs code and installed ElixirLS: support and debugger. And I got an error popped up on start up says Failed to run ‘elixir’ comma...
New
nobody
Hi! In PHP: $_SERVER[‘SERVER_ADDR’] - in Elixir? Searched the docs for ip address and the web, no good results. Thanks!
New
ashish173
I am using Ecto timestamps with postgres, I can see the timestamps() use the :naive_dateime but for my use case I wanted to store the ti...
New
rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
PeterCarter
There are pre-rolled solutions for other frameworks that do work. However, Phoenix does not seem to have these. Have people had good expe...
New
sergio
Kind of like when jquery came out, it was super necessary. Existing drag and drop libraries have a bunch of baggage to support old browse...
New
lanycrost
Hi everyone! I need implement if…else if…else condition from my elixir code, and anymore of this control flow structures not work proper...
New

We're in Beta

About us Mission Statement