apitally 0.14.0 → 0.15.0
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/README.md +24 -1
- package/dist/adonisjs/index.cjs +6 -4
- package/dist/adonisjs/index.cjs.map +1 -1
- package/dist/adonisjs/index.d.cts +2 -2
- package/dist/adonisjs/index.d.ts +2 -2
- package/dist/adonisjs/index.js +6 -4
- package/dist/adonisjs/index.js.map +1 -1
- package/dist/adonisjs/middleware.cjs +19 -19
- package/dist/adonisjs/middleware.cjs.map +1 -1
- package/dist/adonisjs/middleware.js +19 -19
- package/dist/adonisjs/middleware.js.map +1 -1
- package/dist/adonisjs/provider.cjs +11 -4
- package/dist/adonisjs/provider.cjs.map +1 -1
- package/dist/adonisjs/provider.js +11 -4
- package/dist/adonisjs/provider.js.map +1 -1
- package/dist/common/client.cjs +5 -0
- package/dist/common/client.cjs.map +1 -1
- package/dist/common/client.js +5 -0
- package/dist/common/client.js.map +1 -1
- package/dist/common/{utils.cjs → headers.cjs} +14 -5
- package/dist/common/headers.cjs.map +1 -0
- package/dist/common/{utils.d.cts → headers.d.cts} +2 -1
- package/dist/common/{utils.d.ts → headers.d.ts} +2 -1
- package/dist/common/{utils.js → headers.js} +10 -2
- package/dist/common/headers.js.map +1 -0
- package/dist/common/requestLogger.cjs +5 -0
- package/dist/common/requestLogger.cjs.map +1 -1
- package/dist/common/requestLogger.d.cts +1 -0
- package/dist/common/requestLogger.d.ts +1 -0
- package/dist/common/requestLogger.js +5 -0
- package/dist/common/requestLogger.js.map +1 -1
- package/dist/common/response.cjs +106 -0
- package/dist/common/response.cjs.map +1 -0
- package/dist/common/response.d.cts +6 -0
- package/dist/common/response.d.ts +6 -0
- package/dist/common/response.js +80 -0
- package/dist/common/response.js.map +1 -0
- package/dist/express/index.cjs +69 -42
- package/dist/express/index.cjs.map +1 -1
- package/dist/express/index.d.cts +2 -2
- package/dist/express/index.d.ts +2 -2
- package/dist/express/index.js +67 -41
- package/dist/express/index.js.map +1 -1
- package/dist/express/middleware.cjs +69 -42
- package/dist/express/middleware.cjs.map +1 -1
- package/dist/express/middleware.d.cts +5 -4
- package/dist/express/middleware.d.ts +5 -4
- package/dist/express/middleware.js +67 -41
- package/dist/express/middleware.js.map +1 -1
- package/dist/fastify/index.cjs +44 -29
- package/dist/fastify/index.cjs.map +1 -1
- package/dist/fastify/index.d.cts +2 -2
- package/dist/fastify/index.d.ts +2 -2
- package/dist/fastify/index.js +41 -27
- package/dist/fastify/index.js.map +1 -1
- package/dist/fastify/plugin.cjs +46 -28
- package/dist/fastify/plugin.cjs.map +1 -1
- package/dist/fastify/plugin.d.cts +3 -2
- package/dist/fastify/plugin.d.ts +3 -2
- package/dist/fastify/plugin.js +41 -27
- package/dist/fastify/plugin.js.map +1 -1
- package/dist/h3/index.cjs +1336 -0
- package/dist/h3/index.cjs.map +1 -0
- package/dist/h3/index.d.cts +9 -0
- package/dist/h3/index.d.ts +9 -0
- package/dist/h3/index.js +1305 -0
- package/dist/h3/index.js.map +1 -0
- package/dist/h3/plugin.cjs +1334 -0
- package/dist/h3/plugin.cjs.map +1 -0
- package/dist/h3/plugin.d.cts +21 -0
- package/dist/h3/plugin.d.ts +21 -0
- package/dist/h3/plugin.js +1305 -0
- package/dist/h3/plugin.js.map +1 -0
- package/dist/h3/utils.cjs +127 -0
- package/dist/h3/utils.cjs.map +1 -0
- package/dist/h3/utils.d.cts +14 -0
- package/dist/h3/utils.d.ts +14 -0
- package/dist/h3/utils.js +107 -0
- package/dist/h3/utils.js.map +1 -0
- package/dist/hono/index.cjs +177 -141
- package/dist/hono/index.cjs.map +1 -1
- package/dist/hono/index.d.cts +2 -2
- package/dist/hono/index.d.ts +2 -2
- package/dist/hono/index.js +175 -140
- package/dist/hono/index.js.map +1 -1
- package/dist/hono/middleware.cjs +177 -141
- package/dist/hono/middleware.cjs.map +1 -1
- package/dist/hono/middleware.d.cts +4 -3
- package/dist/hono/middleware.d.ts +4 -3
- package/dist/hono/middleware.js +175 -140
- package/dist/hono/middleware.js.map +1 -1
- package/dist/hono/utils.cjs +126 -0
- package/dist/hono/utils.cjs.map +1 -0
- package/dist/hono/utils.d.cts +14 -0
- package/dist/hono/utils.d.ts +14 -0
- package/dist/hono/utils.js +106 -0
- package/dist/hono/utils.js.map +1 -0
- package/dist/koa/index.cjs +41 -17
- package/dist/koa/index.cjs.map +1 -1
- package/dist/koa/index.d.cts +2 -2
- package/dist/koa/index.d.ts +2 -2
- package/dist/koa/index.js +40 -17
- package/dist/koa/index.js.map +1 -1
- package/dist/koa/middleware.cjs +41 -17
- package/dist/koa/middleware.cjs.map +1 -1
- package/dist/koa/middleware.d.cts +4 -3
- package/dist/koa/middleware.d.ts +4 -3
- package/dist/koa/middleware.js +40 -17
- package/dist/koa/middleware.js.map +1 -1
- package/dist/nestjs/index.cjs +66 -44
- package/dist/nestjs/index.cjs.map +1 -1
- package/dist/nestjs/index.d.cts +2 -2
- package/dist/nestjs/index.d.ts +2 -2
- package/dist/nestjs/index.js +65 -43
- package/dist/nestjs/index.js.map +1 -1
- package/package.json +21 -2
- package/dist/common/utils.cjs.map +0 -1
- package/dist/common/utils.js.map +0 -1
package/dist/hono/middleware.js
CHANGED
|
@@ -10,7 +10,6 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
10
10
|
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
11
11
|
|
|
12
12
|
// src/hono/middleware.ts
|
|
13
|
-
import { isMiddleware } from "hono/utils/handler";
|
|
14
13
|
import { performance } from "perf_hooks";
|
|
15
14
|
|
|
16
15
|
// src/common/client.ts
|
|
@@ -377,6 +376,8 @@ var BODY_MASKED = Buffer3.from("<masked>");
|
|
|
377
376
|
var MASKED = "******";
|
|
378
377
|
var ALLOWED_CONTENT_TYPES = [
|
|
379
378
|
"application/json",
|
|
379
|
+
"application/problem+json",
|
|
380
|
+
"application/vnd.api+json",
|
|
380
381
|
"text/plain"
|
|
381
382
|
];
|
|
382
383
|
var EXCLUDE_PATH_PATTERNS = [
|
|
@@ -441,6 +442,9 @@ var _RequestLogger = class _RequestLogger {
|
|
|
441
442
|
}, 1e3);
|
|
442
443
|
}
|
|
443
444
|
}
|
|
445
|
+
get maxBodySize() {
|
|
446
|
+
return MAX_BODY_SIZE;
|
|
447
|
+
}
|
|
444
448
|
shouldExcludePath(urlPath) {
|
|
445
449
|
const patterns = [
|
|
446
450
|
...this.config.excludePaths,
|
|
@@ -995,24 +999,7 @@ __name(_ApitallyClient, "ApitallyClient");
|
|
|
995
999
|
__publicField(_ApitallyClient, "instance");
|
|
996
1000
|
var ApitallyClient = _ApitallyClient;
|
|
997
1001
|
|
|
998
|
-
// src/common/
|
|
999
|
-
import { createRequire } from "module";
|
|
1000
|
-
function getPackageVersion(name) {
|
|
1001
|
-
const packageJsonPath = `${name}/package.json`;
|
|
1002
|
-
try {
|
|
1003
|
-
return __require(packageJsonPath).version || null;
|
|
1004
|
-
} catch (error) {
|
|
1005
|
-
try {
|
|
1006
|
-
const _require = createRequire(import.meta.url);
|
|
1007
|
-
return _require(packageJsonPath).version || null;
|
|
1008
|
-
} catch (error2) {
|
|
1009
|
-
return null;
|
|
1010
|
-
}
|
|
1011
|
-
}
|
|
1012
|
-
}
|
|
1013
|
-
__name(getPackageVersion, "getPackageVersion");
|
|
1014
|
-
|
|
1015
|
-
// src/common/utils.ts
|
|
1002
|
+
// src/common/headers.ts
|
|
1016
1003
|
function parseContentLength(contentLength) {
|
|
1017
1004
|
if (contentLength === void 0 || contentLength === null) {
|
|
1018
1005
|
return void 0;
|
|
@@ -1031,102 +1018,8 @@ function parseContentLength(contentLength) {
|
|
|
1031
1018
|
}
|
|
1032
1019
|
__name(parseContentLength, "parseContentLength");
|
|
1033
1020
|
|
|
1034
|
-
// src/
|
|
1035
|
-
|
|
1036
|
-
const client = new ApitallyClient(config);
|
|
1037
|
-
const middleware = getMiddleware(client);
|
|
1038
|
-
app.use(middleware);
|
|
1039
|
-
setTimeout(() => {
|
|
1040
|
-
client.setStartupData(getAppInfo(app, config.appVersion));
|
|
1041
|
-
}, 1e3);
|
|
1042
|
-
}, "useApitally");
|
|
1043
|
-
var getMiddleware = /* @__PURE__ */ __name((client) => {
|
|
1044
|
-
return async (c, next) => {
|
|
1045
|
-
if (!client.isEnabled()) {
|
|
1046
|
-
await next();
|
|
1047
|
-
return;
|
|
1048
|
-
}
|
|
1049
|
-
const startTime = performance.now();
|
|
1050
|
-
await next();
|
|
1051
|
-
let response;
|
|
1052
|
-
const responseTime = performance.now() - startTime;
|
|
1053
|
-
const [responseSize, newResponse] = await measureResponseSize(c.res);
|
|
1054
|
-
const requestSize = parseContentLength(c.req.header("content-length"));
|
|
1055
|
-
const consumer = getConsumer(c);
|
|
1056
|
-
client.consumerRegistry.addOrUpdateConsumer(consumer);
|
|
1057
|
-
client.requestCounter.addRequest({
|
|
1058
|
-
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1059
|
-
method: c.req.method,
|
|
1060
|
-
path: c.req.routePath,
|
|
1061
|
-
statusCode: c.res.status,
|
|
1062
|
-
responseTime,
|
|
1063
|
-
requestSize,
|
|
1064
|
-
responseSize
|
|
1065
|
-
});
|
|
1066
|
-
response = newResponse;
|
|
1067
|
-
if (c.res.status === 400) {
|
|
1068
|
-
const [responseJson, newResponse2] = await getResponseJson(response);
|
|
1069
|
-
const validationErrors = extractZodErrors(responseJson);
|
|
1070
|
-
validationErrors.forEach((error) => {
|
|
1071
|
-
client.validationErrorCounter.addValidationError({
|
|
1072
|
-
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1073
|
-
method: c.req.method,
|
|
1074
|
-
path: c.req.routePath,
|
|
1075
|
-
...error
|
|
1076
|
-
});
|
|
1077
|
-
});
|
|
1078
|
-
response = newResponse2;
|
|
1079
|
-
}
|
|
1080
|
-
if (c.error) {
|
|
1081
|
-
client.serverErrorCounter.addServerError({
|
|
1082
|
-
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1083
|
-
method: c.req.method,
|
|
1084
|
-
path: c.req.routePath,
|
|
1085
|
-
type: c.error.name,
|
|
1086
|
-
msg: c.error.message,
|
|
1087
|
-
traceback: c.error.stack || ""
|
|
1088
|
-
});
|
|
1089
|
-
}
|
|
1090
|
-
if (client.requestLogger.enabled) {
|
|
1091
|
-
let requestBody;
|
|
1092
|
-
let responseBody;
|
|
1093
|
-
let newResponse2 = response;
|
|
1094
|
-
const responseContentType = c.res.headers.get("content-type");
|
|
1095
|
-
if (client.requestLogger.config.logRequestBody) {
|
|
1096
|
-
requestBody = Buffer.from(await c.req.arrayBuffer());
|
|
1097
|
-
}
|
|
1098
|
-
if (client.requestLogger.config.logResponseBody && client.requestLogger.isSupportedContentType(responseContentType)) {
|
|
1099
|
-
[responseBody, newResponse2] = await getResponseBody(response);
|
|
1100
|
-
response = newResponse2;
|
|
1101
|
-
}
|
|
1102
|
-
client.requestLogger.logRequest({
|
|
1103
|
-
timestamp: Date.now() / 1e3,
|
|
1104
|
-
method: c.req.method,
|
|
1105
|
-
path: c.req.routePath,
|
|
1106
|
-
url: c.req.url,
|
|
1107
|
-
headers: convertHeaders(c.req.header()),
|
|
1108
|
-
size: Number(requestSize),
|
|
1109
|
-
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1110
|
-
body: requestBody
|
|
1111
|
-
}, {
|
|
1112
|
-
statusCode: c.res.status,
|
|
1113
|
-
responseTime: responseTime / 1e3,
|
|
1114
|
-
headers: convertHeaders(c.res.headers),
|
|
1115
|
-
size: responseSize,
|
|
1116
|
-
body: responseBody
|
|
1117
|
-
}, c.error);
|
|
1118
|
-
}
|
|
1119
|
-
c.res = response;
|
|
1120
|
-
};
|
|
1121
|
-
}, "getMiddleware");
|
|
1122
|
-
var getConsumer = /* @__PURE__ */ __name((c) => {
|
|
1123
|
-
const consumer = c.get("apitallyConsumer");
|
|
1124
|
-
if (consumer) {
|
|
1125
|
-
return consumerFromStringOrObject(consumer);
|
|
1126
|
-
}
|
|
1127
|
-
return null;
|
|
1128
|
-
}, "getConsumer");
|
|
1129
|
-
var measureResponseSize = /* @__PURE__ */ __name(async (response) => {
|
|
1021
|
+
// src/common/response.ts
|
|
1022
|
+
async function measureResponseSize(response) {
|
|
1130
1023
|
const [newResponse1, newResponse2] = await teeResponse(response);
|
|
1131
1024
|
let size = 0;
|
|
1132
1025
|
if (newResponse2.body) {
|
|
@@ -1144,18 +1037,20 @@ var measureResponseSize = /* @__PURE__ */ __name(async (response) => {
|
|
|
1144
1037
|
size,
|
|
1145
1038
|
newResponse1
|
|
1146
1039
|
];
|
|
1147
|
-
}
|
|
1148
|
-
|
|
1040
|
+
}
|
|
1041
|
+
__name(measureResponseSize, "measureResponseSize");
|
|
1042
|
+
async function getResponseBody(response) {
|
|
1149
1043
|
const [newResponse1, newResponse2] = await teeResponse(response);
|
|
1150
1044
|
const responseBuffer = Buffer.from(await newResponse2.arrayBuffer());
|
|
1151
1045
|
return [
|
|
1152
1046
|
responseBuffer,
|
|
1153
1047
|
newResponse1
|
|
1154
1048
|
];
|
|
1155
|
-
}
|
|
1156
|
-
|
|
1049
|
+
}
|
|
1050
|
+
__name(getResponseBody, "getResponseBody");
|
|
1051
|
+
async function getResponseJson(response) {
|
|
1157
1052
|
const contentType = response.headers.get("content-type");
|
|
1158
|
-
if (contentType
|
|
1053
|
+
if (contentType == null ? void 0 : contentType.includes("application/json")) {
|
|
1159
1054
|
const [newResponse1, newResponse2] = await teeResponse(response);
|
|
1160
1055
|
const responseJson = await newResponse2.json();
|
|
1161
1056
|
return [
|
|
@@ -1167,8 +1062,9 @@ var getResponseJson = /* @__PURE__ */ __name(async (response) => {
|
|
|
1167
1062
|
null,
|
|
1168
1063
|
response
|
|
1169
1064
|
];
|
|
1170
|
-
}
|
|
1171
|
-
|
|
1065
|
+
}
|
|
1066
|
+
__name(getResponseJson, "getResponseJson");
|
|
1067
|
+
async function teeResponse(response) {
|
|
1172
1068
|
if (!response.body) {
|
|
1173
1069
|
return [
|
|
1174
1070
|
response,
|
|
@@ -1190,22 +1086,31 @@ var teeResponse = /* @__PURE__ */ __name(async (response) => {
|
|
|
1190
1086
|
newResponse1,
|
|
1191
1087
|
newResponse2
|
|
1192
1088
|
];
|
|
1193
|
-
}
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1204
|
-
|
|
1089
|
+
}
|
|
1090
|
+
__name(teeResponse, "teeResponse");
|
|
1091
|
+
|
|
1092
|
+
// src/hono/utils.ts
|
|
1093
|
+
import { isMiddleware } from "hono/utils/handler";
|
|
1094
|
+
|
|
1095
|
+
// src/common/packageVersions.ts
|
|
1096
|
+
import { createRequire } from "module";
|
|
1097
|
+
function getPackageVersion(name) {
|
|
1098
|
+
const packageJsonPath = `${name}/package.json`;
|
|
1099
|
+
try {
|
|
1100
|
+
return __require(packageJsonPath).version || null;
|
|
1101
|
+
} catch (error) {
|
|
1102
|
+
try {
|
|
1103
|
+
const _require = createRequire(import.meta.url);
|
|
1104
|
+
return _require(packageJsonPath).version || null;
|
|
1105
|
+
} catch (error2) {
|
|
1106
|
+
return null;
|
|
1107
|
+
}
|
|
1205
1108
|
}
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1109
|
+
}
|
|
1110
|
+
__name(getPackageVersion, "getPackageVersion");
|
|
1111
|
+
|
|
1112
|
+
// src/hono/utils.ts
|
|
1113
|
+
function getAppInfo(app, appVersion) {
|
|
1209
1114
|
const versions = [];
|
|
1210
1115
|
if (process.versions.node) {
|
|
1211
1116
|
versions.push([
|
|
@@ -1244,8 +1149,9 @@ var getAppInfo = /* @__PURE__ */ __name((app, appVersion) => {
|
|
|
1244
1149
|
versions: Object.fromEntries(versions),
|
|
1245
1150
|
client: "js:hono"
|
|
1246
1151
|
};
|
|
1247
|
-
}
|
|
1248
|
-
|
|
1152
|
+
}
|
|
1153
|
+
__name(getAppInfo, "getAppInfo");
|
|
1154
|
+
function listEndpoints(app) {
|
|
1249
1155
|
const endpoints = [];
|
|
1250
1156
|
app.routes.forEach((route) => {
|
|
1251
1157
|
if (route.method !== "ALL" && !isMiddleware(route.handler)) {
|
|
@@ -1256,8 +1162,137 @@ var listEndpoints = /* @__PURE__ */ __name((app) => {
|
|
|
1256
1162
|
}
|
|
1257
1163
|
});
|
|
1258
1164
|
return endpoints;
|
|
1259
|
-
}
|
|
1165
|
+
}
|
|
1166
|
+
__name(listEndpoints, "listEndpoints");
|
|
1167
|
+
function extractZodErrors(responseJson) {
|
|
1168
|
+
var _a2;
|
|
1169
|
+
const errors = [];
|
|
1170
|
+
if (responseJson && responseJson.success === false && responseJson.error && responseJson.error.name === "ZodError") {
|
|
1171
|
+
const zodError = responseJson.error;
|
|
1172
|
+
(_a2 = zodError.issues) == null ? void 0 : _a2.forEach((zodIssue) => {
|
|
1173
|
+
errors.push({
|
|
1174
|
+
loc: zodIssue.path.join("."),
|
|
1175
|
+
msg: zodIssue.message,
|
|
1176
|
+
type: zodIssue.code
|
|
1177
|
+
});
|
|
1178
|
+
});
|
|
1179
|
+
}
|
|
1180
|
+
return errors;
|
|
1181
|
+
}
|
|
1182
|
+
__name(extractZodErrors, "extractZodErrors");
|
|
1183
|
+
|
|
1184
|
+
// src/hono/middleware.ts
|
|
1185
|
+
function useApitally(app, config) {
|
|
1186
|
+
const client = new ApitallyClient(config);
|
|
1187
|
+
const middleware = getMiddleware(client);
|
|
1188
|
+
app.use(middleware);
|
|
1189
|
+
const setStartupData = /* @__PURE__ */ __name((attempt = 1) => {
|
|
1190
|
+
const appInfo = getAppInfo(app, config.appVersion);
|
|
1191
|
+
if (appInfo.paths.length > 0 || attempt >= 10) {
|
|
1192
|
+
client.setStartupData(appInfo);
|
|
1193
|
+
} else {
|
|
1194
|
+
setTimeout(() => setStartupData(attempt + 1), 500);
|
|
1195
|
+
}
|
|
1196
|
+
}, "setStartupData");
|
|
1197
|
+
setTimeout(() => setStartupData(), 500);
|
|
1198
|
+
}
|
|
1199
|
+
__name(useApitally, "useApitally");
|
|
1200
|
+
function getMiddleware(client) {
|
|
1201
|
+
return async (c, next) => {
|
|
1202
|
+
if (!client.isEnabled()) {
|
|
1203
|
+
await next();
|
|
1204
|
+
return;
|
|
1205
|
+
}
|
|
1206
|
+
const timestamp = Date.now() / 1e3;
|
|
1207
|
+
const startTime = performance.now();
|
|
1208
|
+
await next();
|
|
1209
|
+
let response;
|
|
1210
|
+
const responseTime = performance.now() - startTime;
|
|
1211
|
+
const [responseSize, newResponse] = await measureResponseSize(c.res);
|
|
1212
|
+
const requestSize = parseContentLength(c.req.header("content-length"));
|
|
1213
|
+
const consumer = getConsumer(c);
|
|
1214
|
+
client.consumerRegistry.addOrUpdateConsumer(consumer);
|
|
1215
|
+
client.requestCounter.addRequest({
|
|
1216
|
+
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1217
|
+
method: c.req.method,
|
|
1218
|
+
path: c.req.routePath,
|
|
1219
|
+
statusCode: c.res.status,
|
|
1220
|
+
responseTime,
|
|
1221
|
+
requestSize,
|
|
1222
|
+
responseSize
|
|
1223
|
+
});
|
|
1224
|
+
response = newResponse;
|
|
1225
|
+
if (c.res.status === 400) {
|
|
1226
|
+
const [responseJson, newResponse2] = await getResponseJson(response);
|
|
1227
|
+
const validationErrors = extractZodErrors(responseJson);
|
|
1228
|
+
validationErrors.forEach((error) => {
|
|
1229
|
+
client.validationErrorCounter.addValidationError({
|
|
1230
|
+
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1231
|
+
method: c.req.method,
|
|
1232
|
+
path: c.req.routePath,
|
|
1233
|
+
...error
|
|
1234
|
+
});
|
|
1235
|
+
});
|
|
1236
|
+
response = newResponse2;
|
|
1237
|
+
}
|
|
1238
|
+
if (c.error) {
|
|
1239
|
+
client.serverErrorCounter.addServerError({
|
|
1240
|
+
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1241
|
+
method: c.req.method,
|
|
1242
|
+
path: c.req.routePath,
|
|
1243
|
+
type: c.error.name,
|
|
1244
|
+
msg: c.error.message,
|
|
1245
|
+
traceback: c.error.stack || ""
|
|
1246
|
+
});
|
|
1247
|
+
}
|
|
1248
|
+
if (client.requestLogger.enabled) {
|
|
1249
|
+
let requestBody;
|
|
1250
|
+
let responseBody;
|
|
1251
|
+
let newResponse2 = response;
|
|
1252
|
+
const requestContentType = c.req.header("content-type");
|
|
1253
|
+
const responseContentType = c.res.headers.get("content-type");
|
|
1254
|
+
if (client.requestLogger.config.logRequestBody && client.requestLogger.isSupportedContentType(requestContentType)) {
|
|
1255
|
+
requestBody = Buffer.from(await c.req.arrayBuffer());
|
|
1256
|
+
}
|
|
1257
|
+
if (client.requestLogger.config.logResponseBody && client.requestLogger.isSupportedContentType(responseContentType)) {
|
|
1258
|
+
[responseBody, newResponse2] = await getResponseBody(response);
|
|
1259
|
+
response = newResponse2;
|
|
1260
|
+
}
|
|
1261
|
+
client.requestLogger.logRequest({
|
|
1262
|
+
timestamp,
|
|
1263
|
+
method: c.req.method,
|
|
1264
|
+
path: c.req.routePath,
|
|
1265
|
+
url: c.req.url,
|
|
1266
|
+
headers: convertHeaders(c.req.header()),
|
|
1267
|
+
size: Number(requestSize),
|
|
1268
|
+
consumer: consumer == null ? void 0 : consumer.identifier,
|
|
1269
|
+
body: requestBody
|
|
1270
|
+
}, {
|
|
1271
|
+
statusCode: c.res.status,
|
|
1272
|
+
responseTime: responseTime / 1e3,
|
|
1273
|
+
headers: convertHeaders(c.res.headers),
|
|
1274
|
+
size: responseSize,
|
|
1275
|
+
body: responseBody
|
|
1276
|
+
}, c.error);
|
|
1277
|
+
}
|
|
1278
|
+
c.res = response;
|
|
1279
|
+
};
|
|
1280
|
+
}
|
|
1281
|
+
__name(getMiddleware, "getMiddleware");
|
|
1282
|
+
function setConsumer(c, consumer) {
|
|
1283
|
+
c.set("apitallyConsumer", consumer || void 0);
|
|
1284
|
+
}
|
|
1285
|
+
__name(setConsumer, "setConsumer");
|
|
1286
|
+
function getConsumer(c) {
|
|
1287
|
+
const consumer = c.get("apitallyConsumer");
|
|
1288
|
+
if (consumer) {
|
|
1289
|
+
return consumerFromStringOrObject(consumer);
|
|
1290
|
+
}
|
|
1291
|
+
return null;
|
|
1292
|
+
}
|
|
1293
|
+
__name(getConsumer, "getConsumer");
|
|
1260
1294
|
export {
|
|
1295
|
+
setConsumer,
|
|
1261
1296
|
useApitally
|
|
1262
1297
|
};
|
|
1263
1298
|
//# sourceMappingURL=middleware.js.map
|