Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
6bb1740
feat: migrate reporting service contract from logging to reporting mo…
alexs-mparticle Mar 20, 2026
f8a0936
fix: resolve Karma test failures for reporting dispatcher migration
alexs-mparticle Mar 20, 2026
e573c1f
chore: remove dist/ from tracking (already in gitignore)
alexs-mparticle Mar 20, 2026
caf86dd
Revert "chore: remove dist/ from tracking (already in gitignore)"
alexs-mparticle Mar 20, 2026
4adf5fa
chore: restore dist files to pre-fix state
alexs-mparticle Mar 20, 2026
8c0017f
fix: add ErrorReportingDispatcher to test mocks, revert optional chai…
alexs-mparticle Mar 23, 2026
81165c4
fix: add error isolation to dispatchers, move instantiation to constr…
alexs-mparticle Mar 23, 2026
d52684d
refactor: prefix registration methods with underscore for internal use
alexs-mparticle Mar 23, 2026
5629263
feat: wire reporting dispatchers into RoktManager
alexs-mparticle Mar 23, 2026
5b3bc0f
fix: log errors from reporting service dispatchers instead of silentl…
alexs-mparticle Mar 24, 2026
7d44498
fix: guard errorReporter.report() with optional chaining and fix test…
alexs-mparticle Mar 24, 2026
b2f1e7a
merge: resolve dist file conflicts from development branch
alexs-mparticle Mar 26, 2026
f153c27
fix: mark dispatcher services as readonly and remove unused ErrorCode…
alexs-mparticle Mar 26, 2026
e84e375
refactor: remove unnecessary cast in createConsentState
rmi22186 Apr 3, 2026
e1b78da
Revert "refactor: remove unnecessary cast in createConsentState"
rmi22186 Apr 3, 2026
76b2f3e
fix: address PR review feedback on test assertions
alexs-mparticle Apr 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions src/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,8 +139,6 @@ const Constants = {
identityUrl: 'identity.mparticle.com/v1/',
aliasUrl: 'jssdks.mparticle.com/v1/identity/',
userAudienceUrl: 'nativesdks.mparticle.com/v1/',
loggingUrl: 'apps.rokt-api.com/v1/log',
errorUrl: 'apps.rokt-api.com/v1/errors',
},
// These are the paths that are used to construct the CNAME urls
CNAMEUrlPaths: {
Expand All @@ -150,8 +148,6 @@ const Constants = {
configUrl: '/tags/JS/v2/',
identityUrl: '/identity/v1/',
aliasUrl: '/webevents/v1/identity/',
loggingUrl: '/v1/log',
errorUrl: '/v1/errors',
},
Base64CookieKeys: {
csm: 1,
Expand Down
15 changes: 9 additions & 6 deletions src/identityApiClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import {
IIdentityResponse,
} from './identity-user-interfaces';
import { IMParticleWebSDKInstance } from './mp-instance';
import { ErrorCodes } from './logging/types';
import { ErrorCodes, WSDKErrorSeverity } from './reporting/types';

const { HTTPCodes, Messages, IdentityMethods } = Constants;

Expand Down Expand Up @@ -201,7 +201,7 @@ export default function IdentityAPIClient(
}

const { invokeCallback } = mpInstance._Helpers;
const { Logger } = mpInstance;
const { Logger, _ErrorReportingDispatcher: errorReporter } = mpInstance;
Logger.verbose(Messages.InformationMessages.SendIdentityBegin);
if (!identityApiRequest) {
Logger.error(Messages.ErrorMessages.APIRequestEmpty);
Expand Down Expand Up @@ -339,10 +339,13 @@ export default function IdentityAPIClient(
}

const errorMessage = (err as Error).message || err.toString();
Logger.error(
'Error sending identity request to servers' + ' - ' + errorMessage,
ErrorCodes.IDENTITY_REQUEST
);
const msg = 'Error sending identity request to servers' + ' - ' + errorMessage;
Logger.error(msg);
errorReporter?.report({
message: msg,
code: ErrorCodes.IDENTITY_REQUEST,
severity: WSDKErrorSeverity.ERROR,
});

mpInstance.processQueueOnIdentityFailure?.();
invokeCallback(callback, HTTPCodes.noHttpCoverage, errorMessage);
Expand Down
15 changes: 3 additions & 12 deletions src/logger.ts
Original file line number Diff line number Diff line change
@@ -1,25 +1,19 @@
import { LogLevelType, SDKInitConfig, SDKLoggerApi } from './sdkRuntimeModels';
import { ReportingLogger } from './logging/reportingLogger';
import { ErrorCodes } from './logging/types';

export type ILoggerConfig = Pick<SDKInitConfig, 'logLevel' | 'logger'>;
export type IConsoleLogger = Partial<Pick<SDKLoggerApi, 'error' | 'warning' | 'verbose'>>;

export class Logger {
private logLevel: LogLevelType;
private logger: IConsoleLogger;
private reportingLogger: ReportingLogger;

constructor(config: ILoggerConfig,
reportingLogger?: ReportingLogger,
) {
constructor(config: ILoggerConfig) {
this.logLevel = config.logLevel ?? LogLevelType.Warning;
this.logger = config.logger ?? new ConsoleLogger();
this.reportingLogger = reportingLogger;
}

public verbose(msg: string): void {
if(this.logLevel === LogLevelType.None)
if(this.logLevel === LogLevelType.None)
return;

if (this.logger.verbose && this.logLevel === LogLevelType.Verbose) {
Expand All @@ -37,15 +31,12 @@ export class Logger {
}
}

public error(msg: string, codeForReporting?: ErrorCodes): void {
public error(msg: string): void {
if(this.logLevel === LogLevelType.None)
return;

if (this.logger.error) {
this.logger.error(msg);
if (codeForReporting) {
this.reportingLogger?.error(msg, codeForReporting);
}
}
}

Expand Down
192 changes: 0 additions & 192 deletions src/logging/reportingLogger.ts

This file was deleted.

32 changes: 0 additions & 32 deletions src/logging/types.ts

This file was deleted.

Loading
Loading