Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry) · leksjon

Forklaring av måttypene

Forstå de grunnleggende måttypene: målere, tellere, histogrammer og sammendrag. Lær når og hvordan hver type brukes for effektiv overvåking.

Leksjon 1 av 411 trinn

Forklaring av måttypene er en gratis leksjon i Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry) på CoddyKit. Dette er leksjon 1 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry), og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry) inneholder totalt 4 leksjoner.

Hva er metrikktyper?

Velkommen til «Typer metrikk forklart»! Innen observability er metrikk avgjørende for å forstå systemets tilstand og ytelse.

Men alle tall er ikke like! Kategorisering av metrikk hjelper oss med å samle inn, lagre og analysere dem effektivt.

Vi skal utforske de fire grunnleggende typene: måleverdier, tellere, histogrammer og oppsummeringer.

Måleverdier: Et øyeblikksbilde

En måleverdi representerer én numerisk verdi som kan gå opp og ned over tid. Tenk på et speedometer i en bil eller et termometer.

Måleverdier egner seg perfekt til å registrere den gjeldende tilstanden til et system på et bestemt tidspunkt.

  • Brukes til: Gjeldende CPU-bruk, minneforbruk, køstørrelse og temperatur.
  • Egenskap: Verdi på et bestemt tidspunkt.

Kodeeksempel med måleverdi

Her er et enkelt Java-eksempel som simulerer en måleverdi for gjeldende CPU-utnyttelse. Legg merke til hvordan verdien fritt kan endres.

public class Main {
  public static void main(String[] args) {
    double cpuUsage = 0.5; // 50% CPU
    System.out.println("Current CPU Usage: " + cpuUsage);

    // Later, CPU usage might change
    cpuUsage = 0.8; // 80% CPU
    System.out.println("Updated CPU Usage: " + cpuUsage);

    cpuUsage = 0.3; // 30% CPU
    System.out.println("Further Updated CPU Usage: " + cpuUsage);
  }
}

Tellere: Alltid økende

En teller er en kumulativ metrikk som bare øker. Den representerer det totale antallet av noe som har skjedd siden systemet startet.

Den kan bare tilbakestilles til null når det overvåkede systemet starter på nytt.

  • Brukes til: Totalt antall behandlede forespørsler, oppdagede feil, sendte byte og påloggingsforsøk.
  • Egenskap: Monotont økende total.

Kodeeksempel med teller

Dette Java-eksempelet viser en teller for totalt antall forespørsler. Hver «request» øker telleren med én.

public class Main {
  private static long totalRequests = 0;

  public static void handleRequest() {
    totalRequests++;
    System.out.println("Requests handled: " + totalRequests);
  }

  public static void main(String[] args) {
    System.out.println("Initial requests: " + totalRequests);
    handleRequest(); // First request
    handleRequest(); // Second request
    // ... more requests later
    handleRequest(); // Third request
  }
}

Histogrammer: Verdifordelinger

Histogrammer tar prøver av observasjoner (som varighet på forespørsler eller svarstørrelser) og teller dem i konfigurerbare intervaller.

De gir innsikt i fordelingen av verdiene, ikke bare gjennomsnittet. Dette er viktig for å forstå latenstid og ytelse.

  • Fordel: De kan beregne persentiler (f.eks. latenstid ved 99-persentilen) på serversiden.
  • Brukes til: Latenstid for forespørsler, svarstørrelser og dataoverføringshastigheter.

Oppsummeringer: Forhåndsberegnede persentiler

Oppsummeringer ligner på histogrammer, men forhåndsberegner ofte konfigurerbare kvantiler (som p99, p95 og p50) på klientsiden.

I stedet for å sende rådata sender klientbiblioteket forhåndsberegnet statistikk (sum, antall og kvantiler) til overvåkingssystemet.

  • Fordel: Mindre data sendes over nettverket, men det blir mindre fleksibelt å beregne egendefinerte persentiler senere.
  • Brukes til: Laten målinger der det er kjent at bestemte persentiler er nødvendige.

Histogrammer kontra oppsummeringer

Både histogrammer og oppsummeringer sporer fordelinger, men de skiller seg fra hverandre med hensyn til hvor beregningene utføres:

  • Histogrammer: Sender rådata (antall i intervaller). Persentiler beregnes på serveren. Mer fleksibelt for ad hoc-analyse.
  • Oppsummeringer: Beregner persentiler på klienten og sender forhåndsberegnede resultater. Mer ressurseffektivt når De vet nøyaktig hvilke persentiler De trenger.

For de fleste moderne systemer foretrekkes histogrammer vanligvis på grunn av fleksibiliteten.

Velge den beste metrikktypen

Å velge riktig metrikktype er avgjørende for effektiv overvåking:

  • Måleverdier: For nåverdier som kan gå opp eller ned (for eksempel diskbruk og aktive brukere).
  • Tellere: For kumulative totaler som bare øker (for eksempel totalt antall feil og behandlede elementer).
  • Histogrammer: For fordelinger av verdier når De trenger beregning av persentiler på serversiden og fleksibilitet (for eksempel varighet på forespørsler).
  • Sammendrag: For fordelinger der forhåndsberegnede persentiler på klientsiden er tilstrekkelig, og effektiv bruk av nettverket er avgjørende (mindre vanlig enn histogrammer nå).

Utfordring: metrikktype

Applikasjonen Deres behandler brukerordrer. De ønsker å følge med på det totale antallet ordrer som er lagt inn siden applikasjonen startet, samt det nåværende antallet elementer i behandlingskøen.

Viktigste poenger om metrikker

Godt jobbet! Nå har De lært om de fire grunnleggende metriktypene:

  • Måleverdier: For nåverdier som varierer.
  • Tellere: For kumulative totaler som stadig øker.
  • Histogrammer: For å forstå fordelingen av verdier og beregne persentiler på serversiden.
  • Sammendrag: For forhåndsberegnede persentiler på klientsiden.

Ved å forstå disse typene kan De velge riktig verktøy til riktig oppgave, noe som gir mer innsiktsfull overvåking og raskere feilsøking!

Gratis å komme i gang

Lær deg Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry) med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
12
Leksjoner
48

Ofte stilte spørsmål

Er leksjonen «Forklaring av måttypene» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry), inkludert «Forklaring av måttypene», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry) inneholder totalt 4 leksjoner.

Hva lærer jeg i «Forklaring av måttypene»?

Forstå de grunnleggende måttypene: målere, tellere, histogrammer og sammendrag. Lær når og hvordan hver type brukes for effektiv overvåking. Du øver på Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry) med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry)?

Ingen tidligere erfaring er nødvendig. Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry) på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.

Hvor lang tid tar leksjonen «Forklaring av måttypene»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry)-leksjonen?

Ja. Alle Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry)-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Forklaring av måttypene
  2. Strategier for innsamling av måltall
  3. Visualisering og varsling av måltall
  4. Metrikk-kardinalitet og beste praksis for labeling
← Tilbake til Systemobservabilitet: logging, metrikker og tracing (ELK + OpenTelemetry)