Resources created from the template in AWS IoT SiteWise
When you create a stack from the template, AWS CloudFormation creates the following resources. Most resources' names include a prefix that you can customize when you create the stack.
Resource name parameters
-
BucketName
– The name of the S3 bucket created from this template that receives asset data. -
GlobalResourcePrefix
– A prefix for names of global resources created from this template. Defaults tositewise-export-to-s3
. -
LocalResourcePrefix
– A prefix for names of resources created from this template in the current Region. Defaults tositewise_export_to_s3
.
Resource | Description | Name |
---|---|---|
S3 bucket for processed data | This bucket contains two folders. One folder receives the flattened, formatted data from the Firehose delivery stream, and the other folder receives asset metadata. | ${BucketName} |
AWS Glue database | This database contains the AWS Glue table that this stack creates. | ${LocalResourcePrefix}_firehose_glue_database |
AWS Glue table | The Firehose delivery stream uses this table to format data to Parquet format. | ${LocalResourcePrefix}_firehose_glue_table |
AWS Lambda function that transforms data | This function flattens the array of values in property value notification messages sent from AWS IoT SiteWise. | ${LocalResourcePrefix}_lambda_transform_function |
IAM role for the transform Lambda function | This role allows Lambda to store runtime logs for the transform function. | ${GlobalResourcePrefix}-lambda-transform-role |
IAM policy for the transform Lambda function role | This policy allows Lambda to store execution logs for the transform function. | ${GlobalResourcePrefix}-lambda-transform-policy |
CloudWatch Logs log group for the transform function | This log group contains logs for the transform function. | /aws/lambda/${LocalResourcePrefix}_lambda_transform_function |
Lambda function that collects asset metadata | This function retrieves details about assets in AWS IoT SiteWise and stores the details in an Amazon S3 bucket that this stack creates. | ${LocalResourcePrefix}_lambda_metadata_function |
Lambda layer for the metadata function | This layer provides an AWS SDK that contains AWS IoT SiteWise operations that the metadata function uses. | ${LocalResourcePrefix}_lambda_metadata_layer |
IAM role for the metadata Lambda function | This role allows Lambda to retrieve details about assets in AWS IoT SiteWise. | ${GlobalResourcePrefix}-lambda-metadata-role |
IAM policy for the metadata Lambda function role | This policy allows Lambda to retrieve details about assets in AWS IoT SiteWise. | ${GlobalResourcePrefix}-lambda-metadata-policy |
EventBridge scheduled event for the metadata Lambda function | This scheduled event runs the metadata Lambda every 6 hours to update the asset metadata bucket. | ${LocalResourcePrefix}-metadata-event |
CloudWatch Logs log group for the metadata function | This log group contains logs for the metadata function. | /aws/lambda/${LocalResourcePrefix}_lambda_metadata_function |
AWS IoT rule | This rule queries property value notification messages and sends asset data to an Amazon Data Firehose delivery stream. | ${LocalResourcePrefix}_iot_topic_rule |
IAM role for the AWS IoT rule | This role allows AWS IoT to send data to the Firehose delivery stream. | ${GlobalResourcePrefix}-core-firehose-role |
IAM policy for the AWS IoT rule role | This policy allows AWS IoT to send data to the Firehose delivery stream. | ${GlobalResourcePrefix}-core-firehose-policy |
Firehose delivery stream | This delivery stream consumes data from the AWS IoT rule, flattens the data with a Lambda function, and delivers the data to Amazon S3. | ${LocalResourcePrefix}_firehose_delivery_stream |
IAM role for the delivery stream | This role allows Firehose to perform operations on the S3 bucket, AWS Glue table, Lambda functions, and CloudWatch Logs log group. | ${GlobalResourcePrefix}-firehose-delivery-role |
CloudWatch Logs log group for the delivery stream | This log group contains a log stream, S3 Delivery , that receives
logs about the Firehose delivery stream. |
/aws/kinesisfirehose/${LocalResourcePrefix}_firehose_delivery_stream |