serverless-plugin-datadog 5.1.1 → 5.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. package/dist/env.d.ts +17 -0
  2. package/dist/env.d.ts.map +1 -0
  3. package/dist/env.js +63 -0
  4. package/dist/env.js.map +1 -0
  5. package/dist/forwarder.d.ts +14 -0
  6. package/dist/forwarder.d.ts.map +1 -0
  7. package/dist/forwarder.js +87 -0
  8. package/dist/forwarder.js.map +1 -0
  9. package/dist/index.d.ts +10 -0
  10. package/dist/index.d.ts.map +1 -0
  11. package/dist/index.js +161 -0
  12. package/dist/index.js.map +1 -0
  13. package/dist/layer.d.ts +26 -0
  14. package/dist/layer.d.ts.map +1 -0
  15. package/dist/layer.js +65 -0
  16. package/dist/layer.js.map +1 -0
  17. package/dist/layers.json +156 -0
  18. package/dist/package.json +3 -3
  19. package/dist/src/env.d.ts +1 -0
  20. package/dist/src/env.d.ts.map +1 -1
  21. package/dist/src/env.js +1 -0
  22. package/dist/src/env.js.map +1 -1
  23. package/dist/src/index.js +2 -2
  24. package/dist/src/index.js.map +1 -1
  25. package/dist/src/layers-gov.json +4 -4
  26. package/dist/src/layers.json +42 -42
  27. package/dist/src/output.d.ts +2 -2
  28. package/dist/src/output.d.ts.map +1 -1
  29. package/dist/src/output.js +4 -4
  30. package/dist/src/output.js.map +1 -1
  31. package/dist/templates/node-es6-template.d.ts +2 -0
  32. package/dist/templates/node-es6-template.d.ts.map +1 -0
  33. package/dist/templates/node-es6-template.js +25 -0
  34. package/dist/templates/node-es6-template.js.map +1 -0
  35. package/dist/templates/node-js-template.d.ts +2 -0
  36. package/dist/templates/node-js-template.d.ts.map +1 -0
  37. package/dist/templates/node-js-template.js +24 -0
  38. package/dist/templates/node-js-template.js.map +1 -0
  39. package/dist/templates/node-ts-template.d.ts +2 -0
  40. package/dist/templates/node-ts-template.d.ts.map +1 -0
  41. package/dist/templates/node-ts-template.js +26 -0
  42. package/dist/templates/node-ts-template.js.map +1 -0
  43. package/dist/templates/python-template.d.ts +2 -0
  44. package/dist/templates/python-template.d.ts.map +1 -0
  45. package/dist/templates/python-template.js +25 -0
  46. package/dist/templates/python-template.js.map +1 -0
  47. package/dist/tracing.d.ts +9 -0
  48. package/dist/tracing.d.ts.map +1 -0
  49. package/dist/tracing.js +36 -0
  50. package/dist/tracing.js.map +1 -0
  51. package/dist/util.d.ts +9 -0
  52. package/dist/util.d.ts.map +1 -0
  53. package/dist/util.js +72 -0
  54. package/dist/util.js.map +1 -0
  55. package/dist/wrapper.d.ts +11 -0
  56. package/dist/wrapper.d.ts.map +1 -0
  57. package/dist/wrapper.js +57 -0
  58. package/dist/wrapper.js.map +1 -0
  59. package/dist/yarn.lock +3703 -0
  60. package/package.json +3 -3
@@ -18,7 +18,7 @@ const outputPrefix = "DatadogMonitor";
18
18
  * Builds the CloudFormation Outputs containing the alphanumeric key, description,
19
19
  * and value (URL) to the function in Datadog
20
20
  */
21
- function addOutputLinks(serverless, site, handlers) {
21
+ function addOutputLinks(serverless, site, subdomain, handlers) {
22
22
  var _a;
23
23
  return __awaiter(this, void 0, void 0, function* () {
24
24
  const awsAccount = yield serverless.getProvider("aws").getAccountId();
@@ -32,13 +32,13 @@ function addOutputLinks(serverless, site, handlers) {
32
32
  const key = `${outputPrefix}${name}`.replace(/[^a-z0-9]/gi, "");
33
33
  outputs[key] = {
34
34
  Description: `See ${name} in Datadog`,
35
- Value: `https://app.${site}/functions/${functionName}:${region}:${awsAccount}:aws?source=sls-plugin`,
35
+ Value: `https://${subdomain}.${site}/functions/${functionName}:${region}:${awsAccount}:aws?source=sls-plugin`,
36
36
  };
37
37
  });
38
38
  });
39
39
  }
40
40
  exports.addOutputLinks = addOutputLinks;
41
- function printOutputs(serverless, site) {
41
+ function printOutputs(serverless, site, subdomain) {
42
42
  return __awaiter(this, void 0, void 0, function* () {
43
43
  const stackName = serverless.getProvider("aws").naming.getStackName();
44
44
  const service = serverless.service.getServiceName();
@@ -61,7 +61,7 @@ function printOutputs(serverless, site) {
61
61
  }
62
62
  }
63
63
  logHeader("View Serverless Monitors", true);
64
- logMessage(`https://app.${site}/monitors/manage?q=tag%3A%28%22env%3A${env}%22AND%22service%3A${service}%22%29`);
64
+ logMessage(`https://${subdomain}.${site}/monitors/manage?q=tag%3A%28%22env%3A${env}%22AND%22service%3A${service}%22%29`);
65
65
  });
66
66
  }
67
67
  exports.printOutputs = printOutputs;
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function es6Template(filePath: string, methods: string[]): string;
2
+ //# sourceMappingURL=node-es6-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-es6-template.d.ts","sourceRoot":"","sources":["../../src/templates/node-es6-template.ts"],"names":[],"mappings":"AAQA,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAO9D"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /*
3
+ * Unless explicitly stated otherwise all files in this repository are licensed
4
+ * under the Apache License Version 2.0.
5
+ *
6
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
7
+ * Copyright 2019 Datadog, Inc.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ function es6Template(filePath, methods) {
11
+ const methodsString = methodsTemplate(methods);
12
+ return (`/* eslint-disable */
13
+ const { datadog } = require("datadog-lambda-js");
14
+ import * as original from "../${filePath}";` + methodsString);
15
+ }
16
+ exports.es6Template = es6Template;
17
+ function methodsTemplate(methods) {
18
+ let data = "";
19
+ for (const method of methods) {
20
+ data += "\n";
21
+ data += ` export const ${method} = datadog(original.${method});`;
22
+ }
23
+ return data;
24
+ }
25
+ //# sourceMappingURL=node-es6-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-es6-template.js","sourceRoot":"","sources":["../../src/templates/node-es6-template.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,SAAgB,WAAW,CAAC,QAAgB,EAAE,OAAiB;IAC7D,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAC/C,OAAO,CACL;;kCAE8B,QAAQ,IAAI,GAAG,aAAa,CAC3D,CAAC;AACJ,CAAC;AAPD,kCAOC;AAED,SAAS,eAAe,CAAC,OAAiB;IACxC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,IAAI,kBAAkB,MAAM,uBAAuB,MAAM,IAAI,CAAC;KACnE;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function nodeTemplate(filePath: string, methods: string[]): string;
2
+ //# sourceMappingURL=node-js-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-js-template.d.ts","sourceRoot":"","sources":["../../src/templates/node-js-template.ts"],"names":[],"mappings":"AAQA,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAO/D"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ /*
3
+ * Unless explicitly stated otherwise all files in this repository are licensed
4
+ * under the Apache License Version 2.0.
5
+ *
6
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
7
+ * Copyright 2019 Datadog, Inc.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ function nodeTemplate(filePath, methods) {
11
+ const methodsString = methodsTemplate(methods);
12
+ return (`const { datadog } = require("datadog-lambda-js");
13
+ const original = require("../${filePath}");` + methodsString);
14
+ }
15
+ exports.nodeTemplate = nodeTemplate;
16
+ function methodsTemplate(methods) {
17
+ let data = "";
18
+ for (const method of methods) {
19
+ data += "\n";
20
+ data += `module.exports.${method} = datadog(original.${method});`;
21
+ }
22
+ return data;
23
+ }
24
+ //# sourceMappingURL=node-js-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-js-template.js","sourceRoot":"","sources":["../../src/templates/node-js-template.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,SAAgB,YAAY,CAAC,QAAgB,EAAE,OAAiB;IAC9D,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAE/C,OAAO,CACL;+BAC2B,QAAQ,KAAK,GAAG,aAAa,CACzD,CAAC;AACJ,CAAC;AAPD,oCAOC;AAED,SAAS,eAAe,CAAC,OAAiB;IACxC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,IAAI,kBAAkB,MAAM,uBAAuB,MAAM,IAAI,CAAC;KACnE;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function typescriptTemplate(filePath: string, methods: string[]): string;
2
+ //# sourceMappingURL=node-ts-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-ts-template.d.ts","sourceRoot":"","sources":["../../src/templates/node-ts-template.ts"],"names":[],"mappings":"AAQA,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UASrE"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ /*
3
+ * Unless explicitly stated otherwise all files in this repository are licensed
4
+ * under the Apache License Version 2.0.
5
+ *
6
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
7
+ * Copyright 2019 Datadog, Inc.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ function typescriptTemplate(filePath, methods) {
11
+ const methodsString = methodsTemplate(methods);
12
+ return (`/* tslint:disable */
13
+ /* eslint-disable */
14
+ const { datadog } = require("datadog-lambda-js") as any;
15
+ import * as original from "../${filePath}";` + methodsString);
16
+ }
17
+ exports.typescriptTemplate = typescriptTemplate;
18
+ function methodsTemplate(methods) {
19
+ let data = "";
20
+ for (const method of methods) {
21
+ data += "\n";
22
+ data += `export const ${method} = datadog(original.${method});`;
23
+ }
24
+ return data;
25
+ }
26
+ //# sourceMappingURL=node-ts-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-ts-template.js","sourceRoot":"","sources":["../../src/templates/node-ts-template.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,SAAgB,kBAAkB,CAAC,QAAgB,EAAE,OAAiB;IACpE,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAE/C,OAAO,CACL;;;gCAG4B,QAAQ,IAAI,GAAG,aAAa,CACzD,CAAC;AACJ,CAAC;AATD,gDASC;AAED,SAAS,eAAe,CAAC,OAAiB;IACxC,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,IAAI,gBAAgB,MAAM,uBAAuB,MAAM,IAAI,CAAC;KACjE;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function pythonTemplate(filePath: string, methods: string[]): string;
2
+ //# sourceMappingURL=python-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-template.d.ts","sourceRoot":"","sources":["../../src/templates/python-template.ts"],"names":[],"mappings":"AAQA,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAKjE"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /*
3
+ * Unless explicitly stated otherwise all files in this repository are licensed
4
+ * under the Apache License Version 2.0.
5
+ *
6
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
7
+ * Copyright 2019 Datadog, Inc.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ function pythonTemplate(filePath, methods) {
11
+ const newPath = filePath.split(/\/|\\/).join(".");
12
+ const methodsString = methodsTemplate(newPath, methods);
13
+ return `from datadog_lambda.wrapper import datadog_lambda_wrapper` + methodsString;
14
+ }
15
+ exports.pythonTemplate = pythonTemplate;
16
+ function methodsTemplate(newPath, methods) {
17
+ let data = "";
18
+ for (const method of methods) {
19
+ data += "\n";
20
+ data += `from ${newPath} import ${method} as ${method}_impl
21
+ ${method} = datadog_lambda_wrapper(${method}_impl)`;
22
+ }
23
+ return data;
24
+ }
25
+ //# sourceMappingURL=python-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"python-template.js","sourceRoot":"","sources":["../../src/templates/python-template.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,SAAgB,cAAc,CAAC,QAAgB,EAAE,OAAiB;IAChE,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAExD,OAAO,2DAA2D,GAAG,aAAa,CAAC;AACrF,CAAC;AALD,wCAKC;AAED,SAAS,eAAe,CAAC,OAAe,EAAE,OAAiB;IACzD,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,IAAI,IAAI,CAAC;QACb,IAAI,IAAI,QAAQ,OAAO,WAAW,MAAM,OAAO,MAAM;EACvD,MAAM,6BAA6B,MAAM,QAAQ,CAAC;KACjD;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,9 @@
1
+ import Service from "serverless/classes/Service";
2
+ export declare enum TracingMode {
3
+ XRAY = 0,
4
+ DD_TRACE = 1,
5
+ HYBRID = 2,
6
+ NONE = 3
7
+ }
8
+ export declare function enableTracing(service: Service, tracingMode: TracingMode): void;
9
+ //# sourceMappingURL=tracing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing.d.ts","sourceRoot":"","sources":["../src/tracing.ts"],"names":[],"mappings":"AAQA,OAAO,OAAO,MAAM,4BAA4B,CAAC;AAKjD,oBAAY,WAAW;IACrB,IAAI,IAAA;IACJ,QAAQ,IAAA;IACR,MAAM,IAAA;IACN,IAAI,IAAA;CACL;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,QAcvE"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ /*
3
+ * Unless explicitly stated otherwise all files in this repository are licensed
4
+ * under the Apache License Version 2.0.
5
+ *
6
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
7
+ * Copyright 2019 Datadog, Inc.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ const ddTraceEnabledEnvVar = "DD_TRACE_ENABLED";
11
+ const ddMergeXrayTracesEnvVar = "DD_MERGE_XRAY_TRACES";
12
+ var TracingMode;
13
+ (function (TracingMode) {
14
+ TracingMode[TracingMode["XRAY"] = 0] = "XRAY";
15
+ TracingMode[TracingMode["DD_TRACE"] = 1] = "DD_TRACE";
16
+ TracingMode[TracingMode["HYBRID"] = 2] = "HYBRID";
17
+ TracingMode[TracingMode["NONE"] = 3] = "NONE";
18
+ })(TracingMode = exports.TracingMode || (exports.TracingMode = {}));
19
+ function enableTracing(service, tracingMode) {
20
+ var _a;
21
+ const provider = service.provider;
22
+ if (tracingMode === TracingMode.XRAY || tracingMode === TracingMode.HYBRID) {
23
+ provider.tracing = {
24
+ apiGateway: true,
25
+ lambda: true,
26
+ };
27
+ }
28
+ if (tracingMode === TracingMode.HYBRID || tracingMode === TracingMode.DD_TRACE) {
29
+ const environment = (_a = provider.environment) !== null && _a !== void 0 ? _a : {};
30
+ environment[ddTraceEnabledEnvVar] = true;
31
+ environment[ddMergeXrayTracesEnvVar] = tracingMode === TracingMode.HYBRID;
32
+ provider.environment = environment;
33
+ }
34
+ }
35
+ exports.enableTracing = enableTracing;
36
+ //# sourceMappingURL=tracing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../src/tracing.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAIH,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAChD,MAAM,uBAAuB,GAAG,sBAAsB,CAAC;AAEvD,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,6CAAI,CAAA;IACJ,qDAAQ,CAAA;IACR,iDAAM,CAAA;IACN,6CAAI,CAAA;AACN,CAAC,EALW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAKtB;AAED,SAAgB,aAAa,CAAC,OAAgB,EAAE,WAAwB;;IACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAe,CAAC;IACzC,IAAI,WAAW,KAAK,WAAW,CAAC,IAAI,IAAI,WAAW,KAAK,WAAW,CAAC,MAAM,EAAE;QAC1E,QAAQ,CAAC,OAAO,GAAG;YACjB,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,IAAI;SACb,CAAC;KACH;IACD,IAAI,WAAW,KAAK,WAAW,CAAC,MAAM,IAAI,WAAW,KAAK,WAAW,CAAC,QAAQ,EAAE;QAC9E,MAAM,WAAW,SAA4B,QAAQ,CAAC,WAAW,mCAAI,EAAE,CAAC;QACxE,WAAW,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC;QACzC,WAAW,CAAC,uBAAuB,CAAC,GAAG,WAAW,KAAK,WAAW,CAAC,MAAM,CAAC;QAC1E,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;KACpC;AACH,CAAC;AAdD,sCAcC"}
package/dist/util.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ import { FunctionInfo } from "layer";
2
+ import Service from "serverless/classes/Service";
3
+ export declare function removeDirectory(path: string): Promise<void>;
4
+ export declare function getHandlerPath(handlerInfo: FunctionInfo): {
5
+ method: string;
6
+ filename: string;
7
+ } | undefined;
8
+ export declare function hasWebpackPlugin(service: Service): boolean;
9
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,OAAO,OAAO,MAAM,4BAA4B,CAAC;AAQjD,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,iBAejD;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,YAAY;;;cASvD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,WAMhD"}
package/dist/util.js ADDED
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ /*
3
+ * Unless explicitly stated otherwise all files in this repository are licensed
4
+ * under the Apache License Version 2.0.
5
+ *
6
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
7
+ * Copyright 2019 Datadog, Inc.
8
+ */
9
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
10
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
11
+ return new (P || (P = Promise))(function (resolve, reject) {
12
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
13
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
14
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
15
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
16
+ });
17
+ };
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
22
+ result["default"] = mod;
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const fs = __importStar(require("fs"));
27
+ const util_1 = require("util");
28
+ const exists = util_1.promisify(fs.exists);
29
+ const readdir = util_1.promisify(fs.readdir);
30
+ const lstat = util_1.promisify(fs.lstat);
31
+ const unlink = util_1.promisify(fs.unlink);
32
+ const rmdir = util_1.promisify(fs.rmdir);
33
+ function removeDirectory(path) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ const dirExists = yield exists(path);
36
+ if (dirExists) {
37
+ const files = yield readdir(path);
38
+ for (const file of files) {
39
+ const curPath = path + "/" + file;
40
+ const stats = yield lstat(curPath);
41
+ if (stats.isDirectory()) {
42
+ yield removeDirectory(curPath);
43
+ }
44
+ else {
45
+ yield unlink(curPath);
46
+ }
47
+ }
48
+ yield rmdir(path);
49
+ }
50
+ });
51
+ }
52
+ exports.removeDirectory = removeDirectory;
53
+ function getHandlerPath(handlerInfo) {
54
+ const handlerfile = handlerInfo.handler.handler;
55
+ const parts = handlerfile.split(".");
56
+ if (parts.length < 2) {
57
+ return;
58
+ }
59
+ const method = parts[parts.length - 1];
60
+ const filename = parts.slice(0, -1).join(".");
61
+ return { method, filename };
62
+ }
63
+ exports.getHandlerPath = getHandlerPath;
64
+ function hasWebpackPlugin(service) {
65
+ const plugins = service.plugins;
66
+ if (plugins === undefined) {
67
+ return false;
68
+ }
69
+ return plugins.find((plugin) => plugin === "serverless-webpack") !== undefined;
70
+ }
71
+ exports.hasWebpackPlugin = hasWebpackPlugin;
72
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AAGzB,+BAAiC;AAGjC,MAAM,MAAM,GAAG,gBAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACpC,MAAM,OAAO,GAAG,gBAAS,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;AACtC,MAAM,KAAK,GAAG,gBAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAClC,MAAM,MAAM,GAAG,gBAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACpC,MAAM,KAAK,GAAG,gBAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAElC,SAAsB,eAAe,CAAC,IAAY;;QAChD,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,SAAS,EAAE;YACb,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,MAAM,OAAO,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;gBAClC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;gBACnC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE;oBACvB,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;iBAChC;qBAAM;oBACL,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;iBACvB;aACF;YACD,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;SACnB;IACH,CAAC;CAAA;AAfD,0CAeC;AAED,SAAgB,cAAc,CAAC,WAAyB;IACtD,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC;IAChD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,OAAO;KACR;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC9B,CAAC;AATD,wCASC;AAED,SAAgB,gBAAgB,CAAC,OAAgB;IAC/C,MAAM,OAAO,GAA0B,OAAe,CAAC,OAAO,CAAC;IAC/D,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,OAAO,KAAK,CAAC;KACd;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,oBAAoB,CAAC,KAAK,SAAS,CAAC;AACjF,CAAC;AAND,4CAMC"}
@@ -0,0 +1,11 @@
1
+ import { FunctionInfo } from "./layer";
2
+ export declare const datadogHandlerEnvVar = "DD_LAMBDA_HANDLER";
3
+ export declare const pythonHandler = "datadog_lambda.handler.handler";
4
+ export declare const jsHandlerWithLayers = "/opt/nodejs/node_modules/datadog-lambda-js/handler.handler";
5
+ export declare const jsHandler = "node_modules/datadog-lambda-js/dist/handler.handler";
6
+ /**
7
+ * For each lambda function, redirects handler to the Datadog handler for the given runtime,
8
+ * and sets Datadog environment variable `DD_LAMBDA_HANDLER` to the original handler.
9
+ */
10
+ export declare function redirectHandlers(funcs: FunctionInfo[], addLayers: boolean): void;
11
+ //# sourceMappingURL=wrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapper.d.ts","sourceRoot":"","sources":["../src/wrapper.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAe,MAAM,SAAS,CAAC;AAEpD,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AACxD,eAAO,MAAM,aAAa,mCAAmC,CAAC;AAC9D,eAAO,MAAM,mBAAmB,+DAA+D,CAAC;AAChG,eAAO,MAAM,SAAS,wDAAwD,CAAC;AAE/E;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,OAAO,QAkBzE"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ /*
3
+ * Unless explicitly stated otherwise all files in this repository are licensed
4
+ * under the Apache License Version 2.0.
5
+ *
6
+ * This product includes software developed at Datadog (https://www.datadoghq.com/).
7
+ * Copyright 2019 Datadog, Inc.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ const layer_1 = require("./layer");
11
+ exports.datadogHandlerEnvVar = "DD_LAMBDA_HANDLER";
12
+ exports.pythonHandler = "datadog_lambda.handler.handler";
13
+ exports.jsHandlerWithLayers = "/opt/nodejs/node_modules/datadog-lambda-js/handler.handler";
14
+ exports.jsHandler = "node_modules/datadog-lambda-js/dist/handler.handler";
15
+ /**
16
+ * For each lambda function, redirects handler to the Datadog handler for the given runtime,
17
+ * and sets Datadog environment variable `DD_LAMBDA_HANDLER` to the original handler.
18
+ */
19
+ function redirectHandlers(funcs, addLayers) {
20
+ funcs.forEach((func) => {
21
+ setEnvDatadogHandler(func);
22
+ const handler = getDDHandler(func.type, addLayers);
23
+ if (handler === undefined) {
24
+ return;
25
+ }
26
+ func.handler.handler = handler;
27
+ if (func.handler.package === undefined) {
28
+ func.handler.package = {
29
+ exclude: [],
30
+ include: [],
31
+ };
32
+ }
33
+ if (func.handler.package.include === undefined) {
34
+ func.handler.package.include = [];
35
+ }
36
+ });
37
+ }
38
+ exports.redirectHandlers = redirectHandlers;
39
+ function getDDHandler(lambdaRuntime, addLayers) {
40
+ if (lambdaRuntime === undefined) {
41
+ return;
42
+ }
43
+ switch (lambdaRuntime) {
44
+ case layer_1.RuntimeType.NODE:
45
+ return addLayers ? exports.jsHandlerWithLayers : exports.jsHandler;
46
+ case layer_1.RuntimeType.PYTHON:
47
+ return exports.pythonHandler;
48
+ }
49
+ }
50
+ function setEnvDatadogHandler(func) {
51
+ var _a;
52
+ const originalHandler = func.handler.handler;
53
+ const environment = (_a = func.handler.environment) !== null && _a !== void 0 ? _a : {};
54
+ environment[exports.datadogHandlerEnvVar] = originalHandler;
55
+ func.handler.environment = environment;
56
+ }
57
+ //# sourceMappingURL=wrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../src/wrapper.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,mCAAoD;AAEvC,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAC3C,QAAA,aAAa,GAAG,gCAAgC,CAAC;AACjD,QAAA,mBAAmB,GAAG,4DAA4D,CAAC;AACnF,QAAA,SAAS,GAAG,qDAAqD,CAAC;AAE/E;;;GAGG;AACH,SAAgB,gBAAgB,CAAC,KAAqB,EAAE,SAAkB;IACxE,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,OAAO,KAAK,SAAS,EAAE;YACzB,OAAO;SACR;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE;YACtC,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG;gBACrB,OAAO,EAAE,EAAE;gBACX,OAAO,EAAE,EAAE;aACZ,CAAC;SACH;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS,EAAE;YAC9C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,GAAG,EAAE,CAAC;SACnC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAlBD,4CAkBC;AAED,SAAS,YAAY,CAAC,aAAsC,EAAE,SAAkB;IAC9E,IAAI,aAAa,KAAK,SAAS,EAAE;QAC/B,OAAO;KACR;IACD,QAAQ,aAAa,EAAE;QACrB,KAAK,mBAAW,CAAC,IAAI;YACnB,OAAO,SAAS,CAAC,CAAC,CAAC,2BAAmB,CAAC,CAAC,CAAC,iBAAS,CAAC;QACrD,KAAK,mBAAW,CAAC,MAAM;YACrB,OAAO,qBAAa,CAAC;KACxB;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAkB;;IAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;IAC7C,MAAM,WAAW,SAAI,IAAI,CAAC,OAAe,CAAC,WAAW,mCAAI,EAAE,CAAC;IAC5D,WAAW,CAAC,4BAAoB,CAAC,GAAG,eAAe,CAAC;IACnD,IAAI,CAAC,OAAe,CAAC,WAAW,GAAG,WAAW,CAAC;AAClD,CAAC"}