Configures application monitoring, log collection, and alerting. Generates setup for Datadog, Grafana+Prometheus, CloudWatch, and Sentry with startup-appropriate thresholds.
From forged-claude-codenpx claudepluginhub dokkabei97/forged-claude-code --plugin forged-claude-codeThis skill uses the workspace's default tool permissions.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Details PluginEval's skill quality evaluation: 3 layers (static, LLM judge), 10 dimensions, rubrics, formulas, anti-patterns, badges. Use to interpret scores, improve triggering, calibrate thresholds.
Sets up the "detect before users complain" system. Minimum viable monitoring that grows with your startup.
| Trigger | Behavior |
|---|---|
| Post-launch monitoring setup | Full observability stack |
| "monitoring", "alerting" | Tool-specific configuration |
| First production incident | Retroactive monitoring gaps |
| Budget | Stack | Monthly Cost |
|---|---|---|
| $0 | Sentry (free) + UptimeRobot + CloudWatch basic | $0 |
| $0-50 | Sentry + Grafana Cloud (free) + Better Uptime | $0-50 |
| $50-500 | Datadog (Pro) or Grafana Cloud (Pro) | $50-500 |
## Must-Have Alerts
| Alert | Condition | Channel | Priority |
|-------|-----------|---------|----------|
| **Site Down** | Health check fails 3x | Slack + PagerDuty | P0 |
| **Error Rate Spike** | >5% 5xx in 5 min | Slack | P1 |
| **Slow Response** | p95 > 2s for 5 min | Slack | P2 |
| **DB Connections** | >80% pool used | Slack | P1 |
| **Disk Space** | >85% used | Slack | P2 |
| **Memory** | >90% for 10 min | Slack | P1 |
| **SSL Expiry** | <14 days to expiry | Email | P2 |
// Next.js — sentry.client.config.ts
import * as Sentry from "@sentry/nextjs"
Sentry.init({
dsn: process.env.NEXT_PUBLIC_SENTRY_DSN,
tracesSampleRate: 0.1, // 10% of transactions
replaysSessionSampleRate: 0, // Save cost, enable when needed
environment: process.env.NODE_ENV,
})
# FastAPI — main.py
import sentry_sdk
from sentry_sdk.integrations.fastapi import FastApiIntegration
sentry_sdk.init(
dsn=os.getenv("SENTRY_DSN"),
traces_sample_rate=0.1,
environment=os.getenv("ENVIRONMENT", "production"),
integrations=[FastApiIntegration()],
)
// app/api/health/route.ts
export async function GET() {
const checks = {
status: 'ok',
timestamp: new Date().toISOString(),
uptime: process.uptime(),
checks: {
database: await checkDB(),
redis: await checkRedis(),
}
}
const allHealthy = Object.values(checks.checks).every(c => c === 'ok')
return Response.json(checks, { status: allHealthy ? 200 : 503 })
}
| Tool | Purpose |
|---|---|
| Write | Generate config files, health endpoints |
| Read | Analyze existing monitoring setup |
| Bash | Install SDKs (npm install @sentry/nextjs) |
Will:
Will Not: