SlideShare a Scribd company logo
1 of 23
End-To-End Performance Testing Framework
Large Scale Infrastructure Monitoring
Today’s Agenda
- About us
- What we do at Performance Engineering
- What are the monitoring tools used
- How do we use influx-Data stack
- Performance Test Result Validation
- Which Replay Framework do we use
- Benefits and Scalability
About US
Senior Developer - Performance Engineering, SAP
Experienced in performing Automation Feasibility Analysis, Test Estimation,
Test Strategy Development, Test Execution for different types of web,
angular and mobile based applications
Sound Implementation Experience is HP QTP(UFT), TestComplete, Selenium,
Robot Framework, HP LoadRunner / Jmeter
Proficient knowledge on Java, Python, VB Scripting, Ansible, Docker, Shell
Scripting, Perl Scripting
Subhodeep Ganguly
InfluxDB & Grafana
Why influxDB ?
1 . InfluxDB is a time series, metrics, and analytics database.
2. It’s written in Go and has no external dependencies.
3. Very minimal effort required to manage the DB infrastructure
4 . Once you install it there’s nothing else to manage
Efficient Real Time ELK Monitoring
Making Difference by Improving Performance
High Level Architecture
8INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
 Automated Disk Clean-up Tools for all the servers
 Slack Notification Tool, enabling efficient triggering of alerts
 Replay Tool Integration: Eliminating the possibility of any data loss , which will make the Results
and Logs more accurate.
 Resilient and Disruptive Testing
 Overall Performance Infrastructure Health check Alerts running 24/7 autonomously
 Automated Resolver Tool (developed in ansible) to fix any kind of alerts and onboarding new
services to the existing infrastructure with very minimal/ NO efforts.
 Automation of Dynatrace Agent Deployment & Enablement of Dynatrace Monitoring
Additional Infra Monitoring Modules :
Overall Resources – Performance Infrastructure
10INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
 Performance Framework
 Business Impact: End to End performance testing with single click
 Supports Perf Testing using single load generator and multiple load generator scenarios
 Supports Real Time Performance Results Visualization
 Enables Performance Qualification for Five Core Stack Products and Microservices
 Enables perf data collation and Aggregation from various sources:
 JMeter JTL files
 Infrastructure : Host level, container level and Nginx metrics, etc
 Logs : App, Jmeter and Nginx logs
 Performance Aggregate , Performance Logs and Generate Metrics based on requirement
This module is used for generating consolidated aggregated performance metrics and reports for a
particular perf test.
 Enabling Performance Rules to certify tests : This module is used for applying some specific
set of performance rules on performance reports to conclude the test as Pass/Fail
Performance Testing Tools
11INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
High Level Diagram of the Framework : Working Model
12INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
 Performance Framework to influxDB(time-series db) Replay Tool
 Implementation of self-defensive logic to avoid database failures during performance test
 Supports real-time Replay of the Perf-Test logs any time during or after the execution.
 100% Elimination of any Data/Transaction loss during Perf-Test Execution
 Angular Visualization Application – Real Time Performance Visualization App
 Visualization of Performance Test Summary Report in an Angular Application with necessary details
 Validation different type of Metrics i.e. JVM, Node Start-up Time, Response Time, Query Statistics, AWR Reports, Exceptions etc
 Link to other monitoring tolls with a single click
 TIG Stack Tools :
 influxDB for collating performance test result and system logs in PerfResults & SystemAndEvents database
 Telegraf Monitoring Agent in all app and DB hosts for capturing System and App Metrics
 Grafana Visualization Tool to monitor real time End-to-End Performance metrics i.e. CPU/Mem/Disk usage, Writes/sec, Thread count etc
 Upgrade to influxDB latest version 1.7.9 to overcome some challenges during perf-test execution
 High Availability of influxDB using influx relay server (TBD)
 ELK Stack Tools : Elasticsearch – Keep Running Logs from different nodes, Performance Logs, Logstash, Kibana for App-Logs Monitoring
 Capturing Keep Running Logs , PerfLogs, Jmeter & Filebeat logs from all App and DB servers
 Visualization in Kibana UI and monitoring any exceptions or error is any of the hosts
 Upgrade to ELK Version 7.8.x and Reindexing of old Indices to mitigate some of the issues related to Performance Metrics generation.
Performance Testing Tools…continued
13INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
 Dynatrace Enablement – Monitoring of Host Health, Disk/CPU Usage, System/DB Metrics, Method
hotspot using OneAgent deployment.
 Performance Infrastructure and Tools Development in Google Cloud Platform
 This framework can be adoptable to any cloud infrastructure(AWS, GCP, Azure) with very less
manual effort.
 Supports Load, Stress, Stability, Volume and API Testing
 Performance testing can be achieved for any products( i.e. Microservices, Web Based etc)
 Fully based on Open Source Model. Licensing cost is very minimal.
Performance Testing Tools…continued
14INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Aggregate Dashboard – Sample View
15INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Grafana Sample Dashboard
16INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
High Level Architecture : Server Performance Monitoring
17INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
 How do we address any kind of database failures, network failures, connectivity failures
between AUTs , disk space failures or any kind of other failures which affects your execution
 Can we recover any transactions due to these failures after your Automated Performance or
Functional Test Execution is over ?
 In this context, suppose your test execution is time & resource costly, then how do you address
these failures ?
 Do you need to execute the same test case again from scratch ?
 But still do you have any guarantee to get the accurate result in case of any such failures
again?
 Can you verify Run Time Results in Dashboard to certify that your test execution is going fine ?
WHY DO WE NEED A REPLAY FRAMEWORK IN PLACE ?
18INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Automated Solution Approach :
19INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Flowchart of the Replay Tool Implementation :
Start
NoDownload Performance-
Framework jar and start
gathering Test Info
Yes
Start writing the
Transaction/Re
cords in CSV
file
Delete the
CSV File
Check if
CSV File
Exists &&
more than 2
days old ??
Check if influx-
DB is down ?
Set boolean
IsDBDown
= False?
No
Write each
Transaction/Record
in databaseInfluxDB Database
Set boolean
IsDBDown
= True? Yes
Check if IsDBDown =
True ?
Set boolean
IsDBDown
= False?
Write each
Transaction/Record
in database from
CSV File
Yes
No
Create CSV File in
the workspace and
give a Unique Name
suffixing TestID
End after 3 Retries
Retry for 3 times
No
END
Iterated/Executed by Multiple Threads
Store downtime
duration in Timer
Start
Stop
Display in
Dashboard
DashboardComputationLogic
20INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
 100% Elimination of any Data/Transaction loss during Automation or Performance Test
Execution using Jmeter and Real-Time Performance Analytics Looks like Grafana
 Reduction in Effort and man-hours for completing execution of a performance/automation test.
 Elimination of duplicate test-execution effort for performance or automation tests, due to
inaccurate performance metrics, automation results and graphs.
 Enhancement of overall test execution efficiency and fix of db failures with minimal efforts.
 High accuracy of Performance Metrics ensuring better compatibility between baseline and
comparison test(in two different builds)
 This tool can be used as a plugin with any time-series of relational database system
with/without(depending on the database type ) minimal modification.
Benefits after this Implementation
21INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Reference
 Grafana Integration
https://www.blazemeter.com/blog/how-to-use-grafana-to-monitor-jmeter-non-gui-results
 Real Time Test Results Visualization:
https://www.vinsguru.com/jmeter-real-time-results-influxdb-grafana/
 Jmeter Performance Monitoring Model:
http://www.testautomationguru.com/jmeter-server-performance-monitoring-with-collectd-influxdb-grafana/
 End- To End Monitoring:
https://neilkillen.com/2019/09/09/capture-monitor-jmeter-metrics-in-real-time-with-influxdb-grafana
 Replay Framework Model :
https://softwaremill.com/monitoring-apache-kafka-with-influxdb-grafana/
22INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Call for Papers is now open!
We’re looking for great speakers – submit
your speaker application today.
November 10 – 11, 2020
North America Virtual
Experience
www.influxdays.com/virtual-experience-2020/
23INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ
Thank you !

More Related Content

What's hot

What's hot (20)

Monitoring Apache Kafka with Confluent Control Center
Monitoring Apache Kafka with Confluent Control Center   Monitoring Apache Kafka with Confluent Control Center
Monitoring Apache Kafka with Confluent Control Center
 
Deploying your Data Warehouse on AWS
Deploying your Data Warehouse on AWSDeploying your Data Warehouse on AWS
Deploying your Data Warehouse on AWS
 
Building flexible ETL pipelines with Apache Camel on Quarkus
Building flexible ETL pipelines with Apache Camel on QuarkusBuilding flexible ETL pipelines with Apache Camel on Quarkus
Building flexible ETL pipelines with Apache Camel on Quarkus
 
Grafana 7.0
Grafana 7.0Grafana 7.0
Grafana 7.0
 
Demystify Salesforce Bulk API
Demystify Salesforce Bulk APIDemystify Salesforce Bulk API
Demystify Salesforce Bulk API
 
Grafana.pptx
Grafana.pptxGrafana.pptx
Grafana.pptx
 
MuleSoft Runtime Fabric (RTF): Foundations : MuleSoft Virtual Muleys Meetups
MuleSoft Runtime Fabric (RTF): Foundations  : MuleSoft Virtual Muleys MeetupsMuleSoft Runtime Fabric (RTF): Foundations  : MuleSoft Virtual Muleys Meetups
MuleSoft Runtime Fabric (RTF): Foundations : MuleSoft Virtual Muleys Meetups
 
Introduction to Grafana Loki
Introduction to Grafana LokiIntroduction to Grafana Loki
Introduction to Grafana Loki
 
Prometheus Overview
Prometheus OverviewPrometheus Overview
Prometheus Overview
 
Server monitoring using grafana and prometheus
Server monitoring using grafana and prometheusServer monitoring using grafana and prometheus
Server monitoring using grafana and prometheus
 
Advanced Uses of Salesforce's Login Flows
Advanced Uses of Salesforce's Login FlowsAdvanced Uses of Salesforce's Login Flows
Advanced Uses of Salesforce's Login Flows
 
Application Load Balancer and the integration with AutoScaling and ECS - Pop-...
Application Load Balancer and the integration with AutoScaling and ECS - Pop-...Application Load Balancer and the integration with AutoScaling and ECS - Pop-...
Application Load Balancer and the integration with AutoScaling and ECS - Pop-...
 
REST API testing with SpecFlow
REST API testing with SpecFlowREST API testing with SpecFlow
REST API testing with SpecFlow
 
Linking Metrics to Logs using Loki
Linking Metrics to Logs using LokiLinking Metrics to Logs using Loki
Linking Metrics to Logs using Loki
 
Secure Salesforce: Lightning Components Best Practices
Secure Salesforce: Lightning Components Best PracticesSecure Salesforce: Lightning Components Best Practices
Secure Salesforce: Lightning Components Best Practices
 
Dataweave Libraries and ObjectStore
Dataweave Libraries and ObjectStoreDataweave Libraries and ObjectStore
Dataweave Libraries and ObjectStore
 
Introduction to Prometheus
Introduction to PrometheusIntroduction to Prometheus
Introduction to Prometheus
 
Monitoring on Kubernetes using prometheus
Monitoring on Kubernetes using prometheusMonitoring on Kubernetes using prometheus
Monitoring on Kubernetes using prometheus
 
Salesforce for Beginners
Salesforce for BeginnersSalesforce for Beginners
Salesforce for Beginners
 
Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)
 

Similar to How to Improve Performance Testing Using InfluxDB and Apache JMeter

Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...
Dynatrace
 
Hp application performance center software
Hp application performance center softwareHp application performance center software
Hp application performance center software
HP Enterprise Italia
 

Similar to How to Improve Performance Testing Using InfluxDB and Apache JMeter (20)

Load Testing SAP Applications with IBM Rational Performance Tester
Load Testing SAP Applications with IBM Rational Performance TesterLoad Testing SAP Applications with IBM Rational Performance Tester
Load Testing SAP Applications with IBM Rational Performance Tester
 
Pay pal paypal continuous performance as a self-service with fully-automated...
Pay pal  paypal continuous performance as a self-service with fully-automated...Pay pal  paypal continuous performance as a self-service with fully-automated...
Pay pal paypal continuous performance as a self-service with fully-automated...
 
Anuradha_Resume_10 Years
Anuradha_Resume_10 YearsAnuradha_Resume_10 Years
Anuradha_Resume_10 Years
 
Raju_Resume
Raju_ResumeRaju_Resume
Raju_Resume
 
SplunkLive! Frankfurt 2018 - Monitoring the End User Experience with Splunk
SplunkLive! Frankfurt 2018 - Monitoring the End User Experience with SplunkSplunkLive! Frankfurt 2018 - Monitoring the End User Experience with Splunk
SplunkLive! Frankfurt 2018 - Monitoring the End User Experience with Splunk
 
Nesma autumn conference - Contracting & Performance management - Cees Kuijpers
Nesma autumn conference - Contracting & Performance management - Cees KuijpersNesma autumn conference - Contracting & Performance management - Cees Kuijpers
Nesma autumn conference - Contracting & Performance management - Cees Kuijpers
 
SAP LoadRunner by HP Solution Brief
SAP LoadRunner by HP Solution Brief SAP LoadRunner by HP Solution Brief
SAP LoadRunner by HP Solution Brief
 
Nandini-CV
Nandini-CVNandini-CV
Nandini-CV
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
 
SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01
 
Performance Engineering Basics
Performance Engineering BasicsPerformance Engineering Basics
Performance Engineering Basics
 
Hp application performance center software
Hp application performance center softwareHp application performance center software
Hp application performance center software
 
SplunkLive! Zurich 2018: Monitoring the End User Experience with Splunk
SplunkLive! Zurich 2018: Monitoring the End User Experience with SplunkSplunkLive! Zurich 2018: Monitoring the End User Experience with Splunk
SplunkLive! Zurich 2018: Monitoring the End User Experience with Splunk
 
Transform Software Testing and Quality with the Neotys-Inflectra Platform
Transform Software Testing and Quality with the Neotys-Inflectra PlatformTransform Software Testing and Quality with the Neotys-Inflectra Platform
Transform Software Testing and Quality with the Neotys-Inflectra Platform
 
Silk Performer Presentation v1
Silk Performer Presentation v1Silk Performer Presentation v1
Silk Performer Presentation v1
 
Salesforce Developer Group Toronto - Winter'19
Salesforce Developer Group Toronto - Winter'19Salesforce Developer Group Toronto - Winter'19
Salesforce Developer Group Toronto - Winter'19
 
Shalini Sharma Resume
Shalini Sharma ResumeShalini Sharma Resume
Shalini Sharma Resume
 
Rapise Overview Presentation (2021)
Rapise Overview Presentation (2021)Rapise Overview Presentation (2021)
Rapise Overview Presentation (2021)
 
SplunkLive! Munich 2018: Monitoring the End-User Experience with Splunk
SplunkLive! Munich 2018: Monitoring the End-User Experience with SplunkSplunkLive! Munich 2018: Monitoring the End-User Experience with Splunk
SplunkLive! Munich 2018: Monitoring the End-User Experience with Splunk
 
RAD10987USEN.PDF
RAD10987USEN.PDFRAD10987USEN.PDF
RAD10987USEN.PDF
 

More from InfluxData

How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
InfluxData
 
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
InfluxData
 
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
InfluxData
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
InfluxData
 

More from InfluxData (20)

Announcing InfluxDB Clustered
Announcing InfluxDB ClusteredAnnouncing InfluxDB Clustered
Announcing InfluxDB Clustered
 
Best Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow EcosystemBest Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow Ecosystem
 
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
 
Power Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDBPower Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDB
 
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
 
Build an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING StackBuild an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING Stack
 
Meet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using RustMeet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using Rust
 
Introducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud DedicatedIntroducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud Dedicated
 
Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB
 
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
 
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
 
Introducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage EngineIntroducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage Engine
 
Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena
 
Understanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage EngineUnderstanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage Engine
 
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDBStreamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
 
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
 
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
 
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

How to Improve Performance Testing Using InfluxDB and Apache JMeter

  • 1. End-To-End Performance Testing Framework Large Scale Infrastructure Monitoring
  • 2. Today’s Agenda - About us - What we do at Performance Engineering - What are the monitoring tools used - How do we use influx-Data stack - Performance Test Result Validation - Which Replay Framework do we use - Benefits and Scalability
  • 3. About US Senior Developer - Performance Engineering, SAP Experienced in performing Automation Feasibility Analysis, Test Estimation, Test Strategy Development, Test Execution for different types of web, angular and mobile based applications Sound Implementation Experience is HP QTP(UFT), TestComplete, Selenium, Robot Framework, HP LoadRunner / Jmeter Proficient knowledge on Java, Python, VB Scripting, Ansible, Docker, Shell Scripting, Perl Scripting Subhodeep Ganguly
  • 4. InfluxDB & Grafana Why influxDB ? 1 . InfluxDB is a time series, metrics, and analytics database. 2. It’s written in Go and has no external dependencies. 3. Very minimal effort required to manage the DB infrastructure 4 . Once you install it there’s nothing else to manage
  • 5. Efficient Real Time ELK Monitoring
  • 6. Making Difference by Improving Performance
  • 8. 8INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ  Automated Disk Clean-up Tools for all the servers  Slack Notification Tool, enabling efficient triggering of alerts  Replay Tool Integration: Eliminating the possibility of any data loss , which will make the Results and Logs more accurate.  Resilient and Disruptive Testing  Overall Performance Infrastructure Health check Alerts running 24/7 autonomously  Automated Resolver Tool (developed in ansible) to fix any kind of alerts and onboarding new services to the existing infrastructure with very minimal/ NO efforts.  Automation of Dynatrace Agent Deployment & Enablement of Dynatrace Monitoring Additional Infra Monitoring Modules :
  • 9. Overall Resources – Performance Infrastructure
  • 10. 10INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ  Performance Framework  Business Impact: End to End performance testing with single click  Supports Perf Testing using single load generator and multiple load generator scenarios  Supports Real Time Performance Results Visualization  Enables Performance Qualification for Five Core Stack Products and Microservices  Enables perf data collation and Aggregation from various sources:  JMeter JTL files  Infrastructure : Host level, container level and Nginx metrics, etc  Logs : App, Jmeter and Nginx logs  Performance Aggregate , Performance Logs and Generate Metrics based on requirement This module is used for generating consolidated aggregated performance metrics and reports for a particular perf test.  Enabling Performance Rules to certify tests : This module is used for applying some specific set of performance rules on performance reports to conclude the test as Pass/Fail Performance Testing Tools
  • 11. 11INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ High Level Diagram of the Framework : Working Model
  • 12. 12INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ  Performance Framework to influxDB(time-series db) Replay Tool  Implementation of self-defensive logic to avoid database failures during performance test  Supports real-time Replay of the Perf-Test logs any time during or after the execution.  100% Elimination of any Data/Transaction loss during Perf-Test Execution  Angular Visualization Application – Real Time Performance Visualization App  Visualization of Performance Test Summary Report in an Angular Application with necessary details  Validation different type of Metrics i.e. JVM, Node Start-up Time, Response Time, Query Statistics, AWR Reports, Exceptions etc  Link to other monitoring tolls with a single click  TIG Stack Tools :  influxDB for collating performance test result and system logs in PerfResults & SystemAndEvents database  Telegraf Monitoring Agent in all app and DB hosts for capturing System and App Metrics  Grafana Visualization Tool to monitor real time End-to-End Performance metrics i.e. CPU/Mem/Disk usage, Writes/sec, Thread count etc  Upgrade to influxDB latest version 1.7.9 to overcome some challenges during perf-test execution  High Availability of influxDB using influx relay server (TBD)  ELK Stack Tools : Elasticsearch – Keep Running Logs from different nodes, Performance Logs, Logstash, Kibana for App-Logs Monitoring  Capturing Keep Running Logs , PerfLogs, Jmeter & Filebeat logs from all App and DB servers  Visualization in Kibana UI and monitoring any exceptions or error is any of the hosts  Upgrade to ELK Version 7.8.x and Reindexing of old Indices to mitigate some of the issues related to Performance Metrics generation. Performance Testing Tools…continued
  • 13. 13INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ  Dynatrace Enablement – Monitoring of Host Health, Disk/CPU Usage, System/DB Metrics, Method hotspot using OneAgent deployment.  Performance Infrastructure and Tools Development in Google Cloud Platform  This framework can be adoptable to any cloud infrastructure(AWS, GCP, Azure) with very less manual effort.  Supports Load, Stress, Stability, Volume and API Testing  Performance testing can be achieved for any products( i.e. Microservices, Web Based etc)  Fully based on Open Source Model. Licensing cost is very minimal. Performance Testing Tools…continued
  • 14. 14INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ Aggregate Dashboard – Sample View
  • 15. 15INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ Grafana Sample Dashboard
  • 16. 16INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ High Level Architecture : Server Performance Monitoring
  • 17. 17INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ  How do we address any kind of database failures, network failures, connectivity failures between AUTs , disk space failures or any kind of other failures which affects your execution  Can we recover any transactions due to these failures after your Automated Performance or Functional Test Execution is over ?  In this context, suppose your test execution is time & resource costly, then how do you address these failures ?  Do you need to execute the same test case again from scratch ?  But still do you have any guarantee to get the accurate result in case of any such failures again?  Can you verify Run Time Results in Dashboard to certify that your test execution is going fine ? WHY DO WE NEED A REPLAY FRAMEWORK IN PLACE ?
  • 18. 18INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ Automated Solution Approach :
  • 19. 19INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ Flowchart of the Replay Tool Implementation : Start NoDownload Performance- Framework jar and start gathering Test Info Yes Start writing the Transaction/Re cords in CSV file Delete the CSV File Check if CSV File Exists && more than 2 days old ?? Check if influx- DB is down ? Set boolean IsDBDown = False? No Write each Transaction/Record in databaseInfluxDB Database Set boolean IsDBDown = True? Yes Check if IsDBDown = True ? Set boolean IsDBDown = False? Write each Transaction/Record in database from CSV File Yes No Create CSV File in the workspace and give a Unique Name suffixing TestID End after 3 Retries Retry for 3 times No END Iterated/Executed by Multiple Threads Store downtime duration in Timer Start Stop Display in Dashboard DashboardComputationLogic
  • 20. 20INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ  100% Elimination of any Data/Transaction loss during Automation or Performance Test Execution using Jmeter and Real-Time Performance Analytics Looks like Grafana  Reduction in Effort and man-hours for completing execution of a performance/automation test.  Elimination of duplicate test-execution effort for performance or automation tests, due to inaccurate performance metrics, automation results and graphs.  Enhancement of overall test execution efficiency and fix of db failures with minimal efforts.  High accuracy of Performance Metrics ensuring better compatibility between baseline and comparison test(in two different builds)  This tool can be used as a plugin with any time-series of relational database system with/without(depending on the database type ) minimal modification. Benefits after this Implementation
  • 21. 21INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ Reference  Grafana Integration https://www.blazemeter.com/blog/how-to-use-grafana-to-monitor-jmeter-non-gui-results  Real Time Test Results Visualization: https://www.vinsguru.com/jmeter-real-time-results-influxdb-grafana/  Jmeter Performance Monitoring Model: http://www.testautomationguru.com/jmeter-server-performance-monitoring-with-collectd-influxdb-grafana/  End- To End Monitoring: https://neilkillen.com/2019/09/09/capture-monitor-jmeter-metrics-in-real-time-with-influxdb-grafana  Replay Framework Model : https://softwaremill.com/monitoring-apache-kafka-with-influxdb-grafana/
  • 22. 22INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ Call for Papers is now open! We’re looking for great speakers – submit your speaker application today. November 10 – 11, 2020 North America Virtual Experience www.influxdays.com/virtual-experience-2020/
  • 23. 23INTERNAL© 2019 SAP SE or an SAP affiliate company. All rights reserved. ǀ Thank you !