From 14d0e720d19c80025c61904bac6d7aab4fff4bfa Mon Sep 17 00:00:00 2001 From: Tim Pansino Date: Mon, 27 Oct 2025 16:17:28 -0700 Subject: [PATCH] Add instrumentation for new kinesis method --- newrelic/hooks/external_botocore.py | 3 +++ tests/external_botocore/test_boto3_kinesis.py | 7 +++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/newrelic/hooks/external_botocore.py b/newrelic/hooks/external_botocore.py index d8c18b49db..28bd8ffb13 100644 --- a/newrelic/hooks/external_botocore.py +++ b/newrelic/hooks/external_botocore.py @@ -1451,6 +1451,9 @@ def wrap_serialize_to_request(wrapped, instance, args, kwargs): ("kinesis", "untag_resource"): aws_function_trace( "untag_resource", extract_kinesis, extract_agent_attrs=extract_kinesis_agent_attrs, library="Kinesis" ), + ("kinesis", "update_max_record_size"): aws_function_trace( + "update_max_record_size", extract_kinesis, extract_agent_attrs=extract_kinesis_agent_attrs, library="Kinesis" + ), ("kinesis", "update_shard_count"): aws_function_trace( "update_shard_count", extract_kinesis, extract_agent_attrs=extract_kinesis_agent_attrs, library="Kinesis" ), diff --git a/tests/external_botocore/test_boto3_kinesis.py b/tests/external_botocore/test_boto3_kinesis.py index 9c03fa154a..9c92c669aa 100644 --- a/tests/external_botocore/test_boto3_kinesis.py +++ b/tests/external_botocore/test_boto3_kinesis.py @@ -46,6 +46,8 @@ } } +UNINSTRUMENTED_KINESIS_METHODS = ("generate_presigned_url", "close", "get_waiter", "can_paginate", "get_paginator") + _kinesis_scoped_metrics = [ (f"MessageBroker/Kinesis/Stream/Produce/Named/{TEST_STREAM}", 2), (f"MessageBroker/Kinesis/Stream/Consume/Named/{TEST_STREAM}", 1), @@ -117,10 +119,7 @@ def test_instrumented_kinesis_methods(): region_name=AWS_REGION, ) - ignored_methods = { - ("kinesis", method) - for method in ("generate_presigned_url", "close", "get_waiter", "can_paginate", "get_paginator") - } + ignored_methods = {("kinesis", method) for method in UNINSTRUMENTED_KINESIS_METHODS} client_methods = inspect.getmembers(client, predicate=inspect.ismethod) methods = {("kinesis", name) for (name, method) in client_methods if not name.startswith("_")}