SlideShare uma empresa Scribd logo
1 de 25
Onkar kadam
onkarkadam@live.com
Cloud Environment.
Virtualization/Virtual machines.
Monitoring Multiple hosts.
Monitoring a Distributed environment.
Central Monitoring Server.
Real-time messaging.
Selecting the metrics.
Incident reports and notifications.
When the Monitoring server triggers the
check on a host then it is termed as active
monitoring.
In an active monitoring environment , the
central monitoring server performs periodic
checks on hosts and retrieves metrics related
to that service.
If the central monitoring server is within the
cloud then its easy to monitor the hosts.
If the central monitoring server is at a remote
location , ssh services are required to monitor
virtual hosts.
Scripts or programs on the virtual host
perform tests and send the results to the
central monitoring server.
Active monitoring doesn’t put the load on the
host to run monitoring scripts.
Passive monitoring is effective in case of
failures. Passive monitoring fit well in the
case of reporting problems to the central
monitoring server in real time.
The need of an efficient messaging protocol for
sending performance metrics to the central
monitoring server.
For Real Time Application performance
monitoring a fast messaging protocol is a must.
Leveraging already available messaging services
to be used in the architecture
RabbitMQ , ActiveMQ , Apache Kafka.
In the architecture, the monitoring agent will
calculate the performance metrics and
publish it on RabbitMQ.
The virtual hosts are the producers
application performance metrics and the
Central monitoring server is the consumer.
The Central monitoring server will fetch the
metrics from the queue of RabbitMQ.
Instead of point-to-point pipelines use of a
central data pipeline.
The producers, in our case the virtual
machines hosting the rails application,
produce metrics and publish data on the
kafka cluster with a key in the message which
specifies the source of the metric.
The consumer reads the messages from the
kafka cluster(commit log) and then
represents the data in graphs for the end
user.
Website activity tracking (page views,
searches , or other action users perform)
Real time processing and real time
monitoring.
Aggregating statistics from applications and
produce operational monitoring data.
Two ways: Ruby plug-in or a full-fledged rails
application’.
The main goal of the agent is to collect
critical metrics from the host and send it to
the central monitoring server, hence a plug-
in will be more suitable and lightweight.
In cloud environment it is necessary to have a
lightweight plug-in as the size of an instance
varies.
Monitoring web servers is important as it is
the front end of any web application.
We can monitor the web server by parsing the
log files.
Action Controller receives incoming requests
and hands off each request to a particular
action. It maps URL to specific actions.
Rails comes with a number of built-in logging
facilities.
Use of after_filter to invoke custom logging
method for each request.
It will help the monitor to inspect the request
cycle in real time.
Using “~/projects$ ruby script/console –s”
we can inspect the relationships between the
objects.
Giving the client a view of the these
relationships in the front end of the
application monitoring agent.
Use of “stats rake” task to generate statistics
about the Rails project.
A “Httperf” like tool can be used to generate
real time web server performance statistics
for a real world web traffic.
A front end abstraction can be used to
represent the statistics collected in an
graphical view.
Monitoring the web server cache.
The most important part of a rails application
is the database.
The most important thing to monitor is the
mapping between the database and Active
records.
To maintain the integrity of ORM, a change in
active record object should cause an
immediate change in the corresponding row
of a table in a database.
Periodically issue a MySql “Show status”
command and return.
Metrics such as Mysql traffic, No of
transactions between Controller and
database, no of queries ,no of update
queries, no of delete queries, no of times a
sql command is issued, query cache
statistics, etc
There are various methods an monitoring
application can be deployed in the cloud.
One is providing the source code and installing it
after a virtual instance with the web application is
up an running.
Creating a custom image with the monitoring
agent already installed, such that the users only
select the image and deploy their applications
and start monitoring their application.
(http://docs.aws.amazon.com/gettingstarted/latest/wah-
linux/getting-started-create-custom-ami.html)
The main important decision is to perform
active or passive monitoring or combination
of both.
To collect statistics about an application it is
necessary to dig deeper in the PAAS
technology used by the application, for eg. a
rails application will have a different set of
performance metrics than a java based web
application , but both applications will have a
default set of metrics which are valid for both
type of applications.
The agent should be as light as possible so
that it will not affect the web application
performance.
Real- time messaging so that the metrics
reflect in the monitor in real time
Real time data processing to generate the
statistics.
A self aware scaling tool for web applications
in cloud.
A performance metric predicting tool based
on the past performance metric and current
time of the day.
Architecture for monitoring applications in Cloud

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

NashTech - Azure Application Insights
NashTech - Azure Application InsightsNashTech - Azure Application Insights
NashTech - Azure Application Insights
 
Hybrid cloud monitoring - Mumbai seminar
Hybrid cloud monitoring - Mumbai seminarHybrid cloud monitoring - Mumbai seminar
Hybrid cloud monitoring - Mumbai seminar
 
Cloud Bursting with A10 Lightning ADS
Cloud Bursting with A10 Lightning ADSCloud Bursting with A10 Lightning ADS
Cloud Bursting with A10 Lightning ADS
 
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
Monitoring advanced Azure PaaS workloads in the enterprise - Level: 200
 
One Azure Monitor to Rule Them All? - Marius Zaharia
One Azure Monitor to Rule Them All? - Marius ZahariaOne Azure Monitor to Rule Them All? - Marius Zaharia
One Azure Monitor to Rule Them All? - Marius Zaharia
 
DevOps Tools - Azure Monitor
DevOps Tools - Azure MonitorDevOps Tools - Azure Monitor
DevOps Tools - Azure Monitor
 
Optimize application performance - Mumbai Seminar
Optimize application performance - Mumbai Seminar Optimize application performance - Mumbai Seminar
Optimize application performance - Mumbai Seminar
 
WSO2Con ASIA 2016: Building Apps Using WSO2 App Dev Platform
WSO2Con ASIA 2016: Building Apps Using WSO2 App Dev PlatformWSO2Con ASIA 2016: Building Apps Using WSO2 App Dev Platform
WSO2Con ASIA 2016: Building Apps Using WSO2 App Dev Platform
 
Network Bandwidth management - Mumbai Seminar
Network Bandwidth management - Mumbai SeminarNetwork Bandwidth management - Mumbai Seminar
Network Bandwidth management - Mumbai Seminar
 
DevOps sensors 360° high availability in the cloud
DevOps sensors 360°   high availability in the cloudDevOps sensors 360°   high availability in the cloud
DevOps sensors 360° high availability in the cloud
 
Monitoring real-life Azure applications: When to use what and why
Monitoring real-life Azure applications: When to use what and whyMonitoring real-life Azure applications: When to use what and why
Monitoring real-life Azure applications: When to use what and why
 
Monitor Cloud Resources using Alerts & Insights
Monitor Cloud Resources using Alerts & InsightsMonitor Cloud Resources using Alerts & Insights
Monitor Cloud Resources using Alerts & Insights
 
Siebel Monitoring Tools
Siebel Monitoring ToolsSiebel Monitoring Tools
Siebel Monitoring Tools
 
Application Performance Management
Application Performance ManagementApplication Performance Management
Application Performance Management
 
Virtual Global Azure 2020 - Azure Monitor
Virtual Global Azure 2020 - Azure MonitorVirtual Global Azure 2020 - Azure Monitor
Virtual Global Azure 2020 - Azure Monitor
 
Cloud monitoring
Cloud monitoringCloud monitoring
Cloud monitoring
 
The full picture of Openstack in real-time
The full picture of Openstack in real-timeThe full picture of Openstack in real-time
The full picture of Openstack in real-time
 
Operating a High Velocity Large Organization with Spring Cloud Microservices
Operating a High Velocity Large Organization with Spring Cloud MicroservicesOperating a High Velocity Large Organization with Spring Cloud Microservices
Operating a High Velocity Large Organization with Spring Cloud Microservices
 
Mastering Azure Monitor
Mastering Azure MonitorMastering Azure Monitor
Mastering Azure Monitor
 
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...
 

Destaque

ACM Applicative System Methodology 2016
ACM Applicative System Methodology 2016ACM Applicative System Methodology 2016
ACM Applicative System Methodology 2016
Brendan Gregg
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and more
Brendan Gregg
 

Destaque (20)

Automating AWS with Ansible
Automating AWS with AnsibleAutomating AWS with Ansible
Automating AWS with Ansible
 
A Taste of Monitoring and Post Mortem Debugging with Node
A Taste of Monitoring and Post Mortem Debugging with Node A Taste of Monitoring and Post Mortem Debugging with Node
A Taste of Monitoring and Post Mortem Debugging with Node
 
Server Monitoring (Scaling while bootstrapped)
Server Monitoring  (Scaling while bootstrapped)Server Monitoring  (Scaling while bootstrapped)
Server Monitoring (Scaling while bootstrapped)
 
Backend server monitoring and alarm system (collectd, graphite, grafana, zabb...
Backend server monitoring and alarm system (collectd, graphite, grafana, zabb...Backend server monitoring and alarm system (collectd, graphite, grafana, zabb...
Backend server monitoring and alarm system (collectd, graphite, grafana, zabb...
 
Micro services infrastructure with AWS and Ansible
Micro services infrastructure with AWS and AnsibleMicro services infrastructure with AWS and Ansible
Micro services infrastructure with AWS and Ansible
 
InterConnect2016 Monitoring Nodejs
InterConnect2016 Monitoring NodejsInterConnect2016 Monitoring Nodejs
InterConnect2016 Monitoring Nodejs
 
Stop the Guessing: Performance Methodologies for Production Systems
Stop the Guessing: Performance Methodologies for Production SystemsStop the Guessing: Performance Methodologies for Production Systems
Stop the Guessing: Performance Methodologies for Production Systems
 
ACM Applicative System Methodology 2016
ACM Applicative System Methodology 2016ACM Applicative System Methodology 2016
ACM Applicative System Methodology 2016
 
Nodejs intro
Nodejs introNodejs intro
Nodejs intro
 
Monitoring the #DevOps way
Monitoring the #DevOps wayMonitoring the #DevOps way
Monitoring the #DevOps way
 
Automation with Ansible and Containers
Automation with Ansible and ContainersAutomation with Ansible and Containers
Automation with Ansible and Containers
 
SREcon 2016 Performance Checklists for SREs
SREcon 2016 Performance Checklists for SREsSREcon 2016 Performance Checklists for SREs
SREcon 2016 Performance Checklists for SREs
 
NGINX High-performance Caching
NGINX High-performance CachingNGINX High-performance Caching
NGINX High-performance Caching
 
Andrew Nelson - Zabbix and SNMP on Linux
Andrew Nelson - Zabbix and SNMP on LinuxAndrew Nelson - Zabbix and SNMP on Linux
Andrew Nelson - Zabbix and SNMP on Linux
 
Netflix: From Clouds to Roots
Netflix: From Clouds to RootsNetflix: From Clouds to Roots
Netflix: From Clouds to Roots
 
Blazing Performance with Flame Graphs
Blazing Performance with Flame GraphsBlazing Performance with Flame Graphs
Blazing Performance with Flame Graphs
 
Performance Tuning EC2 Instances
Performance Tuning EC2 InstancesPerformance Tuning EC2 Instances
Performance Tuning EC2 Instances
 
Linux BPF Superpowers
Linux BPF SuperpowersLinux BPF Superpowers
Linux BPF Superpowers
 
Introduction to Node.js
Introduction to Node.jsIntroduction to Node.js
Introduction to Node.js
 
BPF: Tracing and more
BPF: Tracing and moreBPF: Tracing and more
BPF: Tracing and more
 

Semelhante a Architecture for monitoring applications in Cloud

Asynchronous Mobile Web Services:
Asynchronous Mobile Web Services: Asynchronous Mobile Web Services:
Asynchronous Mobile Web Services:
Dr. Fahad Aijaz
 
DevOps_SelfHealing
DevOps_SelfHealingDevOps_SelfHealing
DevOps_SelfHealing
Atul Dhingra
 
The State of Log Management & Analytics for AWS
The State of Log Management & Analytics for AWSThe State of Log Management & Analytics for AWS
The State of Log Management & Analytics for AWS
Trevor Parsons
 
Root Cause Detection in a Service-Oriented Architecture
Root Cause Detection in a Service-Oriented ArchitectureRoot Cause Detection in a Service-Oriented Architecture
Root Cause Detection in a Service-Oriented Architecture
Sam Shah
 
Monalytics - Online Monitoring and Analytics for Large Scale Data Centers
Monalytics - Online Monitoring and Analytics for Large Scale Data CentersMonalytics - Online Monitoring and Analytics for Large Scale Data Centers
Monalytics - Online Monitoring and Analytics for Large Scale Data Centers
Mahendra Kutare
 

Semelhante a Architecture for monitoring applications in Cloud (20)

Asynchronous Mobile Web Services:
Asynchronous Mobile Web Services: Asynchronous Mobile Web Services:
Asynchronous Mobile Web Services:
 
Azure Monitoring Overview
Azure Monitoring OverviewAzure Monitoring Overview
Azure Monitoring Overview
 
Cloud Foundry Technical Overview
Cloud Foundry Technical OverviewCloud Foundry Technical Overview
Cloud Foundry Technical Overview
 
Apache Spark Streaming -Real time web server log analytics
Apache Spark Streaming -Real time web server log analyticsApache Spark Streaming -Real time web server log analytics
Apache Spark Streaming -Real time web server log analytics
 
RMC: Real-Time Monitoring and Controlling Approach on Networks
RMC: Real-Time Monitoring and Controlling Approach on  NetworksRMC: Real-Time Monitoring and Controlling Approach on  Networks
RMC: Real-Time Monitoring and Controlling Approach on Networks
 
B0320611
B0320611B0320611
B0320611
 
Cloud Foundry - Second Generation Code (CCNG). Technical Overview
Cloud Foundry - Second Generation Code (CCNG). Technical Overview Cloud Foundry - Second Generation Code (CCNG). Technical Overview
Cloud Foundry - Second Generation Code (CCNG). Technical Overview
 
Monitoring in Big Data Platform - Albert Lewandowski, GetInData
Monitoring in Big Data Platform - Albert Lewandowski, GetInDataMonitoring in Big Data Platform - Albert Lewandowski, GetInData
Monitoring in Big Data Platform - Albert Lewandowski, GetInData
 
DevOps_SelfHealing
DevOps_SelfHealingDevOps_SelfHealing
DevOps_SelfHealing
 
The State of Log Management & Analytics for AWS
The State of Log Management & Analytics for AWSThe State of Log Management & Analytics for AWS
The State of Log Management & Analytics for AWS
 
Mon paas an adaptive monitoring platformas a service for cloud computing infr...
Mon paas an adaptive monitoring platformas a service for cloud computing infr...Mon paas an adaptive monitoring platformas a service for cloud computing infr...
Mon paas an adaptive monitoring platformas a service for cloud computing infr...
 
Stream analytics
Stream analyticsStream analytics
Stream analytics
 
Silk Performer Presentation v1
Silk Performer Presentation v1Silk Performer Presentation v1
Silk Performer Presentation v1
 
Root Cause Detection in a Service-Oriented Architecture
Root Cause Detection in a Service-Oriented ArchitectureRoot Cause Detection in a Service-Oriented Architecture
Root Cause Detection in a Service-Oriented Architecture
 
Predix
PredixPredix
Predix
 
Monitoring sytem.ppt
Monitoring sytem.pptMonitoring sytem.ppt
Monitoring sytem.ppt
 
Multi-Cloud Micro-Services with CloudFoundry
Multi-Cloud Micro-Services with CloudFoundryMulti-Cloud Micro-Services with CloudFoundry
Multi-Cloud Micro-Services with CloudFoundry
 
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with K...
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with K...Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with K...
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with K...
 
IRJET- Real Time Monitoring of Servers with Prometheus and Grafana for High A...
IRJET- Real Time Monitoring of Servers with Prometheus and Grafana for High A...IRJET- Real Time Monitoring of Servers with Prometheus and Grafana for High A...
IRJET- Real Time Monitoring of Servers with Prometheus and Grafana for High A...
 
Monalytics - Online Monitoring and Analytics for Large Scale Data Centers
Monalytics - Online Monitoring and Analytics for Large Scale Data CentersMonalytics - Online Monitoring and Analytics for Large Scale Data Centers
Monalytics - Online Monitoring and Analytics for Large Scale Data Centers
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 

Architecture for monitoring applications in Cloud

  • 2. Cloud Environment. Virtualization/Virtual machines. Monitoring Multiple hosts. Monitoring a Distributed environment. Central Monitoring Server. Real-time messaging. Selecting the metrics. Incident reports and notifications.
  • 3. When the Monitoring server triggers the check on a host then it is termed as active monitoring.
  • 4. In an active monitoring environment , the central monitoring server performs periodic checks on hosts and retrieves metrics related to that service. If the central monitoring server is within the cloud then its easy to monitor the hosts. If the central monitoring server is at a remote location , ssh services are required to monitor virtual hosts.
  • 5. Scripts or programs on the virtual host perform tests and send the results to the central monitoring server.
  • 6. Active monitoring doesn’t put the load on the host to run monitoring scripts. Passive monitoring is effective in case of failures. Passive monitoring fit well in the case of reporting problems to the central monitoring server in real time.
  • 7. The need of an efficient messaging protocol for sending performance metrics to the central monitoring server. For Real Time Application performance monitoring a fast messaging protocol is a must. Leveraging already available messaging services to be used in the architecture RabbitMQ , ActiveMQ , Apache Kafka.
  • 8.
  • 9. In the architecture, the monitoring agent will calculate the performance metrics and publish it on RabbitMQ. The virtual hosts are the producers application performance metrics and the Central monitoring server is the consumer. The Central monitoring server will fetch the metrics from the queue of RabbitMQ.
  • 10.
  • 11. Instead of point-to-point pipelines use of a central data pipeline. The producers, in our case the virtual machines hosting the rails application, produce metrics and publish data on the kafka cluster with a key in the message which specifies the source of the metric. The consumer reads the messages from the kafka cluster(commit log) and then represents the data in graphs for the end user.
  • 12. Website activity tracking (page views, searches , or other action users perform) Real time processing and real time monitoring. Aggregating statistics from applications and produce operational monitoring data.
  • 13. Two ways: Ruby plug-in or a full-fledged rails application’. The main goal of the agent is to collect critical metrics from the host and send it to the central monitoring server, hence a plug- in will be more suitable and lightweight. In cloud environment it is necessary to have a lightweight plug-in as the size of an instance varies.
  • 14.
  • 15. Monitoring web servers is important as it is the front end of any web application. We can monitor the web server by parsing the log files.
  • 16. Action Controller receives incoming requests and hands off each request to a particular action. It maps URL to specific actions. Rails comes with a number of built-in logging facilities. Use of after_filter to invoke custom logging method for each request. It will help the monitor to inspect the request cycle in real time.
  • 17. Using “~/projects$ ruby script/console –s” we can inspect the relationships between the objects. Giving the client a view of the these relationships in the front end of the application monitoring agent.
  • 18. Use of “stats rake” task to generate statistics about the Rails project. A “Httperf” like tool can be used to generate real time web server performance statistics for a real world web traffic. A front end abstraction can be used to represent the statistics collected in an graphical view. Monitoring the web server cache.
  • 19. The most important part of a rails application is the database. The most important thing to monitor is the mapping between the database and Active records. To maintain the integrity of ORM, a change in active record object should cause an immediate change in the corresponding row of a table in a database.
  • 20. Periodically issue a MySql “Show status” command and return. Metrics such as Mysql traffic, No of transactions between Controller and database, no of queries ,no of update queries, no of delete queries, no of times a sql command is issued, query cache statistics, etc
  • 21. There are various methods an monitoring application can be deployed in the cloud. One is providing the source code and installing it after a virtual instance with the web application is up an running. Creating a custom image with the monitoring agent already installed, such that the users only select the image and deploy their applications and start monitoring their application. (http://docs.aws.amazon.com/gettingstarted/latest/wah- linux/getting-started-create-custom-ami.html)
  • 22. The main important decision is to perform active or passive monitoring or combination of both. To collect statistics about an application it is necessary to dig deeper in the PAAS technology used by the application, for eg. a rails application will have a different set of performance metrics than a java based web application , but both applications will have a default set of metrics which are valid for both type of applications.
  • 23. The agent should be as light as possible so that it will not affect the web application performance. Real- time messaging so that the metrics reflect in the monitor in real time Real time data processing to generate the statistics.
  • 24. A self aware scaling tool for web applications in cloud. A performance metric predicting tool based on the past performance metric and current time of the day.