UNPKG

1.23 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.getLoggerPlugin = exports.loggerMiddlewareOptions = exports.loggerMiddleware = void 0;
4const loggerMiddleware = () => (next, context) => async (args) => {
5 const { clientName, commandName, inputFilterSensitiveLog, logger, outputFilterSensitiveLog } = context;
6 const response = await next(args);
7 if (!logger) {
8 return response;
9 }
10 if (typeof logger.info === "function") {
11 const { $metadata, ...outputWithoutMetadata } = response.output;
12 logger.info({
13 clientName,
14 commandName,
15 input: inputFilterSensitiveLog(args.input),
16 output: outputFilterSensitiveLog(outputWithoutMetadata),
17 metadata: $metadata,
18 });
19 }
20 return response;
21};
22exports.loggerMiddleware = loggerMiddleware;
23exports.loggerMiddlewareOptions = {
24 name: "loggerMiddleware",
25 tags: ["LOGGER"],
26 step: "initialize",
27 override: true,
28};
29const getLoggerPlugin = (options) => ({
30 applyToStack: (clientStack) => {
31 clientStack.add((0, exports.loggerMiddleware)(), exports.loggerMiddlewareOptions);
32 },
33});
34exports.getLoggerPlugin = getLoggerPlugin;