File tree Expand file tree Collapse file tree 2 files changed +21
-4
lines changed
instana/instrumentation/aws Expand file tree Collapse file tree 2 files changed +21
-4
lines changed Original file line number Diff line number Diff line change @@ -61,15 +61,15 @@ def read_http_query_params(event):
6161 @param event: lambda event dict
6262 @return: String in the form of "a=b&c=d"
6363 """
64- # print("multiValueQueryStringParameters=%s" % event['multiValueQueryStringParameters'])
65- # print("queryStringParameters=%s" % event['queryStringParameters'])
64+ if event is None or type ( event ) is not dict :
65+ return ""
6666
6767 params = []
68- if 'multiValueQueryStringParameters' in event :
68+ if 'multiValueQueryStringParameters' in event and event [ 'multiValueQueryStringParameters' ] is not None :
6969 for key in event ['multiValueQueryStringParameters' ]:
7070 params .append ("%s=%s" % (key , event ['multiValueQueryStringParameters' ][key ]))
7171 return "&" .join (params )
72- elif 'queryStringParameters' in event :
72+ elif 'queryStringParameters' in event and event [ 'queryStringParameters' ] is not None :
7373 for key in event ['queryStringParameters' ]:
7474 params .append ("%s=%s" % (key , event ['queryStringParameters' ][key ]))
7575 return "&" .join (params )
Original file line number Diff line number Diff line change 1313from instana import lambda_handler
1414from instana import get_lambda_handler_or_default
1515from instana .instrumentation .aws .lambda_inst import lambda_handler_with_instana
16+ from instana .instrumentation .aws .triggers import read_http_query_params
1617
1718
1819# Mock Context object
@@ -411,3 +412,19 @@ def test_sqs_trigger_tracing(self):
411412 message = messages [0 ]
412413 self .assertEqual ('arn:aws:sqs:us-west-1:123456789012:MyQueue' , message ['queue' ])
413414
415+ def test_read_query_params (self ):
416+ event = { "queryStringParameters" : {"foo" : "bar" },
417+ "multiValueQueryStringParameters" : { "foo" : ["bar" ] } }
418+ params = read_http_query_params (event )
419+ self .assertEqual ("foo=['bar']" , params )
420+
421+ def test_read_query_params_with_none_data (self ):
422+ event = { "queryStringParameters" : None ,
423+ "multiValueQueryStringParameters" : None }
424+ params = read_http_query_params (event )
425+ self .assertEqual ("" , params )
426+
427+ def test_read_query_params_with_bad_event (self ):
428+ event = None
429+ params = read_http_query_params (event )
430+ self .assertEqual ("" , params )
You can’t perform that action at this time.
0 commit comments