본문으로 건너뛰기
cccskills
무료GitHub에 공개

app-performance-monitoring

Application performance monitoring — transactions, profiling, and finding slow code — works with any APM platform.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

실행 점수 미검증

설치 방법 보기

포함된 파일(1)

  • SKILL.md4.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Overview

APM answers "why is this slow?" with data: which transactions are slow, which spans dominate, which database queries drag, and how performance trends across releases. This skill covers instrumenting applications for performance visibility and using that data to find and fix real bottlenecks — independent of any specific APM vendor.

When to use

  • Finding why an endpoint or page load is slow
  • Setting up transaction tracing and span instrumentation
  • Identifying N+1 queries, slow serialization, or chatty service calls
  • Tracking performance across releases (did v2.1 get slower?)
  • Deciding what to instrument with custom spans vs automatic

Core concepts

Transactions and spans. A transaction = one unit of work (an HTTP request, a background job, a page load). Spans = its decomposed steps (DB query, cache call, external API, template render). Automatic instrumentation covers frameworks and drivers; custom spans mark your business logic ("compute recommendations"). The trace waterfall shows exactly where time goes — optimize the longest bars first.

Measure percentiles, not averages. Averages hide the pain: p50 tells you the typical experience, p95/p99 the bad one users actually complain about. Track latency as a distribution; alert on p99, optimize the spans that dominate p99 traces.

Apdex / satisfaction framing. Translate latency into user experience: what fraction of requests are "satisfying" (< T), "tolerable", "frustrating"? It focuses optimization on what users feel and gives non-engineers an intuitive number.

Sampling strategy. Tracing every request at high traffic is expensive (overhead + ingest cost). Sample: 100% of errors and slow outliers, a percentage of normal traffic (enough for representative p99s), and dynamic sampling that keeps interesting traces. Head-based sampling is simple; tail-based keeps the important ones — know which you have.

Correlate with releases. Every deploy should mark the timeline; a p99 jump starting exactly at release X is a diagnosis, not a mystery. Tag transactions with release version and compare distributions across releases, not just point values.

Practical workflow

  1. Instrument: install the APM SDK/tracer, enable auto-instrumentation for your framework/DB/cache/HTTP clients, and add custom spans around key business operations.
  2. Establish baselines: per-endpoint p50/p95/p99, throughput, and error rate over a representative week — you can't detect regressions without "normal".
  3. Find the bottleneck: sort transactions by total time impact (latency × volume — a slightly slow hot endpoint beats a very slow rare one), open representative slow traces, and read the waterfall.
  4. Fix the usual suspects: N+1 queries (batch/eager-load), missing indexes, over-fetching (select only needed fields), synchronous calls that could parallelize, uncached repeated computation, slow serialization of huge payloads.
  5. Verify with data: compare p99 before/after the fix on comparable traffic; watch for regressions in the release comparison view.
  6. Guard with alerts/SLOs: latency SLOs per critical endpoint with burn-rate alerting; performance budgets in CI for key pages/endpoints to catch regressions before deploy.

Common pitfalls

  • Optimizing the average — p50 looks fine while p99 users suffer; always work from the tail.
  • No custom spans — auto-instrumentation shows "DB: 800ms" but not which business operation caused 40 queries; span your domain logic.
  • Tracing 100% of traffic — overhead and cost explode; sample deliberately.
  • One slow trace = the truth — outliers mislead; aggregate across many traces before concluding.
  • Ignoring the frontend — backend p99 is great but users wait on 4MB of JavaScript; measure real user experience (RUM) alongside.
  • Performance work without baselines — "we made it faster" with no before/after numbers; measure first, then optimize, then verify.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Master 1Password: vaults, Watchtower, passkeys, SSH agent, CLI, and family/team administration. Use when getting full value from 1Password personally or administering it for others.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aicodedecode/awesome-muse-skills312026년 10월 10일 업데이트

Create 3D visuals with modeling, texturing, lighting, rendering, and optimization for web and product.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aicodedecode/awesome-muse-skills312026년 10월 10일 업데이트

Create 3D web experiences: scene setup, models, materials, lighting, animation, scroll-driven scenes, and performance budgets. Use when adding 3D to websites beyond basic demos.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aicodedecode/awesome-muse-skills312026년 10월 10일 업데이트

Writing abstracts that get papers read — structured content, the 5-sentence core, and journal-specific constraints.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aicodedecode/awesome-muse-skills312026년 10월 10일 업데이트

Learn effectively from courses and academies: choosing programs, studying actively, and converting courses into skills. Use when investing time/money in structured learning.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aicodedecode/awesome-muse-skills312026년 10월 10일 업데이트

Audit designs for accessibility with WCAG checklists covering color, type, focus, motion, and content.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

aicodedecode/awesome-muse-skills312026년 10월 10일 업데이트

aicodedecode의 스킬 모두 보기

이 스킬의 문제 신고