SlideShare a Scribd company logo
1 of 27
Health Checking
MIHÁLY ÁRVAI
Introduction
► Mihály Árvai
► Senior Sitecore Developer - Mirum
► ~ 10 years experience in Sitecore
► Hackathon winer 2019
► Twitter
► @Mitya_1988
► Slack
► Mitya88
► Medium
► @mitya_1988
► GitHub
► Mitya88
https://twitter.com/mitya_1988
Agenda
 Health checking
 Why? How?
 Advanced Sitecore Health check
module
 How is it working?
 Features
 Writing your own custom health
check
 Further improvements
https://twitter.com/mitya_1988
Health checking your
Sitecore solution
https://twitter.com/mitya_1988
What is a health check?
 An external application or a built-in endpoint/service
 Checks if an application or component is working
 Can determine an actual or upcoming issue
 Can notify the IT or Devs about the issue
 Helps in the investigation
 Tests your application
https://twitter.com/mitya_1988
Component states
Healthy Warning Error
https://twitter.com/mitya_1988
Importance of health checking
 avoid or minimize service/application downtimes
 Renew certificate/licence in time
 Faster resolution for an issue
 Losing time with log files investigation
 Catch random or periodic issues
 Something happens around the reguler application recycle time
 Test the latest deployment
https://twitter.com/mitya_1988
Advanced Sitecore Healthcheck
module
https://github.com/Mitya88/SitecoreHealthcheck
Contributors
- Andrei Ardel – Sitecore Developer – Mirum
- Attila Horváth – Lead Sitecore Developer - Mirum
https://twitter.com/mitya_1988
https://twitter.com/mitya_1988
https://twitter.com/mitya_1988
https://twitter.com/mitya_1988
 The Sitecore structure of the module
Component Templates
Data
• Name
• Status
• Last Check Time
• Error Messages
• Healthy Message
Configuration
• Different fields based on the
component
https://twitter.com/mitya_1988
Supported types of component checks
 MSSQL Databases
 Not for only Sitecore related databases, for external databases
 MongoDB is added as a Custom Check
 APIs
 GET/POST
 Request Body
 Response Code and Body Verification
 Supports Authentication (JWT, Basic, Certificate)
https://twitter.com/mitya_1988
Supported types of component checks
 Windows Services
 Check state of the windows service (Solr or XDB related services)
 WebJobs
 Check state of the WebJob (XDB related or custom webjobs)
https://twitter.com/mitya_1988
Supported types of component checks
 Application Insights
 Checks and reads errors/warnings from the configured ApplicationInsight ina given time
period
 Log Files
 Checks and reads errors/warnings from the Sitecore log files in a given period
https://twitter.com/mitya_1988
Supported types of component checks
 XConnectAPI Check
 Calls XConnect APIs with client certificate
 Keep Alive Check
 Calls the keepalive.aspx
 Uses WebUtil.GetFullUrl
https://twitter.com/mitya_1988
Supported types of component checks
 EventQueue, PublishQueue, History table record count check
 Checks the number of records in these tables in every database
 Item Check
 Check if the given item exists in the configured db/language
https://twitter.com/mitya_1988
Supported types of component checks
 Licence Check
 Checks when the licence will expire
 Certificate Check
 Checks when the configured certificate will expire
https://twitter.com/mitya_1988
Supported types of component checks
 Search Check
 Checks if index contains the configured number of documents
 Query can be defined
 Disk Space Check
 Checks if there is enough space on your web server
https://twitter.com/mitya_1988
Supported types of component checks
 Custom Check (C#)
 Implement your own check
 Samples included
 Custom Check (SPE)
 Implement your own check with SPE
 Samples included
https://twitter.com/mitya_1988
Implementing custom check (C#)
 Reference the Healthcheck.Service.Customization binary
 (It will be published on nuget.org soon)
 Create a class, derive it from CustomHealthcheckRun
 Override DoHealthcheck method
 Create Custom Healthcheck item in Sitecore and configure the fields
https://twitter.com/mitya_1988
Implementing custom check
https://twitter.com/mitya_1988
Further improvements
 V2.0 – 2020 Oct
 Content Delivery Server support
 More on-premise supports
 More samples
https://twitter.com/mitya_1988
DEMO
 Azure PaaS XP Step by Step setup: https://www.youtube.com/watch?v=J_qk7jT_Y-
U
https://twitter.com/mitya_1988

More Related Content

What's hot

Automating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through ScannersAutomating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through Scanners
nfteodoro
 

What's hot (13)

Web Application Penetration Test
Web Application Penetration TestWeb Application Penetration Test
Web Application Penetration Test
 
Apex presentation
Apex presentationApex presentation
Apex presentation
 
Automating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through ScannersAutomating Web Applications Security Assessments Through Scanners
Automating Web Applications Security Assessments Through Scanners
 
Security Testing
Security TestingSecurity Testing
Security Testing
 
SAST vs. DAST: What’s the Best Method For Application Security Testing?
SAST vs. DAST: What’s the Best Method For Application Security Testing?SAST vs. DAST: What’s the Best Method For Application Security Testing?
SAST vs. DAST: What’s the Best Method For Application Security Testing?
 
ATD11_WebAPISecurity
ATD11_WebAPISecurityATD11_WebAPISecurity
ATD11_WebAPISecurity
 
IBM AppScan Standard - The Web Application Security Solution
IBM AppScan Standard - The Web Application Security SolutionIBM AppScan Standard - The Web Application Security Solution
IBM AppScan Standard - The Web Application Security Solution
 
Continuous and Visible Security Testing with BDD-Security
Continuous and Visible Security Testing with BDD-SecurityContinuous and Visible Security Testing with BDD-Security
Continuous and Visible Security Testing with BDD-Security
 
Web application testing
Web application testing Web application testing
Web application testing
 
An update to software testing trends
An update to software testing trendsAn update to software testing trends
An update to software testing trends
 
Microservice test strategies for applications based on Spring, K8s and Istio
Microservice test strategies for applications based on Spring, K8s and IstioMicroservice test strategies for applications based on Spring, K8s and Istio
Microservice test strategies for applications based on Spring, K8s and Istio
 
Security Testing for Web Application
Security Testing for Web ApplicationSecurity Testing for Web Application
Security Testing for Web Application
 
Sast 2021
Sast 2021Sast 2021
Sast 2021
 

Similar to SUGIndia - Health checking

AnDevCon - Tracking User Behavior Creatively
AnDevCon - Tracking User Behavior CreativelyAnDevCon - Tracking User Behavior Creatively
AnDevCon - Tracking User Behavior Creatively
Kiana Tennyson
 
Software Testing basics
Software Testing basicsSoftware Testing basics
Software Testing basics
Olia Khlystun
 
TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9
TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9
TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9
Nuno Godinho
 
Building TweetEngine
Building TweetEngineBuilding TweetEngine
Building TweetEngine
ikailan
 

Similar to SUGIndia - Health checking (20)

AnDevCon - Tracking User Behavior Creatively
AnDevCon - Tracking User Behavior CreativelyAnDevCon - Tracking User Behavior Creatively
AnDevCon - Tracking User Behavior Creatively
 
Agilent Technologies Demo
Agilent Technologies DemoAgilent Technologies Demo
Agilent Technologies Demo
 
The Complete Web Application Security Testing Checklist
The Complete Web Application Security Testing ChecklistThe Complete Web Application Security Testing Checklist
The Complete Web Application Security Testing Checklist
 
04 test controlling and tracking
04   test controlling and tracking04   test controlling and tracking
04 test controlling and tracking
 
On Demand Feedback Analysis for Certification Process
On Demand Feedback Analysis for Certification ProcessOn Demand Feedback Analysis for Certification Process
On Demand Feedback Analysis for Certification Process
 
#ATAGTR2019 Presentation "Top 10 quality engineering best practices to achiev...
#ATAGTR2019 Presentation "Top 10 quality engineering best practices to achiev...#ATAGTR2019 Presentation "Top 10 quality engineering best practices to achiev...
#ATAGTR2019 Presentation "Top 10 quality engineering best practices to achiev...
 
Software Testing basics
Software Testing basicsSoftware Testing basics
Software Testing basics
 
Technical Requirements of the UK Access Management Federation
Technical Requirements of the UK Access Management FederationTechnical Requirements of the UK Access Management Federation
Technical Requirements of the UK Access Management Federation
 
Observe It Presentation
Observe It PresentationObserve It Presentation
Observe It Presentation
 
Case Study For Data Governance Portal
Case Study For Data Governance PortalCase Study For Data Governance Portal
Case Study For Data Governance Portal
 
Middleware monitoring with Applications Manager
Middleware monitoring with Applications ManagerMiddleware monitoring with Applications Manager
Middleware monitoring with Applications Manager
 
Securing API data models
Securing API data modelsSecuring API data models
Securing API data models
 
Find Out What's New With WhiteSource September 2018- A WhiteSource Webinar
Find Out What's New With WhiteSource September 2018- A WhiteSource WebinarFind Out What's New With WhiteSource September 2018- A WhiteSource Webinar
Find Out What's New With WhiteSource September 2018- A WhiteSource Webinar
 
API Testing following the Test Pyramid
API Testing following the Test PyramidAPI Testing following the Test Pyramid
API Testing following the Test Pyramid
 
TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9
TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9
TechDays 2010 Portugal - Scaling your data tier with app fabric 16x9
 
Building enterprise web applications with spring 3
Building enterprise web applications with spring 3Building enterprise web applications with spring 3
Building enterprise web applications with spring 3
 
Building TweetEngine
Building TweetEngineBuilding TweetEngine
Building TweetEngine
 
Best Practices for Application Development with Box
Best Practices for Application Development with BoxBest Practices for Application Development with Box
Best Practices for Application Development with Box
 
MVC by asp.net development company in india
MVC by asp.net development company in indiaMVC by asp.net development company in india
MVC by asp.net development company in india
 
WSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital BusinessesWSO2CON 2024 - Software Engineering for Digital Businesses
WSO2CON 2024 - Software Engineering for Digital Businesses
 

Recently uploaded

Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
FIDO Alliance
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
Muhammad Subhan
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
FIDO Alliance
 

Recently uploaded (20)

Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
 
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
(Explainable) Data-Centric AI: what are you explaininhg, and to whom?
 
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)
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
Event-Driven Architecture Masterclass: Engineering a Robust, High-performance...
 

SUGIndia - Health checking

  • 2. Introduction ► Mihály Árvai ► Senior Sitecore Developer - Mirum ► ~ 10 years experience in Sitecore ► Hackathon winer 2019 ► Twitter ► @Mitya_1988 ► Slack ► Mitya88 ► Medium ► @mitya_1988 ► GitHub ► Mitya88 https://twitter.com/mitya_1988
  • 3. Agenda  Health checking  Why? How?  Advanced Sitecore Health check module  How is it working?  Features  Writing your own custom health check  Further improvements https://twitter.com/mitya_1988
  • 4. Health checking your Sitecore solution https://twitter.com/mitya_1988
  • 5. What is a health check?  An external application or a built-in endpoint/service  Checks if an application or component is working  Can determine an actual or upcoming issue  Can notify the IT or Devs about the issue  Helps in the investigation  Tests your application https://twitter.com/mitya_1988
  • 6. Component states Healthy Warning Error https://twitter.com/mitya_1988
  • 7. Importance of health checking  avoid or minimize service/application downtimes  Renew certificate/licence in time  Faster resolution for an issue  Losing time with log files investigation  Catch random or periodic issues  Something happens around the reguler application recycle time  Test the latest deployment https://twitter.com/mitya_1988
  • 8. Advanced Sitecore Healthcheck module https://github.com/Mitya88/SitecoreHealthcheck Contributors - Andrei Ardel – Sitecore Developer – Mirum - Attila Horváth – Lead Sitecore Developer - Mirum https://twitter.com/mitya_1988
  • 12.  The Sitecore structure of the module
  • 13. Component Templates Data • Name • Status • Last Check Time • Error Messages • Healthy Message Configuration • Different fields based on the component https://twitter.com/mitya_1988
  • 14. Supported types of component checks  MSSQL Databases  Not for only Sitecore related databases, for external databases  MongoDB is added as a Custom Check  APIs  GET/POST  Request Body  Response Code and Body Verification  Supports Authentication (JWT, Basic, Certificate) https://twitter.com/mitya_1988
  • 15. Supported types of component checks  Windows Services  Check state of the windows service (Solr or XDB related services)  WebJobs  Check state of the WebJob (XDB related or custom webjobs) https://twitter.com/mitya_1988
  • 16. Supported types of component checks  Application Insights  Checks and reads errors/warnings from the configured ApplicationInsight ina given time period  Log Files  Checks and reads errors/warnings from the Sitecore log files in a given period https://twitter.com/mitya_1988
  • 17. Supported types of component checks  XConnectAPI Check  Calls XConnect APIs with client certificate  Keep Alive Check  Calls the keepalive.aspx  Uses WebUtil.GetFullUrl https://twitter.com/mitya_1988
  • 18. Supported types of component checks  EventQueue, PublishQueue, History table record count check  Checks the number of records in these tables in every database  Item Check  Check if the given item exists in the configured db/language https://twitter.com/mitya_1988
  • 19. Supported types of component checks  Licence Check  Checks when the licence will expire  Certificate Check  Checks when the configured certificate will expire https://twitter.com/mitya_1988
  • 20. Supported types of component checks  Search Check  Checks if index contains the configured number of documents  Query can be defined  Disk Space Check  Checks if there is enough space on your web server https://twitter.com/mitya_1988
  • 21. Supported types of component checks  Custom Check (C#)  Implement your own check  Samples included  Custom Check (SPE)  Implement your own check with SPE  Samples included https://twitter.com/mitya_1988
  • 22. Implementing custom check (C#)  Reference the Healthcheck.Service.Customization binary  (It will be published on nuget.org soon)  Create a class, derive it from CustomHealthcheckRun  Override DoHealthcheck method  Create Custom Healthcheck item in Sitecore and configure the fields https://twitter.com/mitya_1988
  • 24.
  • 25.
  • 26. Further improvements  V2.0 – 2020 Oct  Content Delivery Server support  More on-premise supports  More samples https://twitter.com/mitya_1988
  • 27. DEMO  Azure PaaS XP Step by Step setup: https://www.youtube.com/watch?v=J_qk7jT_Y- U https://twitter.com/mitya_1988