🤖 Merge PR #48268 [aws-lambda] Add Amazon MSK event by @SachinShekhar

This commit is contained in:
Sachin Shekhar 2020-09-28 17:20:57 +05:30 committed by GitHub
parent b45c0993da
commit 782b693e71
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 43 additions and 1 deletions

View File

@ -78,5 +78,6 @@ export * from "./trigger/s3-batch";
export * from "./trigger/ses";
export * from "./trigger/sns";
export * from "./trigger/sqs";
export * from './trigger/msk';
export as namespace AWSLambda;

View File

@ -0,0 +1,19 @@
import { MSKHandler, MSKEvent, MSKRecord } from 'aws-lambda';
const handler: MSKHandler = (_event, context, callback) => {
const event: MSKEvent = _event;
str = event.eventSource;
str = event.eventSourceArn;
const record: MSKRecord = event.records[str][num];
str = record.topic;
num = record.partition;
num = record.offset;
num = record.timestamp;
str = record.timestampType;
str = record.key;
str = record.value;
callback();
callback(new Error());
};

21
types/aws-lambda/trigger/msk.d.ts vendored Normal file
View File

@ -0,0 +1,21 @@
import { Handler } from '../handler';
export type MSKHandler = Handler<MSKEvent, void>;
export interface MSKRecord {
topic: string;
partition: number;
offset: number;
timestamp: number;
timestampType: 'CREATE_TIME' | 'LOG_APPEND_TIME';
key: string;
value: string;
}
export interface MSKEvent {
eventSource: 'aws:kafka';
eventSourceArn: string;
records: {
[topic: string]: MSKRecord[];
};
}

View File

@ -35,6 +35,7 @@
"test/s3-tests.ts",
"test/ses-tests.ts",
"test/sns-tests.ts",
"test/sqs-tests.ts"
"test/sqs-tests.ts",
"test/msk-tests.ts"
]
}