Input Features to Make Your Life Easier
Start course
3h 54m

This course provides detail on the AWS Management & Governance services relevant to the AWS Certified Developer - Associate exam.

Want more? Try a lab playground or do a Lab Challenge!

Learning Objectives

  • Learn how AWS AppConfig can reduce errors in configuration changes and prevent application downtime
  • Understand how the AWS Cloud Development Kit (CDK) can be used to model and provision application resources using common programming languages
  • Get a high-level understanding of Amazon CloudWatch
  • Learn about the features and use cases of the service
  • Create your own CloudWatch dashboard to monitor the items that are important to you
  • Understand how CloudWatch dashboards can be shared across accounts
  • Understand the cost structure of CloudWatch dashboards and the limitations of the service
  • Review how monitored metrics go into an ALARM state
  • Learn about the challenges of creating CloudWatch Alarms and the benefits of using machine learning in alarm management
  • Know how to create a CloudWatch Alarm using Anomaly Detection
  • Learn what types of metrics are suitable for use with Anomaly Detection
  • Create your own CloudWatch log subscription
  • Learn how AWS CloudTrail enables auditing and governance of your AWS account
  • Understand how Amazon CloudWatch Logs enables you to monitor and store your system, application, and custom log files
  • Explain what AWS CloudFormation is and what it’s used for
  • Determine the benefits of AWS CloudFormation
  • Understand what each of the core components are and what they are used for
  • Create a CloudFormation Stack using an existing AWS template
  • Learn what VPC flow logs are and what they are used for
  • Determine options for operating programmatically with AWS, including the AWS CLI, APIs, and SDKs
  • Learn about the capabilities of AWS Systems Manager for managing applications and infrastructure
  • Understand how AWS Secrets Manager can be used to securely encrypt application secrets

If you’re newer to AWS, the one downside to the CLI Is that you have to get used to the syntax. You may find, at first, the console is much easier to use, because it prompts you visually, with menus, lists, and wizards.

However, the CLI has a few features to make the transition from the console a bit easier. One of these features is called CLI auto prompt. This will help prompt you to finish commands, so you don’t have to worry about getting the exact proper syntax correct as you’re typing your commands. 

First, you must enable the feature. You can do this by using environment variables or changing the config file, but I’m going to do this by attaching the string –cli-auto-prompt to a command. 

I’ll use the aws dynamodb create-table command, and then specify the string –cli-auto-prompt. 

From here, I can view the list of parameters for this operation.  I can use my arrow keys, and scroll down to the option I’m looking for, or I can start typing a particular parameter. For example, I’ll start tying table- and then it provides me a list of options to choose from. 

So, you can see that it guides you through choosing the correct options and auto-fills the syntax for you. 

The second feature that makes inputs easier is wizards. Often in the console, you’ll have wizards that make the setup of services like dynamoDB and Lambda a lot easier. Currently, the CLI has only a few of these wizards available for services like Lambda, DynamoDB, EventBridge, and IAM

I’ll show you what this looks like using the IAM example, using the command aws iam wizard new-role. I’ll press enter, and it gives me a graphic interface to create my role. Then I can begin filling out the details of my new role using this GUI-type interface. 

The third and final input feature is the CLI skeleton feature. This is helpful when you potentially have a lot of parameters you need to set for a command. Instead of typing out all of the parameters in the CLI command, you can save this skeleton to a file, and modify the parameters in a file instead. 

So for example, I’ll type in the command aws dynamodb create-table –generate-cli-skeleton, and then save that response into a file called input-skeleton.json. 

From there, you can vim into the input-skeleton.json file, and then see all of the empty parameters you can set for the table. So for example, I can edit this file directly and edit my table name to be cars. I can also delete any information that isn’t necessary, such as the secondary indexes. And then you can save this file. 

I have a completed file already, called input.json that creates a table called cars. And I’ll use this file instead to execute the creation of my table. To do this, I can use the command aws dynamodb create-table –cli-input-json and then the file name file://input.json to create a new table. 

All right, and it looks like my table was successfully created. To verify, I can type in the command aws dynamodb list-tables, and I can see the cars table is there. I hope some of these make your life a little easier - that's all for this one, see you next time. 

About the Author
Learning Paths

Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.

To date, Stuart has created 150+ courses relating to Cloud reaching over 180,000 students, mostly within the AWS category and with a heavy focus on security and compliance.

Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.

He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.

In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.

Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.