Mittarien kerääminen
Tallentakaa laskureita, mittareita ja histogrammeja.
Mittarien kerääminen on ilmainen C# Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu C# Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. C# Academy-kurssilla on yhteensä 4 oppituntia.
Miksi metriikoita tarvitaan
Metriikat ovat ajan kuluessa koostettuja numeerisia mittauksia. Ne mahdollistavat koontinäytöt ja hälytykset: pyyntömäärän, virheiden lukumäärän, viiveen ja jonon koon. Toisin kuin lokit, metriikat pysyvät suurillakin määrillä edullisina, koska ne koostavat tietoa.
Meter-rajapinta
.NET tuottaa metriikat System.Diagnostics.Metrics-nimitilan kautta. Luotte Meter-olion ja käytätte sitä instrumenttien, kuten laskureiden ja histogrammien, luomiseen.
using System.Diagnostics.Metrics;
private static readonly Meter Meter = new("Checkout.Orders");Laskurit
Counter on arvo, joka kasvaa vain, joten se sopii erinomaisesti esimerkiksi tehtyjen tilausten tai virheiden laskemiseen. Kutsutte Add-menetelmää sen kasvattamiseksi.
private static readonly Counter<long> OrdersPlaced =
Meter.CreateCounter<long>("orders.placed");
OrdersPlaced.Add(1);Laskurin dimensiot
Liittäkää laskuriin tageja, jotta voitte jakaa sen dimensioiden, kuten tilan tai alueen, perusteella sekä koostaa ja suodattaa tietoja taustajärjestelmässä.
OrdersPlaced.Add(1,
new KeyValuePair<string, object>("status", "completed"),
new KeyValuePair<string, object>("region", "eu"));Histogrammit
Histogram tallentaa arvojen jakauman, joten se sopii erinomaisesti viiveiden tai hyötykuormien kokojen mittaamiseen. Taustajärjestelmät laskevat tallennetuista näytteistä prosenttipisteet (p50, p95, p99).
private static readonly Histogram<double> OrderDuration =
Meter.CreateHistogram<double>("order.duration", "ms");
OrderDuration.Record(elapsedMs);UpDownCounters
UpDownCounter voi kasvaa tai pienentyä, joten se sopii esimerkiksi aktiivisten yhteyksien tai jonossa sillä hetkellä olevien kohteiden määrän mittaamiseen.
private static readonly UpDownCounter<long> ActiveOrders =
Meter.CreateUpDownCounter<long>("orders.active");
ActiveOrders.Add(1); // started
ActiveOrders.Add(-1); // finishedObservable-instrumentit
Observable-instrumentit luetaan tarvittaessa takaisinkutsun avulla. Ne sopivat mittareihin, kuten nykyiseen muistin tai välimuistin kokoon, joita luette sen sijaan että kasvattaisitte niitä.
Meter.CreateObservableGauge("cache.size",
() => _cache.Count);Meterin rekisteröinti
Kuten jäljityksessä, OTel kerää vain rekisteröimänne meterit. Käyttäkää AddMeter-menetelmää ja ilmoittakaa meterin nimi.
builder.Services.AddOpenTelemetry()
.WithMetrics(metrics => metrics
.AddMeter("Checkout.Orders"));Sisäänrakennetut metriikat
Instrumentointipaketit tarjoavat valmiita metriikoita ASP.NET Corelle (pyynnön kesto ja aktiiviset pyynnöt) sekä ajonaikaiselle ympäristölle (GC ja säiepooli), joten saatte välittömästi tietoa järjestelmän toiminnasta.
metrics
.AddAspNetCoreInstrumentation()
.AddRuntimeInstrumentation();Oikean instrumentin valinta
Valitkaa instrumentti käyttäytymisen perusteella: monotoninen laskenta (Counter), kasvava ja pienenevä arvo (UpDownCounter), jakauma (Histogram) tai otannalla luettava nykyarvo (Observable Gauge). Oikea valinta tekee koontinäytöistä ja hälytyksistä selkeitä.
Pidä kardinaliteetti hallinnassa
Jokainen yksilöllinen tagiyhdistelmä luo erillisen aikasarjan. Suuren kardinaliteetin tagit (kuten käyttäjätunnus) voivat kasvattaa tallennustilan tarpeen ja kustannukset valtaviksi. Käyttäkää rajattuja ja vähäisen kardinaliteetin dimensioita, kuten tilaa tai aluetta.
Pikatarkistus
Testatkaa metriikkojen keräämistä.
Kertaus
Metriikat koostavat numeerisia mittauksia edullisesti. Meter-rajapinta luo instrumentit: Counter (monotoninen), UpDownCounter (kasvaa ja pienenee), Histogram (jakaumat prosenttipisteitä varten) sekä Observable-mittarit (otannalla luettavat). Tagit lisäävät dimensioita, mutta huomioikaa kardinaliteetti. Rekisteröikää meterit AddMeter-menetelmällä ja lisätkää ASP.NET Coren sekä ajonaikaisen ympäristön sisäänrakennettu instrumentointi, jotta saatte tietoa välittömästi.
Opi C# tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 93
- Oppitunnit
- 346
Usein kysytyt kysymykset
Onko oppitunti ”Mittarien kerääminen” ilmainen?
Kyllä – oppitunnin ”Mittarien kerääminen” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko C# Academy-kurssin, päivitä CoddyKit PROhon. C# Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Mittarien kerääminen”?
Tallentakaa laskureita, mittareita ja histogrammeja. Harjoittelet C# Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni C# Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin C# Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Mittarien kerääminen”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä C# Academy-oppitunnilla?
Kyllä. Jokainen C# Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Observabilityn kolme pilaria
- Hajautettu jäljitys
- Mittarien kerääminen
- Tietojen vienti taustajärjestelmiin