@forge/bundler 4.5.1-next.3 → 4.6.0-next.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # @forge/bundler
2
2
 
3
+ ## 4.6.0-next.4
4
+
5
+ ### Minor Changes
6
+
7
+ - 82ea466: Add metrics for NodeJS runtime
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies [82ea466]
12
+ - @forge/api@2.12.0-next.1
13
+
3
14
  ## 4.5.1-next.3
4
15
 
5
16
  ### Patch Changes
@@ -19,11 +19,14 @@ const adapter = (name) => {
19
19
  var _a, _b;
20
20
  const event = lambdaEvent.body;
21
21
  const context = (0, runtime_1.setupRequestContext)({ meta: lambdaEvent._meta, handler: lambdaEvent.handler });
22
+ const metricsCollector = new runtime_1.MetricsCollector(new runtime_1.InMemoryMetrics({ runtime: 'nodejs' }));
23
+ const metrics = metricsCollector.metrics();
22
24
  const runtime = {
23
25
  proxy: lambdaEvent._meta.proxy,
24
26
  contextAri: lambdaEvent._meta.contextAri,
25
27
  allowedEgress: (_a = lambdaEvent._meta.fetchAllowList) !== null && _a !== void 0 ? _a : [],
26
- lambdaContext: lambdaContext
28
+ lambdaContext: lambdaContext,
29
+ metrics
27
30
  };
28
31
  global.__forge_runtime__ = runtime;
29
32
  for (const { key, value } of (_b = lambdaEvent.variables) !== null && _b !== void 0 ? _b : []) {
@@ -35,12 +38,19 @@ const adapter = (name) => {
35
38
  global.console[method] = (0, console_1.forgeConsole)(method, header);
36
39
  }
37
40
  const bundled = realRequire(wrappedFilename);
38
- const result = await bundled[name](event, context);
41
+ const timer = metrics.timing('invoke').measure();
42
+ let result;
43
+ try {
44
+ result = await bundled[name](event, context);
45
+ }
46
+ finally {
47
+ timer.stop();
48
+ }
39
49
  (0, log_events_1.emitSuccessfulFooterEvent)();
40
50
  return {
41
51
  success: true,
42
52
  body: result,
43
- metrics: []
53
+ metrics: metricsCollector.collectMetrics()
44
54
  };
45
55
  }
46
56
  catch (err) {
@@ -56,7 +66,7 @@ const adapter = (name) => {
56
66
  stack: (err.stack || '').split('\n'),
57
67
  serviceKey: err.serviceKey
58
68
  },
59
- metrics: []
69
+ metrics: metricsCollector.collectMetrics()
60
70
  };
61
71
  }
62
72
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/bundler",
3
- "version": "4.5.1-next.3",
3
+ "version": "4.6.0-next.4",
4
4
  "description": "Default bundler for Forge apps",
5
5
  "license": "UNLICENSED",
6
6
  "author": "Atlassian",
@@ -18,7 +18,7 @@
18
18
  "@babel/plugin-proposal-optional-chaining": "^7.16.7",
19
19
  "@babel/plugin-transform-react-jsx": "^7.16.7",
20
20
  "@babel/preset-typescript": "^7.16.7",
21
- "@forge/api": "2.12.0-next.0",
21
+ "@forge/api": "2.12.0-next.1",
22
22
  "@forge/babel-plugin-transform-ui": "1.1.1",
23
23
  "@forge/cli-shared": "3.6.2-next.1",
24
24
  "@forge/lint": "3.2.16-next.1",