{"id":13651924,"url":"https://github.com/adrianmo/jmeter-backend-azure","last_synced_at":"2026-01-11T16:57:37.973Z","repository":{"id":44941307,"uuid":"238896360","full_name":"adrianmo/jmeter-backend-azure","owner":"adrianmo","description":"A JMeter plug-in that enables you to send test results to Azure Monitor","archived":false,"fork":false,"pushed_at":"2023-04-21T14:00:32.000Z","size":525,"stargazers_count":31,"open_issues_count":7,"forks_count":12,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-04-28T05:38:40.802Z","etag":null,"topics":["azure","azure-application-insights","azure-log-analytics","azure-monitor","backend-listener","java","jmeter","jmeter-plugin","logs","performance-testing","plugin","reporting"],"latest_commit_sha":null,"homepage":"https://azure.microsoft.com/services/monitor/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adrianmo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-02-07T10:25:23.000Z","updated_at":"2023-06-16T12:08:52.000Z","dependencies_parsed_at":"2023-09-24T17:57:50.310Z","dependency_job_id":"5bcc760f-b28f-4ef3-85dc-b196398c57b9","html_url":"https://github.com/adrianmo/jmeter-backend-azure","commit_stats":{"total_commits":45,"total_committers":4,"mean_commits":11.25,"dds":0.06666666666666665,"last_synced_commit":"37f2d8439776d49d5da21010f1e05d591d284158"},"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmo%2Fjmeter-backend-azure","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmo%2Fjmeter-backend-azure/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmo%2Fjmeter-backend-azure/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmo%2Fjmeter-backend-azure/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adrianmo","download_url":"https://codeload.github.com/adrianmo/jmeter-backend-azure/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250357677,"owners_count":21417326,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["azure","azure-application-insights","azure-log-analytics","azure-monitor","backend-listener","java","jmeter","jmeter-plugin","logs","performance-testing","plugin","reporting"],"created_at":"2024-08-02T02:00:53.481Z","updated_at":"2026-01-11T16:57:37.936Z","avatar_url":"https://github.com/adrianmo.png","language":"Java","funding_links":[],"categories":["Results Processing"],"sub_categories":["Reporting \u0026 Visualization"],"readme":"# jmeter-backend-azure\n\n[![Build and publish](https://github.com/adrianmo/jmeter-backend-azure/actions/workflows/maven.yml/badge.svg)](https://github.com/adrianmo/jmeter-backend-azure/actions/workflows/maven.yml)\n\nA JMeter plug-in that enables you to send test results to Azure Application Insights.\n\n## Overview\n\n### Description\n\nJMeter Backend Azure is a JMeter plugin enabling you to send test results to an Azure Application Insights.\n\nThe following test results metrics are exposed by the plugin.\n\n- TestStartTime\n- SampleStartTime\n- SampleEndTime\n- ResponseCode\n- Duration\n- URL\n- SampleLabel\n- SampleCount\n- ErrorCount\n- Bytes\n- SentBytes\n- ConnectTime\n- IdleTime\n- ThreadName\n- GrpThreads\n- AllThreads\n- (Optional) aih.{ResponseHeader}\n- (Optional) ResponseData\n- (Optional) SampleData\n\n### Plugin installation\n\nOnce you have built or downloaded the plugin JAR file from the [releases](https://github.com/adrianmo/jmeter-backend-azure/releases) section,\nmove the JAR to your `$JMETER_HOME/lib/ext`.\n\n```bash\nmv target/jmeter.backendlistener.azure-VERSION.jar $JMETER_HOME/lib/ext/\n```\n\nThen, restart JMeter and the plugin should be loaded.\n\n### JMeter configuration\n\nTo make JMeter send test result metrics to Azure Application Insights, in your **Test Pan**, right click on\n**Thread Group** \u003e Add \u003e Listener \u003e Backend Listener, and choose `io.github.adrianmo.jmeter.backendlistener.azure.AzureBackendClient` as `Backend Listener Implementation`.\nThen, in the Parameters table, configure the following attributes.\n\n| Attribute | Description | Required |\n|---|---|---|\n| *connectionString* | The [Connection String](https://docs.microsoft.com/en-us/azure/azure-monitor/app/sdk-connection-string?tabs=java) of your Application Insights instance | Yes |\n| *testName* | Name of the test. This value is used to differentiate metrics across test runs or plans in Application Insights and allow you to filter them. | Yes |\n| *liveMetrics* | Boolean to indicate whether or not real-time metrics are enabled and available in the [Live Metrics Stream](https://docs.microsoft.com/en-us/azure/azure-monitor/app/live-stream). Defaults to `true`. | No |\n| *samplersList* | Optional list of samplers separated by a semi-colon (`;`) that the listener will collect and send metrics to Application Insights. If the list is empty, the listener will not filter samplers and send metrics from all of them. Defaults to an empty string. | No |\n| *useRegexForSamplerList* | If set to `true` the `samplersList` will be evaluated as a regex to filter samplers. Defaults to `false`. | No |\n| *responseHeaders* | Optional list of response headers separated by a semi-colon (`;`) that the listener will collect and send values to Application Insights. | No |\n| *logResponseData* | This value indicates whether or not the response data should be captured. Options are `Always`, `OnFailure`, or `Never`. The response data will be captured as a string into the _ResponseData_ property. Defaults to `OnFailure`. | No |\n| *logSampleData* | Boolean to indicate whether or not the sample data should be captured. Options are `Always`, `OnFailure`, or `Never`. The sample data will be captured as a string into the _SampleData_ property. Defaults to `OnFailure`. | No |\n| *instrumentationKey* | The Instrumentation Key of your Application Insights instance. \u003cbr\u003e⚠️ **Deprecated**: use *connectionString* instead. | No |\n\n*Example of configuration:*\n\n![Screenshot of configuration](docs/configuration.png \"Screenshot of JMeter configuration\")\n\n#### Custom properties\n\nYou can add custom data to your metrics by adding properties starting with `ai.`, for example, you might want to provide information related to your environment with the property `ai.environment` and value `staging`.\n\n### Visualization\n\nTest result metrics are available in the **requests** dimension of your Application Insights instance.\nIn the image you can see an example of how you can visualize the duration of the requests made during your test run.\n\n![Request duration](docs/requestduration.png \"Screenshot of test requests duration\")\n\nAdditionally, if you enabled `liveMetrics` in the configuration, you can watch your test performance in real-time in the Live Metrics Stream blade.\n\n![Live Metrics Stream](docs/livemetrics.png \"Screenshot of live metrics stream\")\n\n## Contributing\n\nFeel free to contribute by forking and making pull requests, or simply by suggesting ideas through the\n[Issues](https://github.com/adrianmo/jmeter-backend-azure/issues) section.\n\n### Build\n\nYou can make changes to the plugin and build your own JAR file to test changes. To build the artifact,\nexecute below Maven command. Make sure `JAVA_HOME` is set properly.\n\n```bash\nmvn clean package\n```\n\n---\n\nThis plugin is inspired in the [Elasticsearch](https://github.com/delirius325/jmeter-elasticsearch-backend-listener) and [Kafka](https://github.com/rahulsinghai/jmeter-backend-listener-kafka) backend listener plugins.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianmo%2Fjmeter-backend-azure","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadrianmo%2Fjmeter-backend-azure","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianmo%2Fjmeter-backend-azure/lists"}