SlideShare une entreprise Scribd logo
1  sur  43
By Arik Lerner
Team Lead Automation & Performance/Resilience
Measure() OR Die();
Measure
or
Die
- 3.5 years in Liveperson
- 2 years - Reporting Platform
- 1.5 years Team Lead Automation & Performance/Resilience
- Interests: Private pilot on Cessna 172
Bio
➔ How we monitor with e2e testing
➔ E2E Products & Persona’s
➔ The Awakens of the End2End Data
➔ Architecture & Life cycle
Meetup Agenda
About Liveperson
Liveperson transforms the
connection between brands and
consumers.
3BN Visits/month
200BN API calls/month
2 PB data a year
1.5 M Visits concurrent
Our Scale
Our Engineering
~200 people RnD
Constant innovation
Multiple Technologies
Fast release cycle
We Monitor Liveperson Services
By e2e tests which simulate
Real Business scenario
➔ Indicates real business problems
➔ Service availability from consumer eyes.
➔ Alert and acquire immediate action.
➔ Insight on our business services
Agent Login Enter into the system
Visitor init chatVisitor enter into site
Agent Chat
E2E Scenario Example
E2E customers expectations
➔Stability == TRUST
➔Investigatable
➔Service Coverage
➔Scale
E2E Dashboard Statistics
Real Time Dashboard
Kibana - HAR statistics & Aggregation
E2E Persona’s
Production specialist
PMO
Management
This is Yossi.
When Yossi gets up in the morning
Yossi looks at the E2E RT dashboard
Yossi recognize failure
Yossi enters into E2E debug center tools
Yossi is smart!
Be like Yossi.
Production Specialist User Story
PMO User Story
This is Michal.
Before any software deployment
When dashboard failure rate is below 3%
Michal have a GO for deployment
Michal is smart!
Be like Michal.
Management story
This is Eli.
When Eli getup in the morning.
Eli looks into the Dashboard statistics
Eli can see the health and availability
Each Data Centers
Eli is smart!
Be like Eli.
➔ Total failures rate.
◆ Filter for each Data Center
◆ Filter each business flow
KPIs
➔ Trend to understand service stability
Widgets
What KPIs do I need to measure ?
➔ Total chats failure rate.
➔ Total missing engagements
➔ Total login failures
➔ Average login response time.
KPIs
➔ Failure cause break down
➔ Client location root cause
➔ Test scenario failures
Widgets
What KPIs do I need to measure ?
Dashboard Demo
The Awakening of the
End2End Data
Start collecting the data!
➔ Get build failures/success
➔ Get failure cause
➔ Business flows
➔ Test duration
➔ Client location
➔ Data Center location
➔ Account
@Test
Raw Data Output
The HTTP Archive format or HAR, is a JSON-formatted archive file format for logging of a web browser's
interaction with a site. The common extension for these files is .har.
The specification for the HTTP Archive (HAR) format defines an archival format for HTTP transactions that can
be used by a web browser to export detailed performance data about web pages it loads. The specification for
this format is produced by the Web Performance Working Group[1] of the World Wide Web Consortium (W3C).
The specification is in draft form and is a work in progress.
HAR (Http Archive)
➔Logging web browser traffic
HAR proxy diagram
Proxy on
port XXX
Selenium
WebDriver
HAR
www.Liveperson.com
Request passes
through proxy
Based on BrowserMob embedded proxy server
Code snippet - adding proxy into Selenium
• N scenarios
• Running from M locations
• Running to X Data Centers
• Yields HAR Data
Question: how do we investigate the data for the
entire Farm/Location/Scenario ? etc...
Answer: aggregation.
Pop quiz:
Start with collecting the data!
@Test
Raw Data Output {
metaData:{
"Testname": ChatFlow,
"Account": qa12345,
"ClientLocation": US,
"DataCenter": UK,
}
}
MetadataHAR
Kafka (topic e2e)
Logstash + Elasticsearch
Kibana Dashboard
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
HAR
files@Test @Test
HAR
Processor
Files Output
Get Json
Send data
Code snippet send message into Kafka
Our benefits
➔ Data Retention - 30 days
➔ Ability to query and aggregate over the data for investigation
➔ Ability to build dashboards
➔ Access to the data thorough Elasticsearch APIs
ELK & HAR Downsides
➔ Complicated queries over Kibana
➔ ELK setup & maintenance
➔ When getting response timeout -> HAR displayed enormous number (need to be handled by code)
What more E2E outputs do we have ?
@Test
More Output BDD Reports
Video
Logs
Browser console logs
Code snippet
BDD - Behaviour Driven Development
MySql DB KAFKA + ELK
Kibana serviceE2E Reports
HAR data
e2e data
Graphite
Zabbix
Jenkins Master
Production
metrics
Grafana
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
Jenkin
s Slave
DC-1 DC-2 DC-N
@Test @Test
RT Dashboard
Jenkins Master DR
E2E Test Lifecycle
DEV ProductionStagingQADEV
E2E @ Scale
E2E @ Scale
➔ 1.5M http traffic records per day
➔ 200K runs per day
➔ 60 Jenkins slaves machines
➔ 28 scenarios
➔ 6 client location
➔ 6 Regions
What to take home ?
➔ Monitor your Data Centers from consumer experience
➔ Collect data
➔ Provide business meaning with the data.
THANK YOU!
We are hiring
YouTube.com/LivePersonDev
Twitter.com/LivePersonDev
Facebook.com/LivePersonDev
Slideshare.net/LivePersonDev

Contenu connexe

Tendances

Tendances (20)

Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
Applying ML on your Data in Motion with AWS and Confluent | Joseph Morais, Co...
 
Vulnerability Discovery in the Cloud
Vulnerability Discovery in the CloudVulnerability Discovery in the Cloud
Vulnerability Discovery in the Cloud
 
(DVO204) Monitoring Strategies: Finding Signal in the Noise
(DVO204) Monitoring Strategies: Finding Signal in the Noise(DVO204) Monitoring Strategies: Finding Signal in the Noise
(DVO204) Monitoring Strategies: Finding Signal in the Noise
 
Application Monitoring using Datadog
Application Monitoring using DatadogApplication Monitoring using Datadog
Application Monitoring using Datadog
 
Observability for developer ( Inny So & Andrew Jones, ThoughtWorks) Kafka Su...
Observability for developer ( Inny So & Andrew Jones, ThoughtWorks)  Kafka Su...Observability for developer ( Inny So & Andrew Jones, ThoughtWorks)  Kafka Su...
Observability for developer ( Inny So & Andrew Jones, ThoughtWorks) Kafka Su...
 
Blue green deployment
Blue green deploymentBlue green deployment
Blue green deployment
 
Measure() or die()
Measure() or die()Measure() or die()
Measure() or die()
 
3 Ways to Deliver an Elastic, Cost-Effective Cloud Architecture (ANZ)
3 Ways to Deliver an Elastic, Cost-Effective Cloud Architecture (ANZ)3 Ways to Deliver an Elastic, Cost-Effective Cloud Architecture (ANZ)
3 Ways to Deliver an Elastic, Cost-Effective Cloud Architecture (ANZ)
 
How we accelerated our vault adoption with terraform
How we accelerated our vault adoption with terraformHow we accelerated our vault adoption with terraform
How we accelerated our vault adoption with terraform
 
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
Jay Kreps, Confluent | Kafka Summit SF 2019 Keynote ft. Dev Tagare, Lyft + Pr...
 
Jun Rao, Confluent | Kafka Summit SF 2019 Keynote ft. Chris Kasten, Walmart Labs
Jun Rao, Confluent | Kafka Summit SF 2019 Keynote ft. Chris Kasten, Walmart LabsJun Rao, Confluent | Kafka Summit SF 2019 Keynote ft. Chris Kasten, Walmart Labs
Jun Rao, Confluent | Kafka Summit SF 2019 Keynote ft. Chris Kasten, Walmart Labs
 
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent)  K...Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent)  K...
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
 
Kafka Summit NYC 2017 - Apache Kafka in the Enterprise: What if it Fails?
Kafka Summit NYC 2017 - Apache Kafka in the Enterprise: What if it Fails? Kafka Summit NYC 2017 - Apache Kafka in the Enterprise: What if it Fails?
Kafka Summit NYC 2017 - Apache Kafka in the Enterprise: What if it Fails?
 
From Dev to Ops:Delivering an API to Production with Splunk
From Dev to Ops:Delivering an API to Production with SplunkFrom Dev to Ops:Delivering an API to Production with Splunk
From Dev to Ops:Delivering an API to Production with Splunk
 
Project Sherpa: How RightScale Went All in on Docker
Project Sherpa: How RightScale Went All in on DockerProject Sherpa: How RightScale Went All in on Docker
Project Sherpa: How RightScale Went All in on Docker
 
Making Kafka Cloud Native | Jay Kreps, Co-Founder & CEO, Confluent
Making Kafka Cloud Native | Jay Kreps, Co-Founder & CEO, ConfluentMaking Kafka Cloud Native | Jay Kreps, Co-Founder & CEO, Confluent
Making Kafka Cloud Native | Jay Kreps, Co-Founder & CEO, Confluent
 
Microservices on top of kafka
Microservices on top of kafkaMicroservices on top of kafka
Microservices on top of kafka
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Event Driven Architectures with Apache Kafka on Heroku
Event Driven Architectures with Apache Kafka on HerokuEvent Driven Architectures with Apache Kafka on Heroku
Event Driven Architectures with Apache Kafka on Heroku
 
The Netflix API Platform for Server-Side Scripting
The Netflix API Platform for Server-Side ScriptingThe Netflix API Platform for Server-Side Scripting
The Netflix API Platform for Server-Side Scripting
 

En vedette

Susan Lannon Samples
Susan Lannon SamplesSusan Lannon Samples
Susan Lannon Samples
SuzinLannon
 
小企業におけるSBS2003の活用
小企業におけるSBS2003の活用小企業におけるSBS2003の活用
小企業におけるSBS2003の活用
Masaya Sawada
 
Cálcjulo mental 1
Cálcjulo mental 1Cálcjulo mental 1
Cálcjulo mental 1
sergiodelmo
 

En vedette (20)

Kubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platformKubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platform
 
Telling the LivePerson Technology Story at Couchbase [SF] 2013
Telling the LivePerson Technology Story at Couchbase [SF] 2013Telling the LivePerson Technology Story at Couchbase [SF] 2013
Telling the LivePerson Technology Story at Couchbase [SF] 2013
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8
 
Graph QL Introduction
Graph QL IntroductionGraph QL Introduction
Graph QL Introduction
 
CRUD (Create Read Update Delete) sederhana di Netbeans 6.9.1 + JSR-296 (Swing...
CRUD (Create Read Update Delete) sederhana di Netbeans 6.9.1 + JSR-296 (Swing...CRUD (Create Read Update Delete) sederhana di Netbeans 6.9.1 + JSR-296 (Swing...
CRUD (Create Read Update Delete) sederhana di Netbeans 6.9.1 + JSR-296 (Swing...
 
Presentaties duurzaam vastgoed bij banken en verzekeringsmaatschappijen 4 nov...
Presentaties duurzaam vastgoed bij banken en verzekeringsmaatschappijen 4 nov...Presentaties duurzaam vastgoed bij banken en verzekeringsmaatschappijen 4 nov...
Presentaties duurzaam vastgoed bij banken en verzekeringsmaatschappijen 4 nov...
 
Susan Lannon Samples
Susan Lannon SamplesSusan Lannon Samples
Susan Lannon Samples
 
Praktijkervaring met het stappenplan Duurzaam Beheer en onderhoud
Praktijkervaring met het stappenplan Duurzaam Beheer en onderhoudPraktijkervaring met het stappenplan Duurzaam Beheer en onderhoud
Praktijkervaring met het stappenplan Duurzaam Beheer en onderhoud
 
Euros pp
Euros ppEuros pp
Euros pp
 
Review2015
Review2015Review2015
Review2015
 
Jiuzhou
JiuzhouJiuzhou
Jiuzhou
 
Moving Outside the Firewall with Web AppBuilder and Portal for ArcGIS Server
Moving Outside the Firewall with Web AppBuilder and Portal for ArcGIS ServerMoving Outside the Firewall with Web AppBuilder and Portal for ArcGIS Server
Moving Outside the Firewall with Web AppBuilder and Portal for ArcGIS Server
 
小企業におけるSBS2003の活用
小企業におけるSBS2003の活用小企業におけるSBS2003の活用
小企業におけるSBS2003の活用
 
Duurzaam vastgoed Nieuwskrant - Februari 2010
Duurzaam vastgoed Nieuwskrant - Februari 2010Duurzaam vastgoed Nieuwskrant - Februari 2010
Duurzaam vastgoed Nieuwskrant - Februari 2010
 
System Revolution- How We Did It
System Revolution- How We Did It System Revolution- How We Did It
System Revolution- How We Did It
 
Cache management obiee 11g
Cache management obiee 11gCache management obiee 11g
Cache management obiee 11g
 
Csu 2011
Csu 2011Csu 2011
Csu 2011
 
Endocrine System
Endocrine  SystemEndocrine  System
Endocrine System
 
Cálcjulo mental 1
Cálcjulo mental 1Cálcjulo mental 1
Cálcjulo mental 1
 
Did hybrid arm loans cause the housing crash?
Did hybrid arm loans cause the housing crash?Did hybrid arm loans cause the housing crash?
Did hybrid arm loans cause the housing crash?
 

Similaire à Measure() or die()

The Next Generation Application Server – How Event Based Processing yields s...
The Next Generation  Application Server – How Event Based Processing yields s...The Next Generation  Application Server – How Event Based Processing yields s...
The Next Generation Application Server – How Event Based Processing yields s...
Guy Korland
 
Managing EBS Testing, Performance, Configurations, Change & User experience
Managing EBS Testing, Performance, Configurations, Change & User experienceManaging EBS Testing, Performance, Configurations, Change & User experience
Managing EBS Testing, Performance, Configurations, Change & User experience
InSync Conference
 
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
WSPDC & FEDSPUG
 
AnalysisServices
AnalysisServicesAnalysisServices
AnalysisServices
webuploader
 

Similaire à Measure() or die() (20)

Become a Performance Diagnostics Hero
Become a Performance Diagnostics HeroBecome a Performance Diagnostics Hero
Become a Performance Diagnostics Hero
 
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
 
Replay Solutions CFD
Replay Solutions CFDReplay Solutions CFD
Replay Solutions CFD
 
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
Why And When Should We Consider Stream Processing In Our Solutions Teqnation ...
 
Salesforce Multitenant Architecture: How We Do the Magic We Do
Salesforce Multitenant Architecture: How We Do the Magic We DoSalesforce Multitenant Architecture: How We Do the Magic We Do
Salesforce Multitenant Architecture: How We Do the Magic We Do
 
JavaOne 2015: Top Performance Patterns Deep Dive
JavaOne 2015: Top Performance Patterns Deep DiveJavaOne 2015: Top Performance Patterns Deep Dive
JavaOne 2015: Top Performance Patterns Deep Dive
 
Nandini-CV
Nandini-CVNandini-CV
Nandini-CV
 
Virtualising Tier 1 Apps
Virtualising Tier 1 AppsVirtualising Tier 1 Apps
Virtualising Tier 1 Apps
 
The Next Generation Application Server – How Event Based Processing yields s...
The Next Generation  Application Server – How Event Based Processing yields s...The Next Generation  Application Server – How Event Based Processing yields s...
The Next Generation Application Server – How Event Based Processing yields s...
 
Product Development
Product DevelopmentProduct Development
Product Development
 
The Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs PublicThe Magic Of Application Lifecycle Management In Vs Public
The Magic Of Application Lifecycle Management In Vs Public
 
Managing EBS Testing, Performance, Configurations, Change & User experience
Managing EBS Testing, Performance, Configurations, Change & User experienceManaging EBS Testing, Performance, Configurations, Change & User experience
Managing EBS Testing, Performance, Configurations, Change & User experience
 
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
FEDSPUG April 2014: Visual Studio 2013 for Application Lifecycle Management &...
 
Testing Big Data solutions fast and furiously
Testing Big Data solutions fast and furiouslyTesting Big Data solutions fast and furiously
Testing Big Data solutions fast and furiously
 
How to build an automated customer data onboarding pipeline
How to build an automated customer data onboarding pipelineHow to build an automated customer data onboarding pipeline
How to build an automated customer data onboarding pipeline
 
Critical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM ApplicationsCritical Preflight Checks for Your EPM Applications
Critical Preflight Checks for Your EPM Applications
 
AnalysisServices
AnalysisServicesAnalysisServices
AnalysisServices
 
Partner Connect APAC - 2022 - April
Partner Connect APAC - 2022 - AprilPartner Connect APAC - 2022 - April
Partner Connect APAC - 2022 - April
 
Understanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We DoUnderstanding the Salesforce Architecture: How We Do the Magic We Do
Understanding the Salesforce Architecture: How We Do the Magic We Do
 
SharePoint 2010 Global Deployment
SharePoint 2010 Global DeploymentSharePoint 2010 Global Deployment
SharePoint 2010 Global Deployment
 

Plus de LivePerson

Plus de LivePerson (13)

Http 2: Should I care?
Http 2: Should I care?Http 2: Should I care?
Http 2: Should I care?
 
Mobile app real-time content modifications using websockets
Mobile app real-time content modifications using websocketsMobile app real-time content modifications using websockets
Mobile app real-time content modifications using websockets
 
Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices
 
Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]
 
Apache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePersonApache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePerson
 
Data compression in Modern Application
Data compression in Modern ApplicationData compression in Modern Application
Data compression in Modern Application
 
SIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolSIP - Introduction to SIP Protocol
SIP - Introduction to SIP Protocol
 
Scalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduceScalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduce
 
Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
From a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePersonFrom a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePerson
 
How can A/B testing go wrong?
How can A/B testing go wrong?How can A/B testing go wrong?
How can A/B testing go wrong?
 
Introduction to Vertica (Architecture & More)
Introduction to Vertica (Architecture & More)Introduction to Vertica (Architecture & More)
Introduction to Vertica (Architecture & More)
 

Dernier

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
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Dernier (20)

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
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
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
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
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
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Measure() or die()

  • 1.
  • 2. By Arik Lerner Team Lead Automation & Performance/Resilience Measure() OR Die(); Measure or Die
  • 3. - 3.5 years in Liveperson - 2 years - Reporting Platform - 1.5 years Team Lead Automation & Performance/Resilience - Interests: Private pilot on Cessna 172 Bio
  • 4.
  • 5. ➔ How we monitor with e2e testing ➔ E2E Products & Persona’s ➔ The Awakens of the End2End Data ➔ Architecture & Life cycle Meetup Agenda
  • 6. About Liveperson Liveperson transforms the connection between brands and consumers.
  • 7. 3BN Visits/month 200BN API calls/month 2 PB data a year 1.5 M Visits concurrent Our Scale
  • 8. Our Engineering ~200 people RnD Constant innovation Multiple Technologies Fast release cycle
  • 9.
  • 10. We Monitor Liveperson Services By e2e tests which simulate Real Business scenario ➔ Indicates real business problems ➔ Service availability from consumer eyes. ➔ Alert and acquire immediate action. ➔ Insight on our business services
  • 11. Agent Login Enter into the system Visitor init chatVisitor enter into site Agent Chat E2E Scenario Example
  • 12. E2E customers expectations ➔Stability == TRUST ➔Investigatable ➔Service Coverage ➔Scale
  • 13.
  • 16. Kibana - HAR statistics & Aggregation
  • 18. This is Yossi. When Yossi gets up in the morning Yossi looks at the E2E RT dashboard Yossi recognize failure Yossi enters into E2E debug center tools Yossi is smart! Be like Yossi. Production Specialist User Story
  • 19. PMO User Story This is Michal. Before any software deployment When dashboard failure rate is below 3% Michal have a GO for deployment Michal is smart! Be like Michal.
  • 20. Management story This is Eli. When Eli getup in the morning. Eli looks into the Dashboard statistics Eli can see the health and availability Each Data Centers Eli is smart! Be like Eli.
  • 21.
  • 22. ➔ Total failures rate. ◆ Filter for each Data Center ◆ Filter each business flow KPIs ➔ Trend to understand service stability Widgets What KPIs do I need to measure ?
  • 23. ➔ Total chats failure rate. ➔ Total missing engagements ➔ Total login failures ➔ Average login response time. KPIs ➔ Failure cause break down ➔ Client location root cause ➔ Test scenario failures Widgets What KPIs do I need to measure ?
  • 25. The Awakening of the End2End Data
  • 26. Start collecting the data! ➔ Get build failures/success ➔ Get failure cause ➔ Business flows ➔ Test duration ➔ Client location ➔ Data Center location ➔ Account @Test Raw Data Output
  • 27. The HTTP Archive format or HAR, is a JSON-formatted archive file format for logging of a web browser's interaction with a site. The common extension for these files is .har. The specification for the HTTP Archive (HAR) format defines an archival format for HTTP transactions that can be used by a web browser to export detailed performance data about web pages it loads. The specification for this format is produced by the Web Performance Working Group[1] of the World Wide Web Consortium (W3C). The specification is in draft form and is a work in progress. HAR (Http Archive) ➔Logging web browser traffic
  • 28. HAR proxy diagram Proxy on port XXX Selenium WebDriver HAR www.Liveperson.com Request passes through proxy Based on BrowserMob embedded proxy server Code snippet - adding proxy into Selenium
  • 29. • N scenarios • Running from M locations • Running to X Data Centers • Yields HAR Data Question: how do we investigate the data for the entire Farm/Location/Scenario ? etc... Answer: aggregation. Pop quiz:
  • 30. Start with collecting the data! @Test Raw Data Output { metaData:{ "Testname": ChatFlow, "Account": qa12345, "ClientLocation": US, "DataCenter": UK, } } MetadataHAR
  • 31. Kafka (topic e2e) Logstash + Elasticsearch Kibana Dashboard Jenkin s Slave Jenkin s Slave Jenkin s Slave HAR files@Test @Test HAR Processor Files Output Get Json Send data Code snippet send message into Kafka
  • 32. Our benefits ➔ Data Retention - 30 days ➔ Ability to query and aggregate over the data for investigation ➔ Ability to build dashboards ➔ Access to the data thorough Elasticsearch APIs ELK & HAR Downsides ➔ Complicated queries over Kibana ➔ ELK setup & maintenance ➔ When getting response timeout -> HAR displayed enormous number (need to be handled by code)
  • 33. What more E2E outputs do we have ? @Test More Output BDD Reports Video Logs Browser console logs
  • 34. Code snippet BDD - Behaviour Driven Development
  • 35.
  • 36. MySql DB KAFKA + ELK Kibana serviceE2E Reports HAR data e2e data Graphite Zabbix Jenkins Master Production metrics Grafana Jenkin s Slave Jenkin s Slave Jenkin s Slave Jenkin s Slave Jenkin s Slave Jenkin s Slave Jenkin s Slave Jenkin s Slave Jenkin s Slave DC-1 DC-2 DC-N @Test @Test RT Dashboard Jenkins Master DR
  • 37. E2E Test Lifecycle DEV ProductionStagingQADEV
  • 39. E2E @ Scale ➔ 1.5M http traffic records per day ➔ 200K runs per day ➔ 60 Jenkins slaves machines ➔ 28 scenarios ➔ 6 client location ➔ 6 Regions
  • 40. What to take home ? ➔ Monitor your Data Centers from consumer experience ➔ Collect data ➔ Provide business meaning with the data.
  • 41.