@shuvi/service 1.0.32 → 1.0.33

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.
@@ -8,6 +8,8 @@ const util_1 = require("util");
8
8
  const utils_1 = require("@shuvi/utils");
9
9
  const invariant_1 = __importDefault(require("@shuvi/utils/invariant"));
10
10
  const router_1 = require("@shuvi/router");
11
+ const trace_1 = require("../trace");
12
+ const trace_2 = require("@shuvi/shared/constants/trace");
11
13
  class RouterImpl {
12
14
  constructor(options) {
13
15
  this._routes = [];
@@ -35,6 +37,9 @@ class RouterImpl {
35
37
  return this;
36
38
  }
37
39
  handleRequest(req, res, out) {
40
+ trace_1.serverRequestTrace
41
+ .traceChild(trace_2.SERVER_REQUEST.events.SHUVI_SERVER_HANDLE_REQUEST_START.name)
42
+ .stop();
38
43
  let index = 0;
39
44
  let done = err => out(err);
40
45
  const next = err => {
@@ -10,10 +10,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.getAssetMiddleware = void 0;
13
+ const trace_1 = require("@shuvi/shared/constants/trace");
13
14
  const constants_1 = require("../../constants");
14
15
  const utils_1 = require("../utils");
16
+ const { SHUVI_SERVER_RUN_ASSET_MIDDLEWARE } = trace_1.SERVER_REQUEST.events;
15
17
  const getAssetMiddleware = (context) => {
16
18
  return (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
19
+ const { serverRequestTrace } = context.traces;
17
20
  const candidatePaths = [];
18
21
  try {
19
22
  const fullUrl = new URL(req.url, `http://${req.headers.host}`);
@@ -43,9 +46,16 @@ const getAssetMiddleware = (context) => {
43
46
  if (!(0, utils_1.isStaticFileExist)(assetAbsPath)) {
44
47
  continue;
45
48
  }
49
+ const runAssetMiddlewareTrace = serverRequestTrace.traceChild(SHUVI_SERVER_RUN_ASSET_MIDDLEWARE.name);
46
50
  let err = null;
47
51
  try {
48
- return yield (0, utils_1.serveStatic)(req, res, assetAbsPath);
52
+ yield (0, utils_1.serveStatic)(req, res, assetAbsPath);
53
+ runAssetMiddlewareTrace.setAttributes({
54
+ [SHUVI_SERVER_RUN_ASSET_MIDDLEWARE.attrs.error.name]: false,
55
+ [SHUVI_SERVER_RUN_ASSET_MIDDLEWARE.attrs.statusCode.name]: res.statusCode
56
+ });
57
+ runAssetMiddlewareTrace.stop();
58
+ return;
49
59
  }
50
60
  catch (error) {
51
61
  if (error.code === 'ENOENT') {
@@ -54,6 +64,11 @@ const getAssetMiddleware = (context) => {
54
64
  err = error;
55
65
  }
56
66
  if (err) {
67
+ runAssetMiddlewareTrace.setAttributes({
68
+ [SHUVI_SERVER_RUN_ASSET_MIDDLEWARE.attrs.error.name]: true,
69
+ [SHUVI_SERVER_RUN_ASSET_MIDDLEWARE.attrs.statusCode.name]: (err === null || err === void 0 ? void 0 : err.statusCode) || res.statusCode
70
+ });
71
+ runAssetMiddlewareTrace.stop();
57
72
  return next(err);
58
73
  }
59
74
  }
@@ -18,8 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.initServerPlugins = exports.createServerPluginAfter = exports.createServerPlugin = exports.createServerPluginBefore = exports.getManager = void 0;
19
19
  const hook_1 = require("@shuvi/hook");
20
20
  const plugins_1 = require("@shuvi/shared/plugins");
21
- const trace_1 = require("@shuvi/shared/constants/trace");
22
- const trace_2 = require("../trace");
21
+ const trace_1 = require("./trace");
23
22
  __exportStar(require("./pluginTypes"), exports);
24
23
  const listen = (0, hook_1.createAsyncParallelHook)();
25
24
  const internalHooks = {
@@ -32,8 +31,8 @@ const initServerPlugins = (manager, serverPlugins, pluginContext) => {
32
31
  const serverContext = Object.assign({
33
32
  serverPluginRunner: manager.runner,
34
33
  traces: {
35
- serverCreateAppTrace: (0, trace_2.trace)(trace_1.SERVER_CREATE_APP.name),
36
- serverRequestTrace: (0, trace_2.trace)(trace_1.SERVER_REQUEST.name)
34
+ serverCreateAppTrace: trace_1.serverCreateAppTrace,
35
+ serverRequestTrace: trace_1.serverRequestTrace
37
36
  }
38
37
  }, pluginContext);
39
38
  manager.setContext(serverContext);
@@ -10,7 +10,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ShuviServer = void 0;
13
- const trace_1 = require("@shuvi/shared/constants/trace");
14
13
  const string_1 = require("@shuvi/utils/string");
15
14
  const serverMiddleware_1 = require("./serverMiddleware");
16
15
  const http_server_1 = require("./http-server");
@@ -40,9 +39,6 @@ class ShuviServer {
40
39
  return __awaiter(this, void 0, void 0, function* () {
41
40
  const { _serverContext: context, _server: server } = this;
42
41
  server.use(((req, resp, next) => {
43
- context.traces.serverRequestTrace
44
- .traceChild(trace_1.SERVER_REQUEST.events.SHUVI_SERVER_HANDLE_REQUEST_START.name)
45
- .stop();
46
42
  this._normalizeReq(req);
47
43
  this._normalizeResp(resp);
48
44
  next();
@@ -0,0 +1,2 @@
1
+ export declare const serverCreateAppTrace: import("../trace").Span;
2
+ export declare const serverRequestTrace: import("../trace").Span;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.serverRequestTrace = exports.serverCreateAppTrace = void 0;
4
+ const trace_1 = require("@shuvi/shared/constants/trace");
5
+ const trace_2 = require("../trace");
6
+ exports.serverCreateAppTrace = (0, trace_2.trace)(trace_1.SERVER_CREATE_APP.name);
7
+ exports.serverRequestTrace = (0, trace_2.trace)(trace_1.SERVER_REQUEST.name);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shuvi/service",
3
- "version": "1.0.32",
3
+ "version": "1.0.33",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/shuvijs/shuvi.git",
@@ -29,14 +29,14 @@
29
29
  "@babel/generator": "7.14.5",
30
30
  "@babel/parser": "7.14.7",
31
31
  "@babel/traverse": "7.14.7",
32
- "@shuvi/hook": "1.0.32",
33
- "@shuvi/router": "1.0.32",
34
- "@shuvi/runtime": "1.0.32",
35
- "@shuvi/shared": "1.0.32",
36
- "@shuvi/toolpack": "1.0.32",
37
- "@shuvi/utils": "1.0.32",
38
- "@shuvi/error-overlay": "1.0.32",
39
- "@shuvi/reporters": "1.0.32",
32
+ "@shuvi/hook": "1.0.33",
33
+ "@shuvi/router": "1.0.33",
34
+ "@shuvi/runtime": "1.0.33",
35
+ "@shuvi/shared": "1.0.33",
36
+ "@shuvi/toolpack": "1.0.33",
37
+ "@shuvi/utils": "1.0.33",
38
+ "@shuvi/error-overlay": "1.0.33",
39
+ "@shuvi/reporters": "1.0.33",
40
40
  "commander": "5.1.0",
41
41
  "comment-json": "4.2.2",
42
42
  "cross-spawn": "7.0.3",