JMeter

Supported OS Linux Mac OS Windows

Présentation

Le service d’écoute backend Datadog pour Apache JMeter est un plug-in JMeter open source qui permet d’envoyer des résultats de test à la plateforme Datadog. Il fournit des rapports en temps réel sur des métriques de test relatives à la latence, au nombre d’octets envoyés et reçus, etc. Vous pouvez également envoyer à Datadog des résultats de test complets en tant qu’entrées de log.

Configuration

Installation

Ce plug-in doit être installé manuellement. Vous trouverez la dernière version, ainsi que des instructions d’installation détaillées, sur cette page du référentiel.

Configuration

Le plug-in présente les options de configuration suivantes :

NameObligatoireValeur par défautdescription
apiKeytrueS.O.Votre clé d’API Datadog.
datadogUrlfalsehttps://api.datadoghq.com/api/Vous pouvez configurer un autre endpoint, par exemple https://api.datadoghq.eu/api/, si votre instance Datadog se trouve dans l’UE.
logIntakeUrlfalsehttps://http-intake.logs.datadoghq.com/v1/input/Vous pouvez configurer un autre endpoint, par exemple https://http-intake.logs.datadoghq.eu/v1/input/, si votre instance Datadog se trouve dans l’UE.
metricsMaxBatchSizefalse200Les métriques sont envoyées toutes les 10 secondes par lots d’une taille correspondant à metricsMaxBatchSize.
logsBatchSizefalse500Les logs sont envoyés par lots d’une taille correspondant à logsBatchSize dès que celle-ci est atteinte.
sendResultsAsLogsfalsefalsePar défaut, seules les métriques sont transmises à Datadog. Pour envoyer des résultats de test individuels en tant qu’événements de log, définissez ce champ sur true.
includeSubresultsfalsefalseUn sous-résultat est généré, par exemple, lorsqu’une requête HTTP individuelle doit suivre des redirections. Par défaut, les sous-résultats sont ignorés.
samplersRegexfalse.*Une expression régulière facultative permettant de filtrer les services d’échantillonnage à surveiller.

Données collectées

Métriques

jmeter.active_threads.avg
(gauge)
Average number of active threads during the interval.
Shown as thread
jmeter.active_threads.max
(gauge)
Maximum number of active threads during the interval.
Shown as thread
jmeter.active_threads.min
(gauge)
Minimum number of active threads during the interval.
Shown as thread
jmeter.assertions.count
(count)
Total number of assertion checks evaluated.
Shown as assertion
jmeter.assertions.error
(count)
Number of errors during assertion execution.
Shown as assertion
jmeter.assertions.failed
(count)
Number of failed assertion checks.
Shown as assertion
jmeter.bytes_received.avg
(gauge)
Average bytes received.
Shown as byte
jmeter.bytes_received.count
(count)
Number of samples used to compute the bytes received distribution.
Shown as request
jmeter.bytes_received.max
(gauge)
Maximum bytes received.
Shown as byte
jmeter.bytes_received.median
(gauge)
Median bytes received.
Shown as byte
jmeter.bytes_received.min
(gauge)
Minimum bytes received.
Shown as byte
jmeter.bytes_received.p90
(gauge)
90th percentile of bytes received.
Shown as byte
jmeter.bytes_received.p95
(gauge)
95th percentile of bytes received.
Shown as byte
jmeter.bytes_received.p99
(gauge)
99th percentile of bytes received.
Shown as byte
jmeter.bytes_received.total
(count)
Total bytes received during the interval.
Shown as byte
jmeter.bytes_sent.avg
(gauge)
Average bytes sent.
Shown as byte
jmeter.bytes_sent.count
(count)
Number of samples used to compute the bytes sent distribution.
Shown as request
jmeter.bytes_sent.max
(gauge)
Maximum bytes sent.
Shown as byte
jmeter.bytes_sent.median
(gauge)
Median bytes sent.
Shown as byte
jmeter.bytes_sent.min
(gauge)
Minimum bytes sent.
Shown as byte
jmeter.bytes_sent.p90
(gauge)
90th percentile of bytes sent.
Shown as byte
jmeter.bytes_sent.p95
(gauge)
95th percentile of bytes sent.
Shown as byte
jmeter.bytes_sent.p99
(gauge)
99th percentile of bytes sent.
Shown as byte
jmeter.bytes_sent.total
(count)
Total number of bytes sent during the interval (rate per second).
Shown as byte
jmeter.cumulative.bytes_received.rate
(gauge)
Bytes received per second for a label.
Shown as byte
jmeter.cumulative.bytes_sent.rate
(gauge)
Bytes sent per second for a label.
Shown as byte
jmeter.cumulative.response_time.avg
(gauge)
Average response time across all samples for a label.
Shown as second
jmeter.cumulative.response_time.max
(gauge)
Maximum response time across all samples for a label.
Shown as second
jmeter.cumulative.response_time.median
(gauge)
Median (p50) response time across all samples for a label.
Shown as second
jmeter.cumulative.response_time.min
(gauge)
Minimum response time across all samples for a label.
Shown as second
jmeter.cumulative.response_time.p90
(gauge)
90th percentile response time across all samples for a label.
Shown as second
jmeter.cumulative.response_time.p95
(gauge)
95th percentile response time across all samples for a label.
Shown as second
jmeter.cumulative.response_time.p99
(gauge)
99th percentile response time across all samples for a label.
Shown as second
jmeter.cumulative.responses.error_percent
(gauge)
Percentage of failed samples for a label (0-100).
Shown as percent
jmeter.cumulative.responses_count
(gauge)
Total number of samples collected for a label.
Shown as response
jmeter.cumulative.throughput.rps
(gauge)
Requests per second for a label.
Shown as request
jmeter.final_result.bytes_received.rate
(gauge)
Bytes received per second for a label (final test result only).
Shown as byte
jmeter.final_result.bytes_sent.rate
(gauge)
Bytes sent per second for a label (final test result only).
Shown as byte
jmeter.final_result.response_time.avg
(gauge)
Average response time across all samples for a label (final test result only).
Shown as second
jmeter.final_result.response_time.max
(gauge)
Maximum response time across all samples for a label (final test result only).
Shown as second
jmeter.final_result.response_time.median
(gauge)
Median (p50) response time across all samples for a label (final test result only).
Shown as second
jmeter.final_result.response_time.min
(gauge)
Minimum response time across all samples for a label (final test result only).
Shown as second
jmeter.final_result.response_time.p90
(gauge)
90th percentile response time across all samples for a label (final test result only).
Shown as second
jmeter.final_result.response_time.p95
(gauge)
95th percentile response time across all samples for a label (final test result only).
Shown as second
jmeter.final_result.response_time.p99
(gauge)
99th percentile response time across all samples for a label (final test result only).
Shown as second
jmeter.final_result.responses.error_percent
(gauge)
Percentage of failed samples for a label (final test result only).
Shown as percent
jmeter.final_result.responses_count
(gauge)
Total number of samples collected for a label (final test result only).
Shown as response
jmeter.final_result.throughput.rps
(gauge)
Requests per second for a label (final test result only).
Shown as request
jmeter.latency.avg
(gauge)
Average latency.
Shown as second
jmeter.latency.count
(count)
Number of samples used to compute the latency distribution.
Shown as request
jmeter.latency.max
(gauge)
Maximum latency.
Shown as second
jmeter.latency.median
(gauge)
Median latency.
Shown as second
jmeter.latency.min
(gauge)
Minimum latency.
Shown as second
jmeter.latency.p90
(gauge)
P90 value of the latency.
Shown as second
jmeter.latency.p95
(gauge)
P95 value of the latency.
Shown as second
jmeter.latency.p99
(gauge)
P99 value of the latency.
Shown as second
jmeter.response_time.avg
(gauge)
Average value of the response time.
Shown as second
jmeter.response_time.count
(count)
Number of samples used to compute the response time distribution.
Shown as request
jmeter.response_time.max
(gauge)
Maximum value of the response time.
Shown as second
jmeter.response_time.median
(gauge)
Median value of the response time.
Shown as second
jmeter.response_time.min
(gauge)
Minimum value of the response time.
Shown as second
jmeter.response_time.p90
(gauge)
P90 value of the response time.
Shown as second
jmeter.response_time.p95
(gauge)
P95 value of the response time.
Shown as second
jmeter.response_time.p99
(gauge)
P99 value of the response time.
Shown as second
jmeter.responses_count
(count)
Count of the number of responses received by sampler and by status.
Shown as response
jmeter.threads.finished
(gauge)
Total number of threads finished.
Shown as thread
jmeter.threads.started
(gauge)
Total number of threads started.
Shown as thread

The plugin emits three types of metrics:

  • Interval metrics (jmeter.*): Real-time metrics reset each reporting interval, useful for monitoring during test execution.
  • Cumulative metrics (jmeter.cumulative.*): Aggregate statistics over the entire test duration, similar to JMeter’s Aggregate Reports. These include a final_result tag (true at test end, false during execution).
  • Final result metrics (jmeter.final_result.*): Emitted only once at test completion, providing an unambiguous way to query final test results without filtering by tag.

Checks de service

JMeter n’inclut aucun check de service.

Événements

JMeter n’inclut aucun événement.

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.

Pour aller plus loin

Documentation, liens et articles supplémentaires utiles :