Maison > interface Web > js tutoriel > le corps du texte

Script de test Koad amélioré avec des métriques, des balises et des étiquettes personnalisées

WBOY
Libérer: 2024-07-22 18:32:53
original
567 人浏览过

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

L'intégration de métriques personnalisées avec des balises et des étiquettes dans votre script de test de charge k6 fournit des informations plus granulaires et une meilleure organisation de vos données de performances. Cela vous permet de suivre des aspects spécifiques de votre application et d'analyser les performances dans différentes dimensions.

Voici une version améliorée du script de test de charge k6 qui inclut des métriques personnalisées avec des balises et des étiquettes :

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);
}
Copier après la connexion

Explication

  1. Mesures personnalisées avec étiquettes et tags :

    • Counter and Trend Metrics : le script définit des métriques personnalisées à l'aide de Counter et Trend.
    • Ajout de balises et d'étiquettes : les métriques sont enregistrées avec des balises et des étiquettes pour fournir plus de contexte. Par exemple, des balises sont ajoutées pour distinguer les types de demandes ou les temps de réponse.
  2. Seuils :

    • Seuils de performances : un seuil est défini pour garantir que 95 % des demandes sont terminées en moins de 500 ms. Ceci est utile pour surveiller et garantir les SLA.
  3. Demandes taguées :

    • Balises dans les requêtes : chaque requête HTTP est étiquetée avec une étiquette descriptive, telle que le nom : 'APIEndpoint', pour catégoriser et filtrer les métriques dans Datadog.
  4. Vérifiez les résultats avec des balises :

    • Balises conditionnelles : en fonction du résultat de la fonction de vérification, le compteur est incrémenté avec des balises de réussite ou d'échec. Cela aide à faire la distinction entre les demandes réussies et échouées.
  5. Étiquettes environnementales :

    • Contexte de l'environnement : des étiquettes supplémentaires telles que environnement : « production » sont utilisées pour fournir un contexte sur l'environnement dans lequel le test est exécuté. Ceci est utile pour comparer des métriques dans différents environnements.

Exécuter le script et visualiser dans Datadog

Pour exécuter le script et envoyer les métriques à Datadog :

  1. Exécutez le script :
   k6 run --out datadog load_test.js
Copier après la connexion
  1. Visualisez les métriques :
    • Metrics Explorer : accédez à Metrics Explorer dans Datadog, recherchez vos métriques personnalisées (my_custom_counter et my_custom_trend) et appliquez des filtres à l'aide des balises (requêtes, temps de réponse, succès, échec, environnement).
    • Création d'un tableau de bord : ajoutez ces métriques à un tableau de bord pour visualiser les performances au fil du temps et entre différentes balises.

Conclusion

En améliorant votre script de test de charge k6 avec des métriques, des balises et des étiquettes personnalisées, vous obtenez des informations plus détaillées sur les performances de votre application. Cette approche vous permet de surveiller des aspects spécifiques de votre application, d'identifier les goulots d'étranglement en matière de performances et de prendre des décisions basées sur les données pour améliorer la fiabilité et l'expérience utilisateur.

L'intégration avec Datadog fournit une plate-forme robuste pour la surveillance et les alertes en temps réel, vous garantissant ainsi de pouvoir répondre rapidement à tout problème détecté lors des tests de charge.

Bon test et suivi !

以上是Script de test Koad amélioré avec des métriques, des balises et des étiquettes personnalisées的详细内容。更多信息请关注PHP中文网其他相关文章!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!