Coder Social home page Coder Social logo

alexyza / jmeteranalyzer Goto Github PK

View Code? Open in Web Editor NEW

This project forked from caizhenxing/jmeteranalyzer

0.0 1.0 0.0 1.12 MB

SPA (Single Page Application) to analyze JMeter logs, it has a PHP backend and mysql DB

ApacheConf 14.22% HTML 18.16% CSS 1.22% JavaScript 28.16% PHP 38.25%

jmeteranalyzer's Introduction

JMeteranalyzer

Summary

JMeteranalyzer is an application to analyze JMeter logs, it has a PHP backend and mysql DB.

Details

This application has been developed by a senior Performance tester to analyze the JMeter results files after a test execution.

This application has been developed as a SPA (Single Page Application) with HTML5, Bootstrap, AngularJS, PHP and a MySQL database. It requires a PHP server and a MySQL database, a XAMPP server is perfect for it.

The application will generate Charts, Tables and Statistics for all the test and for each request/label, it also allows you to get the Average, Maximum and Minimum response time in specific range of time of a test.

Server Configuration

It is recommended but not mandatory do these configurations in PHP and MySQL

PHP

File: xampp\php\php.ini (in a XAMPP server) or /opt/lampp/etc/php.ini (in a LAMP server)

max_execution_time = 1200 
max_input_time = 360 
post_max_size = 80M 
upload_max_filesize = 80M 
default_socket_timeout = 360

MySQL

File: xampp\mysql\bin\my.ini (in a XAMPP server) or /opt/lampp/etc/my.cnf (in a LAMP server)

max_allowed_packet = 100M

This configurations are done to let PHP and MySQL handle big requests and heavy processes.

Database Configuration

In the file: \jmeteranalyzer\services\configuracion.php you should configure you Database

$db_host        =   "<db_server>";
$db_user        =   "<user>";
$db_password    =   "<password>";
$db_database    =   "db_jmeteranalyzer";

The user should have full rights on the specific database.

Installation

To install the database, you only need to request in you browser this URL:

http://<your server>/jmeteranalyzer/services/install.php

e.g http://localhost/jmeteranalyzer/services/install.php (if you have the application in your PC)

NOTE: It is probably that in linux you have to give rights to write in the folder /jmeteranalyzer/services/uploads

JMeter Configuration

It is important to do the configurations on JMeter to generate the results log with the correct structure. For a non-gui execution you need to modify the file: jmeter.propierties (apache-jmeter-2.##/bin) adding these lines:

jmeter.save.saveservice.output_format=csv
jmeter.save.saveservice.data_type=false
jmeter.save.saveservice.label=true
jmeter.save.saveservice.response_code=true
jmeter.save.saveservice.response_data.on_error=false
jmeter.save.saveservice.response_message=false
jmeter.save.saveservice.successful=true
jmeter.save.saveservice.thread_name=true
jmeter.save.saveservice.time=true
jmeter.save.saveservice.subresults=false
jmeter.save.saveservice.assertions=true
jmeter.save.saveservice.latency=true
jmeter.save.saveservice.bytes=true
jmeter.save.saveservice.hostname=true
jmeter.save.saveservice.thread_counts=true
jmeter.save.saveservice.sample_count=true
jmeter.save.saveservice.timestamp_format=ms
jmeter.save.saveservice.default_delimiter=,
jmeter.save.saveservice.autoflush=true
jmeter.save.saveservice.print_field_names=true

For a GUI execution you need to add a "Summary Report" listener and configure it as the image:

guiconfig fw

License

The license that I like is "CC BY-NC-SA" (Attribution-NonCommercial-ShareAlike 2.0 Generic). I think is fair (https://creativecommons.org/licenses/).

It uses canvas.js that has other license conditions (Creative Commons Attribution-NonCommercial 3.0 License) (http://canvasjs.com/license-canvasjs/) and it also uses an uploading code got from another Githug project (https://github.com/nervgh/angular-file-upload)

Bugs and Issues

If you find an issue please submit it here.

All the ideas are welcome too, so please let me know if there is any functionality you want.

Functionalities Screenshots

General information

generalinfo

Summary

summary

Timeline

timeline

Timeline data

timeline_data

Percentiles

percentiles

Home

home

Upload

upload

jmeteranalyzer's People

Contributors

gallinazo avatar juribes avatar

Watchers

 avatar

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.