serverless-plugin-datadog 5.70.0 → 5.72.0
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +1 -1
- package/dist/package.json +1 -1
- package/dist/src/compile.d.ts +3 -0
- package/dist/src/compile.d.ts.map +1 -0
- package/dist/src/compile.js +10 -0
- package/dist/src/compile.js.map +1 -0
- package/dist/src/layers-gov.json +32 -32
- package/dist/src/layers.json +476 -456
- package/dist/src/precomile-python.d.ts +2 -0
- package/dist/src/precomile-python.d.ts.map +1 -0
- package/dist/src/precomile-python.js +69 -0
- package/dist/src/precomile-python.js.map +1 -0
- package/dist/src/precompile-python.d.ts +2 -0
- package/dist/src/precompile-python.d.ts.map +1 -0
- package/dist/src/precompile-python.js +78 -0
- package/dist/src/precompile-python.js.map +1 -0
- package/dist/src/span-link.d.ts.map +1 -1
- package/dist/src/span-link.js +6 -10
- package/dist/src/span-link.js.map +1 -1
- package/dist/src/step-functions-helper.d.ts +16 -5
- package/dist/src/step-functions-helper.d.ts.map +1 -1
- package/dist/src/step-functions-helper.js +153 -67
- package/dist/src/step-functions-helper.js.map +1 -1
- package/package.json +1 -1
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"precomile-python.d.ts","sourceRoot":"","sources":["../../src/precomile-python.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,GAAG,QAW/C"}
|
@@ -0,0 +1,69 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
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 (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
+
exports.precompilePython = void 0;
|
27
|
+
const child_process_1 = require("child_process");
|
28
|
+
const fs = __importStar(require("fs"));
|
29
|
+
const path = __importStar(require("path"));
|
30
|
+
function precompilePython(serverless) {
|
31
|
+
serverless.cli.log('Precompiling Python files');
|
32
|
+
let tempDirName = 'datadog';
|
33
|
+
let slsDir = serverless.processedInput.options.package || '.serverless';
|
34
|
+
let tempDir = path.resolve(slsDir, tempDirName);
|
35
|
+
for (const file of lsDirFiles(slsDir, false)) {
|
36
|
+
if (file.endsWith('.zip')) {
|
37
|
+
preCompilePackage(tempDir, file);
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
exports.precompilePython = precompilePython;
|
42
|
+
function preCompilePackage(tempDir, zipFile) {
|
43
|
+
(0, child_process_1.spawnSync)('unzip', ['-d', tempDir, zipFile]);
|
44
|
+
(0, child_process_1.spawnSync)('python', ['-m', 'compileall', '-b', tempDir]);
|
45
|
+
replacePyFiles(tempDir);
|
46
|
+
(0, child_process_1.spawnSync)('rm', [zipFile]);
|
47
|
+
(0, child_process_1.execSync)(`cd ${tempDir} && zip -r ${zipFile} .`);
|
48
|
+
(0, child_process_1.spawnSync)('rm', ['-r', tempDir]);
|
49
|
+
}
|
50
|
+
function replacePyFiles(dir) {
|
51
|
+
for (const file of lsDirFiles(dir)) {
|
52
|
+
if (file.endsWith('.pyc')) {
|
53
|
+
let pyFile = file.replace('.pyc', '.py');
|
54
|
+
(0, child_process_1.spawnSync)('rm', [pyFile]);
|
55
|
+
}
|
56
|
+
}
|
57
|
+
}
|
58
|
+
function* lsDirFiles(dir, recursive = true) {
|
59
|
+
for (const dirent of fs.readdirSync(dir, { withFileTypes: true })) {
|
60
|
+
const res = path.resolve(dir, dirent.name);
|
61
|
+
if (recursive && dirent.isDirectory()) {
|
62
|
+
yield* lsDirFiles(res, recursive);
|
63
|
+
}
|
64
|
+
else {
|
65
|
+
yield res;
|
66
|
+
}
|
67
|
+
}
|
68
|
+
}
|
69
|
+
//# sourceMappingURL=precomile-python.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"precomile-python.js","sourceRoot":"","sources":["../../src/precomile-python.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAoD;AACpD,uCAAyB;AACzB,2CAA6B;AAE7B,SAAgB,gBAAgB,CAAC,UAAe;IAC9C,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAChD,IAAI,WAAW,GAAG,SAAS,CAAC;IAC5B,IAAI,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,IAAI,aAAa,CAAC;IACxE,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEhD,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;QAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACzB,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;SAClC;KACF;AACH,CAAC;AAXD,4CAWC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,OAAe;IACzD,IAAA,yBAAS,EAAC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7C,IAAA,yBAAS,EAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACzD,cAAc,CAAC,OAAO,CAAC,CAAC;IACxB,IAAA,yBAAS,EAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3B,IAAA,wBAAQ,EAAC,MAAM,OAAO,cAAc,OAAO,IAAI,CAAC,CAAC;IACjD,IAAA,yBAAS,EAAC,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACzB,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACzC,IAAA,yBAAS,EAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;SAC3B;KACF;AACH,CAAC;AAED,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAW,EAAE,SAAS,GAAG,IAAI;IAChD,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE;QACjE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE;YACrC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;SACnC;aAAM;YACL,MAAM,GAAG,CAAC;SACX;KACF;AACH,CAAC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"precompile-python.d.ts","sourceRoot":"","sources":["../../src/precompile-python.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,GAAG,QAW/C"}
|
@@ -0,0 +1,78 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
9
|
+
}) : (function(o, m, k, k2) {
|
10
|
+
if (k2 === undefined) k2 = k;
|
11
|
+
o[k2] = m[k];
|
12
|
+
}));
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
15
|
+
}) : function(o, v) {
|
16
|
+
o["default"] = v;
|
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 (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
22
|
+
__setModuleDefault(result, mod);
|
23
|
+
return result;
|
24
|
+
};
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
26
|
+
exports.precompilePython = void 0;
|
27
|
+
const child_process_1 = require("child_process");
|
28
|
+
const fs = __importStar(require("fs"));
|
29
|
+
const path = __importStar(require("path"));
|
30
|
+
function precompilePython(serverless) {
|
31
|
+
serverless.cli.log('Precompiling Python files');
|
32
|
+
let tempDirName = 'datadog';
|
33
|
+
let slsDir = serverless.processedInput.options.package || '.serverless';
|
34
|
+
let tempDir = path.resolve(slsDir, tempDirName);
|
35
|
+
for (const file of lsDirFiles(slsDir, false)) {
|
36
|
+
if (file.endsWith('.zip')) {
|
37
|
+
preCompilePackage(serverless.service.provider.runtime, tempDir, file);
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
exports.precompilePython = precompilePython;
|
42
|
+
function preCompilePackage(python, tempDir, zipFile) {
|
43
|
+
(0, child_process_1.spawnSync)('unzip', ['-d', tempDir, zipFile]);
|
44
|
+
precompile(python, tempDir);
|
45
|
+
replacePyFiles(tempDir);
|
46
|
+
(0, child_process_1.spawnSync)('rm', [zipFile]);
|
47
|
+
(0, child_process_1.execSync)(`cd ${tempDir} && zip -r ${zipFile} .`);
|
48
|
+
(0, child_process_1.spawnSync)('rm', ['-r', tempDir]);
|
49
|
+
}
|
50
|
+
function precompile(python, dir) {
|
51
|
+
// TODO: run precompile in docker container
|
52
|
+
//spawnSync('python', ['-m', 'compileall', '-b', dir]);
|
53
|
+
console.log("----------------------------------------");
|
54
|
+
console.log("python: ", python);
|
55
|
+
console.log("----------------------------------------");
|
56
|
+
let image = python.replace('python3', 'python:3');
|
57
|
+
(0, child_process_1.spawnSync)('docker', ['run', '-v', `${dir}:/mnt`, image, 'python', '-m', 'compileall', '-b', '/mnt']);
|
58
|
+
}
|
59
|
+
function replacePyFiles(dir) {
|
60
|
+
for (const file of lsDirFiles(dir)) {
|
61
|
+
if (file.endsWith('.pyc')) {
|
62
|
+
let pyFile = file.replace('.pyc', '.py');
|
63
|
+
(0, child_process_1.spawnSync)('rm', [pyFile]);
|
64
|
+
}
|
65
|
+
}
|
66
|
+
}
|
67
|
+
function* lsDirFiles(dir, recursive = true) {
|
68
|
+
for (const dirent of fs.readdirSync(dir, { withFileTypes: true })) {
|
69
|
+
const res = path.resolve(dir, dirent.name);
|
70
|
+
if (recursive && dirent.isDirectory()) {
|
71
|
+
yield* lsDirFiles(res, recursive);
|
72
|
+
}
|
73
|
+
else {
|
74
|
+
yield res;
|
75
|
+
}
|
76
|
+
}
|
77
|
+
}
|
78
|
+
//# sourceMappingURL=precompile-python.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"precompile-python.js","sourceRoot":"","sources":["../../src/precompile-python.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAoD;AACpD,uCAAyB;AACzB,2CAA6B;AAE7B,SAAgB,gBAAgB,CAAC,UAAe;IAC9C,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAChD,IAAI,WAAW,GAAG,SAAS,CAAC;IAC5B,IAAI,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,IAAI,aAAa,CAAC;IACxE,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEhD,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;QAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACzB,iBAAiB,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;SACvE;KACF;AACH,CAAC;AAXD,4CAWC;AAED,SAAS,iBAAiB,CAAC,MAAc,EAAE,OAAe,EAAE,OAAe;IACzE,IAAA,yBAAS,EAAC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7C,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5B,cAAc,CAAC,OAAO,CAAC,CAAC;IACxB,IAAA,yBAAS,EAAC,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3B,IAAA,wBAAQ,EAAC,MAAM,OAAO,cAAc,OAAO,IAAI,CAAC,CAAC;IACjD,IAAA,yBAAS,EAAC,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,UAAU,CAAC,MAAc,EAAE,GAAW;IAC7C,2CAA2C;IAC3C,uDAAuD;IACvD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,IAAI,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAClD,IAAA,yBAAS,EAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;AACvG,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE;QAClC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YACzB,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACzC,IAAA,yBAAS,EAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;SAC3B;KACF;AACH,CAAC;AAED,QAAQ,CAAC,CAAC,UAAU,CAAC,GAAW,EAAE,SAAS,GAAG,IAAI;IAChD,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE;QACjE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE;YACrC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;SACnC;aAAM;YACL,MAAM,GAAG,CAAC;SACX;KACF;AACH,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"span-link.d.ts","sourceRoot":"","sources":["../../src/span-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA0B,MAAM,yBAAyB,CAAC;AAClF,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAEzC,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;CAAE,EAC7C,UAAU,EAAE,UAAU,GACrB,IAAI,
|
1
|
+
{"version":3,"file":"span-link.d.ts","sourceRoot":"","sources":["../../src/span-link.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA0B,MAAM,yBAAyB,CAAC;AAClF,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAEzC,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAA;CAAE,EAC7C,UAAU,EAAE,UAAU,GACrB,IAAI,CASN"}
|
package/dist/src/span-link.js
CHANGED
@@ -4,17 +4,13 @@ exports.mergeStepFunctionAndLambdaTraces = void 0;
|
|
4
4
|
const step_functions_helper_1 = require("./step-functions-helper");
|
5
5
|
function mergeStepFunctionAndLambdaTraces(resources, serverless) {
|
6
6
|
var _a;
|
7
|
-
for (const resourceName
|
8
|
-
if (
|
9
|
-
|
10
|
-
if (resourceObj.Type === "AWS::StepFunctions::StateMachine") {
|
11
|
-
if (resourceObj.Properties) {
|
12
|
-
const definitionString = (_a = resourceObj.Properties) === null || _a === void 0 ? void 0 : _a.DefinitionString;
|
13
|
-
const newDefString = (0, step_functions_helper_1.updateDefinitionString)(definitionString, serverless, resourceName);
|
14
|
-
resourceObj.Properties.DefinitionString = newDefString;
|
15
|
-
}
|
16
|
-
}
|
7
|
+
for (const [resourceName, resourceObj] of Object.entries(resources)) {
|
8
|
+
if (resourceObj.Type !== "AWS::StepFunctions::StateMachine" || !resourceObj.Properties) {
|
9
|
+
continue;
|
17
10
|
}
|
11
|
+
const definitionString = (_a = resourceObj.Properties) === null || _a === void 0 ? void 0 : _a.DefinitionString;
|
12
|
+
const newDefString = (0, step_functions_helper_1.updateDefinitionString)(definitionString, serverless, resourceName);
|
13
|
+
resourceObj.Properties.DefinitionString = newDefString;
|
18
14
|
}
|
19
15
|
}
|
20
16
|
exports.mergeStepFunctionAndLambdaTraces = mergeStepFunctionAndLambdaTraces;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"span-link.js","sourceRoot":"","sources":["../../src/span-link.ts"],"names":[],"mappings":";;;AAAA,mEAAkF;AAGlF,SAAgB,gCAAgC,CAC9C,SAA6C,EAC7C,UAAsB;;IAEtB,KAAK,MAAM,YAAY,
|
1
|
+
{"version":3,"file":"span-link.js","sourceRoot":"","sources":["../../src/span-link.ts"],"names":[],"mappings":";;;AAAA,mEAAkF;AAGlF,SAAgB,gCAAgC,CAC9C,SAA6C,EAC7C,UAAsB;;IAEtB,KAAK,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;QACnE,IAAI,WAAW,CAAC,IAAI,KAAK,kCAAkC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;YACtF,SAAS;SACV;QACD,MAAM,gBAAgB,GAAG,MAAA,WAAW,CAAC,UAAU,0CAAE,gBAAiB,CAAC;QACnE,MAAM,YAAY,GAAG,IAAA,8CAAsB,EAAC,gBAAgB,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACxF,WAAW,CAAC,UAAU,CAAC,gBAAgB,GAAG,YAAY,CAAC;KACxD;AACH,CAAC;AAZD,4EAYC"}
|
@@ -1,6 +1,4 @@
|
|
1
1
|
import Serverless from "serverless";
|
2
|
-
export declare function isSafeToModifyStepFunctionLambdaInvocation(parameters: any): boolean;
|
3
|
-
export declare function isSafeToModifyStepFunctionInvoctation(parameters: any): boolean;
|
4
2
|
export interface GeneralResource {
|
5
3
|
Type: string;
|
6
4
|
Properties?: {
|
@@ -14,14 +12,26 @@ export interface StateMachineDefinition {
|
|
14
12
|
[key: string]: StateMachineStep;
|
15
13
|
};
|
16
14
|
}
|
15
|
+
export type PayloadObject = {
|
16
|
+
"Execution.$"?: any;
|
17
|
+
Execution?: any;
|
18
|
+
"State.$"?: any;
|
19
|
+
State?: any;
|
20
|
+
"StateMachine.$"?: any;
|
21
|
+
StateMachine?: any;
|
22
|
+
};
|
23
|
+
export type StepFunctionInput = {
|
24
|
+
"CONTEXT.$"?: string;
|
25
|
+
CONTEXT?: string;
|
26
|
+
[key: string]: unknown;
|
27
|
+
};
|
17
28
|
export interface StateMachineStep {
|
18
29
|
Resource?: string;
|
19
30
|
Parameters?: {
|
20
31
|
FunctionName?: string;
|
21
32
|
"Payload.$"?: string;
|
22
|
-
|
23
|
-
|
24
|
-
};
|
33
|
+
Payload?: string | PayloadObject;
|
34
|
+
Input?: string | StepFunctionInput;
|
25
35
|
};
|
26
36
|
Next?: string;
|
27
37
|
End?: boolean;
|
@@ -33,5 +43,6 @@ export declare function updateDefinitionString(definitionString: string | {
|
|
33
43
|
}, serverless: Serverless, stateMachineName: string): string | {
|
34
44
|
"Fn::Sub": (string | object)[];
|
35
45
|
};
|
46
|
+
export declare function updateDefinitionForStepFunctionInvocationStep(stepName: string, step: StateMachineStep, serverless: Serverless, stateMachineName: string): boolean;
|
36
47
|
export declare function inspectAndRecommendStepFunctionsInstrumentation(serverless: Serverless): void;
|
37
48
|
//# sourceMappingURL=step-functions-helper.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"step-functions-helper.d.ts","sourceRoot":"","sources":["../../src/step-functions-helper.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,
|
1
|
+
{"version":3,"file":"step-functions-helper.d.ts","sourceRoot":"","sources":["../../src/step-functions-helper.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE;QACX,gBAAgB,CAAC,EACb,MAAM,GACN;YACE,SAAS,EAAE,GAAG,EAAE,CAAC;SAClB,CAAC;KACP,CAAC;CACH;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAAA;KAAE,CAAC;CAC7C;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,gBAAgB,CAAC,EAAE,GAAG,CAAC;IACvB,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE;QACX,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;QACjC,KAAK,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAAC;KACpC,CAAC;IACF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAU5E;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAK9E;AAkBD,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;CAAE,EAC7D,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,MAAM,GACvB,MAAM,GAAG;IAAE,SAAS,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;CAAE,CAiC7C;AA2ID,wBAAgB,6CAA6C,CAC3D,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,gBAAgB,EACtB,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAuDT;AAED,wBAAgB,+CAA+C,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAO5F"}
|
@@ -1,46 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.inspectAndRecommendStepFunctionsInstrumentation = exports.
|
4
|
-
function isSafeToModifyStepFunctionLambdaInvocation(parameters) {
|
5
|
-
if (typeof parameters !== "object") {
|
6
|
-
return false;
|
7
|
-
}
|
8
|
-
if (!parameters.hasOwnProperty("Payload.$")) {
|
9
|
-
return true;
|
10
|
-
}
|
11
|
-
else {
|
12
|
-
if (parameters["Payload.$"] === "$") {
|
13
|
-
// $ % is the default original unchanged payload
|
14
|
-
return true;
|
15
|
-
}
|
16
|
-
}
|
17
|
-
return false;
|
18
|
-
}
|
19
|
-
exports.isSafeToModifyStepFunctionLambdaInvocation = isSafeToModifyStepFunctionLambdaInvocation;
|
20
|
-
// Truth table
|
21
|
-
// Input | Expected
|
22
|
-
// -------------------------|---------
|
23
|
-
// Empty object | true
|
24
|
-
// undefined | true
|
25
|
-
// not object | false
|
26
|
-
// object without CONTEXT.$ | true
|
27
|
-
// object with CONTEXT.$ | false
|
28
|
-
function isSafeToModifyStepFunctionInvoctation(parameters) {
|
29
|
-
if (typeof parameters !== "object") {
|
30
|
-
return false;
|
31
|
-
}
|
32
|
-
if (!parameters.hasOwnProperty("Input")) {
|
33
|
-
return true;
|
34
|
-
}
|
35
|
-
if (typeof parameters.Input !== "object") {
|
36
|
-
return false;
|
37
|
-
}
|
38
|
-
if (!parameters.Input.hasOwnProperty("CONTEXT.$")) {
|
39
|
-
return true;
|
40
|
-
}
|
41
|
-
return false;
|
42
|
-
}
|
43
|
-
exports.isSafeToModifyStepFunctionInvoctation = isSafeToModifyStepFunctionInvoctation;
|
3
|
+
exports.inspectAndRecommendStepFunctionsInstrumentation = exports.updateDefinitionForStepFunctionInvocationStep = exports.updateDefinitionString = exports.isStepFunctionInvocation = exports.isDefaultLambdaApiStep = void 0;
|
44
4
|
function isDefaultLambdaApiStep(resource) {
|
45
5
|
// default means not legacy lambda api
|
46
6
|
if (resource === undefined) {
|
@@ -74,6 +34,7 @@ function parseDefinitionObject(definitionString) {
|
|
74
34
|
// Updates the definitionString of a step function to include trace context as appropriate for a Lambda invocation or a nested step function invocation.
|
75
35
|
// definitionString can either be an object or a naked string, so we need to return the same and explicitly modify the Resource in span-link.ts
|
76
36
|
function updateDefinitionString(definitionString, serverless, stateMachineName) {
|
37
|
+
// Step 1: Parse definition object from definition string
|
77
38
|
let definitionObj;
|
78
39
|
if (typeof definitionString !== "string") {
|
79
40
|
// definitionString is a {"Fn::Sub": (string | object)[]}
|
@@ -88,35 +49,18 @@ function updateDefinitionString(definitionString, serverless, stateMachineName)
|
|
88
49
|
else {
|
89
50
|
definitionObj = JSON.parse(definitionString);
|
90
51
|
}
|
52
|
+
// Step 2: Mutate the definition object
|
91
53
|
const states = definitionObj.States;
|
92
|
-
for (const stepName
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
if (isDefaultLambdaApiStep(step === null || step === void 0 ? void 0 : step.Resource)) {
|
100
|
-
if (typeof step.Parameters === "object") {
|
101
|
-
if (isSafeToModifyStepFunctionLambdaInvocation(step.Parameters)) {
|
102
|
-
step.Parameters["Payload.$"] = "States.JsonMerge($$, $, false)";
|
103
|
-
serverless.cli.log(`JsonMerge Step Functions context object with payload in step: ${stepName} of state machine: ${stateMachineName}.`);
|
104
|
-
}
|
105
|
-
else {
|
106
|
-
serverless.cli.log(`[Warn] Parameters.Payload has been set. Merging traces failed for step: ${stepName} of state machine: ${stateMachineName}`);
|
107
|
-
}
|
108
|
-
}
|
109
|
-
}
|
110
|
-
else if (isStepFunctionInvocation(step === null || step === void 0 ? void 0 : step.Resource)) {
|
111
|
-
if (isSafeToModifyStepFunctionInvoctation(step === null || step === void 0 ? void 0 : step.Parameters)) {
|
112
|
-
if (step.Parameters && !step.Parameters.Input) {
|
113
|
-
step.Parameters.Input = {};
|
114
|
-
}
|
115
|
-
step.Parameters.Input["CONTEXT.$"] = "States.JsonMerge($$, $, false)";
|
116
|
-
}
|
117
|
-
}
|
54
|
+
for (const [stepName, step] of Object.entries(states)) {
|
55
|
+
// only inject context into default Lambda API steps and Step Function invocation steps
|
56
|
+
if (isDefaultLambdaApiStep(step === null || step === void 0 ? void 0 : step.Resource)) {
|
57
|
+
updateDefinitionForDefaultLambdaApiStep(stepName, step, serverless, stateMachineName);
|
58
|
+
}
|
59
|
+
else if (isStepFunctionInvocation(step === null || step === void 0 ? void 0 : step.Resource)) {
|
60
|
+
updateDefinitionForStepFunctionInvocationStep(stepName, step, serverless, stateMachineName);
|
118
61
|
}
|
119
62
|
}
|
63
|
+
// Step 3: Convert definition object back into definition string
|
120
64
|
if (typeof definitionString !== "string") {
|
121
65
|
definitionString["Fn::Sub"][0] = JSON.stringify(definitionObj); // writing back to the original JSON created by Serverless framework
|
122
66
|
}
|
@@ -126,6 +70,148 @@ function updateDefinitionString(definitionString, serverless, stateMachineName)
|
|
126
70
|
return definitionString; // return the definitionString so it can be written to the Resource in span-link.ts
|
127
71
|
}
|
128
72
|
exports.updateDefinitionString = updateDefinitionString;
|
73
|
+
// Truth table
|
74
|
+
// Case | Input | Will update
|
75
|
+
// -----|----------------------------------------------------------|-------------
|
76
|
+
// 1 | No "Payload" or "Payload.$" | true
|
77
|
+
// 2.1 | "Payload" is object, already injected | false
|
78
|
+
// 2.2 | "Payload" object has Execution, State or StateMachine | false
|
79
|
+
// 2.3 | "Payload" object has no Execution, State or StateMachine | true
|
80
|
+
// 3 | "Payload" is not object | false
|
81
|
+
// 4.1 | "Payload.$": "$" (default payload) | true
|
82
|
+
// 4.2 | "Payload.$": "States.JsonMerge($$, $, false)" or | false
|
83
|
+
// | "Payload.$": "$$['Execution', 'State', 'StateMachine']" |
|
84
|
+
// 4.3 | Custom "Payload.$" | false
|
85
|
+
function updateDefinitionForDefaultLambdaApiStep(stepName, step, serverless, stateMachineName) {
|
86
|
+
if (typeof step.Parameters !== "object") {
|
87
|
+
serverless.cli.log(`[Warn] Parameters field is not a JSON object. Merging traces failed for step: ${stepName} of state machine: ${stateMachineName}. \
|
88
|
+
Your Step Functions trace will not be merged with downstream Lambda traces. To manually merge these traces, check out \
|
89
|
+
https://docs.datadoghq.com/serverless/step_functions/troubleshooting/`);
|
90
|
+
return;
|
91
|
+
}
|
92
|
+
// Case 2 & 3: Parameters has "Payload" field
|
93
|
+
if (step.Parameters.hasOwnProperty("Payload")) {
|
94
|
+
const payload = step.Parameters.Payload;
|
95
|
+
// Case 3: payload is not a JSON object
|
96
|
+
if (typeof payload !== "object") {
|
97
|
+
serverless.cli.log(`[Warn] Payload field is not a JSON object. Merging traces failed for step: ${stepName} of state machine: ${stateMachineName}. \
|
98
|
+
Your Step Functions trace will not be merged with downstream Lambda traces. To manually merge these traces, check out \
|
99
|
+
https://docs.datadoghq.com/serverless/step_functions/troubleshooting/`);
|
100
|
+
return;
|
101
|
+
}
|
102
|
+
// Case 2: payload is a JSON object
|
103
|
+
if (payload["Execution.$"] === "$$.Execution" &&
|
104
|
+
payload["State.$"] === "$$.State" &&
|
105
|
+
payload["StateMachine.$"] === "$$.StateMachine") {
|
106
|
+
// Case 2.1: already injected into "Payload"
|
107
|
+
serverless.cli.log(`Context injection is already set up. Skipping merging traces for step: ${stepName} of state machine: ${stateMachineName}.\n`);
|
108
|
+
return;
|
109
|
+
}
|
110
|
+
// Case 2.2: "Payload" object has Execution, State or StateMachine field but conject injection is not set up completely
|
111
|
+
if (payload.hasOwnProperty("Execution.$") ||
|
112
|
+
payload.hasOwnProperty("Execution") ||
|
113
|
+
payload.hasOwnProperty("State.$") ||
|
114
|
+
payload.hasOwnProperty("State") ||
|
115
|
+
payload.hasOwnProperty("StateMachine.$") ||
|
116
|
+
payload.hasOwnProperty("StateMachine")) {
|
117
|
+
serverless.cli
|
118
|
+
.log(`[Warn] Step ${stepName} of state machine: ${stateMachineName} may be using custom Execution, State or StateMachine field. \
|
119
|
+
Step Functions Context Object injection skipped. Your Step Functions trace will not be merged with downstream Lambda traces. To manually \
|
120
|
+
merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
|
121
|
+
return;
|
122
|
+
}
|
123
|
+
// Case 2.3: "Payload" object has no Execution, State or StateMachine field
|
124
|
+
payload["Execution.$"] = "$$.Execution";
|
125
|
+
payload["State.$"] = "$$.State";
|
126
|
+
payload["StateMachine.$"] = "$$.StateMachine";
|
127
|
+
return;
|
128
|
+
}
|
129
|
+
// Case 4: Parameters has "Payload.$" field
|
130
|
+
if (step.Parameters.hasOwnProperty("Payload.$")) {
|
131
|
+
// Case 4.1: default "Payload.$"
|
132
|
+
if (step.Parameters["Payload.$"] === "$") {
|
133
|
+
step.Parameters["Payload.$"] = "States.JsonMerge($$, $, false)";
|
134
|
+
serverless.cli.log(`JsonMerge Step Functions context object with payload in step: ${stepName} of state machine: ${stateMachineName}.`);
|
135
|
+
return;
|
136
|
+
}
|
137
|
+
// Case 4.2: context injection is already set up using "Payload.$"
|
138
|
+
if (step.Parameters["Payload.$"] === "States.JsonMerge($$, $, false)" ||
|
139
|
+
step.Parameters["Payload.$"] === "$$['Execution', 'State', 'StateMachine']") {
|
140
|
+
serverless.cli.log(`Step ${stepName} of state machine ${stateMachineName}: Context injection is already set up. Skipping context injection.\n`);
|
141
|
+
return;
|
142
|
+
}
|
143
|
+
// Case 4.3: custom "Payload.$"
|
144
|
+
serverless.cli.log(`[Warn] Step ${stepName} of state machine ${stateMachineName} has a custom Payload field. Step Functions Context Object injection \
|
145
|
+
skipped. Your Step Functions trace will not be merged with downstream Lambda traces. To manually merge these traces, \
|
146
|
+
check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
|
147
|
+
return;
|
148
|
+
}
|
149
|
+
// Case 1: No "Payload" or "Payload.$"
|
150
|
+
step.Parameters["Payload.$"] = "$$['Execution', 'State', 'StateMachine']";
|
151
|
+
serverless.cli.log(`Merging traces for step: ${stepName} of state machine: ${stateMachineName}.`);
|
152
|
+
}
|
153
|
+
// Truth table
|
154
|
+
// Input | Expected
|
155
|
+
// -------------------------|---------
|
156
|
+
// Empty object | true
|
157
|
+
// undefined | true
|
158
|
+
// not object | false
|
159
|
+
// object without CONTEXT.$ | true
|
160
|
+
// object with CONTEXT.$ | false
|
161
|
+
// Truth table
|
162
|
+
// Case | Input | Expected
|
163
|
+
// -----|----------------------------------------------------------|---------
|
164
|
+
// 0.1 | Parameters field is not an object | false
|
165
|
+
// 0.2 | Parameters field has no Input field | true
|
166
|
+
// 0.3 | Parameters.Input is not an object | false
|
167
|
+
// 1 | No "CONTEXT" or "CONTEXT.$" | true
|
168
|
+
// 2 | Has "CONTEXT" | false
|
169
|
+
// 3.1 | "CONTEXT.$": "States.JsonMerge($$, $, false)" or | false
|
170
|
+
// | "CONTEXT.$": "$$['Execution', 'State', 'StateMachine']" |
|
171
|
+
// 3.2 | Custom "CONTEXT.$" | false
|
172
|
+
function updateDefinitionForStepFunctionInvocationStep(stepName, step, serverless, stateMachineName) {
|
173
|
+
const parameters = step === null || step === void 0 ? void 0 : step.Parameters;
|
174
|
+
// Case 0.1: Parameters field is not an object
|
175
|
+
if (typeof parameters !== "object") {
|
176
|
+
return false;
|
177
|
+
}
|
178
|
+
// Case 0.2: Parameters field has no Input field
|
179
|
+
if (!parameters.hasOwnProperty("Input")) {
|
180
|
+
parameters.Input = { "CONTEXT.$": "States.JsonMerge($$, $, false)" };
|
181
|
+
return true;
|
182
|
+
}
|
183
|
+
// Case 0.3: Parameters.Input is not an object
|
184
|
+
if (typeof parameters.Input !== "object") {
|
185
|
+
return false;
|
186
|
+
}
|
187
|
+
// Case 1: No "CONTEXT" or "CONTEXT.$"
|
188
|
+
if (!parameters.Input.hasOwnProperty("CONTEXT") && !parameters.Input.hasOwnProperty("CONTEXT.$")) {
|
189
|
+
parameters.Input["CONTEXT.$"] = "$$['Execution', 'State', 'StateMachine']";
|
190
|
+
return true;
|
191
|
+
}
|
192
|
+
// Case 2: Has 'CONTEXT' field.
|
193
|
+
// This case should be rare, so we don't support context injection for this case for now.
|
194
|
+
if (parameters.Input.hasOwnProperty("CONTEXT")) {
|
195
|
+
serverless.cli
|
196
|
+
.log(`[Warn] Step ${stepName} of state machine ${stateMachineName} has custom CONTEXT field. Step Functions Context \
|
197
|
+
Object injection skipped. Your Step Functions trace will not be merged with downstream Step Function traces. To manually \
|
198
|
+
merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
|
199
|
+
return false;
|
200
|
+
}
|
201
|
+
// Case 3.1 context injection is already set up
|
202
|
+
if (parameters.Input["CONTEXT.$"] === "States.JsonMerge($$, $, false)" ||
|
203
|
+
parameters.Input["CONTEXT.$"] === `$$['Execution', 'State', 'StateMachine']`) {
|
204
|
+
serverless.cli.log(`Step ${stepName} of state machine ${stateMachineName}: Context injection is already set up. Skipping context injection.\n`);
|
205
|
+
return false;
|
206
|
+
}
|
207
|
+
// Case 3.2 custom CONTEXT.$ field
|
208
|
+
serverless.cli
|
209
|
+
.log(`[Warn] Step ${stepName} of state machine ${stateMachineName}: Parameters.Input field has a custom CONTEXT.$ field. Step \
|
210
|
+
Functions Context Object injection skipped. Your Step Functions trace will not be merged with downstream Step Function traces. To \
|
211
|
+
manually merge these traces, check out https://docs.datadoghq.com/serverless/step_functions/troubleshooting/\n`);
|
212
|
+
return false;
|
213
|
+
}
|
214
|
+
exports.updateDefinitionForStepFunctionInvocationStep = updateDefinitionForStepFunctionInvocationStep;
|
129
215
|
function inspectAndRecommendStepFunctionsInstrumentation(serverless) {
|
130
216
|
var _a;
|
131
217
|
const stepFunctions = Object.values(((_a = serverless.service.stepFunctions) === null || _a === void 0 ? void 0 : _a.stateMachines) || {});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"step-functions-helper.js","sourceRoot":"","sources":["../../src/step-functions-helper.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"step-functions-helper.js","sourceRoot":"","sources":["../../src/step-functions-helper.ts"],"names":[],"mappings":";;;AA4CA,SAAgB,sBAAsB,CAAC,QAA4B;IACjE,sCAAsC;IACtC,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IACD,IAAI,QAAQ,KAAK,gCAAgC,EAAE;QACjD,6FAA6F;QAC7F,OAAO,IAAI,CAAC;KACb;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAVD,wDAUC;AAED,SAAgB,wBAAwB,CAAC,QAA4B;IACnE,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IACD,OAAO,QAAQ,CAAC,UAAU,CAAC,wCAAwC,CAAC,CAAC;AACvE,CAAC;AALD,4DAKC;AAED,SAAS,qBAAqB,CAAC,gBAAoD;IACjF,IACE,CAAC,CAAC,OAAO,gBAAgB,KAAK,QAAQ,IAAI,SAAS,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,EAClH;QACA,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAChD;IACD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,iEAAiE;IAC/J,IAAI,kBAAkB,KAAK,EAAE,EAAE;QAC7B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;IACD,MAAM,aAAa,GAA2B,IAAI,CAAC,KAAK,CAAC,kBAA4B,CAAC,CAAC;IACvF,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,wJAAwJ;AACxJ,+IAA+I;AAC/I,SAAgB,sBAAsB,CACpC,gBAA6D,EAC7D,UAAsB,EACtB,gBAAwB;IAExB,yDAAyD;IACzD,IAAI,aAAqC,CAAC;IAC1C,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE;QACxC,yDAAyD;QACzD,IAAI;YACF,aAAa,GAAG,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;SACzD;QAAC,OAAO,KAAK,EAAE;YACd,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,4CAA4C,GAAG,KAAK,CAAC,CAAC;YACzE,OAAO,gBAAgB,CAAC;SACzB;KACF;SAAM;QACL,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;KAC9C;IAED,uCAAuC;IACvC,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC;IACpC,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACrD,uFAAuF;QACvF,IAAI,sBAAsB,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,EAAE;YAC1C,uCAAuC,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;SACvF;aAAM,IAAI,wBAAwB,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,EAAE;YACnD,6CAA6C,CAAC,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;SAC7F;KACF;IAED,gEAAgE;IAChE,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE;QACxC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,oEAAoE;KACrI;SAAM;QACL,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;KAClD;IACD,OAAO,gBAAgB,CAAC,CAAC,mFAAmF;AAC9G,CAAC;AArCD,wDAqCC;AAED,cAAc;AACd,gFAAgF;AAChF,iFAAiF;AACjF,yEAAyE;AACzE,0EAA0E;AAC1E,0EAA0E;AAC1E,yEAAyE;AACzE,0EAA0E;AAC1E,yEAAyE;AACzE,0EAA0E;AAC1E,oEAAoE;AACpE,0EAA0E;AAC1E,SAAS,uCAAuC,CAC9C,QAAgB,EAChB,IAAsB,EACtB,UAAsB,EACtB,gBAAwB;IAExB,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE;QACvC,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,iFAAiF,QAAQ,sBAAsB,gBAAgB;;sEAE/D,CACjE,CAAC;QACF,OAAO;KACR;IAED,6CAA6C;IAC7C,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE;QAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAExC,uCAAuC;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,8EAA8E,QAAQ,sBAAsB,gBAAgB;;wEAE5D,CACjE,CAAC;YACF,OAAO;SACR;QAED,mCAAmC;QACnC,IACE,OAAO,CAAC,aAAa,CAAC,KAAK,cAAc;YACzC,OAAO,CAAC,SAAS,CAAC,KAAK,UAAU;YACjC,OAAO,CAAC,gBAAgB,CAAC,KAAK,iBAAiB,EAC/C;YACA,4CAA4C;YAC5C,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,0EAA0E,QAAQ,sBAAsB,gBAAgB,KAAK,CAC9H,CAAC;YAEF,OAAO;SACR;QAED,uHAAuH;QACvH,IACE,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC;YACrC,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC;YACnC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC;YACjC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC;YAC/B,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC;YACxC,OAAO,CAAC,cAAc,CAAC,cAAc,CAAC,EACtC;YACA,UAAU,CAAC,GAAG;iBACX,GAAG,CAAC,eAAe,QAAQ,sBAAsB,gBAAgB;;sGAE4B,CAAC,CAAC;YAElG,OAAO;SACR;QAED,2EAA2E;QAC3E,OAAO,CAAC,aAAa,CAAC,GAAG,cAAc,CAAC;QACxC,OAAO,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;QAChC,OAAO,CAAC,gBAAgB,CAAC,GAAG,iBAAiB,CAAC;QAE9C,OAAO;KACR;IAED,2CAA2C;IAC3C,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;QAC/C,gCAAgC;QAChC,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,GAAG,EAAE;YACxC,IAAI,CAAC,UAAW,CAAC,WAAW,CAAC,GAAG,gCAAgC,CAAC;YACjE,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,iEAAiE,QAAQ,sBAAsB,gBAAgB,GAAG,CACnH,CAAC;YACF,OAAO;SACR;QAED,kEAAkE;QAClE,IACE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,gCAAgC;YACjE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,0CAA0C,EAC3E;YACA,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,QAAQ,QAAQ,qBAAqB,gBAAgB,sEAAsE,CAC5H,CAAC;YAEF,OAAO;SACR;QAED,+BAA+B;QAC/B,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,eAAe,QAAQ,qBAAqB,gBAAgB;;kFAEgB,CAC7E,CAAC;QACF,OAAO;KACR;IAED,sCAAsC;IACtC,IAAI,CAAC,UAAW,CAAC,WAAW,CAAC,GAAG,0CAA0C,CAAC;IAC3E,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,4BAA4B,QAAQ,sBAAsB,gBAAgB,GAAG,CAAC,CAAC;AACpG,CAAC;AAED,cAAc;AACd,sCAAsC;AACtC,sCAAsC;AACtC,kCAAkC;AAClC,kCAAkC;AAClC,mCAAmC;AACnC,kCAAkC;AAClC,mCAAmC;AAEnC,cAAc;AACd,6EAA6E;AAC7E,6EAA6E;AAC7E,0EAA0E;AAC1E,yEAAyE;AACzE,0EAA0E;AAC1E,yEAAyE;AACzE,0EAA0E;AAC1E,0EAA0E;AAC1E,oEAAoE;AACpE,0EAA0E;AAC1E,SAAgB,6CAA6C,CAC3D,QAAgB,EAChB,IAAsB,EACtB,UAAsB,EACtB,gBAAwB;IAExB,MAAM,UAAU,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC;IAEpC,8CAA8C;IAC9C,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE;QAClC,OAAO,KAAK,CAAC;KACd;IAED,gDAAgD;IAChD,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;QACvC,UAAU,CAAC,KAAK,GAAG,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;QACrE,OAAO,IAAI,CAAC;KACb;IAED,8CAA8C;IAC9C,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,QAAQ,EAAE;QACxC,OAAO,KAAK,CAAC;KACd;IAED,sCAAsC;IACtC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;QAChG,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,0CAA0C,CAAC;QAC3E,OAAO,IAAI,CAAC;KACb;IAED,+BAA+B;IAC/B,yFAAyF;IACzF,IAAI,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE;QAC9C,UAAU,CAAC,GAAG;aACX,GAAG,CAAC,eAAe,QAAQ,qBAAqB,gBAAgB;;sGAE+B,CAAC,CAAC;QAEpG,OAAO,KAAK,CAAC;KACd;IAED,+CAA+C;IAC/C,IACE,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,gCAAgC;QAClE,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,0CAA0C,EAC5E;QACA,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,QAAQ,QAAQ,qBAAqB,gBAAgB,sEAAsE,CAC5H,CAAC;QAEF,OAAO,KAAK,CAAC;KACd;IAED,kCAAkC;IAClC,UAAU,CAAC,GAAG;SACX,GAAG,CAAC,eAAe,QAAQ,qBAAqB,gBAAgB;;+GAE0C,CAAC,CAAC;IAE/G,OAAO,KAAK,CAAC;AACf,CAAC;AA5DD,sGA4DC;AAED,SAAgB,+CAA+C,CAAC,UAAsB;;IACpF,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA,MAAC,UAAU,CAAC,OAAe,CAAC,aAAa,0CAAE,aAAa,KAAI,EAAE,CAAC,CAAC;IACpG,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,UAAU,CAAC,GAAG,CAAC,GAAG,CAChB,+RAA+R,CAChS,CAAC;KACH;AACH,CAAC;AAPD,0GAOC"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "serverless-plugin-datadog",
|
3
|
-
"version": "5.
|
3
|
+
"version": "5.72.0",
|
4
4
|
"description": "Serverless plugin to automatically instrument python and node functions with datadog tracing",
|
5
5
|
"main": "dist/src/index.js",
|
6
6
|
"repository": "https://github.com/DataDog/serverless-plugin-datadog",
|