ホームページ > ウェブフロントエンド > jsチュートリアル > カスタム メトリクス、タグ、ラベルを使用して koad テスト スクリプトを改善

カスタム メトリクス、タグ、ラベルを使用して koad テスト スクリプトを改善

WBOY
リリース: 2024-07-22 18:32:53
オリジナル
819 人が閲覧しました

Improved koad Test Script with Custom Metrics, Tags, and Labels

k6 負荷テスト スクリプトでカスタム メトリクスをタグやラベルと統合すると、より詳細な洞察が得られ、パフォーマンス データがより適切に整理されます。これにより、アプリケーションの特定の側面を追跡し、さまざまな次元でパフォーマンスを分析できます。

これは、タグとラベルを含むカスタム メトリクスを含む、k6 負荷テスト スクリプトの改良版です。

import http from 'k6/http';
import { check, sleep } from 'k6';
import { Counter, Trend } from 'k6/metrics';

// Custom metrics with labels
const myCounter = new Counter('my_custom_counter');
const myTrend = new Trend('my_custom_trend');

export let options = {
    vus: 10, // number of virtual users
    duration: '30s', // test duration
    thresholds: {
        'http_req_duration': ['p(95)<500'], // 95% of requests must complete below 500ms
    },
};

export default function () {
    let res = http.get('https://api.yoursite.com/endpoint', {
        tags: { name: 'APIEndpoint' }, // tagging the request
    });

    // Add custom metric with tags
    myCounter.add(1, { tag: 'requests' });
    myTrend.add(res.timings.duration, { tag: 'response_time' });

    // Check the response status and add a tag for success or failure
    let checkResult = check(res, {
        'status was 200': (r) => r.status === 200,
    });

    // Log results with tags
    if (checkResult) {
        myCounter.add(1, { tag: 'success' });
    } else {
        myCounter.add(1, { tag: 'failure' });
    }

    // Additional label for different environments
    myTrend.add(res.timings.duration, { environment: 'production' });

    sleep(1);
}
ログイン後にコピー

説明

  1. ラベルとタグ付きのカスタムメトリクス:

    • カウンターとトレンドのメトリクス: スクリプトは、カウンターとトレンドを使用してカスタム メトリクスを定義します。
    • タグとラベルの追加: より多くのコンテキストを提供するために、メトリクスはタグとラベルとともに記録されます。たとえば、リクエストのタイプや応答時間を区別するためにタグが追加されます。
  2. しきい値:

    • パフォーマンスしきい値: しきい値は、リクエストの 95% が 500 ミリ秒未満で完了するように設定されます。これは、SLA の監視と保証に役立ちます。
  3. タグ付きリクエスト:

    • リクエストのタグ: Datadog でメトリクスを分類およびフィルターするために、各 HTTP リクエストには名前「APIEndpoint」などの説明的なラベルがタグ付けされます。
  4. タグで結果を確認:

    • 条件付きタグ: チェック関数の結果に基づいて、成功または失敗のタグでカウンターが増分されます。これは、成功したリクエストと失敗したリクエストを区別するのに役立ちます。
  5. 環境ラベル:

    • 環境コンテキスト: 環境: 'production' などの追加ラベルは、テストが実行されている環境に関するコンテキストを提供するために使用されます。これは、異なる環境間でメトリクスを比較する場合に役立ちます。

Datadog でのスクリプトの実行と視覚化

スクリプトを実行してメトリクスを Datadog に送信するには:

  1. スクリプトを実行します:
   k6 run --out datadog load_test.js
ログイン後にコピー
  1. メトリクスの視覚化:
    • メトリクス エクスプローラー: Datadog のメトリクス エクスプローラーに移動し、カスタム メトリクス (my_custom_counter および my_custom_trend) を検索し、タグ (リクエスト、応答時間、成功、失敗、環境) を使用してフィルターを適用します。
    • ダッシュボードの作成: これらのメトリクスをダッシュ​​ボードに追加して、時間の経過やさまざまなタグにわたるパフォーマンスを視覚化します。

結論

カスタム メトリクス、タグ、ラベルを使用して k6 負荷テスト スクリプトを強化することで、アプリケーションのパフォーマンスについてより詳細な洞察を得ることができます。このアプローチにより、アプリケーションの特定の側面を監視し、パフォーマンスのボトルネックを特定し、データに基づいた意思決定を行って信頼性とユーザー エクスペリエンスを向上させることができます。

Datadog との統合により、リアルタイムの監視とアラートのための堅牢なプラットフォームが提供され、負荷テスト中に検出された問題に迅速に対応できるようになります。

テストとモニタリングを楽​​しんでください!

以上がカスタム メトリクス、タグ、ラベルを使用して koad テスト スクリプトを改善の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート