SlideShare a Scribd company logo
1 of 40
Download to read offline
Prepared for:
Getting Started and Best Practices
Rigor Monitoring – API Check
Agenda
Introductions
Overview Of Rigor & Performance for (insert company name here)
What Can I Test with API Check?
API Check Introduction
In-App Overview
Deep Dive Into API Check
Example API Check
Appendix
Monitor
Alert
Trend
Optimize
Rigor’s Value To (insert company name here)
What is Rigor?
Advanced web performance monitoring tool that provides real–time data on
how sites are performing and diagnoses issues that cause poor performance.
(Insert Company Name Here) goals
• Enable each brand to “self-serve” for front-end
performance testing including:
• Investigating alerts
• Identify issues
• Analyze performance data
• Consistent service experience
What Can I Test with API Check?
• Availability and performance of individual API endpoints
• Verify your API endpoints are returning the correct data
and response codes
• Transactional API workflows with variables and dynamic
data inputs
• Trigger alerts based on any part of an HTTP request or
response
API Check Introduction
API Checks provide a flexible way to check the
functionality and performance of API endpoints.
API Check Steps
• Request – makes a HTTP request to some endpoint and collects data
from that interaction
• Assert – makes an assertion on two values
• Save – stores some data to be reused later in the check
• Extract – extracts data out of formatted data (JSON, XML, HTML)
• JavaScript – runs custom JavaScript code
In-App Overview
Deep Dive Into API Check
Request Step
Makes a HTTP request to some endpoint and collects data from that
interaction. All HTTP requests are configured within request steps.
Request Methods:
• GET
• HEAD
• POST (can send post data)
• PUT (can send post data)
• DELETE
Headers – A ‘Request’ can have multiple
headers
Failures – Non-200 level response codes
do not automatically fail a request step*
* Requests are only considered failures when the
request/response cycle cannot be completed. Use ‘Assert’
step to validate response code.
Step Type
HTTP Method
Endpoint
Request Header (name/value)
Assert Step
Makes an assertion on two values. To make an assertion, supply
two parameters along with the comparison that you would like to
perform between the two.
Comparisons – We currently
support 2 types of
comparisons: string and
numeric.
Failures – An ‘Assert’ step will fail if the
assertion is false when the step is run.
Step Type
Parameter 1
Parameter 2
Comparison
Save Step
Stores some data to be reused later in the check. To save data,
supply the source and the name of the custom variable to save to.
Source – can be selected
from the presets, including
response headers, or by
providing a custom value.
Failures – A ‘Save’ step never fails.
Step Type
Source
Custom Variable Name
Value
Custom Variable
Reference
Extract Step
Extracts data out of formatted data. Right now, Rigor’s API Check
supports JSON, XML, or HTML data.
To extract data, supply 3 things:
1. Source containing JSON, XML,
or HTML
2. Expression to extract data
3. Custom variable name
Failures – An extraction will fail if
there is not a single result.
A result is a JSON Primitive.
Note: this means that the step will
pass if the extraction returns a
single JSON object or array.
Step Type
Data Format
(JSON, XML, HTML)
Custom Variable Name
Source
Custom Variable
Reference
Extraction Expression
Javascript Step
Runs custom JavaScript code. Enables access to variables and
computations, allows return data to be saved as new variables.
Sample Use Cases:
1. Validate API Functionality
with Logic
2. Transform or Modify Data
Between API Check Steps
3. Dynamically Update Test
Data
Failures – A JavaScript step will
fail if there are any errors in the
JavaScript code.
Step Type
JavaScript Code
Custom Return Variable Name
API Check allows variables in most fields. A variable consists of two
parts, the namespace and the variable name. To use a variable in a
step, surround the variable with {{ and }}.
Variables
API Check has 4 different variable types:
• Built-in variables – initialized at the beginning of the check before any
steps have run. Remain constant within a run but change between runs.
• Request variables – updated after every request step.
• Custom variables – created by the user.
• Global variables – defined in a single place and reused across checks.
Built-In Variables
Request Variables
Custom Variables
Global Variables
Creating Global Variables
Global variables are created in the ADMIN TOOLS by defining a Key and a Value
API Check – Performance History
API Check – Failed Run
Date, Time,
Location, IP Address
Alert Description
Who was notified?
Response Time
Nslookup
Traceroute
API Check – Failed Run (continued)
cURL Request
Output
Request
Headers
Response Body
Response
Headers
API Check – Test check
When creating or editing an API Check, it is important to be able to
test the configuration. API Check allows tests from any location
Debugging Information on
Edit Screen
Example API Check – overview
This API check example uses the Spotify API to demonstrate the
following functionality:
• Authentication (Request, Assert, Extract)
• Search (Request, Assert)
• Pull Data (Extract, Request, Assert)
• Manipulate Data (Extract, JavaScript)
Example API Check – authentication
Global Variable
Request Body Parameter
Endpoint
Check Request Success
Extract Access Token
Example API Check – search
Endpoint
Response Time Check
Custom Variable Reference
Example API Check – pull data
Endpoint
Custom Variable Reference
Extraction Expression
Custom Variable Name
Example API Check – manipulate data
JavaScript Code
Custom Variable Name
Validate Result
API Check – Resources
Technical Resources
Rigor Knowledge Base
• http://help.rigor.com/api-check/
JSONPath Introduction
• http://goessner.net/articles/JsonPath/
JSONPath Expression Tester
• https://jsonpath.curiousconcept.com/
API Background Information
What is an API? A Brief Intro
• http://rigor.com/blog/2016/05/what-is-an-api-a-
brief-intro
Why Monitoring APIs is Important
• http://rigor.com/blog/2016/07/why-monitoring-
apis-is-important
Best Practices for Monitoring an API
• http://rigor.com/blog/2016/07/best-practices-
monitoring-an-api
Additional Information and Helpful Resources
Appendix
Help Resources
Rigor Knowledge Base
• http://help.rigor.com
Rigor Support Channel
• In App: Intercom widget
• Email: support@rigor.com
Rigor Blog
• http://rigor.com/blog
ALERTs Overview
How can you be alerted in Rigor?
• Email, Phone Call, Text (SMS),
Custom Webhook
What information is contained in
a Rigor alert?
• Check Name (hyperlinked to check
in Rigor)
• Cause of failure
• Who was notified
• Time & Location of failure
• Link to related run and check history
Reports Overview
Configured to deliver via email on schedule (weekly)
• Table with performance data
• Check names link to app
• Link to Custom Report
Performance metrics included:
• Uptime
• Load Time
• Failure Count
API Check Overview - Rigor Monitoring

More Related Content

What's hot (20)

Php forms
Php formsPhp forms
Php forms
 
JavaScript & Dom Manipulation
JavaScript & Dom ManipulationJavaScript & Dom Manipulation
JavaScript & Dom Manipulation
 
Php string function
Php string function Php string function
Php string function
 
JavaScript - Chapter 11 - Events
 JavaScript - Chapter 11 - Events  JavaScript - Chapter 11 - Events
JavaScript - Chapter 11 - Events
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Model
 
Form Handling using PHP
Form Handling using PHPForm Handling using PHP
Form Handling using PHP
 
Event In JavaScript
Event In JavaScriptEvent In JavaScript
Event In JavaScript
 
Web Development Course: PHP lecture 1
Web Development Course: PHP lecture 1Web Development Course: PHP lecture 1
Web Development Course: PHP lecture 1
 
PHP - Introduction to PHP Forms
PHP - Introduction to PHP FormsPHP - Introduction to PHP Forms
PHP - Introduction to PHP Forms
 
JavaScript - Chapter 10 - Strings and Arrays
 JavaScript - Chapter 10 - Strings and Arrays JavaScript - Chapter 10 - Strings and Arrays
JavaScript - Chapter 10 - Strings and Arrays
 
Working with JSON
Working with JSONWorking with JSON
Working with JSON
 
CSS ppt
CSS pptCSS ppt
CSS ppt
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Model
 
What is css
What is cssWhat is css
What is css
 
JavaScript - Chapter 12 - Document Object Model
  JavaScript - Chapter 12 - Document Object Model  JavaScript - Chapter 12 - Document Object Model
JavaScript - Chapter 12 - Document Object Model
 
Html form tag
Html form tagHtml form tag
Html form tag
 
HTML Forms
HTML FormsHTML Forms
HTML Forms
 
Hushang Gaikwad
Hushang GaikwadHushang Gaikwad
Hushang Gaikwad
 
types of events in JS
types of events in JS types of events in JS
types of events in JS
 
CSS Basics
CSS BasicsCSS Basics
CSS Basics
 

Similar to API Check Overview - Rigor Monitoring

What is API test automation
What is API test automation What is API test automation
What is API test automation Aparna Sharma
 
Planet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildPlanet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildDeborah Schalm
 
Planet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildPlanet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildDevOps.com
 
B4USolution_API-Testing
B4USolution_API-TestingB4USolution_API-Testing
B4USolution_API-Testingb4usolution .
 
API Testing with Open Source Code and Cucumber
API Testing with Open Source Code and CucumberAPI Testing with Open Source Code and Cucumber
API Testing with Open Source Code and CucumberSmartBear
 
AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...
AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...
AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...Amazon Web Services
 
AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...
AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...
AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...Amazon Web Services
 
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...Jitendra Bafna
 
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.COMAQA.BY
 
Test Design and Automation for REST API
Test Design and Automation for REST APITest Design and Automation for REST API
Test Design and Automation for REST APIIvan Katunou
 
A Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API TestingA Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API TestingpCloudy
 
Aws Technical Day 2015 - Amazon API Gateway
Aws Technical Day 2015 - Amazon API GatewayAws Technical Day 2015 - Amazon API Gateway
Aws Technical Day 2015 - Amazon API Gatewayaws-marketing-il
 
Web Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI ToolWeb Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI ToolSperasoft
 
Do not automate GUI testing
Do not automate GUI testingDo not automate GUI testing
Do not automate GUI testingAtila Inovecký
 
How to get full power from WebApi
How to get full power from WebApiHow to get full power from WebApi
How to get full power from WebApiRaffaele Rialdi
 

Similar to API Check Overview - Rigor Monitoring (20)

What is API test automation
What is API test automation What is API test automation
What is API test automation
 
Planet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildPlanet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the Wild
 
Planet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the WildPlanet of the APIs: Monitoring Transactions in the Wild
Planet of the APIs: Monitoring Transactions in the Wild
 
B4USolution_API-Testing
B4USolution_API-TestingB4USolution_API-Testing
B4USolution_API-Testing
 
API Testing with Open Source Code and Cucumber
API Testing with Open Source Code and CucumberAPI Testing with Open Source Code and Cucumber
API Testing with Open Source Code and Cucumber
 
AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...
AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...
AWS July Webinar Series: Overview: Build and Manage your APIs with Amazon API...
 
AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...
AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...
AWS July Webinar Series - Overview Build and Manage your APs with amazon api ...
 
Belajar Postman test runner
Belajar Postman test runnerBelajar Postman test runner
Belajar Postman test runner
 
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
MuleSoft Surat Virtual Meetup#21 - MuleSoft API and RAML Design Best Practice...
 
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
 
API testing - Japura.pptx
API testing - Japura.pptxAPI testing - Japura.pptx
API testing - Japura.pptx
 
Test Design and Automation for REST API
Test Design and Automation for REST APITest Design and Automation for REST API
Test Design and Automation for REST API
 
Api testing
Api testingApi testing
Api testing
 
POSTMAN.pptx
POSTMAN.pptxPOSTMAN.pptx
POSTMAN.pptx
 
A Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API TestingA Practical Guide to Automating End-to-End API Testing
A Practical Guide to Automating End-to-End API Testing
 
Aws Technical Day 2015 - Amazon API Gateway
Aws Technical Day 2015 - Amazon API GatewayAws Technical Day 2015 - Amazon API Gateway
Aws Technical Day 2015 - Amazon API Gateway
 
Amazon API Gateway
Amazon API GatewayAmazon API Gateway
Amazon API Gateway
 
Web Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI ToolWeb Services Automated Testing via SoapUI Tool
Web Services Automated Testing via SoapUI Tool
 
Do not automate GUI testing
Do not automate GUI testingDo not automate GUI testing
Do not automate GUI testing
 
How to get full power from WebApi
How to get full power from WebApiHow to get full power from WebApi
How to get full power from WebApi
 

Recently uploaded

办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 

Recently uploaded (20)

办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 

API Check Overview - Rigor Monitoring

  • 1. Prepared for: Getting Started and Best Practices Rigor Monitoring – API Check
  • 2. Agenda Introductions Overview Of Rigor & Performance for (insert company name here) What Can I Test with API Check? API Check Introduction In-App Overview Deep Dive Into API Check Example API Check Appendix
  • 3. Monitor Alert Trend Optimize Rigor’s Value To (insert company name here) What is Rigor? Advanced web performance monitoring tool that provides real–time data on how sites are performing and diagnoses issues that cause poor performance.
  • 4. (Insert Company Name Here) goals • Enable each brand to “self-serve” for front-end performance testing including: • Investigating alerts • Identify issues • Analyze performance data • Consistent service experience
  • 5. What Can I Test with API Check? • Availability and performance of individual API endpoints • Verify your API endpoints are returning the correct data and response codes • Transactional API workflows with variables and dynamic data inputs • Trigger alerts based on any part of an HTTP request or response
  • 6. API Check Introduction API Checks provide a flexible way to check the functionality and performance of API endpoints. API Check Steps • Request – makes a HTTP request to some endpoint and collects data from that interaction • Assert – makes an assertion on two values • Save – stores some data to be reused later in the check • Extract – extracts data out of formatted data (JSON, XML, HTML) • JavaScript – runs custom JavaScript code
  • 8. Deep Dive Into API Check
  • 9. Request Step Makes a HTTP request to some endpoint and collects data from that interaction. All HTTP requests are configured within request steps. Request Methods: • GET • HEAD • POST (can send post data) • PUT (can send post data) • DELETE Headers – A ‘Request’ can have multiple headers Failures – Non-200 level response codes do not automatically fail a request step* * Requests are only considered failures when the request/response cycle cannot be completed. Use ‘Assert’ step to validate response code.
  • 11. Assert Step Makes an assertion on two values. To make an assertion, supply two parameters along with the comparison that you would like to perform between the two. Comparisons – We currently support 2 types of comparisons: string and numeric. Failures – An ‘Assert’ step will fail if the assertion is false when the step is run.
  • 13. Save Step Stores some data to be reused later in the check. To save data, supply the source and the name of the custom variable to save to. Source – can be selected from the presets, including response headers, or by providing a custom value. Failures – A ‘Save’ step never fails.
  • 14. Step Type Source Custom Variable Name Value Custom Variable Reference
  • 15. Extract Step Extracts data out of formatted data. Right now, Rigor’s API Check supports JSON, XML, or HTML data. To extract data, supply 3 things: 1. Source containing JSON, XML, or HTML 2. Expression to extract data 3. Custom variable name Failures – An extraction will fail if there is not a single result. A result is a JSON Primitive. Note: this means that the step will pass if the extraction returns a single JSON object or array.
  • 16. Step Type Data Format (JSON, XML, HTML) Custom Variable Name Source Custom Variable Reference Extraction Expression
  • 17. Javascript Step Runs custom JavaScript code. Enables access to variables and computations, allows return data to be saved as new variables. Sample Use Cases: 1. Validate API Functionality with Logic 2. Transform or Modify Data Between API Check Steps 3. Dynamically Update Test Data Failures – A JavaScript step will fail if there are any errors in the JavaScript code.
  • 18. Step Type JavaScript Code Custom Return Variable Name
  • 19. API Check allows variables in most fields. A variable consists of two parts, the namespace and the variable name. To use a variable in a step, surround the variable with {{ and }}. Variables API Check has 4 different variable types: • Built-in variables – initialized at the beginning of the check before any steps have run. Remain constant within a run but change between runs. • Request variables – updated after every request step. • Custom variables – created by the user. • Global variables – defined in a single place and reused across checks.
  • 23. Global Variables Creating Global Variables Global variables are created in the ADMIN TOOLS by defining a Key and a Value
  • 24. API Check – Performance History
  • 25. API Check – Failed Run Date, Time, Location, IP Address Alert Description Who was notified? Response Time Nslookup Traceroute
  • 26. API Check – Failed Run (continued) cURL Request Output Request Headers Response Body Response Headers
  • 27. API Check – Test check When creating or editing an API Check, it is important to be able to test the configuration. API Check allows tests from any location Debugging Information on Edit Screen
  • 28. Example API Check – overview This API check example uses the Spotify API to demonstrate the following functionality: • Authentication (Request, Assert, Extract) • Search (Request, Assert) • Pull Data (Extract, Request, Assert) • Manipulate Data (Extract, JavaScript)
  • 29. Example API Check – authentication Global Variable Request Body Parameter Endpoint Check Request Success Extract Access Token
  • 30. Example API Check – search Endpoint Response Time Check Custom Variable Reference
  • 31. Example API Check – pull data Endpoint Custom Variable Reference Extraction Expression Custom Variable Name
  • 32. Example API Check – manipulate data JavaScript Code Custom Variable Name Validate Result
  • 33. API Check – Resources Technical Resources Rigor Knowledge Base • http://help.rigor.com/api-check/ JSONPath Introduction • http://goessner.net/articles/JsonPath/ JSONPath Expression Tester • https://jsonpath.curiousconcept.com/ API Background Information What is an API? A Brief Intro • http://rigor.com/blog/2016/05/what-is-an-api-a- brief-intro Why Monitoring APIs is Important • http://rigor.com/blog/2016/07/why-monitoring- apis-is-important Best Practices for Monitoring an API • http://rigor.com/blog/2016/07/best-practices- monitoring-an-api
  • 34. Additional Information and Helpful Resources Appendix
  • 35. Help Resources Rigor Knowledge Base • http://help.rigor.com Rigor Support Channel • In App: Intercom widget • Email: support@rigor.com Rigor Blog • http://rigor.com/blog
  • 36. ALERTs Overview How can you be alerted in Rigor? • Email, Phone Call, Text (SMS), Custom Webhook What information is contained in a Rigor alert? • Check Name (hyperlinked to check in Rigor) • Cause of failure • Who was notified • Time & Location of failure • Link to related run and check history
  • 37.
  • 38.
  • 39. Reports Overview Configured to deliver via email on schedule (weekly) • Table with performance data • Check names link to app • Link to Custom Report Performance metrics included: • Uptime • Load Time • Failure Count

Editor's Notes

  1. Monitor and Trend performance of key user flows & pages from the end user perspective Alert when your site’s performance degrades Optimize the specific defects that are causing the degraded performance automatically
  2. **And how often for each thing?** (1) User flows you care about (2) Third party services (if possible) Best practices: How long should tests run? Can you run too many tests? How frequently to run tests?
  3. In the example, we are sending JSON payload via a POST request. We are also setting the Content-Type header to indicate that the payload is JSON. Supported HTTP Methods: GET HEAD POST (can send POST data) PUT (can send POST data) DELETE
  4. In the example, we make a request and then make three assertions. The first two assert steps claim that the response code is between 200 and 299 inclusive. The final step asserts that the response body contains the string I'm feeling lucky. Parameter 1: Response Body Response Body Size Response Code Response Time DNS Time First Byte Time Response Headers Custom Parameter 2: Specify a string or numeric value
  5. Source: Response Body Response Body Size Response Code Response Time DNS Time First Byte Time Response Header Custom
  6. In the example, we save an API key in the first step. The key is then reused in subsequent steps. This allows us to do some setup at the beginning of the check, and if the key ever changes we only have to change in one place per check. Some additional use cases are appending bits of information to easily reuse in other steps and saving the results from one request to be reused after another request is made. Source: Response Body Response Body Size Response Code Response Time DNS Time First Byte Time Response Header Custom
  7. In this example, we visit a site with a request step, and then extract data out of the response body. We use the JSONPath Expression ‘$..entries[0].link’ to pull out the link from the first entry in the response. The result is stored in the ‘custom’ namespace in the variable named ‘rigor_url’. This is accessed in the next request step as ’{{custom.rigor_url}}’. If you would like to test out a JSONPath expression against JSON, there is a handy JSONPath Expression Tester (see below). Source Types: Response Body Response Header Custom JSONPath Resources: General Info: http://goessner.net/articles/JsonPath/ JSONPath Expression Tester: https://jsonpath.curiousconcept.com/
  8. Page Contains: Check Name Status and last response time Frequency and Locations Daily/Weekly Response Time and Uptime trends Performance History Filter/segment by location, segment by time frame Run Count, Errors, Uptime, Average Response Time, Slowest/Fastest Time
  9. Page Contains: Date, Time, Location, IP Address (of failure) Alert Description, Associated Step Who was notified? Response Time Alert Diagnostics Nslookup: https://en.wikipedia.org/wiki/Nslookup Traceroute: https://en.wikipedia.org/wiki/Traceroute Coming soon: Verbose output (recommended)
  10. Page Contains: Request Logs: cURL Request text output Request Information: Request Headers, Request Body Response Information: Response Headers, Response Body
  11. Technical Resources http://help.rigor.com/api-check/ http://goessner.net/articles/JsonPath/ https://jsonpath.curiousconcept.com/ API Background Information http://rigor.com/blog/2016/05/what-is-an-api-a-brief-intro http://rigor.com/blog/2016/07/why-monitoring-apis-is-important http://rigor.com/blog/2016/07/best-practices-monitoring-an-api
  12. Knowledge Base: detailed articles to help you get started with Rigor and helpful How To? tips Rigor Support Channel: channel to contact Rigor’s support team Rigor Blog: repository of industry related blogs, new feature releases, and helpful performance tips
  13. Alert delivery configured on user level: https://monitoring.rigor.com/admin/users_and_groups - Under ‘Receive Notifications By’ heading, select Email, Phone, Text (SMS) - Knowledge Base: http://help.rigor.com/learn-more/user-settings.html Check level notification settings: Select primary User or Group to receive alerts for a particular check. (first line of defense) Add alert escalations in case primary user does not acknowledge initial alert Knowledge Base: http://help.rigor.com/how-to/escalations.html Custom Alert Configurations - Knowledge Base: http://help.rigor.com/learn-more/configuration-templates.html
  14. Custom Reports found here: https://monitoring.rigor.com/custom_reports Can select which checks to include using tags (e.g. pick only checks from your brand) Can send to groups, users or email addresses Knowledge Base: http://help.rigor.com/how-to/custom-reports.html http://help.rigor.com/how-to/email-schedules.html