C.W.K.
Stream
Lesson 10 of 13 · published

CI 모니터링

~10 min · monitoring, metrics, observability

Level 0Apprentice
0 XP0/101 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

뭘 볼까

CI 도 소프트웨어. 서비스처럼 다뤄: health 모니터링, 저하 시 응답. 중요 metric:

  • Main pass rate — green 가는 main run 의 %%. 95%+ 목표. 90% 미만은 위기.
  • p50 / p95 duration — feedback latency.
  • Flake rate — retry 시 통과하는 실패 run 의 %. >2% 면 고칠 flake 있음.
  • 큐 시간 — run 이 시작 전 얼마나 대기. 늘면 self-hosted fleet 너무 작음.
  • 비용 — repo 별, workflow 별, OS 별 사용 분.

데이터 어디에 두기

  1. 내장 — Insights 탭, Actions 사용 리포트. 좋은 첫 step, 제한된 드릴다운.
  2. Datadog / Honeycomb / Grafanaworkflow_run webhook 을 통해 observability stack 으로 Actions event 파이프.
  3. Custom — GitHub API 호출하고 metric 계산하고 Slack / dashboard / DB 에 게시하는 예약 job.

알림

Main pass rate 가 임계 이하면 페이지. Flake rate 급등에 Slack. 개별 실패에 알림 금지 — 그건 정상 noise.

Code

CI 주간 digest 게시 예약 job·yaml
name: ci-digest
on:
  schedule: [{ cron: '0 9 * * 1' }]   # Monday 09:00 UTC
  workflow_dispatch: {}

permissions:
  actions: read
  contents: read

jobs:
  digest:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Compute and post digest
        env:
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          SLACK_WEBHOOK: ${{ secrets.SLACK_DEPLOY_WEBHOOK }}
        run: ./scripts/ci-digest.sh

External links

Exercise

Repo 의 지난 30 일 main branch pass rate 계산 (수동 또는 스크립트). 95% 미만이면 상위 3 원인 나열. 하나 골라 이번 sprint 에 fix owning.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.