@@ -5,8 +5,6 @@ use aws_lambda_events::{
5
5
} ;
6
6
use lambda_runtime:: { run, service_fn, Error , LambdaEvent } ;
7
7
8
- static UNDEFINED : & str = "undefined" ;
9
-
10
8
async fn function_handler ( event : LambdaEvent < KinesisEvent > ) -> Result < KinesisEventResponse , Error > {
11
9
let mut response = KinesisEventResponse {
12
10
batch_item_failures : vec ! [ ] ,
@@ -20,7 +18,7 @@ async fn function_handler(event: LambdaEvent<KinesisEvent>) -> Result<KinesisEve
20
18
for record in & event. payload . records {
21
19
tracing:: info!(
22
20
"EventId: {}" ,
23
- record. event_id. as_deref( ) . unwrap_or ( UNDEFINED )
21
+ record. event_id. as_deref( ) . unwrap_or_default ( )
24
22
) ;
25
23
26
24
let record_processing_result = process_record ( record) ;
@@ -46,13 +44,12 @@ async fn function_handler(event: LambdaEvent<KinesisEvent>) -> Result<KinesisEve
46
44
fn process_record ( record : & KinesisEventRecord ) -> Result < ( ) , Error > {
47
45
let record_data = std:: str:: from_utf8 ( record. kinesis . data . as_slice ( ) ) ;
48
46
49
- if record_data. is_err ( ) {
50
- let err = record_data. err ( ) . unwrap ( ) ;
47
+ if let Some ( err) = record_data. err ( ) {
51
48
tracing:: error!( "Error: {}" , err) ;
52
49
return Err ( Error :: from ( err) ) ;
53
50
}
54
51
55
- let record_data = record_data. unwrap ( ) ;
52
+ let record_data = record_data. unwrap_or_default ( ) ;
56
53
57
54
// do something interesting with the data
58
55
tracing:: info!( "Data: {}" , record_data) ;
@@ -71,4 +68,4 @@ async fn main() -> Result<(), Error> {
71
68
. init ( ) ;
72
69
73
70
run ( service_fn ( function_handler) ) . await
74
- }
71
+ }
0 commit comments