@@ -760,6 +760,36 @@ describe('AwsMetricAttributeGeneratorTest', () => {
760760 mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_KINESIS_STREAM_NAME , 'AWS_KINESIS_STREAM_NAME' ) ;
761761 validateRemoteResourceAttributes ( 'AWS::Kinesis::Stream' , 'AWS_KINESIS_STREAM_NAME' ) ;
762762 mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_KINESIS_STREAM_NAME , undefined ) ;
763+
764+ // Validate behaviour of AWS_SNS_TOPIC_ARN attribute then remove it.
765+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_SNS_TOPIC_ARN , 'arn:aws:sns:us-east-1:123456789012:testTopic' ) ;
766+ validateRemoteResourceAttributes ( 'AWS::SNS::Topic' , 'testTopic' ) ;
767+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_SNS_TOPIC_ARN , undefined ) ;
768+
769+ // Validate behaviour of AWS_SECRETSMANAGER_SECRET_ARN attributes then remove it.
770+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_SECRETSMANAGER_SECRET_ARN , 'arn:aws:secretsmanager:us-east-1:123456789123:secret:testSecret' ) ;
771+ validateRemoteResourceAttributes ( 'AWS::SecretsManager::Secret' , 'testSecret' ) ;
772+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_SECRETSMANAGER_SECRET_ARN , undefined ) ;
773+
774+ // Validate behaviour of AWS_LAMBDA_FUNCTION_NAME, AWS_LAMBDA_FUNCTION_ARN, and AWS_LAMBDA_RESOURCE_MAPPING_ID attributes then remove them.
775+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_LAMBDA_FUNCTION_NAME , 'aws_lambda_function_name' ) ;
776+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_LAMBDA_FUNCTION_ARN , 'arn:aws:lambda:us-east-1:123456789012:function:aws_lambda_function_name' ) ;
777+ validateRemoteResourceAttributes ( 'AWS::Lambda::Function' , 'aws_lambda_function_name' ) ;
778+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_LAMBDA_FUNCTION_NAME , undefined ) ;
779+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_LAMBDA_FUNCTION_ARN , undefined ) ;
780+
781+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_LAMBDA_RESOURCE_MAPPING_ID , 'aws_lambda_resource_mapping_id' ) ;
782+ validateRemoteResourceAttributes ( 'AWS::Lambda::EventSourceMapping' , 'aws_lambda_resource_mapping_id' ) ;
783+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_LAMBDA_RESOURCE_MAPPING_ID , undefined ) ;
784+
785+ // Validate behaviour of AWS_STEPFUNCTIONS_STATEMACHINE_ARN and AWS_STEPFUNCTIONS_ACTIVITY_ARN attributes then remove them.
786+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_STEPFUNCTIONS_STATEMACHINE_ARN , 'arn:aws:states:us-east-1:007003123456789012:stateMachine:testStateMachine' ) ;
787+ validateRemoteResourceAttributes ( 'AWS::StepFunctions::StateMachine' , 'testStateMachine' ) ;
788+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_STEPFUNCTIONS_STATEMACHINE_ARN , undefined ) ;
789+
790+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_STEPFUNCTIONS_ACTIVITY_ARN , 'arn:aws:states:us-east-1:007003123456789012:activity:testActivity' ) ;
791+ validateRemoteResourceAttributes ( 'AWS::StepFunctions::Activity' , 'testActivity' ) ;
792+ mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_STEPFUNCTIONS_ACTIVITY_ARN , undefined ) ;
763793
764794 // Validate behaviour of AWS_TABLE_NAMES attribute with one table name, then remove it.
765795 mockAttribute ( AWS_ATTRIBUTE_KEYS . AWS_DYNAMODB_TABLE_NAMES , [ 'aws_table_name' ] ) ;
@@ -1167,6 +1197,10 @@ describe('AwsMetricAttributeGeneratorTest', () => {
11671197 testAwsSdkServiceNormalization ( 'Kinesis' , 'AWS::Kinesis' ) ;
11681198 testAwsSdkServiceNormalization ( 'S3' , 'AWS::S3' ) ;
11691199 testAwsSdkServiceNormalization ( 'SQS' , 'AWS::SQS' ) ;
1200+ testAwsSdkServiceNormalization ( 'SNS' , 'AWS::SNS' ) ;
1201+ testAwsSdkServiceNormalization ( 'Lambda' , 'AWS::Lambda' ) ;
1202+ testAwsSdkServiceNormalization ( 'SecretsManager' , 'AWS::SecretsManager' ) ;
1203+ testAwsSdkServiceNormalization ( 'StepFunctions' , 'AWS::StepFunctions' ) ;
11701204 testAwsSdkServiceNormalization ( 'Bedrock' , 'AWS::Bedrock' ) ;
11711205 testAwsSdkServiceNormalization ( 'BedrockAgent' , 'AWS::Bedrock' ) ;
11721206 testAwsSdkServiceNormalization ( 'BedrockAgentRuntime' , 'AWS::Bedrock' ) ;
0 commit comments