Git Product home page Git Product logo

jmeter-telegraf-influxdb-grafana's Introduction

Load Test With Jmeter

Throughout this code you can simply run a jmeter test using several powerful technologies allowing you to easily analyze and monitor your test plans in real time in an automated way (docker-compose).

Main features

This repo provides several features to the user such as:

  • Load test scenario creation: In this part we are going to create different environments consisting of multiple IP addresses (containers)
  • Persist test results: It consists of persisting each test data in a database in addition to a log file and result csv file.
  • Environments monitoring: It is about monitoring the containers of host docker engine and load test metrics.
  • Dockerize the stack: Will give us the ability to run tests easier, and not to worry much about the environment we are working on.

Quick start

Starting the test will only take few steps: -Clone the repository in:

$ git clone https://github.com/LQss11/Jmeter-telegraf-influxdb-grafana.git

-The following command will run our docker-compose file which in fact will build our specified images with context then create and run our containers in the same network:

$ docker-compose up --build

-Then connect to jmeter's container and chose whether you want to run the load test in a single machine (run.sh) or in a distributed mode (run-dist.sh):

docker exec -it jmeter bin/bash ./Scripts/run.sh
docker exec -it jmeter bin/bash ./Scripts/run-dist.sh

IMPORTANT!

In case telegraf has an issue collecting data to influxdb make sure to give permissions to docker.sock inside the container:

docker exec -it telegraf sh -c "chmod 777 /var/run/docker.sock"

Tools

This project was made by a combination of coll tools such as:

Tools Links Version
InfluxDB Official website influxdb:2.0
Grafana Official website grafana/grafana:7.3.0
Apache Jmeter Official website JMETER 5.3
Telegraf Git telegraf:1.21
Docker Official website Docker 20.10.7

Additional information

  1. .env file contains all variables used for the docker-compose.yml file
  2. You can have more information about the telegraf.conf file which is responsible on setting up the specific data we want to collect from our docker host. for more information click here.
  3. In this project we used an influxdb version that uses Next-Generation InfluxDB 2.0 Platform but with SQL instead of FlexQL since the majority of grafana's dashboards are available with SQL not FlexQL.

jmeter-telegraf-influxdb-grafana's People

Contributors

lqss11 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Forkers

kamal2222ahmed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.