@vtex/api 6.48.0 → 6.48.1-beta.2
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/gen/manifest.schema +2 -3
- package/lib/HttpClient/GraphQLClient.d.ts +1 -1
- package/lib/HttpClient/GraphQLClient.js +1 -0
- package/lib/HttpClient/HttpClient.d.ts +4 -3
- package/lib/HttpClient/HttpClient.js +15 -14
- package/lib/HttpClient/agents.d.ts +5 -2
- package/lib/HttpClient/agents.js +23 -4
- package/lib/HttpClient/index.js +22 -10
- package/lib/HttpClient/middlewares/cache.d.ts +1 -1
- package/lib/HttpClient/middlewares/cache.js +48 -42
- package/lib/HttpClient/middlewares/cancellationToken.d.ts +1 -1
- package/lib/HttpClient/middlewares/cancellationToken.js +3 -1
- package/lib/HttpClient/middlewares/inflight.d.ts +1 -1
- package/lib/HttpClient/middlewares/inflight.js +7 -3
- package/lib/HttpClient/middlewares/memoization.d.ts +1 -1
- package/lib/HttpClient/middlewares/memoization.js +10 -8
- package/lib/HttpClient/middlewares/metrics.js +13 -7
- package/lib/HttpClient/middlewares/notFound.d.ts +1 -1
- package/lib/HttpClient/middlewares/notFound.js +5 -2
- package/lib/HttpClient/middlewares/recorder.js +7 -1
- package/lib/HttpClient/middlewares/request/HttpAgentSingleton.js +2 -1
- package/lib/HttpClient/middlewares/request/index.d.ts +1 -1
- package/lib/HttpClient/middlewares/request/index.js +13 -9
- package/lib/HttpClient/middlewares/request/setupAxios/index.js +6 -4
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/exponentialBackoff.js +7 -5
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/index.js +4 -3
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/index.js +9 -6
- package/lib/HttpClient/middlewares/request/setupAxios/interceptors/tracing/spanSetup.js +10 -7
- package/lib/HttpClient/middlewares/tracing.js +16 -10
- package/lib/HttpClient/typings.d.ts +3 -3
- package/lib/HttpClient/typings.js +1 -0
- package/lib/caches/DiskCache.d.ts +1 -1
- package/lib/caches/DiskCache.js +3 -2
- package/lib/caches/LRUCache.d.ts +3 -3
- package/lib/caches/LRUCache.js +1 -0
- package/lib/caches/LRUDiskCache.d.ts +2 -2
- package/lib/caches/LRUDiskCache.js +3 -2
- package/lib/caches/MultilayeredCache.d.ts +2 -2
- package/lib/caches/MultilayeredCache.js +8 -7
- package/lib/caches/index.js +20 -7
- package/lib/caches/typings.d.ts +5 -5
- package/lib/clients/IOClient.d.ts +1 -1
- package/lib/clients/IOClient.js +1 -0
- package/lib/clients/IOClients.d.ts +1 -1
- package/lib/clients/IOClients.js +1 -0
- package/lib/clients/IOGraphQLClient.js +1 -0
- package/lib/clients/apps/AppClient.js +2 -1
- package/lib/clients/apps/AppGraphQLClient.js +2 -1
- package/lib/clients/apps/Billing.d.ts +1 -1
- package/lib/clients/apps/Billing.js +1 -0
- package/lib/clients/apps/Builder.d.ts +7 -7
- package/lib/clients/apps/Builder.js +2 -1
- package/lib/clients/apps/MessagesGraphQL.d.ts +1 -1
- package/lib/clients/apps/MessagesGraphQL.js +4 -3
- package/lib/clients/apps/Settings.js +4 -3
- package/lib/clients/apps/catalogGraphQL/brand.js +1 -0
- package/lib/clients/apps/catalogGraphQL/category.js +1 -0
- package/lib/clients/apps/catalogGraphQL/index.d.ts +4 -4
- package/lib/clients/apps/catalogGraphQL/index.js +5 -4
- package/lib/clients/apps/catalogGraphQL/product.js +1 -0
- package/lib/clients/apps/catalogGraphQL/sku.js +1 -0
- package/lib/clients/apps/index.js +21 -10
- package/lib/clients/external/ExternalClient.js +1 -0
- package/lib/clients/external/ID.d.ts +4 -4
- package/lib/clients/external/ID.js +1 -0
- package/lib/clients/external/Masterdata.js +1 -0
- package/lib/clients/external/PaymentProvider.d.ts +2 -2
- package/lib/clients/external/PaymentProvider.js +1 -0
- package/lib/clients/external/index.js +18 -7
- package/lib/clients/index.js +22 -10
- package/lib/clients/infra/Apps.d.ts +32 -27
- package/lib/clients/infra/Apps.js +19 -16
- package/lib/clients/infra/Assets.d.ts +6 -5
- package/lib/clients/infra/Assets.js +12 -11
- package/lib/clients/infra/BillingMetrics.d.ts +1 -1
- package/lib/clients/infra/BillingMetrics.js +1 -0
- package/lib/clients/infra/Events.d.ts +1 -1
- package/lib/clients/infra/Events.js +2 -1
- package/lib/clients/infra/Housekeeper.d.ts +3 -3
- package/lib/clients/infra/Housekeeper.js +1 -0
- package/lib/clients/infra/InfraClient.js +1 -0
- package/lib/clients/infra/Registry.d.ts +23 -17
- package/lib/clients/infra/Registry.js +5 -3
- package/lib/clients/infra/Router.d.ts +8 -8
- package/lib/clients/infra/Router.js +1 -0
- package/lib/clients/infra/Sphinx.d.ts +2 -2
- package/lib/clients/infra/Sphinx.js +1 -0
- package/lib/clients/infra/VBase.d.ts +15 -14
- package/lib/clients/infra/VBase.js +4 -3
- package/lib/clients/infra/Workspaces.d.ts +7 -7
- package/lib/clients/infra/Workspaces.js +1 -0
- package/lib/clients/infra/index.js +25 -14
- package/lib/clients/janus/JanusClient.d.ts +1 -1
- package/lib/clients/janus/JanusClient.js +1 -0
- package/lib/clients/janus/LicenseManager.js +2 -1
- package/lib/clients/janus/Segment.d.ts +3 -3
- package/lib/clients/janus/Segment.js +3 -2
- package/lib/clients/janus/Session.d.ts +2 -2
- package/lib/clients/janus/Session.js +1 -0
- package/lib/clients/janus/Tenant.d.ts +1 -1
- package/lib/clients/janus/Tenant.js +1 -0
- package/lib/clients/janus/index.js +19 -8
- package/lib/constants.d.ts +1 -1
- package/lib/constants.js +2 -1
- package/lib/errors/AuthenticationError.js +1 -0
- package/lib/errors/ForbiddenError.js +1 -0
- package/lib/errors/NotFoundError.js +1 -0
- package/lib/errors/RequestCancelledError.js +1 -0
- package/lib/errors/ResolverError.js +2 -1
- package/lib/errors/ResolverWarning.js +1 -0
- package/lib/errors/TooManyRequestsError.js +1 -0
- package/lib/errors/UserInputError.js +1 -0
- package/lib/errors/index.js +22 -11
- package/lib/index.js +31 -18
- package/lib/metrics/MetricsAccumulator.d.ts +2 -2
- package/lib/metrics/MetricsAccumulator.js +10 -9
- package/lib/responses.d.ts +4 -4
- package/lib/service/index.js +11 -6
- package/lib/service/loaders.js +9 -6
- package/lib/service/logger/console.js +8 -4
- package/lib/service/logger/index.js +16 -5
- package/lib/service/logger/logger.js +3 -2
- package/lib/service/logger/metricsLogger.js +11 -10
- package/lib/service/master.js +8 -6
- package/lib/service/metrics/requestMetricsMiddleware.d.ts +1 -1
- package/lib/service/metrics/requestMetricsMiddleware.js +15 -13
- package/lib/service/tracing/TracerSingleton.js +10 -9
- package/lib/service/tracing/metrics/MetricNames.js +13 -12
- package/lib/service/tracing/metrics/instruments.js +15 -7
- package/lib/service/tracing/metrics/measurers/EventLoopLagMeasurer.js +6 -5
- package/lib/service/tracing/tracingMiddlewares.d.ts +3 -3
- package/lib/service/tracing/tracingMiddlewares.js +25 -15
- package/lib/service/worker/index.js +25 -23
- package/lib/service/worker/listeners.js +3 -1
- package/lib/service/worker/runtime/Service.js +2 -1
- package/lib/service/worker/runtime/builtIn/handlers.d.ts +3 -3
- package/lib/service/worker/runtime/builtIn/handlers.js +7 -3
- package/lib/service/worker/runtime/builtIn/middlewares.d.ts +2 -2
- package/lib/service/worker/runtime/builtIn/middlewares.js +6 -3
- package/lib/service/worker/runtime/events/index.d.ts +2 -2
- package/lib/service/worker/runtime/events/index.js +12 -10
- package/lib/service/worker/runtime/events/middlewares/body.js +6 -2
- package/lib/service/worker/runtime/events/middlewares/context.js +2 -1
- package/lib/service/worker/runtime/events/router.d.ts +2 -2
- package/lib/service/worker/runtime/events/router.js +4 -2
- package/lib/service/worker/runtime/graphql/index.js +9 -7
- package/lib/service/worker/runtime/graphql/middlewares/context.js +1 -0
- package/lib/service/worker/runtime/graphql/middlewares/error.js +9 -5
- package/lib/service/worker/runtime/graphql/middlewares/query.d.ts +2 -1
- package/lib/service/worker/runtime/graphql/middlewares/query.js +8 -6
- package/lib/service/worker/runtime/graphql/middlewares/response.js +2 -1
- package/lib/service/worker/runtime/graphql/middlewares/run.d.ts +2 -2
- package/lib/service/worker/runtime/graphql/middlewares/run.js +4 -2
- package/lib/service/worker/runtime/graphql/middlewares/updateSchema.d.ts +2 -1
- package/lib/service/worker/runtime/graphql/middlewares/updateSchema.js +5 -3
- package/lib/service/worker/runtime/graphql/middlewares/upload.js +2 -1
- package/lib/service/worker/runtime/graphql/schema/index.d.ts +1 -1
- package/lib/service/worker/runtime/graphql/schema/index.js +9 -7
- package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.d.ts +2 -2
- package/lib/service/worker/runtime/graphql/schema/messagesLoaderV2.js +5 -3
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Auth.js +2 -1
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/CacheControl.js +1 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Deprecated.js +2 -1
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Metric.js +1 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Sanitize.js +1 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/Settings.js +2 -1
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/SmartCacheDirective.js +1 -0
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslatableV2.js +3 -2
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/TranslateTo.js +3 -2
- package/lib/service/worker/runtime/graphql/schema/schemaDirectives/index.js +3 -2
- package/lib/service/worker/runtime/graphql/schema/typeDefs/index.d.ts +2 -1
- package/lib/service/worker/runtime/graphql/schema/typeDefs/index.js +3 -1
- package/lib/service/worker/runtime/graphql/schema/typeDefs/ioUpload.js +1 -0
- package/lib/service/worker/runtime/graphql/schema/typeDefs/sanitizedString.js +3 -2
- package/lib/service/worker/runtime/graphql/typings.d.ts +3 -3
- package/lib/service/worker/runtime/graphql/utils/cacheControl.d.ts +2 -1
- package/lib/service/worker/runtime/graphql/utils/cacheControl.js +3 -1
- package/lib/service/worker/runtime/graphql/utils/error.d.ts +2 -1
- package/lib/service/worker/runtime/graphql/utils/error.js +11 -9
- package/lib/service/worker/runtime/graphql/utils/pathname.js +4 -2
- package/lib/service/worker/runtime/graphql/utils/translations.d.ts +1 -1
- package/lib/service/worker/runtime/graphql/utils/translations.js +8 -4
- package/lib/service/worker/runtime/http/index.d.ts +3 -3
- package/lib/service/worker/runtime/http/index.js +23 -20
- package/lib/service/worker/runtime/http/middlewares/authTokens.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/cancellationToken.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/clients.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/context.js +8 -5
- package/lib/service/worker/runtime/http/middlewares/error.js +10 -6
- package/lib/service/worker/runtime/http/middlewares/rateLimit.js +2 -1
- package/lib/service/worker/runtime/http/middlewares/requestStats.js +1 -0
- package/lib/service/worker/runtime/http/middlewares/setCookie.js +6 -5
- package/lib/service/worker/runtime/http/middlewares/settings.d.ts +1 -1
- package/lib/service/worker/runtime/http/middlewares/settings.js +14 -9
- package/lib/service/worker/runtime/http/middlewares/timings.js +4 -3
- package/lib/service/worker/runtime/http/middlewares/vary.js +1 -0
- package/lib/service/worker/runtime/http/router.d.ts +1 -1
- package/lib/service/worker/runtime/http/router.js +4 -2
- package/lib/service/worker/runtime/http/routes.js +9 -5
- package/lib/service/worker/runtime/method.d.ts +2 -2
- package/lib/service/worker/runtime/method.js +2 -1
- package/lib/service/worker/runtime/statusTrack.d.ts +2 -2
- package/lib/service/worker/runtime/statusTrack.js +11 -5
- package/lib/service/worker/runtime/typings.d.ts +10 -10
- package/lib/service/worker/runtime/utils/compose.d.ts +3 -3
- package/lib/service/worker/runtime/utils/compose.js +5 -2
- package/lib/service/worker/runtime/utils/context.d.ts +4 -1
- package/lib/service/worker/runtime/utils/context.js +6 -4
- package/lib/service/worker/runtime/utils/diff.js +1 -0
- package/lib/service/worker/runtime/utils/recorder.js +2 -1
- package/lib/service/worker/runtime/utils/toArray.js +3 -1
- package/lib/service/worker/runtime/utils/tokenBucket.js +1 -0
- package/lib/tracing/Tags.js +2 -1
- package/lib/tracing/UserLandTracer.js +4 -2
- package/lib/tracing/errorReporting/ErrorReport.js +14 -13
- package/lib/tracing/index.js +10 -9
- package/lib/tracing/spanReference/SpanReferenceTypes.js +1 -0
- package/lib/tracing/spanReference/createSpanReference.js +1 -0
- package/lib/tracing/utils.js +6 -4
- package/lib/utils/MineWinsConflictsResolver.d.ts +4 -4
- package/lib/utils/MineWinsConflictsResolver.js +11 -10
- package/lib/utils/app.js +40 -23
- package/lib/utils/appsStaleIfError.d.ts +1 -0
- package/lib/utils/appsStaleIfError.js +33 -12
- package/lib/utils/billingOptions.js +3 -1
- package/lib/utils/binding.js +5 -2
- package/lib/utils/cancel.js +1 -0
- package/lib/utils/conflicts.mock.js +1 -0
- package/lib/utils/domain.js +2 -1
- package/lib/utils/error.js +6 -4
- package/lib/utils/index.js +23 -12
- package/lib/utils/json.js +1 -0
- package/lib/utils/log.js +4 -2
- package/lib/utils/message.js +9 -5
- package/lib/utils/renameBy.js +3 -1
- package/lib/utils/retry.js +10 -7
- package/lib/utils/status.js +3 -1
- package/lib/utils/tenant.js +5 -2
- package/lib/utils/throwOnGraphQLErrors.js +1 -0
- package/lib/utils/time.d.ts +3 -5
- package/lib/utils/time.js +24 -14
- package/package.json +4 -4
- package/CHANGELOG.md +0 -1858
package/lib/utils/retry.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.exponentialDelay = exports.isNetworkOrIdempotentRequestError = exports.isAbortedOrNetworkErrorOrRouterTimeout = exports.isNetworkErrorOrRouterTimeout = exports.TIMEOUT_CODE = void 0;
|
|
3
4
|
const axios_retry_1 = require("axios-retry");
|
|
4
5
|
exports.TIMEOUT_CODE = 'ProxyTimeout';
|
|
5
6
|
const printLabel = (e, message) => {
|
|
@@ -8,25 +9,27 @@ const printLabel = (e, message) => {
|
|
|
8
9
|
}
|
|
9
10
|
console.warn(e.config.label, message);
|
|
10
11
|
};
|
|
11
|
-
|
|
12
|
-
if (axios_retry_1.isNetworkOrIdempotentRequestError(e)) {
|
|
12
|
+
const isNetworkErrorOrRouterTimeout = (e) => {
|
|
13
|
+
if ((0, axios_retry_1.isNetworkOrIdempotentRequestError)(e)) {
|
|
13
14
|
printLabel(e, 'Retry from network error');
|
|
14
15
|
return true;
|
|
15
16
|
}
|
|
16
|
-
if (e && axios_retry_1.isSafeRequestError(e) && e.response && e.response.data && e.response.data.code === exports.TIMEOUT_CODE) {
|
|
17
|
+
if (e && (0, axios_retry_1.isSafeRequestError)(e) && e.response && e.response.data && e.response.data.code === exports.TIMEOUT_CODE) {
|
|
17
18
|
printLabel(e, 'Retry from timeout');
|
|
18
19
|
return true;
|
|
19
20
|
}
|
|
20
21
|
return false;
|
|
21
22
|
};
|
|
23
|
+
exports.isNetworkErrorOrRouterTimeout = isNetworkErrorOrRouterTimeout;
|
|
22
24
|
// Retry on timeout from our end
|
|
23
|
-
|
|
25
|
+
const isAbortedOrNetworkErrorOrRouterTimeout = (e) => {
|
|
24
26
|
if (e && e.code === 'ECONNABORTED') {
|
|
25
27
|
printLabel(e, 'Retry from abort');
|
|
26
28
|
return true;
|
|
27
29
|
}
|
|
28
|
-
return exports.isNetworkErrorOrRouterTimeout(e);
|
|
30
|
+
return (0, exports.isNetworkErrorOrRouterTimeout)(e);
|
|
29
31
|
};
|
|
32
|
+
exports.isAbortedOrNetworkErrorOrRouterTimeout = isAbortedOrNetworkErrorOrRouterTimeout;
|
|
30
33
|
var axios_retry_2 = require("axios-retry");
|
|
31
|
-
exports
|
|
32
|
-
exports
|
|
34
|
+
Object.defineProperty(exports, "isNetworkOrIdempotentRequestError", { enumerable: true, get: function () { return axios_retry_2.isNetworkOrIdempotentRequestError; } });
|
|
35
|
+
Object.defineProperty(exports, "exponentialDelay", { enumerable: true, get: function () { return axios_retry_2.exponentialDelay; } });
|
package/lib/utils/status.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.statusLabel =
|
|
3
|
+
exports.statusLabel = void 0;
|
|
4
|
+
const statusLabel = (status) => {
|
|
4
5
|
if (status >= 500) {
|
|
5
6
|
return 'error';
|
|
6
7
|
}
|
|
@@ -9,3 +10,4 @@ exports.statusLabel = (status) => {
|
|
|
9
10
|
}
|
|
10
11
|
return `${Math.floor(status / 100)}xx`;
|
|
11
12
|
};
|
|
13
|
+
exports.statusLabel = statusLabel;
|
package/lib/utils/tenant.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.formatTenantHeaderValue =
|
|
4
|
-
|
|
3
|
+
exports.parseTenantHeaderValue = exports.formatTenantHeaderValue = void 0;
|
|
4
|
+
const formatTenantHeaderValue = (tenant) => tenant.locale;
|
|
5
|
+
exports.formatTenantHeaderValue = formatTenantHeaderValue;
|
|
6
|
+
const parseTenantHeaderValue = (value) => ({
|
|
5
7
|
locale: value,
|
|
6
8
|
});
|
|
9
|
+
exports.parseTenantHeaderValue = parseTenantHeaderValue;
|
|
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.throwOnGraphQLErrors = void 0;
|
|
6
7
|
const customGraphQLError_1 = __importDefault(require("../errors/customGraphQLError"));
|
|
7
8
|
function throwOnGraphQLErrors(message) {
|
|
8
9
|
return function maybeGraphQLResponse(response) {
|
package/lib/utils/time.d.ts
CHANGED
|
@@ -8,11 +8,8 @@ export declare const hrToNano: ([seconds, nanoseconds]: [number, number]) => num
|
|
|
8
8
|
export declare const formatNano: (nanoseconds: number) => string;
|
|
9
9
|
export declare const reduceHrToNano: (values: import("ramda").List<[number, number]>) => number;
|
|
10
10
|
export declare const shrinkTimings: (name: string) => string;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
source: string | null;
|
|
14
|
-
target: string | null;
|
|
15
|
-
}) => string;
|
|
11
|
+
type TimingFormat = ReturnType<typeof parseTimingName>;
|
|
12
|
+
export declare const formatTimingName: ({ hopNumber, target, source }: TimingFormat) => string;
|
|
16
13
|
export declare const parseTimingName: (timing: string | undefined) => {
|
|
17
14
|
hopNumber: number | null;
|
|
18
15
|
source: string | null;
|
|
@@ -29,3 +26,4 @@ declare global {
|
|
|
29
26
|
}
|
|
30
27
|
}
|
|
31
28
|
}
|
|
29
|
+
export {};
|
package/lib/utils/time.js
CHANGED
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.timerForEvents = exports.timer = exports.reduceTimings = exports.parseTimingName = exports.formatTimingName = exports.shrinkTimings = exports.reduceHrToNano = exports.formatNano = exports.hrToNano = exports.nanosecondsToSeconds = exports.hrToMillisFloat = exports.hrToMillis = void 0;
|
|
3
4
|
const ramda_1 = require("ramda");
|
|
4
5
|
const logger_1 = require("../service/logger");
|
|
5
|
-
|
|
6
|
-
exports.
|
|
6
|
+
const hrToMillis = ([seconds, nanoseconds]) => Math.round((seconds * 1e3) + (nanoseconds / 1e6));
|
|
7
|
+
exports.hrToMillis = hrToMillis;
|
|
8
|
+
const hrToMillisFloat = ([seconds, nanoseconds]) => {
|
|
7
9
|
return (seconds * 1e3) + (nanoseconds / 1e6);
|
|
8
10
|
};
|
|
9
|
-
exports.
|
|
11
|
+
exports.hrToMillisFloat = hrToMillisFloat;
|
|
12
|
+
const nanosecondsToSeconds = (nanoseconds) => {
|
|
10
13
|
return nanoseconds / 1e9;
|
|
11
14
|
};
|
|
12
|
-
exports.
|
|
13
|
-
|
|
14
|
-
exports.
|
|
15
|
-
|
|
16
|
-
exports.
|
|
17
|
-
exports.
|
|
15
|
+
exports.nanosecondsToSeconds = nanosecondsToSeconds;
|
|
16
|
+
const hrToNano = ([seconds, nanoseconds]) => seconds * 1e9 + nanoseconds;
|
|
17
|
+
exports.hrToNano = hrToNano;
|
|
18
|
+
const formatNano = (nanoseconds) => `${(nanoseconds / 1e9).toFixed(0)}s ${((nanoseconds / 1e6) % 1e3).toFixed(0)}ms`;
|
|
19
|
+
exports.formatNano = formatNano;
|
|
20
|
+
exports.reduceHrToNano = (0, ramda_1.reduce)((acc, hr) => acc + (0, exports.hrToNano)(hr), 0);
|
|
21
|
+
const shrinkTimings = (name) => name.replace(/graphql/g, 'gql').replace(/server/g, 'srv');
|
|
22
|
+
exports.shrinkTimings = shrinkTimings;
|
|
23
|
+
const formatTimingName = ({ hopNumber, target, source }) => `${Number.isNaN(hopNumber) ? '' : hopNumber}.${source || ''}#${target || ''}`;
|
|
24
|
+
exports.formatTimingName = formatTimingName;
|
|
25
|
+
const parseTimingName = (timing) => {
|
|
18
26
|
const [hopNumber, sourceAndTarget] = timing ? timing.split('.') : [null, null];
|
|
19
27
|
const [source, target] = sourceAndTarget ? sourceAndTarget.split('#') : [null, null];
|
|
20
28
|
return {
|
|
@@ -23,7 +31,9 @@ exports.parseTimingName = (timing) => {
|
|
|
23
31
|
target,
|
|
24
32
|
};
|
|
25
33
|
};
|
|
26
|
-
exports.
|
|
34
|
+
exports.parseTimingName = parseTimingName;
|
|
35
|
+
const reduceTimings = (timingsObj) => (0, ramda_1.compose)((0, ramda_1.reduce)((acc, [key, dur]) => `${key};dur=${dur}, ${acc}`, ''), ramda_1.toPairs)(timingsObj);
|
|
36
|
+
exports.reduceTimings = reduceTimings;
|
|
27
37
|
function recordTimings(start, name, timings, middlewareMetrics, success) {
|
|
28
38
|
// Capture the total amount of time spent in this middleware, which includes following middlewares
|
|
29
39
|
const end = process.hrtime(start);
|
|
@@ -43,9 +53,9 @@ function recordTimings(start, name, timings, middlewareMetrics, success) {
|
|
|
43
53
|
metrics.batch(label, success ? elapsed : undefined, { success: success ? 1 : 0 });
|
|
44
54
|
// This middleware has added it's own metrics
|
|
45
55
|
// Just add them to `timings` scoped by the middleware's name and batch them
|
|
46
|
-
const middlewareMetricsKeys = ramda_1.keys(middlewareMetrics);
|
|
56
|
+
const middlewareMetricsKeys = (0, ramda_1.keys)(middlewareMetrics);
|
|
47
57
|
if (success && middlewareMetricsKeys.length > 0) {
|
|
48
|
-
ramda_1.forEach((k) => {
|
|
58
|
+
(0, ramda_1.forEach)((k) => {
|
|
49
59
|
const metricEnd = middlewareMetrics[k];
|
|
50
60
|
// Delete own metrics so next middleware can have empty state but still accumulate metrics batched after `await`
|
|
51
61
|
delete middlewareMetrics[k];
|
|
@@ -60,7 +70,7 @@ function timer(middleware) {
|
|
|
60
70
|
return middleware;
|
|
61
71
|
}
|
|
62
72
|
if (!middleware.name) {
|
|
63
|
-
logger_1.logOnceToDevConsole(`Please use a named function as handler for better metrics. ${middleware.toString()}`, logger_1.LogLevel.Warn);
|
|
73
|
+
(0, logger_1.logOnceToDevConsole)(`Please use a named function as handler for better metrics. ${middleware.toString()}`, logger_1.LogLevel.Warn);
|
|
64
74
|
}
|
|
65
75
|
return async (ctx, next) => {
|
|
66
76
|
if (!ctx.serverTiming) {
|
|
@@ -92,7 +102,7 @@ function timerForEvents(middleware) {
|
|
|
92
102
|
return middleware;
|
|
93
103
|
}
|
|
94
104
|
if (!middleware.name) {
|
|
95
|
-
logger_1.logOnceToDevConsole(`Please use a named function as handler for better metrics. ${middleware.toString()}`, logger_1.LogLevel.Warn);
|
|
105
|
+
(0, logger_1.logOnceToDevConsole)(`Please use a named function as handler for better metrics. ${middleware.toString()}`, logger_1.LogLevel.Warn);
|
|
96
106
|
}
|
|
97
107
|
return async (ctx, next) => {
|
|
98
108
|
if (!ctx.timings) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vtex/api",
|
|
3
|
-
"version": "6.48.
|
|
3
|
+
"version": "6.48.1-beta.2",
|
|
4
4
|
"description": "VTEX I/O API client",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"typings": "lib/index.d.ts",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"agentkeepalive": "^4.0.2",
|
|
55
55
|
"apollo-server-errors": "^2.2.1",
|
|
56
56
|
"archiver": "^3.0.0",
|
|
57
|
-
"axios": "^
|
|
57
|
+
"axios": "^1.8.4",
|
|
58
58
|
"axios-retry": "^3.1.2",
|
|
59
59
|
"bluebird": "^3.5.4",
|
|
60
60
|
"chalk": "^2.4.2",
|
|
@@ -121,7 +121,7 @@
|
|
|
121
121
|
"tslint-config-vtex": "^2.1.0",
|
|
122
122
|
"tslint-eslint-rules": "^5.4.0",
|
|
123
123
|
"typemoq": "^2.1.0",
|
|
124
|
-
"typescript": "
|
|
125
|
-
"typescript-json-schema": "^0.
|
|
124
|
+
"typescript": "4.9.5",
|
|
125
|
+
"typescript-json-schema": "^0.65.1"
|
|
126
126
|
}
|
|
127
127
|
}
|