Import log instead of using it off of window

This commit is contained in:
Josh Perez 2021-09-17 14:27:53 -04:00 committed by GitHub
parent 8eb0dd3116
commit 65ddf0a9e8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
155 changed files with 3654 additions and 3433 deletions

View file

@ -19,6 +19,7 @@ import { isOlderThan } from './util/timestamp';
import { parseRetryAfter } from './util/parseRetryAfter';
import { getEnvironment, Environment } from './environment';
import { StorageInterface } from './types/Storage.d';
import * as log from './logging/log';
export type ChallengeResponse = {
readonly captcha: string;
@ -143,7 +144,7 @@ export class ChallengeHandler {
const stored: ReadonlyArray<StoredEntity> =
this.options.storage.get('challenge:retry-message-ids') || [];
window.log.info(`challenge: loading ${stored.length} messages`);
log.info(`challenge: loading ${stored.length} messages`);
const entityMap = new Map<string, StoredEntity>();
for (const entity of stored) {
@ -162,13 +163,13 @@ export class ChallengeHandler {
const messages: Array<MinimalMessage> = maybeMessages.filter(isNotNil);
window.log.info(`challenge: loaded ${messages.length} messages`);
log.info(`challenge: loaded ${messages.length} messages`);
await Promise.all(
messages.map(async message => {
const entity = entityMap.get(message.id);
if (!entity) {
window.log.error(
log.error(
'challenge: unexpected missing entity ' +
`for ${message.idForLogging()}`
);
@ -177,9 +178,7 @@ export class ChallengeHandler {
const expireAfter = this.options.expireAfter || DEFAULT_EXPIRE_AFTER;
if (isOlderThan(entity.createdAt, expireAfter)) {
window.log.info(
`challenge: expired entity for ${message.idForLogging()}`
);
log.info(`challenge: expired entity for ${message.idForLogging()}`);
return;
}
@ -198,7 +197,7 @@ export class ChallengeHandler {
public async onOffline(): Promise<void> {
this.isOnline = false;
window.log.info('challenge: offline');
log.info('challenge: offline');
}
public async onOnline(): Promise<void> {
@ -207,7 +206,7 @@ export class ChallengeHandler {
const pending = Array.from(this.pendingRetries.values());
this.pendingRetries.clear();
window.log.info(`challenge: online, retrying ${pending.length} messages`);
log.info(`challenge: online, retrying ${pending.length} messages`);
// Retry messages that matured while we were offline
await Promise.all(pending.map(message => this.retryOne(message)));
@ -221,7 +220,7 @@ export class ChallengeHandler {
entity?: StoredEntity
): Promise<void> {
if (this.isRegistered(message)) {
window.log.info(
log.info(
`challenge: message already registered ${message.idForLogging()}`
);
return;
@ -235,7 +234,7 @@ export class ChallengeHandler {
// Message is already retryable - initiate new send
if (retry === RetryMode.Retry && shouldRetrySend(message)) {
window.log.info(
log.info(
`challenge: sending message immediately ${message.idForLogging()}`
);
await this.retryOne(message);
@ -244,7 +243,7 @@ export class ChallengeHandler {
const error = message.getLastChallengeError();
if (!error) {
window.log.error('Unexpected message without challenge error');
log.error('Unexpected message without challenge error');
return;
}
@ -262,19 +261,19 @@ export class ChallengeHandler {
}, waitTime)
);
window.log.info(
log.info(
`challenge: tracking ${message.idForLogging()} ` +
`with waitTime=${waitTime}`
);
if (!error.data.options || !error.data.options.includes('recaptcha')) {
window.log.error(
log.error(
`challenge: unexpected options ${JSON.stringify(error.data.options)}`
);
}
if (!error.data.token) {
window.log.error(
log.error(
`challenge: no token in challenge error ${JSON.stringify(error.data)}`
);
} else if (message.isNormalBubble()) {
@ -285,9 +284,7 @@ export class ChallengeHandler {
// challenge to be fully completed.
this.solve(error.data.token);
} else {
window.log.info(
`challenge: not a bubble message ${message.idForLogging()}`
);
log.info(`challenge: not a bubble message ${message.idForLogging()}`);
}
}
@ -302,7 +299,7 @@ export class ChallengeHandler {
}
public async unregister(message: MinimalMessage): Promise<void> {
window.log.info(`challenge: unregistered ${message.idForLogging()}`);
log.info(`challenge: unregistered ${message.idForLogging()}`);
this.trackedMessages.delete(message.id);
this.pendingRetries.delete(message);
@ -335,7 +332,7 @@ export class ChallengeHandler {
}
private async retrySend(force = false): Promise<void> {
window.log.info(`challenge: retrySend force=${force}`);
log.info(`challenge: retrySend force=${force}`);
const retries = Array.from(this.trackedMessages.values())
.map(({ message }) => message)
@ -360,13 +357,13 @@ export class ChallengeHandler {
}
const retryCount = this.retryCountById.get(message.id) || 0;
window.log.info(
log.info(
`challenge: retrying sending ${message.idForLogging()}, ` +
`retry count: ${retryCount}`
);
if (retryCount === MAX_RETRIES) {
window.log.info(
log.info(
`challenge: dropping message ${message.idForLogging()}, ` +
'too many failed retries'
);
@ -387,7 +384,7 @@ export class ChallengeHandler {
try {
await message.retrySend();
} catch (error) {
window.log.error(
log.error(
`challenge: failed to send ${message.idForLogging()} due to ` +
`error: ${error && error.stack}`
);
@ -396,13 +393,13 @@ export class ChallengeHandler {
}
if (sent) {
window.log.info(`challenge: message ${message.idForLogging()} sent`);
log.info(`challenge: message ${message.idForLogging()} sent`);
this.retryCountById.delete(message.id);
if (this.trackedMessages.size === 0) {
this.options.setChallengeStatus('idle');
}
} else {
window.log.info(`challenge: message ${message.idForLogging()} not sent`);
log.info(`challenge: message ${message.idForLogging()} not sent`);
this.retryCountById.set(message.id, retryCount + 1);
await this.register(message, RetryMode.NoImmediateRetry);
@ -431,7 +428,7 @@ export class ChallengeHandler {
this.options.setChallengeStatus('pending');
window.log.info('challenge: sending challenge to server');
log.info('challenge: sending challenge to server');
try {
await this.sendChallengeResponse({
@ -440,14 +437,12 @@ export class ChallengeHandler {
captcha: response.captcha,
});
} catch (error) {
window.log.error(
`challenge: challenge failure, error: ${error && error.stack}`
);
log.error(`challenge: challenge failure, error: ${error && error.stack}`);
this.options.setChallengeStatus('required');
return;
}
window.log.info('challenge: challenge success. force sending');
log.info('challenge: challenge success. force sending');
this.options.setChallengeStatus('idle');
@ -470,7 +465,7 @@ export class ChallengeHandler {
const retryAfter = parseRetryAfter(error.responseHeaders['retry-after']);
window.log.info(`challenge: retry after ${retryAfter}ms`);
log.info(`challenge: retry after ${retryAfter}ms`);
this.options.onChallengeFailed(retryAfter);
return;
}