Это видео недоступно.
Сожалеем об этом.

Creating Dashboards with .NET 8’s New Metrics!

Поделиться
HTML-код
  • Опубликовано: 23 июл 2023
  • Check out my courses: dometrain.com
    Become a Patreon and get source code access: / nickchapsas
    Hello everybody, I'm Nick, and in this video, I will show you how you can use the new built-in metrics of .NET 8, expose them and scrape them using Prometheus as well as build dashboards with them using Grafana.
    Workshops: bit.ly/nickworkshops
    Don't forget to comment, like and subscribe :)
    Social Media:
    Follow me on GitHub: bit.ly/ChapsasGitHub
    Follow me on Twitter: bit.ly/ChapsasTwitter
    Connect on LinkedIn: bit.ly/ChapsasLinkedIn
    Keep coding merch: keepcoding.shop
    #csharp #dotnet

Комментарии • 113

  • @julienraillard3567
    @julienraillard3567 Год назад +175

    Sounds really interesting, would really love to have a video from you explaining how to setup a prometheus and grafana instances in a real-world use case :)

  • @thabisom
    @thabisom Год назад +29

    Hi @Nick. Yes, please do a separate video for configuring Grafana from scratch. Thank you for all your hard work.

    • @Dominik-K
      @Dominik-K Год назад +2

      I would love to see more about Grafana and Prometheus too

  • @MrVarsium
    @MrVarsium Год назад +12

    yes please, another nice video! and i'm glad that metrics are getting a boost, i would love to see a prometheus/grafana video next! ^^

  • @PanMaciek
    @PanMaciek Год назад +11

    Dashboards are tricky, having concise and readable dashboards is what I want in my life, that video would be super useful to get inspired 😄Who does not want to see numbers going up/down 😄

  • @xDan2710
    @xDan2710 Год назад +2

    This came right at the right time. I am in the process of building some Grafana dashboards with custom metrics for some of my applications, so this definitely will come in handy!
    I would definitely be interested in a more in-depth video.

  • @mrtac_
    @mrtac_ Год назад

    This .NET 8 built-in feature in combination with Prometheus & Grafana is incredible helpful for systems operation & observability. Thank you Nick for sharing this and also providing the Grafana dashboards!

  • @poteb
    @poteb Год назад +6

    You can get full stats on all your endpoints without adding anything to each method. This way you won't forget to add them manually.
    Adding a few extra nugets and you can do this:
    services.AddOpenTelemetry().WithMetrics(m => m.AddAspNetCoreInstrumentation().AddHttpClientInstrumentation().AddRuntimeInstrumentation().AddProcessInstrumentation().AddPrometheusExporter()
    This will also give you metrics on the hosting environment. Brilliant stuff.
    We use Grafana a lot at work, but please do make a video about it, I might learn something new :)

  • @danclarkeuk
    @danclarkeuk Год назад +1

    Very nice. I'm already using Grafana and Prometheus, so will be super-easy to take advantage of these new metrics! The IMeterFactory is a really nice addition too! 🙂

  • @IgorStojkovic
    @IgorStojkovic Год назад +32

    The key thing missing in all these "add metrics" tutorials is how to secure the /metrics endpoint so it is not available to users of your API. There are no good defaults or explanations on that and it can lead to security leaks.

    • @ahmedabd-a6
      @ahmedabd-a6 11 месяцев назад +2

      I was able to use basic auth to secure the /metrics endpoint

    • @Daniel15au
      @Daniel15au 10 месяцев назад +2

      It's a regular HTTP endpoint so any middleware for protection of endpoints could be used.

  • @benlewies8828
    @benlewies8828 Год назад +1

    This is an excellent development. Great video! Yes, definitely do an in-depth video!

  • @dauchande
    @dauchande 11 месяцев назад +1

    Nice to see Grafana and Prometheus get the love they so richly deserve. Developers need to instrument their code more so they actually know what it's doing in Production.

  • @SupBoiii
    @SupBoiii Год назад +3

    More Prometheus and Grafana video please, this is a great one!

  • @systemslave510
    @systemslave510 Год назад

    I want a *deep* dive into this. Been tring to figure out how to do it for a while. Thank you Nick

  • @michaelweaver4439
    @michaelweaver4439 Год назад

    This looks amazing!! - more please!

  • @milans0713
    @milans0713 Год назад +1

    This is a superb stuff. Would love to have more content on Prometheus and Grafana with .NET Apps.

  • @StephenYeadon
    @StephenYeadon Год назад

    Great content as always. A video on Graphana and Prometheus would be amazing. Possibly a video on something like Dapr would be good too and how you might incorporate the metrics with the sidecar metrics generated by dapr.

  • @EzequielRegaldo
    @EzequielRegaldo Год назад

    Oh my godness ! We need it ! Please ! Thank you so much for this content Nick !

  • @gholdridge
    @gholdridge Год назад

    Looks great Nick - Love to see Grafana video too!

  • @tanglesites
    @tanglesites Год назад

    That looks interesting. Now I want to build my own dashboards. You could put that into its own microservice on an api and use event sourcing to not only record but have the visual to aid your system as well. Then you can record how your system is communicating with eachother. I might incroporate this into my Capstone. Great video Nick, as usual.

  • @GiovanniOrlandoi7
    @GiovanniOrlandoi7 Год назад

    Great video! Would love more Prometheus and Grafana content.

  • @xavier.xiques
    @xavier.xiques Год назад

    Really interesting. Thanks Nick!

  • @danielgil3825
    @danielgil3825 Год назад +9

    Would be great to have more grafana videos 😍

  • @ikenwakochukwudi9395
    @ikenwakochukwudi9395 Год назад +1

    Good content Nick. I would love to see the detailed video on Grafana.

  • @hernanar3647
    @hernanar3647 Год назад

    This is a interesting topic, I might create whole a pipeline behavior to my framework from this. Thanks Nick!

  • @yoanashih761
    @yoanashih761 Год назад +2

    Hi, Nick great content as always! Could you please do more video about telemetry and other devops-related topic? Thanks.

  • @sanampakuwal
    @sanampakuwal Год назад +2

    yes want grafana videos, keep up the good work

  • @qniken8770
    @qniken8770 Год назад

    Great video as always. It would be nice if you could give us an example how to build up kestrel with prometheus and grafana :)

  • @Subjective0
    @Subjective0 Год назад

    I had a super hard time trying to set it up for a school project. I would really love to learn how I actually should have done it!

  • @acmesoft
    @acmesoft Год назад

    I want a grafana video!. Good content as always!!!

  • @antonmartyniuk
    @antonmartyniuk Год назад

    Looks great. Please make a video about Grafana and Dashboards in depth

  • @JunaidBedford
    @JunaidBedford Год назад

    Yes Grafana videos. Thanks

  • @simeonnov
    @simeonnov Год назад +3

    This is interesting, thank you. I would love it if you made a video about ways to do reporting in .NET. Something similar to crystal reports but obviously the modern way of doing things. Are there any such tools?

  • @portlyoldman
    @portlyoldman Год назад +1

    Yes please for Grafana, metrics arc videos!

  • @nove1398
    @nove1398 Год назад

    Yes more Grafana videos of course!

  • @fifty-plus
    @fifty-plus Год назад +9

    Prometheus and Grafana are very useful tools, Loki too. Good content as always Nick.

  • @THILLAIRAJA24
    @THILLAIRAJA24 Год назад

    Thanks for sharing this.

  • @georgekopadze791
    @georgekopadze791 6 месяцев назад

    Hello Nick, Thank you for your effort to do that wonderful RUclips videos. Please, it's gonna be really useful if you create a video explaining grafana and prometheus. Thank you

  • @r-naotwo6290
    @r-naotwo6290 Год назад

    Yes! A video on prometheus and grafana pleeeeeaaase!

  • @miguelcervantes629
    @miguelcervantes629 Год назад

    A grafana video would be great! Amazing video

  • @rmichaeldeutsch
    @rmichaeldeutsch Год назад +1

    Cool stuff! 😎
    Is there a way to ignore specific endpoints from metric tracking? (ex: healthchecks, metric scraping, etc.)

  • @AndyMehalick
    @AndyMehalick 11 месяцев назад

    Whenever you ask: "would you like to see a separate video on X?" the answer is always YES! Anything related to OpenTelemetry would be awesome, Prometheus and Grafana included

  • @devmarkmonster
    @devmarkmonster Год назад

    Interesting Video. The problem I always face is the amount of metrics that are shared by default. Same as logging, configuring it to right levels is very important. I’m afraid that the default metrics cause for GBs of data very easily.
    Another thing I could use some guidance on is the combination of logging, traces and metrics with Open Telemetry and what kind of visualization tool to use that supports all of them.

  • @jamesjanse3731
    @jamesjanse3731 Год назад

    Would love to see Grafana and Prometheus video!

  • @Yupmoh
    @Yupmoh Год назад +1

    +1 for a Prometheus / Grafan video! :D

  • @marchenkoalexandr
    @marchenkoalexandr Год назад +2

    You definitely want take a look at OpenTelemetry Operator with its Autoinstrumentation, it will do the same and even more (traces) without the need to touch the app at all. (The only downside it is totally not ready yet for realistic usage, but is really promising)

  • @samuelantony3934
    @samuelantony3934 Год назад

    Really interesting, please explain about the setup of prometheus.

  • @jackkendall6420
    @jackkendall6420 Год назад

    I would love to see your overview of OpenTelemetry in general!

  • @vamvdotnet
    @vamvdotnet Год назад

    Yes! Please create a YT video that goes deep in Grafana!

  • @07309415
    @07309415 Год назад

    Would love a video on Grafana

  • @DasturlashniOrganamiz
    @DasturlashniOrganamiz Год назад

    I have migrated my OSS project (called CashOverflow) to .NET 8. Live metrics is not supported yet. If I setup what you taught in my project, is it going to smoothly work in my prod as well? Or is there any additional setup needed for azure service app?

  • @markhenderson5283
    @markhenderson5283 Год назад

    I was working on Grafana today. So I'd like to see a video about it.

  • @ytvandre
    @ytvandre Год назад

    Is this is a replacement for AppInsights telemetry SDK? Would love to see a video about integrating this with azure monitor

  • @stoyangrigorov5634
    @stoyangrigorov5634 Год назад

    awesome

  • @dvanrooyen1434
    @dvanrooyen1434 Год назад

    Nick is there a log exporter for filebeats?

  • @JustNightmare
    @JustNightmare 11 месяцев назад

    Graphana video would rock!

  • @evanboltsis
    @evanboltsis Год назад

    How about a full course on dometrain for grafana-prometheus and advanced metrics :)

  • @ghak992
    @ghak992 Год назад

    Yes please make the more depth video its look very promising,, thank u for shating

  • @youssefwael8
    @youssefwael8 Год назад +1

    Please make a video on exporting to OpenTelemetry Collector instead of Prometheus directly. Thank you and Keep Coding. 😁

    • @marchenkoalexandr
      @marchenkoalexandr Год назад +1

      You do not want separate them, even more you want Prometheus for automatic metrics from traces

  • @R0ckyRocket
    @R0ckyRocket Год назад

    can it measure excecution time of a specific function ?

  • @cezarpimentel
    @cezarpimentel Год назад

    Please, do a Graphana video! ❤️

  • @Tymonello
    @Tymonello 9 месяцев назад

    How OpenTelemetry compares to AppMetrics? Is it better / newer /more features, or basically the same thing, but by other people?

  • @thegautamnayak
    @thegautamnayak 8 месяцев назад

    Is decorater pattern a better place to write metrics logic?

  • @obinnaokafor6252
    @obinnaokafor6252 Год назад

    Another amazing job by Microsoft and the dotnet team.

  • @StigBrembo
    @StigBrembo Год назад

    Hi Nick. Have you stopped using minimal api? From your latest videos I only see you using controllers?

  • @VladyslavHorbachov
    @VladyslavHorbachov Год назад

    We need Grafana video!

  • @alainl8069
    @alainl8069 Год назад

    How to use metering and Grafana to monitor API services would be an interesting course in Dometrain

  • @nwr0x
    @nwr0x Год назад

    This is really nice, but I wonder where does dotnet-monitor lands with this.

  • @IgorRovitsky
    @IgorRovitsky Год назад

    Looks promising, but I wonder how this might be used in a situation when the API is replicated in Swarm or k8

  • @musigahstallone
    @musigahstallone 5 месяцев назад

    hello is this the same as the modern day aspire dashboard

  • @Daniel15au
    @Daniel15au 10 месяцев назад

    I'd recommend VictoriaMetrics instead of Prometheus. It's fully Prometheus-compatible (supports Prometheus endpoints and the Prometheus integration in Grafana), but the storage format is more efficient.

  • @sikor02
    @sikor02 Год назад +3

    When I saw _meterFactory.Create and meter.CreateCounter called whenever there's a GET request, I thought it was a mistake and you will always get 1 in Grafana in best case. Just by reading the code it looks like you create a new meter/instrument every time.

  • @williameisenman5538
    @williameisenman5538 Год назад

    Please Make a Dedicated Grafana Video. This is quite interesting, indeed.

  • @ClAddict
    @ClAddict 11 месяцев назад

    Why was the meter created within the api call? Seems like that would new and dispose the metric way more frequently than it should.

  • @VladimirKhil
    @VladimirKhil Год назад

    What is the difference between app.UseOpenTelemetryPrometheusScrapingEndpoint() and app.MapPrometheusScrapingEndpoint() calls?

  • @goremukin1
    @goremukin1 Год назад +1

    Where are the metrics stored until Prometheus takes them?

  • @StephenMoreira
    @StephenMoreira Год назад

    Yes.

  • @zakariabenmassaoud
    @zakariabenmassaoud Год назад

    Yes please! Grafana Grafana Grafana, and maybe how to create metrics

  • @orthodox-4-ever
    @orthodox-4-ever Год назад

    We want Grafana video 👋

  • @teodorchirileanu
    @teodorchirileanu 11 месяцев назад

    I want grana video!

  • @nocgod
    @nocgod 11 месяцев назад

    the last point we have to solve is the redundant requirement to register the Meter by string in the exporter and create it in your code through a factory. its a cludge imho

  • @ryanzwe
    @ryanzwe Год назад

    Now this sounds interesting

  • @mhDuke
    @mhDuke 11 месяцев назад

    please do grafana video

  • @JonWoo
    @JonWoo Год назад

    So we don't need new relic anymore? :)

  • @bobmarley8334
    @bobmarley8334 6 месяцев назад

    Awesome ideia to not share the code or even a repository! Thanks!

  • @leadscollector
    @leadscollector Год назад +1

    Ahhh here we go. Danka

  • @RichardBeales
    @RichardBeales Год назад

    I think the meter / gauge instances are supposed to be re-used, we've seen problems with creating them on every request.

    • @EspenSkaufel
      @EspenSkaufel 9 месяцев назад

      They are, it is implemented in the DefaultMeterFactory

  • @Levonfly
    @Levonfly Год назад

    Please separate video for Grafana

  • @tuberklz
    @tuberklz 5 месяцев назад

    maybe graphana is on the way?

  • @saidyeter
    @saidyeter Год назад

    nice haircut

  •  Год назад

    throw new Exception("Shit hit the fan");
    Good thing I'm not a fan then 😬

  • @UnbiasedThamizhan
    @UnbiasedThamizhan 2 месяца назад

    You are good but very fast please do it with patience

  • @E_G_
    @E_G_ Год назад

    Great tool to use, thank you for sharing

  • @soonhongng7037
    @soonhongng7037 2 месяца назад

    In .NET 8, their latest package has changed DI methods
    its no longer, app.MapPrometheusScrapingEndpoint().
    rather, its either of following:
    1. app.UseOpenTelemetryPrometheusScrapingEndpoint();
    2. app.UseOpenTelemetryPrometheusScrapingEndpoint(
    context => context.Request.Path == "/internal/metrics"
    && context.Connection.LocalPort == 5067);