SlideShare a Scribd company logo
1 of 39
Download to read offline
1
ZERO TO ONE
NOTES AND IDEAS ON FUNCTIONAL
MONITORING OFYOUR APPLICATION
Yann Person - I’m hiring, ping me @troblous
2
who I am & what I do
Yann Person
@troblous
Lead QA

Manomano
3 I’m hiring, ping me @troblous
4 I’m hiring, ping me @troblous
5 I’m hiring, ping me @troblous
6
what QA usually means
functional tests

non-regression tests

performance tests
continuous integration
functional monitoring

technical monitoring
& many more topics
I’m hiring, ping me @troblous
7
what QA usually means
functional tests

non-regression tests

performance tests
continuous integration
functional monitoring

technical monitoring
& many more topics
I’m hiring, ping me @troblous
8
the pitch
“mmm lots of people are calling us

complaining of being unable to do X”




a huge issue started in production

and you aren’t aware
I’m hiring, ping me @troblous
9
where to start
I’m hiring, ping me @troblous
10
focus on your business
from what do you make $$$?
where are your weaknesses?
I’m hiring, ping me @troblous
11
focus on your business
we take fees from $$$ that comes in (= payins)
we have external dependencies to process payins
I’m hiring, ping me @troblous
12
metric choice
if you had to choose, what metric would it be?
I’m hiring, ping me @troblous
13
choose one key metric
number of successful payins
I’m hiring, ping me @troblous
14
work with devs to get it
check what you currently store
check what you could easily store
check if you have an easy way to access it
I’m hiring, ping me @troblous
15
work with devs to get it
we log every API calls:

what comes in, what comes out
we use Elasticsearch/Logstash/Kibana
I’m hiring, ping me @troblous
16
ELK
Logstash

collect & transform
Elasticsearch

store
Kibana

visualize
I’m hiring, ping me @troblous
17
make a MVP
MVP = Minimum Viable Product




one metric displayed to a few people
I’m hiring, ping me @troblous
18
make a MVP
a Kibana visualization of the

number of successful payins




shared to the Product/QA teams
I’m hiring, ping me @troblous
19
make a MVP
I’m hiring, ping me @troblous
20
“done is better
than perfect”
I’m hiring, ping me @troblous
21
how to improve
I’m hiring, ping me @troblous
22
iterate on your needs
now that you have one metric, what happens

when this metric abruptly changes?
what do you do?
what information do you look for?
I’m hiring, ping me @troblous
23
iterate on your needs
when we notice a drop in

successful payins, we check:
which currencies are impacted
which clients are impacted
which types of payins are involved
I’m hiring, ping me @troblous
24
iterate on your needs
I’m hiring, ping me @troblous
25
iterate on your needs
another important metric when you work with APIs:
the response time
I’m hiring, ping me @troblous
26
iterate on your needs
I’m hiring, ping me @troblous
27
iterate how you measure
does the average really reflect the reality?
I’m hiring, ping me @troblous
28
iterate how you measure
I’m hiring, ping me @troblous
29 I’m hiring, ping me @troblous
30
step up your game
other tools exist to visualize your data
they can be better for beautiful dashboards
Grafana for example
I’m hiring, ping me @troblous
31
step up your game
Logstash

collect & transform
Elasticsearch

store
Kibana

visualize
Grafana
I’m hiring, ping me @troblous
32
step up your game
I’m hiring, ping me @troblous
33
in real life
I’m hiring, ping me @troblous
34
go even further
setup alerts based on your dashboards
ElastAlert or Watcher (X-Pack) for example
I’m hiring, ping me @troblous
35
alerts in Slack
I’m hiring, ping me @troblous
36
what an alert looks like
Rule Name
Failed payins (eur)
Query
urlPattern:payins AND httpMethod:POST AND status:FAILED AND
currency:EUR
Alert Type
Frequency
Number of events
40
Timeframe
5min
I’m hiring, ping me @troblous
37
best good practices
log errors
check them regularly & look for patterns
observe your traffic
I’m hiring, ping me @troblous
38
what next
keep learning and contributing
share your experiences
join me, i’m recruiting
39
the end
have questions, need info & advices on tools, share
experiences, discuss automation & performance,
recommend candidates or recruiters…
ping me @troblous
Yann Person

More Related Content

Similar to Zero to One - Notes on functional monitoring for startups

Similar to Zero to One - Notes on functional monitoring for startups (20)

Asia Orangio - How to acquire your first 100 customers
Asia Orangio - How to acquire your first 100 customersAsia Orangio - How to acquire your first 100 customers
Asia Orangio - How to acquire your first 100 customers
 
Top 10 Tips for Your Split Test Program by Justin Rondeau
Top 10 Tips for Your Split Test Program by Justin RondeauTop 10 Tips for Your Split Test Program by Justin Rondeau
Top 10 Tips for Your Split Test Program by Justin Rondeau
 
Aligning impact from boardrooms to pixels
Aligning impact from boardrooms to pixelsAligning impact from boardrooms to pixels
Aligning impact from boardrooms to pixels
 
Meaningful Metrics for Startups
Meaningful Metrics for StartupsMeaningful Metrics for Startups
Meaningful Metrics for Startups
 
Measurement for success - #SASCON 2014
Measurement for success - #SASCON 2014Measurement for success - #SASCON 2014
Measurement for success - #SASCON 2014
 
Business Growth Engineering
Business Growth EngineeringBusiness Growth Engineering
Business Growth Engineering
 
30 Sales Tips to Build and Grow your Startup by Jon Woodroof and Enoch Pakanati
30 Sales Tips to Build and Grow your Startup by Jon Woodroof and Enoch Pakanati30 Sales Tips to Build and Grow your Startup by Jon Woodroof and Enoch Pakanati
30 Sales Tips to Build and Grow your Startup by Jon Woodroof and Enoch Pakanati
 
Culture of Optimization
Culture of OptimizationCulture of Optimization
Culture of Optimization
 
What We Learned from Four Years of Sciencing the Crap Out of DevOps - Nicole ...
What We Learned from Four Years of Sciencing the Crap Out of DevOps - Nicole ...What We Learned from Four Years of Sciencing the Crap Out of DevOps - Nicole ...
What We Learned from Four Years of Sciencing the Crap Out of DevOps - Nicole ...
 
DOES16 San Francisco - Nicole Forsgren & Jez Humble - The Latest: What We Lea...
DOES16 San Francisco - Nicole Forsgren & Jez Humble - The Latest: What We Lea...DOES16 San Francisco - Nicole Forsgren & Jez Humble - The Latest: What We Lea...
DOES16 San Francisco - Nicole Forsgren & Jez Humble - The Latest: What We Lea...
 
DOES 2016 Sciencing the Crap Out of DevOps
DOES 2016 Sciencing the Crap Out of DevOpsDOES 2016 Sciencing the Crap Out of DevOps
DOES 2016 Sciencing the Crap Out of DevOps
 
Digital Mornings Copenhagen - Mathew Sweezey presentation
Digital Mornings Copenhagen - Mathew Sweezey presentationDigital Mornings Copenhagen - Mathew Sweezey presentation
Digital Mornings Copenhagen - Mathew Sweezey presentation
 
Digital Mornings Copenhagen - Mathew Sweezey presentation
Digital Mornings Copenhagen - Mathew Sweezey presentationDigital Mornings Copenhagen - Mathew Sweezey presentation
Digital Mornings Copenhagen - Mathew Sweezey presentation
 
Validation and hypothesis based product management by Abdallah Al-Khalidi
Validation and hypothesis based  product management by Abdallah Al-KhalidiValidation and hypothesis based  product management by Abdallah Al-Khalidi
Validation and hypothesis based product management by Abdallah Al-Khalidi
 
Digital morning, Stockholm, 23 of March
Digital morning, Stockholm, 23 of MarchDigital morning, Stockholm, 23 of March
Digital morning, Stockholm, 23 of March
 
Digital Marketing ROI at Blogworld NYC
Digital Marketing ROI at Blogworld NYCDigital Marketing ROI at Blogworld NYC
Digital Marketing ROI at Blogworld NYC
 
Unlocking the 4 Gateways of Growth
Unlocking the 4 Gateways of GrowthUnlocking the 4 Gateways of Growth
Unlocking the 4 Gateways of Growth
 
Personalization Strategy Workshop - Los Angeles
Personalization Strategy Workshop - Los AngelesPersonalization Strategy Workshop - Los Angeles
Personalization Strategy Workshop - Los Angeles
 
Beyond the Button: Tests that actually move the needle - Karen Hopper, Razorfish
Beyond the Button: Tests that actually move the needle - Karen Hopper, RazorfishBeyond the Button: Tests that actually move the needle - Karen Hopper, Razorfish
Beyond the Button: Tests that actually move the needle - Karen Hopper, Razorfish
 
Being a Data-Driven Communicator
Being a Data-Driven CommunicatorBeing a Data-Driven Communicator
Being a Data-Driven Communicator
 

Recently uploaded

AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Recently uploaded (20)

Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 

Zero to One - Notes on functional monitoring for startups

  • 1. 1 ZERO TO ONE NOTES AND IDEAS ON FUNCTIONAL MONITORING OFYOUR APPLICATION Yann Person - I’m hiring, ping me @troblous
  • 2. 2 who I am & what I do Yann Person @troblous Lead QA
 Manomano
  • 3. 3 I’m hiring, ping me @troblous
  • 4. 4 I’m hiring, ping me @troblous
  • 5. 5 I’m hiring, ping me @troblous
  • 6. 6 what QA usually means functional tests
 non-regression tests
 performance tests continuous integration functional monitoring
 technical monitoring & many more topics I’m hiring, ping me @troblous
  • 7. 7 what QA usually means functional tests
 non-regression tests
 performance tests continuous integration functional monitoring
 technical monitoring & many more topics I’m hiring, ping me @troblous
  • 8. 8 the pitch “mmm lots of people are calling us
 complaining of being unable to do X” 
 
 a huge issue started in production
 and you aren’t aware I’m hiring, ping me @troblous
  • 9. 9 where to start I’m hiring, ping me @troblous
  • 10. 10 focus on your business from what do you make $$$? where are your weaknesses? I’m hiring, ping me @troblous
  • 11. 11 focus on your business we take fees from $$$ that comes in (= payins) we have external dependencies to process payins I’m hiring, ping me @troblous
  • 12. 12 metric choice if you had to choose, what metric would it be? I’m hiring, ping me @troblous
  • 13. 13 choose one key metric number of successful payins I’m hiring, ping me @troblous
  • 14. 14 work with devs to get it check what you currently store check what you could easily store check if you have an easy way to access it I’m hiring, ping me @troblous
  • 15. 15 work with devs to get it we log every API calls:
 what comes in, what comes out we use Elasticsearch/Logstash/Kibana I’m hiring, ping me @troblous
  • 17. 17 make a MVP MVP = Minimum Viable Product 
 
 one metric displayed to a few people I’m hiring, ping me @troblous
  • 18. 18 make a MVP a Kibana visualization of the
 number of successful payins 
 
 shared to the Product/QA teams I’m hiring, ping me @troblous
  • 19. 19 make a MVP I’m hiring, ping me @troblous
  • 20. 20 “done is better than perfect” I’m hiring, ping me @troblous
  • 21. 21 how to improve I’m hiring, ping me @troblous
  • 22. 22 iterate on your needs now that you have one metric, what happens
 when this metric abruptly changes? what do you do? what information do you look for? I’m hiring, ping me @troblous
  • 23. 23 iterate on your needs when we notice a drop in
 successful payins, we check: which currencies are impacted which clients are impacted which types of payins are involved I’m hiring, ping me @troblous
  • 24. 24 iterate on your needs I’m hiring, ping me @troblous
  • 25. 25 iterate on your needs another important metric when you work with APIs: the response time I’m hiring, ping me @troblous
  • 26. 26 iterate on your needs I’m hiring, ping me @troblous
  • 27. 27 iterate how you measure does the average really reflect the reality? I’m hiring, ping me @troblous
  • 28. 28 iterate how you measure I’m hiring, ping me @troblous
  • 29. 29 I’m hiring, ping me @troblous
  • 30. 30 step up your game other tools exist to visualize your data they can be better for beautiful dashboards Grafana for example I’m hiring, ping me @troblous
  • 31. 31 step up your game Logstash
 collect & transform Elasticsearch
 store Kibana
 visualize Grafana I’m hiring, ping me @troblous
  • 32. 32 step up your game I’m hiring, ping me @troblous
  • 33. 33 in real life I’m hiring, ping me @troblous
  • 34. 34 go even further setup alerts based on your dashboards ElastAlert or Watcher (X-Pack) for example I’m hiring, ping me @troblous
  • 35. 35 alerts in Slack I’m hiring, ping me @troblous
  • 36. 36 what an alert looks like Rule Name Failed payins (eur) Query urlPattern:payins AND httpMethod:POST AND status:FAILED AND currency:EUR Alert Type Frequency Number of events 40 Timeframe 5min I’m hiring, ping me @troblous
  • 37. 37 best good practices log errors check them regularly & look for patterns observe your traffic I’m hiring, ping me @troblous
  • 38. 38 what next keep learning and contributing share your experiences join me, i’m recruiting
  • 39. 39 the end have questions, need info & advices on tools, share experiences, discuss automation & performance, recommend candidates or recruiters… ping me @troblous Yann Person