Friday, April 23, 2021

Request Response Measure

 

In continuation of the last blog,  today we are going to talk about 2 key metric of any system.  They are

  1. Request time (input)
  2. Response time (output)

It is essential to indicate the performance of the underlying system.  

In AWS cloud world, the input request comes as user/system input to our processing engine.  AWS ELB (in simple term cluster manager) is the middle layer to route the concurrent bulk requests in an evenly distributed load.  The actual processing engine is hosted in EC2 instance.

Here, request processing time is the time taken from user request to ELB.  It is measured in every load balancer log records along with the back end processing time between ELB and actual EC2 server.

Response processing time is measure as time taken to return the response from ELB.

Thus, the fundamental request and response time elements are integral part of ELB logs in AWS cloud systems.

Sunday, April 18, 2021

ELB Log Format

 


AWS Elastic Load Balancing (ELB) helps us to build systems that are highly scalable and highly reliable. It is possible to distribute traffic automatically across a dynamically-sized collection/cluster of Amazon EC2 instances.

Elastic Load Balancers provides the accessibility for the entire transactions log. After enabling and configuring this feature of ELB, log files can be delivered to the Amazon S3 bucket of the configuring choice.

ELB Log files are generated in a plain-text format, one line per request. Each line contains a total of twelve fields (as attached here). These fields are self explanatory about their holding information at ELB infrastructure level.

 In long run, each log records are highly beneficial for the business instrumentation.

Friday, April 16, 2021

Athena EXPLAIN


 Amazon Athena is an interactive query service that makes it easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.

In any SQL code, EXPLAIN statement displays execution plans chosen by the optimizer for SELECT , UPDATE , INSERT , and DELETE statements. A statement execution plan is the sequence of operations that the database performs to run the statement.

This week, Amazon Athena introduced the support of the execution plan for the submitted queries. When used in the Athena console, the EXPLAIN statement provides a detailed breakdown of a query's execution plan. Users can analyze the execution plan to identify and reduce query complexity and improve run time.

EXPLAIN can also be used to validate SQL syntax prior to execution. When EXPLAIN is used, Athena does not execute the underlying query. This allows analysts to tune their query without waiting for the results to be returned or incurring costs for data scanned.

 Usage reference is at https://docs.aws.amazon.com/athena/latest/ug/athena-explain-statement.html

Saturday, April 10, 2021

Interactive EC2 Serial Console


 

Long pending issue / cause
On early 2010's, there were few users request about a use case where the console output was “Continue to wait; or Press S to skip mounting or M for manual recovery.”

Cause was due to the absence of interactive console feature to discover - "when boot failed, why SSH daemon did not start, errors configuring the firewall or network which blocked all access, broken networking on the instance, or denial-of-service attacks.

Alternative Solutions
There was an alternative solution by the system administrator. With an inaccessible EC2, it is possible to stop the instance, detach the storage, mount the storage on a working instance, and edit or recover the files from there. This is not always possible, though.

If VM uses instance type storage, this cannot be detached. It also requires interruption of service.

If a VM uses ephemeral storage, then the question is why do troubleshoot VM rather than simply deleting it and creating a new one?

When do we need?
Most AWS users never need this feature because SSH access does not often fail, and the range of use cases is relatively narrow.  But, still, it is worth troubleshooting feature.

Generally Available
This month, AWS interactive EC2 Serial Console is generally available. EC2 Serial Console provides a simple and secure way to troubleshoot boot and network connectivity issues by establishing a connection to the serial port of an instance. This access can be used for interactive troubleshooting.

Sunday, April 4, 2021

AWS DevOps monitoring

 

AWS provides a set of flexible developer tools that enable customers to host code, build, test, and deploy applications. Each tool provides customers with separate activity and usage metrics.

With AWS DevOps Monitoring Dashboard solution, you can capture and analyze metrics across these AWS developer tools and view them from a single dashboard. The solution automates the setup of DevOps dashboards in your AWS pipeline environment so you can quickly start measuring mean time to recover, change failure rate, deployment frequency, deployment status, and code change volume.

The solution will begin collecting raw data from the AWS Code Services in your environment. This data is ingested into Amazon S3 and SQL functions query the data to calculate key metrics such as deployment frequency and mean time to recover. You can view the metrics as dashboards in AWS QuickSight, or your preferred visualization tool. You can use the dashboard information to track development velocity as well as other key operational metrics and identify areas for continued improvement.

This week, AWS DevOps monitoring dashboard solution is generally available now.