Description
Track and visualize the creation and deletion of objects over time in a Foundry instance.
Resources
DynamoDB
fndy_object_type_history
Used to store current object counts for each object type
Keys
Partition key: typeId
Sort key: epochTime
Attributes
objectCount
Current count of all objects for that object type
Kinesis
fndy-record-object-type-history
Used to process trigger events from fndy_object_info table in order
Lambda
fndy-get-object-type-history-secure
Used by Foundry front-end to sample data for visualization in /objectTypeVisualizer
fndy-trigger-update-object-type-history
Configured as a trigger on fndy_object_info DynamoDB table
Sends data to Kinesis stream when item is created/deleted in table
fndy-init-object-type-history
Runs once on CloudFormation installation
Analyzes fndy_object_info table to create baseline entries in fndy_object_type_history table
fndy-trigger-create-initial-object-type-history-entry
Configured as a trigger on fndy_object_type table
Creates entry in fndy_object_type_history when new object type is created
fndy-kinesis-update-object-type-history
Configured as a trigger on fndy-record-object-type-history Kinesis stream
Processes data from Kinesis stream, and enters it in the fndy_object_type_history DynamoDB table
Installation
Download CloudFormation template from here: https://drive.google.com/file/d/1wR00CQ-PPnaI2wVkVMdlpSkHkaUVEagv/view?usp=sharing
Upload CloudFormation in desired AWS account
Fill in CloudFormation parameters
Environment
Environment used for installation
Can be either dev, qa, or prod
LambdaRoleArn
ARN of Foundry Lambda role
InfoTableStreamArn
ARN of latest stream on fndy_object_info table
ObjectTypeTableStreamArn
ARN of latest stream on fndy_object_type table
FoundryApiId
API ID of FoundryCustomerSideV2Dev
DeviceTypeApiId
API ID of /device-type resource in FoundryCustomerSideV2Dev
Post Installation
Verify that fndy_object_type_history table exists with entries for each Foundry device type
Navigate to /objectTypeVisualizer on Foundry front-end
Select several device types and a time range
Lines should appear, showing history object object types