88
99from ...log import logger
1010
11+ STR_LAMBDA_TRIGGER = 'lambda.trigger'
12+
1113
1214def get_context (tracer , event ):
1315 # TODO: Search for more types of trigger context
@@ -83,7 +85,7 @@ def read_http_query_params(event):
8385 return "&" .join (params )
8486 else :
8587 return ""
86- except :
88+ except Exception :
8789 logger .debug ("read_http_query_params: " , exc_info = True )
8890 return ""
8991
@@ -106,7 +108,7 @@ def capture_extra_headers(event, span, extra_headers):
106108 for key in event_headers :
107109 if key .lower () == custom_header .lower ():
108110 span .set_tag ("http.%s" % custom_header , event_headers [key ])
109- except :
111+ except Exception :
110112 logger .debug ("capture_extra_headers: " , exc_info = True )
111113
112114
@@ -131,7 +133,8 @@ def enrich_lambda_span(agent, span, event, context):
131133 return
132134
133135 if is_api_gateway_proxy_trigger (event ):
134- span .set_tag ('lambda.trigger' , 'aws:api.gateway' )
136+ logger .debug ("Detected as API Gateway Proxy Trigger" )
137+ span .set_tag (STR_LAMBDA_TRIGGER , 'aws:api.gateway' )
135138 span .set_tag ('http.method' , event ["httpMethod" ])
136139 span .set_tag ('http.url' , event ["path" ])
137140 span .set_tag ('http.path_tpl' , event ["resource" ])
@@ -141,7 +144,8 @@ def enrich_lambda_span(agent, span, event, context):
141144 capture_extra_headers (event , span , agent .options .extra_http_headers )
142145
143146 elif is_application_load_balancer_trigger (event ):
144- span .set_tag ('lambda.trigger' , 'aws:application.load.balancer' )
147+ logger .debug ("Detected as Application Load Balancer Trigger" )
148+ span .set_tag (STR_LAMBDA_TRIGGER , 'aws:application.load.balancer' )
145149 span .set_tag ('http.method' , event ["httpMethod" ])
146150 span .set_tag ('http.url' , event ["path" ])
147151 span .set_tag ('http.params' , read_http_query_params (event ))
@@ -150,7 +154,8 @@ def enrich_lambda_span(agent, span, event, context):
150154 capture_extra_headers (event , span , agent .options .extra_http_headers )
151155
152156 elif is_cloudwatch_trigger (event ):
153- span .set_tag ('lambda.trigger' , 'aws:cloudwatch.events' )
157+ logger .debug ("Detected as Cloudwatch Trigger" )
158+ span .set_tag (STR_LAMBDA_TRIGGER , 'aws:cloudwatch.events' )
154159 span .set_tag ('data.lambda.cw.events.id' , event ['id' ])
155160
156161 resources = event ['resources' ]
@@ -169,7 +174,8 @@ def enrich_lambda_span(agent, span, event, context):
169174 span .set_tag ('lambda.cw.events.resources' , report )
170175
171176 elif is_cloudwatch_logs_trigger (event ):
172- span .set_tag ('lambda.trigger' , 'aws:cloudwatch.logs' )
177+ logger .debug ("Detected as Cloudwatch Logs Trigger" )
178+ span .set_tag (STR_LAMBDA_TRIGGER , 'aws:cloudwatch.logs' )
173179
174180 try :
175181 if 'awslogs' in event and 'data' in event ['awslogs' ]:
@@ -196,7 +202,8 @@ def enrich_lambda_span(agent, span, event, context):
196202 except Exception as e :
197203 span .set_tag ('lambda.cw.logs.decodingError' , repr (e ))
198204 elif is_s3_trigger (event ):
199- span .set_tag ('lambda.trigger' , 'aws:s3' )
205+ logger .debug ("Detected as S3 Trigger" )
206+ span .set_tag (STR_LAMBDA_TRIGGER , 'aws:s3' )
200207
201208 if "Records" in event :
202209 events = []
@@ -218,12 +225,17 @@ def enrich_lambda_span(agent, span, event, context):
218225 span .set_tag ('lambda.s3.events' , events )
219226
220227 elif is_sqs_trigger (event ):
221- span .set_tag ('lambda.trigger' , 'aws:sqs' )
228+ logger .debug ("Detected as SQS Trigger" )
229+ span .set_tag (STR_LAMBDA_TRIGGER , 'aws:sqs' )
222230
223231 if "Records" in event :
224232 events = []
225233 for item in event ["Records" ][:3 ]:
226234 events .append ({'queue' : item ['eventSourceARN' ]})
227235 span .set_tag ('lambda.sqs.messages' , events )
228- except :
236+ else :
237+ logger .debug ("Detected as Unknown Trigger: %s" % event )
238+ span .set_tag (STR_LAMBDA_TRIGGER , 'unknown' )
239+
240+ except Exception :
229241 logger .debug ("enrich_lambda_span: " , exc_info = True )
0 commit comments