Intensiv DevOps-uddannelse · Lektion

Strategier til pipeline-overvågning

Udforsk metoder til overvågning af status, ydeevne og succesrater for Deres CI/CD-pipelines.

Lektion 1 af 411 trin

Strategier til pipeline-overvågning er en gratis Intensiv DevOps-uddannelse-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Intensiv DevOps-uddannelse, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.

Hvorfor overvåge dine CI/CD-forløb

Forestil dig, at du bygger en kompleks maskine. Du ville vel ikke bare tænde den og håbe på det bedste? Du ville gerne vide, om den fungerer, om den er effektiv, og om den nogensinde bryder sammen.

Det samme gælder dine CI/CD-forløb! Overvågning hjælper dig med at forstå deres tilstand, ydeevne og pålidelighed. Det er afgørende for at finde flaskehalse, forebygge problemer og sikre en problemfri softwarelevering.

Vigtige målinger for CI/CD-forløb

Hvis du virkelig vil forstå dit forløbs tilstand, skal du fokusere på de vigtigste målinger:

  • Succesrate: Hvor ofte gennemføres dit forløb uden problemer?
  • Fejlrate: Hvor ofte mislykkes det?
  • Varighed: Hvor lang tid tager det at køre?
  • Gennemløbstid: Tiden fra kodecommit til vellykket udrulning.

Ved at følge disse målinger kan du finde problemer, forbedre effektiviteten og træffe datadrevne beslutninger.

Indbyggede visninger i GitHub Actions

GitHub Actions gør det nemt at overvåge dine arbejdsgange direkte i dit repositorys grænseflade.

Gå til fanen 'Actions' i dit GitHub-repository. Her kan du se en liste over alle kørsler af arbejdsgange, deres status (succes, fejl eller afventer) og deres varighed. Når du klikker på en bestemt kørsel, får du detaljerede logfiler for hvert job og trin, hvilket er uvurderligt ved fejlfinding.

Hurtig status med statusmærker

Vil du kunne se status for dit CI/CD-forløb med et enkelt blik? GitHub Actions lader dig indsætte et statusmærke direkte i filen README i dit repository.

Disse statusmærker opdateres automatisk og giver en visuel indikator i realtid for status for den seneste kørsel af din arbejdsgang, f.eks. om den er bestået eller mislykkedes. Du kan generere Markdown-koden til et statusmærke fra fanen 'Actions'.

![CI Workflow Status](https://github.com/OWNER/REPO/actions/workflows/ci.yml/badge.svg)

Forstå status for jobs og trin

Hvert job og trin i en arbejdsgang i GitHub Actions har en status: success, failure, cancelled eller skipped.

Som standard stopper et job med det samme, hvis et trin i jobbet mislykkes. Det er afgørende at forstå disse individuelle statusser for at kunne opbygge robuste CI/CD-forløb, der reagerer korrekt på forskellige resultater.

name: Status Check Example
on: [push]
jobs:
  check_status:
    runs-on: ubuntu-latest
    steps:
      - name: First step (success)
        run: echo "This step always succeeds"
      - name: Second step (simulated failure)
        run: exit 1
      - name: Third step (only if previous fails)
        if: failure()
        run: echo "Previous step failed!"

Reagér på status med 'if'

Det betingede nøgleord if giver dig mulighed for kun at køre trin eller jobs, når bestemte betingelser er opfyldt, f.eks. når et tidligere trin lykkes eller mislykkes.

Det er effektivt, når du vil oprette modstandsdygtige CI/CD-forløb, der for eksempel kun sender notifikationer ved fejl eller rydder op i ressourcer efter en succesfuld kørsel.

name: Conditional Run Example
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Always run this
        run: echo "Starting build..."
      - name: This step might fail
        run: exit 0 # Change to 'exit 1' to see failure branch
      - name: Run on success
        if: success()
        run: echo "Build succeeded!"
      - name: Run on failure
        if: failure()
        run: echo "Build failed, sending alert!"

Tilføj brugerdefinerede logmeddelelser

GitHub Actions leverer automatisk detaljerede logfiler, men nogle gange har du brug for at tilføje dine egne specifikke meddelelser for at gøre oplysningerne tydeligere og lette fejlfinding.

Du kan bruge almindelige shell-kommandoer som echo i dine run-trin til at udskrive brugerdefinerede meddelelser, variabler eller statusopdateringer direkte i arbejdsgangens logfiler.

name: Custom Logging Example
on: [push]
jobs:
  log_info:
    runs-on: ubuntu-latest
    steps:
      - name: Print current time
        run: echo "Workflow started at: $(date)"
      - name: Perform a task
        run: |
          echo "Simulating a task..."
          sleep 2
          echo "Task completed."

Følg kørselstiden

Det er vigtigt at overvåge varigheden af dine jobs og trin for at finde flaskehalse i ydeevnen og optimere dine CI/CD-forløb.

Logfilerne i GitHub Actions indeholder automatisk tidsstempler for hvert trin. Du kan også håndhæve maksimale køretider ved hjælp af timeout-minutes på jobniveau for at forhindre, at arbejdsgange kører uendeligt.

name: Job Timeout Example
on: [push]
jobs:
  long_job:
    runs-on: ubuntu-latest
    timeout-minutes: 1 # Job will be cancelled after 1 minute
    steps:
      - name: Start a long process
        run: |
          echo "Starting a process that takes 2 minutes..."
          sleep 120 # This will exceed the timeout
      - name: This step might not run
        run: echo "Process finished."

Avanceret datahentning

Hvis du vil have mere avanceret overvågning og tilpassede analyser, kan du få programmatisk adgang til data om kørsler af arbejdsgange via GitHub API'et.

Det giver dig mulighed for at hente detaljerede oplysninger om statusser, varigheder og logfiler for arbejdsgange. Oplysningerne kan derefter bruges til tilpassede dashboards, dybere analyser eller integration med eksterne overvågningssystemer. Det giver effektive muligheder for tilpasset observerbarhed ud over brugergrænsefladen.

Hurtigt statustjek

Se på følgende udsnit af en arbejdsgang. Hvad bliver udskrevet i logfilerne, hvis trinnet "Build Project" mislykkes?

name: Question Workflow
on: [push]
jobs:
  ci:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4
      - name: Build Project
        run: exit 1 # Simulate a failure
      - name: Notify on Success
        if: success()
        run: echo "Project built successfully!"
      - name: Notify on Failure
        if: failure()
        run: echo "Build failed, review logs."

Opsummering: Overvågning af CI/CD-forløb

Godt klaret! Du har lært, hvordan du holder øje med dine CI/CD-forløb.

  • Vi undersøgte den indbyggede overvågning i GitHub og statusmærker.
  • Du så, hvordan du bruger if-betingelser til at reagere på status for jobs og trin.
  • Vi gennemgik, hvordan du tilføjer brugerdefinerede logmeddelelser og følger varigheden af jobs.

Disse strategier hjælper med at sikre, at dine CI/CD-forløb er robuste, pålidelige og effektive. Derefter kan du eventuelt undersøge, hvordan du integrerer med eksterne overvågningsværktøjer!

Gratis at komme i gang

Lær Intensiv DevOps-uddannelse med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
142
Lektioner
568

Ofte stillede spørgsmål

Er lektionen “Strategier til pipeline-overvågning” gratis?

Ja — alle 3 lektioner i læringssporet Intensiv DevOps-uddannelse, inklusive “Strategier til pipeline-overvågning”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Intensiv DevOps-uddannelse-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Strategier til pipeline-overvågning”?

Udforsk metoder til overvågning af status, ydeevne og succesrater for Deres CI/CD-pipelines. Du øver dig i Intensiv DevOps-uddannelse med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Intensiv DevOps-uddannelse?

Der kræves ingen tidligere erfaring. Intensiv DevOps-uddannelse på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “Strategier til pipeline-overvågning”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Intensiv DevOps-uddannelse-lektion?

Ja. Alle Intensiv DevOps-uddannelse-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Strategier til pipeline-overvågning
  2. Integration med eksterne tjenester
  3. Opsætning af notifikationer og alarmer
  4. Struktureret logning og distribueret tracing
← Tilbage til Intensiv DevOps-uddannelse