@@ -550,6 +550,10 @@ pub fn enrich_span_with_google_cloud_function_metadata(
550550}
551551
552552pub fn enrich_span_with_azure_function_metadata ( span : & mut pb:: Span ) {
553+ if span. name == "azure.apim" {
554+ return ;
555+ }
556+
553557 if let Some ( aas_metadata) = & * azure_app_services:: AAS_METADATA_FUNCTION {
554558 let aas_tags = [
555559 ( "aas.resource.id" , aas_metadata. get_resource_id ( ) ) ,
@@ -1248,4 +1252,52 @@ mod tests {
12481252 "Null value should be skipped, but key was present"
12491253 ) ;
12501254 }
1255+
1256+ #[ test]
1257+ fn test_enrich_span_with_azure_function_metadata_adds_tags_for_non_apim ( ) {
1258+ let mut span = create_test_span ( 1234 , 12342 , 12341 , 1 , false ) ;
1259+ span. name = "azure.function" . to_string ( ) ;
1260+
1261+ enrich_span_with_azure_function_metadata ( & mut span) ;
1262+
1263+ // If AAS_METADATA_FUNCTION is available, verify aas.* tags were added
1264+ // If not available (most test environments), this is a no-op
1265+ // This test primarily ensures the function doesn't skip non-apim spans
1266+ if azure_app_services:: AAS_METADATA_FUNCTION . is_some ( ) {
1267+ assert ! ( span. meta. contains_key( "aas.resource.id" ) ) ;
1268+ assert ! ( span. meta. contains_key( "aas.environment.instance_id" ) ) ;
1269+ assert ! ( span. meta. contains_key( "aas.environment.instance_name" ) ) ;
1270+ assert ! ( span. meta. contains_key( "aas.subscription.id" ) ) ;
1271+ assert ! ( span. meta. contains_key( "aas.environment.os" ) ) ;
1272+ assert ! ( span. meta. contains_key( "aas.environment.runtime" ) ) ;
1273+ assert ! ( span. meta. contains_key( "aas.environment.runtime_version" ) ) ;
1274+ assert ! ( span. meta. contains_key( "aas.environment.function_runtime" ) ) ;
1275+ assert ! ( span. meta. contains_key( "aas.resource.group" ) ) ;
1276+ assert ! ( span. meta. contains_key( "aas.site.name" ) ) ;
1277+ assert ! ( span. meta. contains_key( "aas.site.kind" ) ) ;
1278+ assert ! ( span. meta. contains_key( "aas.site.type" ) ) ;
1279+ }
1280+ }
1281+
1282+ #[ test]
1283+ fn test_enrich_span_with_azure_function_metadata_skips_azure_apim ( ) {
1284+ let mut span = create_test_span ( 1234 , 12342 , 12341 , 1 , false ) ;
1285+ span. name = "azure.apim" . to_string ( ) ;
1286+
1287+ enrich_span_with_azure_function_metadata ( & mut span) ;
1288+
1289+ // Verify no aas.* tags were added
1290+ assert ! ( !span. meta. contains_key( "aas.resource.id" ) ) ;
1291+ assert ! ( !span. meta. contains_key( "aas.environment.instance_id" ) ) ;
1292+ assert ! ( !span. meta. contains_key( "aas.environment.instance_name" ) ) ;
1293+ assert ! ( !span. meta. contains_key( "aas.subscription.id" ) ) ;
1294+ assert ! ( !span. meta. contains_key( "aas.environment.os" ) ) ;
1295+ assert ! ( !span. meta. contains_key( "aas.environment.runtime" ) ) ;
1296+ assert ! ( !span. meta. contains_key( "aas.environment.runtime_version" ) ) ;
1297+ assert ! ( !span. meta. contains_key( "aas.environment.function_runtime" ) ) ;
1298+ assert ! ( !span. meta. contains_key( "aas.resource.group" ) ) ;
1299+ assert ! ( !span. meta. contains_key( "aas.site.name" ) ) ;
1300+ assert ! ( !span. meta. contains_key( "aas.site.kind" ) ) ;
1301+ assert ! ( !span. meta. contains_key( "aas.site.type" ) ) ;
1302+ }
12511303}
0 commit comments