diff --git a/src/lib/middleware/request-logger.ts b/src/lib/middleware/request-logger.ts index 6b75e0c015..91468b3ed9 100644 --- a/src/lib/middleware/request-logger.ts +++ b/src/lib/middleware/request-logger.ts @@ -14,7 +14,7 @@ const requestLogger: (config: IUnleashConfig) => RequestHandler = (config) => { if (enable) { res.on('finish', () => { const { pathname } = url.parse(req.originalUrl); - if (res.statusCode >= 400 || res.statusCode < 500) { + if (res.statusCode >= 400 && res.statusCode < 500) { impactMetrics?.incrementCounter(CLIENT_ERROR_COUNT); } if (res.statusCode >= 500) { diff --git a/src/lib/util/flag-resolver.ts b/src/lib/util/flag-resolver.ts index 0551e8cedc..453e6ea84a 100644 --- a/src/lib/util/flag-resolver.ts +++ b/src/lib/util/flag-resolver.ts @@ -6,6 +6,7 @@ import type { IFlags, IFlagResolver, IFlagKey, + IImpactMetricsResolver, } from '../types/experimental.js'; import { getDefaultVariant } from 'unleash-client/lib/variant.js'; @@ -65,6 +66,10 @@ export default class FlagResolver implements IFlagResolver { getStaticContext(): IFlagContext { return this.externalResolver.getStaticContext(); } + + get impactMetrics(): IImpactMetricsResolver | undefined { + return this.externalResolver?.impactMetrics; + } } export const getVariantValue = (