SlideShare a Scribd company logo
1 of 38
6/30/2017© kCura LLC. All rights reserved.
MONITORING AT SCALE:
CONTINUOUS MONITORING
Sunghee Choi
Saba Jamalian
Hometown: South Korea
Company: kCura
What I do: Software Engineering
Manager
Fun Fact: I was an engineer when
signed up for this presentation and
now I’m a manager!
Sunghee Choi
Hometown: Shiraz, Iran
Company: Forte Group
What I do: Software Engineer
Fun Fact:I have watched all the
episodes of the TV
series more than 20 times!
Saba Jamalian
© kCura LLC. All rights reserved.
e-Discovery
Used to search, analyze, and act on
data to tell the story of a case quickly
and easily during litigation and
investigation
About Us
Chicago-based
e-discovery software
company
© kCura LLC. All rights reserved.
What I’ll Cover
Continuous Monitoring at kCura
Monitoring Goals
Monitoring Microservices
Monitoring Tools - Demo
© kCura LLC. All rights reserved.
• We’re on a path toward a fully SaaS product
• Monitoring GOAL: To Get Visibility on User Experience
Takeaways:
• Why active and continuous monitoring is essential in the world of SaaS
• How Monitoring differs for Microservices vs. traditional software architectures
• How a Software development company can implement a monitoring habit
Motivation for this Presentation
• is on Netflix! Make sure to watch it if you haven’t watched already!
© kCura LLC. All rights reserved.
kCura’s way of
Continuous Monitoring
© kCura LLC. All rights reserved.
• Automated product health check
• Resiliency
• Automated incident escalation
• Get overall health status – real time
• Not to be technologically dependent to a tool or framework
The Goal
© kCura LLC. All rights reserved.
• kCura Application Performance Monitoring framework
• Enables developers to collect metrics in code;
– Counters
– Gauges
– HealthChecks
– Meters
– Timers
kAPM
© kCura LLC. All rights reserved.
Database
API
APM Framework
Jenkins
Service Bus
Functions
Functions
New Relic
Slack
DocumentDbAlerts Definitions
ServiceNow
HealthChecks
Monitoring Architecture
© kCura LLC. All rights reserved.
• Treat New Relic like a metrics storage
Custom Alerts
© kCura LLC. All rights reserved.
Database
API
APM Framework
Jenkins
Service Bus
Functions
Functions
New Relic
Slack
DocumentDbAlerts
Definitions
ServiceNow
HealthChecks
Custom Function
Alerts
© kCura LLC. All rights reserved.
Monitoring Goals at kCura
© kCura LLC. All rights reserved.
Monitoring Goals
• Performance Monitoring
– Evaluate performance with production data and scenarios
– Identify workflow bottlenecks
© kCura LLC. All rights reserved.
Monitoring Goals
• Performance Monitoring
– Evaluate performance with production data and scenarios
– Identify workflow bottlenecks
© kCura LLC. All rights reserved.
Monitoring Goals
• Decision Making
– Learn from users to plan for future features
– Enhance loved parts of the software
– Gain more insights
© kCura LLC. All rights reserved.
Monitoring Goals
• Proactive Maintenance
– Identify errors before customer
– Automated recovery
– Early problem detection
– Resilient software
• Example scenario; Failed agents recovery
© kCura LLC. All rights reserved.
Proactive Maintenance: Failed Agents Recovery
Agent Failed
Agent
Recovery
Send Alert
DocDb
© kCura LLC. All rights reserved.
Proactive Maintenance: Failed Agents Recovery
© kCura LLC. All rights reserved.
Monitoring Goals
• Predictive Analysis
– Identify trends in alerts and errors
– Predict spikes
– Automated scaling
© kCura LLC. All rights reserved.
Monitoring Goals
• Security
– Detect intrusions
– Prevent software maluses
– Fight DDoS attacks
© kCura LLC. All rights reserved.
– Recording of events
– Disconnected
– Event streams
– Stack trace
– Observation
– Connected & Engaged
– State
– Health & Performance
Monitoring vs. Logging
Logging Monitoring
© kCura LLC. All rights reserved.
Monitoring Levels
Application
Operating System
Infrastructure
© kCura LLC. All rights reserved.
Monitoring Microservices
© kCura LLC. All rights reserved.
on the topic of UNIX philosophy
Douglas McEllroy
“Write programs that
do one thing and do it
well. Write programs
to work together.”
© kCura LLC. All rights reserved.
Highly decoupled services with
isolated scope of responsibility
that asynchronously
communicate with each other.
• Components
– Concurrent execution
– Independent upgrades
– Independent scaling
• Services
– Isolated failure
– Resilience
– Isolated all the way to the hardware
– Autonomous
• Distributed environment
Microservices Definition
© kCura LLC. All rights reserved.
Monitoring Microservices
• Monitor Application Containers
Application
Containers
Operating System
Infrastructure
© kCura LLC. All rights reserved.
Monitoring Microservices
• Monitor APIs
– API Availability
– Processing Time
– Reachability
– Security
© kCura LLC. All rights reserved.
Monitoring Microservices
• Visualize Interactions
– Consider geo-located Services
© kCura LLC. All rights reserved.
Conway’s Law
M. Conway
“Organizations which
design systems ... are
constrained to
produce designs
which are copies of
the communication
structures of these
organizations”
© kCura LLC. All rights reserved.
Monitoring Microservices
• Monitoring Organizational Structure
Ref: Thenewstack.io
© kCura LLC. All rights reserved.
Monitoring Tools
© kCura LLC. All rights reserved.
Monitoring Tools
Azure Application Insights
– Azure Service
– No infrastructure setup required
– Detect exceptions and performance issues
– Visual studio integration
© kCura LLC. All rights reserved.
Monitoring Tools
© kCura LLC. All rights reserved.
Monitoring Tools
– SaaS
– Requires agents installed on VMs
– REST API for custom events
– Custom dashboards and alerts
– APIs for stored metrics
© kCura LLC. All rights reserved.
Monitoring Tools
© kCura LLC. All rights reserved.
Demo
© kCura LLC. All rights reserved.
Conclusion
• Why active and continuous monitoring is essential in the world of SaaS
• How Monitoring differs for Microservices vs. traditional software architectures
• How a Software development company can implement a monitoring habit
• It’s essential to keep asking ourselves how our software is doing!
@SabaJamalian
www.sabaj.me
me@sabaj.me

More Related Content

What's hot

Enabling DevOps to optimize application performance with Applications Manager
Enabling DevOps to optimize application performance with Applications ManagerEnabling DevOps to optimize application performance with Applications Manager
Enabling DevOps to optimize application performance with Applications ManagerManageEngine, Zoho Corporation
 
Reducing MTTR and False Escalations: Event Correlation at LinkedIn
Reducing MTTR and False Escalations: Event Correlation at LinkedInReducing MTTR and False Escalations: Event Correlation at LinkedIn
Reducing MTTR and False Escalations: Event Correlation at LinkedInMichael Kehoe
 
Cireson Sessions: Asset Management
Cireson Sessions: Asset Management Cireson Sessions: Asset Management
Cireson Sessions: Asset Management Cireson
 
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
 
Oracle Upgrade Project Big Rocks - Done Right!
Oracle Upgrade Project Big Rocks - Done Right!Oracle Upgrade Project Big Rocks - Done Right!
Oracle Upgrade Project Big Rocks - Done Right!panayaofficial
 
Application Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applicationsApplication Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applicationsAbhijit Jana
 
When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...
When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...
When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...Karl Ots
 
TechX Azure 2015 - Application Insights
TechX Azure 2015 - Application InsightsTechX Azure 2015 - Application Insights
TechX Azure 2015 - Application InsightsAndreas Hammar
 
Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...
Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...
Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...AppDynamics
 
[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's Next
[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's Next[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's Next
[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's NextWSO2
 
How to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demoHow to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demoApica
 
Introduction to the Microsoft identity platform for developers
Introduction to the Microsoft identity platform for developersIntroduction to the Microsoft identity platform for developers
Introduction to the Microsoft identity platform for developersChristos Matskas
 
Harnessing Configuration for Web GIS Application Development
Harnessing Configuration for Web GIS Application DevelopmentHarnessing Configuration for Web GIS Application Development
Harnessing Configuration for Web GIS Application DevelopmentGeCo in the Rockies
 
Using microsoft application insights to implement a build, measure, learn loop
Using microsoft application insights to implement a build, measure, learn loopUsing microsoft application insights to implement a build, measure, learn loop
Using microsoft application insights to implement a build, measure, learn loopMarcel de Vries
 

What's hot (20)

Enabling DevOps to optimize application performance with Applications Manager
Enabling DevOps to optimize application performance with Applications ManagerEnabling DevOps to optimize application performance with Applications Manager
Enabling DevOps to optimize application performance with Applications Manager
 
Reducing MTTR and False Escalations: Event Correlation at LinkedIn
Reducing MTTR and False Escalations: Event Correlation at LinkedInReducing MTTR and False Escalations: Event Correlation at LinkedIn
Reducing MTTR and False Escalations: Event Correlation at LinkedIn
 
Cireson Sessions: Asset Management
Cireson Sessions: Asset Management Cireson Sessions: Asset Management
Cireson Sessions: Asset Management
 
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
 
Oracle Upgrade Project Big Rocks - Done Right!
Oracle Upgrade Project Big Rocks - Done Right!Oracle Upgrade Project Big Rocks - Done Right!
Oracle Upgrade Project Big Rocks - Done Right!
 
Dynatrace
DynatraceDynatrace
Dynatrace
 
Application Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applicationsApplication Insights - Real time telemetry for your cross platform applications
Application Insights - Real time telemetry for your cross platform applications
 
When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...
When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...
When PaaS hits the fan: monitoring advanced Azure PaaS workloads in an enterp...
 
TechX Azure 2015 - Application Insights
TechX Azure 2015 - Application InsightsTechX Azure 2015 - Application Insights
TechX Azure 2015 - Application Insights
 
Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...
Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...
Getting Additional Value from Logs and APM Data with AppDynamics Unified Anal...
 
[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's Next
[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's Next[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's Next
[WSO2Con EU 2018] WSO2 API Manager - Why, What, How, and What's Next
 
How to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demoHow to successfully load test over a million concurrent users stp con demo
How to successfully load test over a million concurrent users stp con demo
 
Introduction to the Microsoft identity platform for developers
Introduction to the Microsoft identity platform for developersIntroduction to the Microsoft identity platform for developers
Introduction to the Microsoft identity platform for developers
 
Harnessing Configuration for Web GIS Application Development
Harnessing Configuration for Web GIS Application DevelopmentHarnessing Configuration for Web GIS Application Development
Harnessing Configuration for Web GIS Application Development
 
Applications manager 1 - Middle East Workshop
Applications manager 1 - Middle East WorkshopApplications manager 1 - Middle East Workshop
Applications manager 1 - Middle East Workshop
 
Smartone v1.0
Smartone v1.0Smartone v1.0
Smartone v1.0
 
Using microsoft application insights to implement a build, measure, learn loop
Using microsoft application insights to implement a build, measure, learn loopUsing microsoft application insights to implement a build, measure, learn loop
Using microsoft application insights to implement a build, measure, learn loop
 
Webinar: Building amazing web apps rapidly with emerging tech
Webinar: Building amazing web apps rapidly with emerging techWebinar: Building amazing web apps rapidly with emerging tech
Webinar: Building amazing web apps rapidly with emerging tech
 
Building real-time-collaborative-web-applications
Building real-time-collaborative-web-applicationsBuilding real-time-collaborative-web-applications
Building real-time-collaborative-web-applications
 
2.2.management center
2.2.management center2.2.management center
2.2.management center
 

Similar to Monitoring at scale: continuous monitoring

Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application DevelopmentWaveMaker, Inc.
 
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...Amazon Web Services
 
Freedom and Responsibility
Freedom and ResponsibilityFreedom and Responsibility
Freedom and ResponsibilityMike Ruangutai
 
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...Agile Testing Alliance
 
Infrastructure less development with Azure Service Fabric
Infrastructure less development with Azure Service FabricInfrastructure less development with Azure Service Fabric
Infrastructure less development with Azure Service FabricSaba Jamalian
 
The elegant way of implementing microservices with istio
The elegant way of implementing microservices with istioThe elegant way of implementing microservices with istio
The elegant way of implementing microservices with istioInho Kang
 
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클Oracle Korea
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science PlatformDecision Science Community
 
Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1Chef
 
Service Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumService Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumRick Hightower
 
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancialTim Hinkle
 
Eat Your Microservices Elephant One Bite at a Time
Eat Your Microservices Elephant One Bite at a TimeEat Your Microservices Elephant One Bite at a Time
Eat Your Microservices Elephant One Bite at a TimeAkana
 
Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...
Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...
Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...AppDynamics
 
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)VMware Tanzu
 
API310 - How to refactor a monolith to serverless in 8 steps
API310 - How to refactor a monolith to serverless in 8 stepsAPI310 - How to refactor a monolith to serverless in 8 steps
API310 - How to refactor a monolith to serverless in 8 stepsYan Cui
 
Gcp intro-20160721
Gcp intro-20160721Gcp intro-20160721
Gcp intro-20160721Haeseung Lee
 
Cloud-native Data: Every Microservice Needs a Cache
Cloud-native Data: Every Microservice Needs a CacheCloud-native Data: Every Microservice Needs a Cache
Cloud-native Data: Every Microservice Needs a Cachecornelia davis
 
SCQAA-SF Meeting on May 21 2014
SCQAA-SF Meeting on May 21 2014 SCQAA-SF Meeting on May 21 2014
SCQAA-SF Meeting on May 21 2014 Sujit Ghosh
 
Microservices
MicroservicesMicroservices
MicroservicesSmartBear
 
Performance monitoring in a DevOps World
Performance monitoring in a DevOps WorldPerformance monitoring in a DevOps World
Performance monitoring in a DevOps WorldSolidify
 

Similar to Monitoring at scale: continuous monitoring (20)

Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application Development
 
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
AWS re:Invent 2016: Effective Application Data Analytics for Modern Applicati...
 
Freedom and Responsibility
Freedom and ResponsibilityFreedom and Responsibility
Freedom and Responsibility
 
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
ATAGTR2017 Unified APM: The new age performance monitoring for production sys...
 
Infrastructure less development with Azure Service Fabric
Infrastructure less development with Azure Service FabricInfrastructure less development with Azure Service Fabric
Infrastructure less development with Azure Service Fabric
 
The elegant way of implementing microservices with istio
The elegant way of implementing microservices with istioThe elegant way of implementing microservices with istio
The elegant way of implementing microservices with istio
 
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
 
Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1Compliance Automation with Inspec Part 1
Compliance Automation with Inspec Part 1
 
Service Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumService Mesh Talk for CTO Forum
Service Mesh Talk for CTO Forum
 
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
18BC03_Discovery_Enables_Accurate_CMDB_Hinkle_DiscoverFinancial
 
Eat Your Microservices Elephant One Bite at a Time
Eat Your Microservices Elephant One Bite at a TimeEat Your Microservices Elephant One Bite at a Time
Eat Your Microservices Elephant One Bite at a Time
 
Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...
Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...
Next-Gen Business Transaction Configuration, Instrumentation, and Java Perfor...
 
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
 
API310 - How to refactor a monolith to serverless in 8 steps
API310 - How to refactor a monolith to serverless in 8 stepsAPI310 - How to refactor a monolith to serverless in 8 steps
API310 - How to refactor a monolith to serverless in 8 steps
 
Gcp intro-20160721
Gcp intro-20160721Gcp intro-20160721
Gcp intro-20160721
 
Cloud-native Data: Every Microservice Needs a Cache
Cloud-native Data: Every Microservice Needs a CacheCloud-native Data: Every Microservice Needs a Cache
Cloud-native Data: Every Microservice Needs a Cache
 
SCQAA-SF Meeting on May 21 2014
SCQAA-SF Meeting on May 21 2014 SCQAA-SF Meeting on May 21 2014
SCQAA-SF Meeting on May 21 2014
 
Microservices
MicroservicesMicroservices
Microservices
 
Performance monitoring in a DevOps World
Performance monitoring in a DevOps WorldPerformance monitoring in a DevOps World
Performance monitoring in a DevOps World
 

Recently uploaded

Incident handling is a clearly defined set of procedures to manage and respon...
Incident handling is a clearly defined set of procedures to manage and respon...Incident handling is a clearly defined set of procedures to manage and respon...
Incident handling is a clearly defined set of procedures to manage and respon...Varun Mithran
 
Your Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | EvmuxYour Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | Evmuxevmux96
 
Software Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringSoftware Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringPrakhyath Rai
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...naitiksharma1124
 
The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)Roberto Bettazzoni
 
From Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptxFrom Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptxNeo4j
 
Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...
Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...
Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...Abortion Clinic
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Eraconfluent
 
Test Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdfTest Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdfkalichargn70th171
 
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
Auto Affiliate  AI Earns First Commission in 3 Hours..pdfAuto Affiliate  AI Earns First Commission in 3 Hours..pdf
Auto Affiliate AI Earns First Commission in 3 Hours..pdfSelfMade bd
 
Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024Henry Schreiner
 
Transformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with LinksTransformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with LinksJinanKordab
 
Rapidoform for Modern Form Building and Insights
Rapidoform for Modern Form Building and InsightsRapidoform for Modern Form Building and Insights
Rapidoform for Modern Form Building and Insightsrapidoform
 
Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14VMware Tanzu
 
A Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdfA Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdfICS
 
Lessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdfLessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdfSrushith Repakula
 
Novo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMsNovo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMsNeo4j
 
GraphSummit Milan - Neo4j: The Art of the Possible with Graph
GraphSummit Milan - Neo4j: The Art of the Possible with GraphGraphSummit Milan - Neo4j: The Art of the Possible with Graph
GraphSummit Milan - Neo4j: The Art of the Possible with GraphNeo4j
 

Recently uploaded (20)

Incident handling is a clearly defined set of procedures to manage and respon...
Incident handling is a clearly defined set of procedures to manage and respon...Incident handling is a clearly defined set of procedures to manage and respon...
Incident handling is a clearly defined set of procedures to manage and respon...
 
Your Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | EvmuxYour Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | Evmux
 
Software Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringSoftware Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements Engineering
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)
 
From Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptxFrom Knowledge Graphs via Lego Bricks to scientific conversations.pptx
From Knowledge Graphs via Lego Bricks to scientific conversations.pptx
 
Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...
 
Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...
Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...
Abortion Pill Prices Jane Furse ](+27832195400*)[ 🏥 Women's Abortion Clinic i...
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
 
Test Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdfTest Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdf
 
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
Auto Affiliate  AI Earns First Commission in 3 Hours..pdfAuto Affiliate  AI Earns First Commission in 3 Hours..pdf
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
 
Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024
 
Transformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with LinksTransformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with Links
 
Rapidoform for Modern Form Building and Insights
Rapidoform for Modern Form Building and InsightsRapidoform for Modern Form Building and Insights
Rapidoform for Modern Form Building and Insights
 
Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...
Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...
Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...
 
Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14Spring into AI presented by Dan Vega 5/14
Spring into AI presented by Dan Vega 5/14
 
A Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdfA Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdf
 
Lessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdfLessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdf
 
Novo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMsNovo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMs
 
GraphSummit Milan - Neo4j: The Art of the Possible with Graph
GraphSummit Milan - Neo4j: The Art of the Possible with GraphGraphSummit Milan - Neo4j: The Art of the Possible with Graph
GraphSummit Milan - Neo4j: The Art of the Possible with Graph
 

Monitoring at scale: continuous monitoring

  • 1. 6/30/2017© kCura LLC. All rights reserved. MONITORING AT SCALE: CONTINUOUS MONITORING Sunghee Choi Saba Jamalian
  • 2. Hometown: South Korea Company: kCura What I do: Software Engineering Manager Fun Fact: I was an engineer when signed up for this presentation and now I’m a manager! Sunghee Choi
  • 3. Hometown: Shiraz, Iran Company: Forte Group What I do: Software Engineer Fun Fact:I have watched all the episodes of the TV series more than 20 times! Saba Jamalian
  • 4. © kCura LLC. All rights reserved. e-Discovery Used to search, analyze, and act on data to tell the story of a case quickly and easily during litigation and investigation About Us Chicago-based e-discovery software company
  • 5. © kCura LLC. All rights reserved. What I’ll Cover Continuous Monitoring at kCura Monitoring Goals Monitoring Microservices Monitoring Tools - Demo
  • 6. © kCura LLC. All rights reserved. • We’re on a path toward a fully SaaS product • Monitoring GOAL: To Get Visibility on User Experience Takeaways: • Why active and continuous monitoring is essential in the world of SaaS • How Monitoring differs for Microservices vs. traditional software architectures • How a Software development company can implement a monitoring habit Motivation for this Presentation • is on Netflix! Make sure to watch it if you haven’t watched already!
  • 7. © kCura LLC. All rights reserved. kCura’s way of Continuous Monitoring
  • 8. © kCura LLC. All rights reserved. • Automated product health check • Resiliency • Automated incident escalation • Get overall health status – real time • Not to be technologically dependent to a tool or framework The Goal
  • 9. © kCura LLC. All rights reserved. • kCura Application Performance Monitoring framework • Enables developers to collect metrics in code; – Counters – Gauges – HealthChecks – Meters – Timers kAPM
  • 10. © kCura LLC. All rights reserved. Database API APM Framework Jenkins Service Bus Functions Functions New Relic Slack DocumentDbAlerts Definitions ServiceNow HealthChecks Monitoring Architecture
  • 11. © kCura LLC. All rights reserved. • Treat New Relic like a metrics storage Custom Alerts
  • 12. © kCura LLC. All rights reserved. Database API APM Framework Jenkins Service Bus Functions Functions New Relic Slack DocumentDbAlerts Definitions ServiceNow HealthChecks Custom Function Alerts
  • 13. © kCura LLC. All rights reserved. Monitoring Goals at kCura
  • 14. © kCura LLC. All rights reserved. Monitoring Goals • Performance Monitoring – Evaluate performance with production data and scenarios – Identify workflow bottlenecks
  • 15. © kCura LLC. All rights reserved. Monitoring Goals • Performance Monitoring – Evaluate performance with production data and scenarios – Identify workflow bottlenecks
  • 16. © kCura LLC. All rights reserved. Monitoring Goals • Decision Making – Learn from users to plan for future features – Enhance loved parts of the software – Gain more insights
  • 17. © kCura LLC. All rights reserved. Monitoring Goals • Proactive Maintenance – Identify errors before customer – Automated recovery – Early problem detection – Resilient software • Example scenario; Failed agents recovery
  • 18. © kCura LLC. All rights reserved. Proactive Maintenance: Failed Agents Recovery Agent Failed Agent Recovery Send Alert DocDb
  • 19. © kCura LLC. All rights reserved. Proactive Maintenance: Failed Agents Recovery
  • 20. © kCura LLC. All rights reserved. Monitoring Goals • Predictive Analysis – Identify trends in alerts and errors – Predict spikes – Automated scaling
  • 21. © kCura LLC. All rights reserved. Monitoring Goals • Security – Detect intrusions – Prevent software maluses – Fight DDoS attacks
  • 22. © kCura LLC. All rights reserved. – Recording of events – Disconnected – Event streams – Stack trace – Observation – Connected & Engaged – State – Health & Performance Monitoring vs. Logging Logging Monitoring
  • 23. © kCura LLC. All rights reserved. Monitoring Levels Application Operating System Infrastructure
  • 24. © kCura LLC. All rights reserved. Monitoring Microservices
  • 25. © kCura LLC. All rights reserved. on the topic of UNIX philosophy Douglas McEllroy “Write programs that do one thing and do it well. Write programs to work together.”
  • 26. © kCura LLC. All rights reserved. Highly decoupled services with isolated scope of responsibility that asynchronously communicate with each other. • Components – Concurrent execution – Independent upgrades – Independent scaling • Services – Isolated failure – Resilience – Isolated all the way to the hardware – Autonomous • Distributed environment Microservices Definition
  • 27. © kCura LLC. All rights reserved. Monitoring Microservices • Monitor Application Containers Application Containers Operating System Infrastructure
  • 28. © kCura LLC. All rights reserved. Monitoring Microservices • Monitor APIs – API Availability – Processing Time – Reachability – Security
  • 29. © kCura LLC. All rights reserved. Monitoring Microservices • Visualize Interactions – Consider geo-located Services
  • 30. © kCura LLC. All rights reserved. Conway’s Law M. Conway “Organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations”
  • 31. © kCura LLC. All rights reserved. Monitoring Microservices • Monitoring Organizational Structure Ref: Thenewstack.io
  • 32. © kCura LLC. All rights reserved. Monitoring Tools
  • 33. © kCura LLC. All rights reserved. Monitoring Tools Azure Application Insights – Azure Service – No infrastructure setup required – Detect exceptions and performance issues – Visual studio integration
  • 34. © kCura LLC. All rights reserved. Monitoring Tools
  • 35. © kCura LLC. All rights reserved. Monitoring Tools – SaaS – Requires agents installed on VMs – REST API for custom events – Custom dashboards and alerts – APIs for stored metrics
  • 36. © kCura LLC. All rights reserved. Monitoring Tools
  • 37. © kCura LLC. All rights reserved. Demo
  • 38. © kCura LLC. All rights reserved. Conclusion • Why active and continuous monitoring is essential in the world of SaaS • How Monitoring differs for Microservices vs. traditional software architectures • How a Software development company can implement a monitoring habit • It’s essential to keep asking ourselves how our software is doing! @SabaJamalian www.sabaj.me me@sabaj.me

Editor's Notes

  1. Who is kCura? We’re a fast-growing Chicago-based software company, tackling big data challenges for users spanning the globe. What do we do? We’re the developers of the e-discovery software, Relativity, which is used for managing large volumes of electronic evidence during litigation and investigations. Statistics to use: If you’d like to speak about the size of the Relativity Community: More than 130,000 active users More than 11,000 unique organizations using Relativity 218 enterprise clients 127 channel partners Used by 99 of the Am Law 100 and 197 of the Am Law 200. Used by 70 of the Fortune 100 If you’d like to speak about the large volumes of electronic data managed in Relativity: There are 67 billion files under management in Relativity. Largest case to date involves 750 million documents.   If you’d like to speak about the international growth of Relativity: 127 of our clients are international. Relativity is being used in 43 countries.
  2. In this presentation we will talk about why we need Monitoring; the motiviations behind and benefits gained from adding monitoring to the system. Then we will focus on the principles of monitoring microservices and why they need special attention We will then dive into a couple of monitoring tools with a live practice demo of them; in particular New Relic Finally, we will talk about how we have and currently are implementing monitoring at kCura… we will share our experience and lessons learned so far
  3. The reason to develop our own framework is to avoid dependency on external tools
  4. The reason to develop our own framework is to avoid dependency on external tools
  5. Often of the times; users don’t know exactly what feature they would like to see in your software. Monitoring their interaction with software helps us learn their demands and develop features that they themselves didn’t know that they loved! More educated estimates instead of guesstimates Evidence-based decision making
  6. Failure in Monitoring is when we realize an error occurred in the system when the customer created a salesforce ticket for us.
  7. - Doctor examining a patient with chest pain emergency; EKG or go through the record of his/her activity during the last 24 hours? - Insights from masses of stdout streams - Disconnected: Send me your logs I’ll see what’s going on
  8. Concurrent execution of all components Runs on a distributed environment Each component can upgrade independently Each component can scale up or out independently Failure is isolated in each service Services can become resilient Services are isolated all the way to the hardware (virtualization, containers) Services act on their own; autonomous
  9. Unless you’re running serverless - infrastructure less
  10. Sociological Observation Software interfaces reflect social boundaries of the organization