synthetic-monitoring について
ユーザージャーニー、APIフロー、重要な業務トランザクションを模擬して動作と性能を確認する、合成モニタリングのスキルです。Playwrightの例に加え、APIテストや定期実行のガイドを含みます。
主な機能
- 01ブラウザーでのユーザージャーニーを再現
- 02APIワークフローのテスト
- 03業務トランザクションの監視
- 04合成チェックの定期実行
- 05応答時間と失敗の追跡
活用シーン
- 01エンドツーエンドのフロー検証
- 02リリース前のAPI経路確認
- 03重要なトランザクションの監視
- 04定期チェックによる障害検出
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill synthetic-monitoringインストール後、Claude Code で/synthetic-monitoringを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/api-synthetic-tests.mdscheduled-synthetic-monitoring.mdsynthetic-tests-with-playwright.mdscripts/scaffold-tests.shtemplates/test-template.js詳細
合成モニタリング
目次
概要
合成モニタリングを設定すると、実際のユーザージャーニー、API ワークフロー、重要なビジネストランザクションを自動的にシミュレートして、問題を検出し、パフォーマンスを検証できます。
使用する場面
- エンドツーエンドのワークフロー検証
- API フローのテスト
- ユーザージャーニーのシミュレーション
- トランザクションのモニタリング
- クリティカルパスの検証
クイックスタート
最小限の実行可能な例:
// synthetic-tests.js
const { chromium } = require("playwright");
class SyntheticMonitor {
constructor(config = {}) {
this.baseUrl = config.baseUrl || "https://app.example.com";
this.timeout = config.timeout || 30000;
}
async testUserFlow() {
const browser = await chromium.launch();
const page = await browser.newPage();
const metrics = { steps: {} };
const startTime = Date.now();
try {
// Step 1: Navigate to login
let stepStart = Date.now();
await page.goto(`${this.baseUrl}/login`, { waitUntil: "networkidle" });
metrics.steps.navigation = Date.now() - stepStart;
// Step 2: Perform login
stepStart = Date.now();
await page.fill('input[name="email"]', "[email protected]");
await page.fill('input[name="password"]', "password123");
// ... (see reference guides for full implementation)
リファレンスガイド
詳細な実装については、references/ ディレクトリを参照してください。
| ガイド | 内容 |
|---|---|
| Playwright による合成テスト | Playwright による合成テスト |
| API 合成テスト | API 合成テスト |
| スケジュールされた合成モニタリング | スケジュールされた合成モニタリング |
ベストプラクティス
✅ 推奨事項
- 重要なユーザージャーニーをテストする
- 実際のブラウザー環境をシミュレートする
- 複数の場所からモニタリングする
- 応答時間を追跡する
- テストの失敗時にアラートを送信する
- テストデータを定期的に入れ替える
- モバイルとデスクトップの両方でテストする
- エラー発生時のシナリオを含める
❌ 禁止事項
- 本番データを使ってテストする
- テストアカウントを再利用する
- タイムアウト設定を省略する
- テストのメンテナンスを怠る
- テストの頻度を高くしすぎる
- 認証情報をハードコードする
- 地域による違いを無視する
- 正常系のパスだけをテストする
コメント
Markdown 対応