# .claude/skills/alert-design/SKILL.md

> アラート設計とAlert Fatigue回避の専門スキル。 Mike Julianの『入門 監視』に基づく、アクション可能で過負荷を避けるアラートシステム設計を提供します。 📚 リソース参照: このスキルには以下のリソースが含まれています。 必要に応じて該当するリソースを参照してください: - `.claude/skills/alert-design/resources/actionable-alert-design.md`: アクション可能なアラート設計ガイド - `.claude/skills/alert-design/resources/alert-fatigue-prevention.md`: Alert Fatigue回避戦略と実践手法 - `.claude/skills/alert-design/resources/threshold-setting-guide.md`: 統計的根拠に基づく閾値設定ガイド - `.claude/skills/alert-design/templates/alert-rules-template.yaml`: アラートルール定義テンプレート - `.claude/skills/alert-design/scripts/analyze-alert-effectiveness.mjs`: アラート有効性分析スクリプト 使用タイミング: - アラートルールと閾値を設計する時 - Alert Fatigue（アラート疲れ）を回避する時 - 通知ルーティングとエスカレーションポリシーを設計する時 - アクション可能なアラートを設計する時 - 適応的閾値を設定する時 - アラート有効性をレビューする時 活性化キーワード: alert, alerting, alert fatigue, threshold, notification, escalation, actionable alert, false positive, alert routing

- Skill: `majiayu000/claude-skills-alert-design-skill-md` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/claude-skills-alert-design-skill-md`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/claude-skills-alert-design-skill-md/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/claude-skills-alert-design-skill-md

---


# Alert Design - アラート設計とAlert Fatigue回避

## 概要

アラート設計は、本当に重要な問題にのみ集中できるよう、
アクション可能で過負荷を避けるアラートシステムを構築する設計手法です。

このスキルは、Mike Julianの『入門 監視』とGoogle SREの実践に基づく
アラート設計とAlert Fatigue回避の知識を提供します。

## 核心概念

### 1. アクション可能なアラート

**定義**:
受信者が何をすべきか即座に理解でき、明確なアクションが取れるアラート

**アクション可能性の判断基準**:

- [ ] 問題が何かが明確か？
- [ ] 影響範囲が分かるか？
- [ ] 対応手順が存在するか？
- [ ] 受信者が対応できるか？
- [ ] 対応しないとどうなるかが分かるか？

**良いアラート例**:

```
🚨 Critical: API Error Rate > 5%
Impact: 500 requests/minute failing
Action: Check error logs, rollback recent deploy if needed
Runbook: https://runbooks.example.com/api-errors
Dashboard: https://grafana.example.com/d/api-overview
```

**悪いアラート例**:

```
❌ Warning: Something is wrong
（何が問題か不明、対応方法不明）
```

### 2. Alert Fatigueの原因と対策

#### 原因1: 過剰なアラート

**問題**:
毎日何十件ものアラートが発火し、重要なものが埋もれる

**対策**:

- アラート数を制限（チームあたり10-20個推奨）
- 重要度に応じた通知チャネル分離
- アラート集約（時間窓内の複数発火を統合）

#### 原因2: ノイズ（False Positive）

**問題**:
誤検知が多く、アラートを無視するようになる

**対策**:

- 統計的根拠に基づく閾値設定
- 適応的閾値（時間帯、曜日、トラフィックパターン）
- 持続条件（5分間継続した場合のみアラート）

#### 原因3: アクション不明

**問題**:
アラートを受け取っても何をすればいいか分からない

**対策**:

- アラートにランブックへのリンクを含める
- 影響範囲と対応手順を明示
- 関連ダッシュボードへのリンク

### 3. アラート重要度階層

**Critical（緊急）**:

- 定義: ユーザー影響が大きい、即座の対応が必要
- 例: サービス停止、エラー率急増、SLO違反
- 通知先: PagerDuty、即座の電話/SMS
- 対応時間: 15分以内

**Warning（警告）**:

- 定義: 問題の予兆、営業時間内対応
- 例: リソース使用率上昇、レイテンシ増加傾向
- 通知先: Slack、Email
- 対応時間: 営業時間内（4時間以内）

**Info（情報）**:

- 定義: 情報提供、対応不要
- 例: デプロイ通知、設定変更通知
- 通知先: Slackのみ、または通知なし（ダッシュボード表示のみ）
- 対応時間: 対応不要

### 4. 閾値設計

#### 統計的根拠

**過去データ分析**:

```
過去30日のエラー率:
- 平均: 0.05%
- 標準偏差: 0.02%
- P95: 0.08%
- P99: 0.12%

閾値設定:
Warning: 平均 + 2σ = 0.05% + 2×0.02% = 0.09%
Critical: 平均 + 3σ = 0.05% + 3×0.02% = 0.11%
```

#### 適応的閾値

**時間帯別調整**:

```
深夜（0-6時）: トラフィック低 → 閾値を絶対値で設定
日中（9-18時）: トラフィック高 → 閾値を割合で設定
```

**曜日別調整**:

```
平日: 通常閾値
週末: トラフィック20%減 → 閾値を調整
```

**トラフィックパターン連動**:

```
通常時: エラー率 > 1%
高負荷時（トラフィック2倍）: エラー率 > 2%
```

### 5. アラート集約

**問題**:
同一問題で5分間に20件のアラート発火 → ノイズ

**対策**:
時間窓（5分）内の複数発火を単一通知に統合

**実装例**:

```yaml
alert: HighErrorRate
for: 5m # 5分間継続した場合のみ発火
annotations:
  summary: "Error rate is {{ $value | humanizePercentage }}"
  count: "{{ $activeAlerts | len }} occurrences in last 5 minutes"
```

## 設計チェックリスト

### アクション可能性

- [ ] すべてのアラートに明確なアクション指示が含まれるか？
- [ ] アラートから関連ダッシュボード・ログにすぐアクセスできるか？
- [ ] ランブック（対応手順書）が整備されているか？
- [ ] 受信者が実際に対応できる内容か？

### Alert Fatigue回避

- [ ] 誤検知率は許容範囲内か（目標 < 5%）？
- [ ] アラート数はチームが対応可能な量か（10-20個/チーム推奨）？
- [ ] アラート集約で重複通知を防いでいるか？
- [ ] ノイズの多いアラートは定期的に削除されているか？

### 重要度分類

- [ ] Critical/Warning/Infoの分類基準は明確か？
- [ ] 通知先は重要度に応じて適切に設定されているか？
- [ ] オンコール負荷は合理的か（過剰でないか）？

## 関連リソース

詳細な設計パターンと実装ガイドは以下のリソースを参照:

- **アクション可能アラート設計**: `.claude/skills/alert-design/resources/actionable-alert-design.md`
- **Alert Fatigue回避戦略**: `.claude/skills/alert-design/resources/alert-fatigue-prevention.md`
- **閾値設定ガイド**: `.claude/skills/alert-design/resources/threshold-setting-guide.md`
- **アラートルールテンプレート**: `.claude/skills/alert-design/templates/alert-rules-template.yaml`

## 関連スキル

このスキルは以下のスキルと連携します:

- `.claude/skills/slo-sli-design/SKILL.md` - SLOベースアラートの設計
- `.claude/skills/observability-pillars/SKILL.md` - メトリクスとログの統合
- `.claude/skills/structured-logging/SKILL.md` - ログベースアラート

## 使用例

### 開発環境での利用

```bash
# このスキルを参照
cat .claude/skills/alert-design/SKILL.md

# アクション可能アラート設計を確認
cat .claude/skills/alert-design/resources/actionable-alert-design.md

# アラートルールテンプレートを使用
cat .claude/skills/alert-design/templates/alert-rules-template.yaml
```

## 参照文献

- Mike Julian, 『入門 監視』, O'Reilly, 2018
- Betsy Beyer et al., 『Site Reliability Engineering』, O'Reilly, 2016

