mirror of
https://github.com/sim1222/misskey.git
synced 2025-07-08 03:40:10 +09:00
test
This commit is contained in:
@ -16,7 +16,7 @@ import { QueueLoggerService } from './QueueLoggerService.js';
|
||||
|
||||
@Injectable()
|
||||
export class QueueProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -32,7 +32,7 @@ export class QueueProcessorService {
|
||||
private deliverProcessorService: DeliverProcessorService,
|
||||
private inboxProcessorService: InboxProcessorService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger;
|
||||
this.logger = this.queueLoggerService.logger;
|
||||
}
|
||||
|
||||
public start() {
|
||||
@ -44,12 +44,12 @@ export class QueueProcessorService {
|
||||
};
|
||||
}
|
||||
|
||||
const systemLogger = this.#logger.createSubLogger('system');
|
||||
const deliverLogger = this.#logger.createSubLogger('deliver');
|
||||
const webhookLogger = this.#logger.createSubLogger('webhook');
|
||||
const inboxLogger = this.#logger.createSubLogger('inbox');
|
||||
const dbLogger = this.#logger.createSubLogger('db');
|
||||
const objectStorageLogger = this.#logger.createSubLogger('objectStorage');
|
||||
const systemLogger = this.logger.createSubLogger('system');
|
||||
const deliverLogger = this.logger.createSubLogger('deliver');
|
||||
const webhookLogger = this.logger.createSubLogger('webhook');
|
||||
const inboxLogger = this.logger.createSubLogger('inbox');
|
||||
const dbLogger = this.logger.createSubLogger('db');
|
||||
const objectStorageLogger = this.logger.createSubLogger('objectStorage');
|
||||
|
||||
this.queueService.systemQueue
|
||||
.on('waiting', (jobId) => systemLogger.debug(`waiting id=${jobId}`))
|
||||
|
@ -10,7 +10,7 @@ import type Bull from 'bull';
|
||||
|
||||
@Injectable()
|
||||
export class CheckExpiredMutingsProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -22,11 +22,11 @@ export class CheckExpiredMutingsProcessorService {
|
||||
private globalEventService: GlobalEventService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('check-expired-mutings');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('check-expired-mutings');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<Record<string, unknown>>, done: () => void): Promise<void> {
|
||||
this.#logger.info('Checking expired mutings...');
|
||||
this.logger.info('Checking expired mutings...');
|
||||
|
||||
const expired = await this.mutingsRepository.createQueryBuilder('muting')
|
||||
.where('muting.expiresAt IS NOT NULL')
|
||||
@ -44,7 +44,7 @@ export class CheckExpiredMutingsProcessorService {
|
||||
}
|
||||
}
|
||||
|
||||
this.#logger.succ('All expired mutings checked.');
|
||||
this.logger.succ('All expired mutings checked.');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ import type Bull from 'bull';
|
||||
|
||||
@Injectable()
|
||||
export class CleanChartsProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -41,11 +41,11 @@ export class CleanChartsProcessorService {
|
||||
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('clean-charts');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('clean-charts');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<Record<string, unknown>>, done: () => void): Promise<void> {
|
||||
this.#logger.info('Clean charts...');
|
||||
this.logger.info('Clean charts...');
|
||||
|
||||
await Promise.all([
|
||||
this.federationChart.clean(),
|
||||
@ -62,7 +62,7 @@ export class CleanChartsProcessorService {
|
||||
this.apRequestChart.clean(),
|
||||
]);
|
||||
|
||||
this.#logger.succ('All charts successfully cleaned.');
|
||||
this.logger.succ('All charts successfully cleaned.');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,7 @@ import type Bull from 'bull';
|
||||
|
||||
@Injectable()
|
||||
export class CleanProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -20,17 +20,17 @@ export class CleanProcessorService {
|
||||
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('clean');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('clean');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<Record<string, unknown>>, done: () => void): Promise<void> {
|
||||
this.#logger.info('Cleaning...');
|
||||
this.logger.info('Cleaning...');
|
||||
|
||||
this.userIpsRepository.delete({
|
||||
createdAt: LessThan(new Date(Date.now() - (1000 * 60 * 60 * 24 * 90))),
|
||||
});
|
||||
|
||||
this.#logger.succ('Cleaned.');
|
||||
this.logger.succ('Cleaned.');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ import type Bull from 'bull';
|
||||
|
||||
@Injectable()
|
||||
export class CleanRemoteFilesProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -22,11 +22,11 @@ export class CleanRemoteFilesProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('clean-remote-files');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('clean-remote-files');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<Record<string, unknown>>, done: () => void): Promise<void> {
|
||||
this.#logger.info('Deleting cached remote files...');
|
||||
this.logger.info('Deleting cached remote files...');
|
||||
|
||||
let deletedCount = 0;
|
||||
let cursor: any = null;
|
||||
@ -63,7 +63,7 @@ export class CleanRemoteFilesProcessorService {
|
||||
job.progress(deletedCount / total);
|
||||
}
|
||||
|
||||
this.#logger.succ('All cahced remote files has been deleted.');
|
||||
this.logger.succ('All cahced remote files has been deleted.');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -14,7 +14,7 @@ import type { DbUserDeleteJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class DeleteAccountProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -36,11 +36,11 @@ export class DeleteAccountProcessorService {
|
||||
private emailService: EmailService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('delete-account');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('delete-account');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserDeleteJobData>): Promise<string | void> {
|
||||
this.#logger.info(`Deleting account of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Deleting account of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -71,7 +71,7 @@ export class DeleteAccountProcessorService {
|
||||
await this.notesRepository.delete(notes.map(note => note.id));
|
||||
}
|
||||
|
||||
this.#logger.succ('All of notes deleted');
|
||||
this.logger.succ('All of notes deleted');
|
||||
}
|
||||
|
||||
{ // Delete files
|
||||
@ -100,7 +100,7 @@ export class DeleteAccountProcessorService {
|
||||
}
|
||||
}
|
||||
|
||||
this.#logger.succ('All of files deleted');
|
||||
this.logger.succ('All of files deleted');
|
||||
}
|
||||
|
||||
{ // Send email notification
|
||||
|
@ -11,7 +11,7 @@ import type { DbUserJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class DeleteDriveFilesProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -26,11 +26,11 @@ export class DeleteDriveFilesProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('delete-drive-files');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('delete-drive-files');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Deleting drive files of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Deleting drive files of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -72,7 +72,7 @@ export class DeleteDriveFilesProcessorService {
|
||||
job.progress(deletedCount / total);
|
||||
}
|
||||
|
||||
this.#logger.succ(`All drive files (${deletedCount}) of ${user.id} has been deleted.`);
|
||||
this.logger.succ(`All drive files (${deletedCount}) of ${user.id} has been deleted.`);
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,7 @@ import type { ObjectStorageFileJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class DeleteFileProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -18,7 +18,7 @@ export class DeleteFileProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('delete-file');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('delete-file');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<ObjectStorageFileJobData>): Promise<string> {
|
||||
|
@ -21,9 +21,9 @@ import type { DeliverJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class DeliverProcessorService {
|
||||
#logger: Logger;
|
||||
#suspendedHostsCache: Cache<Instance[]>;
|
||||
#latest: string | null;
|
||||
private logger: Logger;
|
||||
private suspendedHostsCache: Cache<Instance[]>;
|
||||
private latest: string | null;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -45,9 +45,9 @@ export class DeliverProcessorService {
|
||||
private federationChart: FederationChart,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('deliver');
|
||||
this.#suspendedHostsCache = new Cache<Instance[]>(1000 * 60 * 60);
|
||||
this.#latest = null;
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('deliver');
|
||||
this.suspendedHostsCache = new Cache<Instance[]>(1000 * 60 * 60);
|
||||
this.latest = null;
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DeliverJobData>): Promise<string> {
|
||||
@ -60,22 +60,22 @@ export class DeliverProcessorService {
|
||||
}
|
||||
|
||||
// isSuspendedなら中断
|
||||
let suspendedHosts = this.#suspendedHostsCache.get(null);
|
||||
let suspendedHosts = this.suspendedHostsCache.get(null);
|
||||
if (suspendedHosts == null) {
|
||||
suspendedHosts = await this.instancesRepository.find({
|
||||
where: {
|
||||
isSuspended: true,
|
||||
},
|
||||
});
|
||||
this.#suspendedHostsCache.set(null, suspendedHosts);
|
||||
this.suspendedHostsCache.set(null, suspendedHosts);
|
||||
}
|
||||
if (suspendedHosts.map(x => x.host).includes(this.utilityService.toPuny(host))) {
|
||||
return 'skip (suspended)';
|
||||
}
|
||||
|
||||
try {
|
||||
if (this.#latest !== (this.#latest = JSON.stringify(job.data.content, null, 2))) {
|
||||
this.#logger.debug(`delivering ${this.#latest}`);
|
||||
if (this.latest !== (this.latest = JSON.stringify(job.data.content, null, 2))) {
|
||||
this.logger.debug(`delivering ${this.latest}`);
|
||||
}
|
||||
|
||||
await this.apRequestService.signedPost(job.data.user, job.data.to, job.data.content);
|
||||
|
@ -11,7 +11,7 @@ import type { EndedPollNotificationJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class EndedPollNotificationProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -26,7 +26,7 @@ export class EndedPollNotificationProcessorService {
|
||||
private createNotificationService: CreateNotificationService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('ended-poll-notification');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('ended-poll-notification');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<EndedPollNotificationJobData>, done: () => void): Promise<void> {
|
||||
|
@ -16,7 +16,7 @@ import type { DbUserJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ExportBlockingProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -32,11 +32,11 @@ export class ExportBlockingProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('export-blocking');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('export-blocking');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Exporting blocking of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Exporting blocking of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -47,7 +47,7 @@ export class ExportBlockingProcessorService {
|
||||
// Create temp file
|
||||
const [path, cleanup] = await createTemp();
|
||||
|
||||
this.#logger.info(`Temp file is ${path}`);
|
||||
this.logger.info(`Temp file is ${path}`);
|
||||
|
||||
try {
|
||||
const stream = fs.createWriteStream(path, { flags: 'a' });
|
||||
@ -84,7 +84,7 @@ export class ExportBlockingProcessorService {
|
||||
await new Promise<void>((res, rej) => {
|
||||
stream.write(content + '\n', err => {
|
||||
if (err) {
|
||||
this.#logger.error(err);
|
||||
this.logger.error(err);
|
||||
rej(err);
|
||||
} else {
|
||||
res();
|
||||
@ -102,12 +102,12 @@ export class ExportBlockingProcessorService {
|
||||
}
|
||||
|
||||
stream.end();
|
||||
this.#logger.succ(`Exported to: ${path}`);
|
||||
this.logger.succ(`Exported to: ${path}`);
|
||||
|
||||
const fileName = 'blocking-' + dateFormat(new Date(), 'yyyy-MM-dd-HH-mm-ss') + '.csv';
|
||||
const driveFile = await this.driveService.addFile({ user, path, name: fileName, force: true });
|
||||
|
||||
this.#logger.succ(`Exported to: ${driveFile.id}`);
|
||||
this.logger.succ(`Exported to: ${driveFile.id}`);
|
||||
} finally {
|
||||
cleanup();
|
||||
}
|
||||
|
@ -17,7 +17,7 @@ import type Bull from 'bull';
|
||||
|
||||
@Injectable()
|
||||
export class ExportCustomEmojisProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -33,11 +33,11 @@ export class ExportCustomEmojisProcessorService {
|
||||
private downloadService: DownloadService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('export-custom-emojis');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('export-custom-emojis');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job, done: () => void): Promise<void> {
|
||||
this.#logger.info('Exporting custom emojis ...');
|
||||
this.logger.info('Exporting custom emojis ...');
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -47,7 +47,7 @@ export class ExportCustomEmojisProcessorService {
|
||||
|
||||
const [path, cleanup] = await createTempDir();
|
||||
|
||||
this.#logger.info(`Temp dir is ${path}`);
|
||||
this.logger.info(`Temp dir is ${path}`);
|
||||
|
||||
const metaPath = path + '/meta.json';
|
||||
|
||||
@ -59,7 +59,7 @@ export class ExportCustomEmojisProcessorService {
|
||||
return new Promise<void>((res, rej) => {
|
||||
metaStream.write(text, err => {
|
||||
if (err) {
|
||||
this.#logger.error(err);
|
||||
this.logger.error(err);
|
||||
rej(err);
|
||||
} else {
|
||||
res();
|
||||
@ -90,7 +90,7 @@ export class ExportCustomEmojisProcessorService {
|
||||
await this.downloadService.downloadUrl(emoji.originalUrl, emojiPath);
|
||||
downloaded = true;
|
||||
} catch (e) { // TODO: 何度か再試行
|
||||
this.#logger.error(e instanceof Error ? e : new Error(e as string));
|
||||
this.logger.error(e instanceof Error ? e : new Error(e as string));
|
||||
}
|
||||
|
||||
if (!downloaded) {
|
||||
@ -118,12 +118,12 @@ export class ExportCustomEmojisProcessorService {
|
||||
zlib: { level: 0 },
|
||||
});
|
||||
archiveStream.on('close', async () => {
|
||||
this.#logger.succ(`Exported to: ${archivePath}`);
|
||||
this.logger.succ(`Exported to: ${archivePath}`);
|
||||
|
||||
const fileName = 'custom-emojis-' + dateFormat(new Date(), 'yyyy-MM-dd-HH-mm-ss') + '.zip';
|
||||
const driveFile = await this.driveService.addFile({ user, path: archivePath, name: fileName, force: true });
|
||||
|
||||
this.#logger.succ(`Exported to: ${driveFile.id}`);
|
||||
this.logger.succ(`Exported to: ${driveFile.id}`);
|
||||
cleanup();
|
||||
archiveCleanup();
|
||||
done();
|
||||
|
@ -16,7 +16,7 @@ import type { DbUserJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ExportFollowingProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -35,11 +35,11 @@ export class ExportFollowingProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('export-following');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('export-following');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Exporting following of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Exporting following of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -50,7 +50,7 @@ export class ExportFollowingProcessorService {
|
||||
// Create temp file
|
||||
const [path, cleanup] = await createTemp();
|
||||
|
||||
this.#logger.info(`Temp file is ${path}`);
|
||||
this.logger.info(`Temp file is ${path}`);
|
||||
|
||||
try {
|
||||
const stream = fs.createWriteStream(path, { flags: 'a' });
|
||||
@ -94,7 +94,7 @@ export class ExportFollowingProcessorService {
|
||||
await new Promise<void>((res, rej) => {
|
||||
stream.write(content + '\n', err => {
|
||||
if (err) {
|
||||
this.#logger.error(err);
|
||||
this.logger.error(err);
|
||||
rej(err);
|
||||
} else {
|
||||
res();
|
||||
@ -105,12 +105,12 @@ export class ExportFollowingProcessorService {
|
||||
}
|
||||
|
||||
stream.end();
|
||||
this.#logger.succ(`Exported to: ${path}`);
|
||||
this.logger.succ(`Exported to: ${path}`);
|
||||
|
||||
const fileName = 'following-' + dateFormat(new Date(), 'yyyy-MM-dd-HH-mm-ss') + '.csv';
|
||||
const driveFile = await this.driveService.addFile({ user, path, name: fileName, force: true });
|
||||
|
||||
this.#logger.succ(`Exported to: ${driveFile.id}`);
|
||||
this.logger.succ(`Exported to: ${driveFile.id}`);
|
||||
} finally {
|
||||
cleanup();
|
||||
}
|
||||
|
@ -15,7 +15,7 @@ import type { DbUserJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ExportMutingProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -34,11 +34,11 @@ export class ExportMutingProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('export-muting');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('export-muting');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Exporting muting of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Exporting muting of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -49,7 +49,7 @@ export class ExportMutingProcessorService {
|
||||
// Create temp file
|
||||
const [path, cleanup] = await createTemp();
|
||||
|
||||
this.#logger.info(`Temp file is ${path}`);
|
||||
this.logger.info(`Temp file is ${path}`);
|
||||
|
||||
try {
|
||||
const stream = fs.createWriteStream(path, { flags: 'a' });
|
||||
@ -87,7 +87,7 @@ export class ExportMutingProcessorService {
|
||||
await new Promise<void>((res, rej) => {
|
||||
stream.write(content + '\n', err => {
|
||||
if (err) {
|
||||
this.#logger.error(err);
|
||||
this.logger.error(err);
|
||||
rej(err);
|
||||
} else {
|
||||
res();
|
||||
@ -105,12 +105,12 @@ export class ExportMutingProcessorService {
|
||||
}
|
||||
|
||||
stream.end();
|
||||
this.#logger.succ(`Exported to: ${path}`);
|
||||
this.logger.succ(`Exported to: ${path}`);
|
||||
|
||||
const fileName = 'mute-' + dateFormat(new Date(), 'yyyy-MM-dd-HH-mm-ss') + '.csv';
|
||||
const driveFile = await this.driveService.addFile({ user, path, name: fileName, force: true });
|
||||
|
||||
this.#logger.succ(`Exported to: ${driveFile.id}`);
|
||||
this.logger.succ(`Exported to: ${driveFile.id}`);
|
||||
} finally {
|
||||
cleanup();
|
||||
}
|
||||
|
@ -16,7 +16,7 @@ import type { DbUserJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ExportNotesProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -34,11 +34,11 @@ export class ExportNotesProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('export-notes');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('export-notes');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Exporting notes of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Exporting notes of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -49,7 +49,7 @@ export class ExportNotesProcessorService {
|
||||
// Create temp file
|
||||
const [path, cleanup] = await createTemp();
|
||||
|
||||
this.#logger.info(`Temp file is ${path}`);
|
||||
this.logger.info(`Temp file is ${path}`);
|
||||
|
||||
try {
|
||||
const stream = fs.createWriteStream(path, { flags: 'a' });
|
||||
@ -58,7 +58,7 @@ export class ExportNotesProcessorService {
|
||||
return new Promise<void>((res, rej) => {
|
||||
stream.write(text, err => {
|
||||
if (err) {
|
||||
this.#logger.error(err);
|
||||
this.logger.error(err);
|
||||
rej(err);
|
||||
} else {
|
||||
res();
|
||||
@ -112,12 +112,12 @@ export class ExportNotesProcessorService {
|
||||
await write(']');
|
||||
|
||||
stream.end();
|
||||
this.#logger.succ(`Exported to: ${path}`);
|
||||
this.logger.succ(`Exported to: ${path}`);
|
||||
|
||||
const fileName = 'notes-' + dateFormat(new Date(), 'yyyy-MM-dd-HH-mm-ss') + '.json';
|
||||
const driveFile = await this.driveService.addFile({ user, path, name: fileName, force: true });
|
||||
|
||||
this.#logger.succ(`Exported to: ${driveFile.id}`);
|
||||
this.logger.succ(`Exported to: ${driveFile.id}`);
|
||||
} finally {
|
||||
cleanup();
|
||||
}
|
||||
|
@ -15,7 +15,7 @@ import type { DbUserJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ExportUserListsProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -34,11 +34,11 @@ export class ExportUserListsProcessorService {
|
||||
private driveService: DriveService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('export-user-lists');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('export-user-lists');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Exporting user lists of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Exporting user lists of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -53,7 +53,7 @@ export class ExportUserListsProcessorService {
|
||||
// Create temp file
|
||||
const [path, cleanup] = await createTemp();
|
||||
|
||||
this.#logger.info(`Temp file is ${path}`);
|
||||
this.logger.info(`Temp file is ${path}`);
|
||||
|
||||
try {
|
||||
const stream = fs.createWriteStream(path, { flags: 'a' });
|
||||
@ -70,7 +70,7 @@ export class ExportUserListsProcessorService {
|
||||
await new Promise<void>((res, rej) => {
|
||||
stream.write(content + '\n', err => {
|
||||
if (err) {
|
||||
this.#logger.error(err);
|
||||
this.logger.error(err);
|
||||
rej(err);
|
||||
} else {
|
||||
res();
|
||||
@ -81,12 +81,12 @@ export class ExportUserListsProcessorService {
|
||||
}
|
||||
|
||||
stream.end();
|
||||
this.#logger.succ(`Exported to: ${path}`);
|
||||
this.logger.succ(`Exported to: ${path}`);
|
||||
|
||||
const fileName = 'user-lists-' + dateFormat(new Date(), 'yyyy-MM-dd-HH-mm-ss') + '.csv';
|
||||
const driveFile = await this.driveService.addFile({ user, path, name: fileName, force: true });
|
||||
|
||||
this.#logger.succ(`Exported to: ${driveFile.id}`);
|
||||
this.logger.succ(`Exported to: ${driveFile.id}`);
|
||||
} finally {
|
||||
cleanup();
|
||||
}
|
||||
|
@ -15,7 +15,7 @@ import type { DbUserImportJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ImportBlockingProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -36,11 +36,11 @@ export class ImportBlockingProcessorService {
|
||||
private downloadService: DownloadService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('import-blocking');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('import-blocking');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserImportJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Importing blocking of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Importing blocking of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -88,15 +88,15 @@ export class ImportBlockingProcessorService {
|
||||
// skip myself
|
||||
if (target.id === job.data.user.id) continue;
|
||||
|
||||
this.#logger.info(`Block[${linenum}] ${target.id} ...`);
|
||||
this.logger.info(`Block[${linenum}] ${target.id} ...`);
|
||||
|
||||
await this.userBlockingService.block(user, target);
|
||||
} catch (e) {
|
||||
this.#logger.warn(`Error in line:${linenum} ${e}`);
|
||||
this.logger.warn(`Error in line:${linenum} ${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
this.#logger.succ('Imported');
|
||||
this.logger.succ('Imported');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -17,7 +17,7 @@ import type { DbUserImportJobData } from '../types.js';
|
||||
// TODO: 名前衝突時の動作を選べるようにする
|
||||
@Injectable()
|
||||
export class ImportCustomEmojisProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -40,11 +40,11 @@ export class ImportCustomEmojisProcessorService {
|
||||
private downloadService: DownloadService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('import-custom-emojis');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('import-custom-emojis');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserImportJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info('Importing custom emojis ...');
|
||||
this.logger.info('Importing custom emojis ...');
|
||||
|
||||
const file = await this.driveFilesRepository.findOneBy({
|
||||
id: job.data.fileId,
|
||||
@ -56,7 +56,7 @@ export class ImportCustomEmojisProcessorService {
|
||||
|
||||
const [path, cleanup] = await createTempDir();
|
||||
|
||||
this.#logger.info(`Temp dir is ${path}`);
|
||||
this.logger.info(`Temp dir is ${path}`);
|
||||
|
||||
const destPath = path + '/emojis.zip';
|
||||
|
||||
@ -65,7 +65,7 @@ export class ImportCustomEmojisProcessorService {
|
||||
await this.downloadService.downloadUrl(file.url, destPath);
|
||||
} catch (e) { // TODO: 何度か再試行
|
||||
if (e instanceof Error || typeof e === 'string') {
|
||||
this.#logger.error(e);
|
||||
this.logger.error(e);
|
||||
}
|
||||
throw e;
|
||||
}
|
||||
@ -101,10 +101,10 @@ export class ImportCustomEmojisProcessorService {
|
||||
|
||||
cleanup();
|
||||
|
||||
this.#logger.succ('Imported');
|
||||
this.logger.succ('Imported');
|
||||
done();
|
||||
});
|
||||
unzipStream.pipe(extractor);
|
||||
this.#logger.succ(`Unzipping to ${outputPath}`);
|
||||
this.logger.succ(`Unzipping to ${outputPath}`);
|
||||
}
|
||||
}
|
||||
|
@ -15,7 +15,7 @@ import type { DbUserImportJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ImportFollowingProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -33,11 +33,11 @@ export class ImportFollowingProcessorService {
|
||||
private downloadService: DownloadService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('import-following');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('import-following');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserImportJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Importing following of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Importing following of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -85,15 +85,15 @@ export class ImportFollowingProcessorService {
|
||||
// skip myself
|
||||
if (target.id === job.data.user.id) continue;
|
||||
|
||||
this.#logger.info(`Follow[${linenum}] ${target.id} ...`);
|
||||
this.logger.info(`Follow[${linenum}] ${target.id} ...`);
|
||||
|
||||
this.userFollowingService.follow(user, target);
|
||||
} catch (e) {
|
||||
this.#logger.warn(`Error in line:${linenum} ${e}`);
|
||||
this.logger.warn(`Error in line:${linenum} ${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
this.#logger.succ('Imported');
|
||||
this.logger.succ('Imported');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,7 @@ import type { DbUserImportJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ImportMutingProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -34,11 +34,11 @@ export class ImportMutingProcessorService {
|
||||
private downloadService: DownloadService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('import-muting');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('import-muting');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserImportJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Importing muting of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Importing muting of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -86,15 +86,15 @@ export class ImportMutingProcessorService {
|
||||
// skip myself
|
||||
if (target.id === job.data.user.id) continue;
|
||||
|
||||
this.#logger.info(`Mute[${linenum}] ${target.id} ...`);
|
||||
this.logger.info(`Mute[${linenum}] ${target.id} ...`);
|
||||
|
||||
await this.userMutingService.mute(user, target);
|
||||
} catch (e) {
|
||||
this.#logger.warn(`Error in line:${linenum} ${e}`);
|
||||
this.logger.warn(`Error in line:${linenum} ${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
this.#logger.succ('Imported');
|
||||
this.logger.succ('Imported');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,7 @@ import type { DbUserImportJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class ImportUserListsProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -41,11 +41,11 @@ export class ImportUserListsProcessorService {
|
||||
private downloadService: DownloadService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('import-user-lists');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('import-user-lists');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<DbUserImportJobData>, done: () => void): Promise<void> {
|
||||
this.#logger.info(`Importing user lists of ${job.data.user.id} ...`);
|
||||
this.logger.info(`Importing user lists of ${job.data.user.id} ...`);
|
||||
|
||||
const user = await this.usersRepository.findOneBy({ id: job.data.user.id });
|
||||
if (user == null) {
|
||||
@ -102,11 +102,11 @@ export class ImportUserListsProcessorService {
|
||||
|
||||
this.userListService.push(target, list!);
|
||||
} catch (e) {
|
||||
this.#logger.warn(`Error in line:${linenum} ${e}`);
|
||||
this.logger.warn(`Error in line:${linenum} ${e}`);
|
||||
}
|
||||
}
|
||||
|
||||
this.#logger.succ('Imported');
|
||||
this.logger.succ('Imported');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -31,7 +31,7 @@ import type { DeliverJobData, InboxJobData } from '../types.js';
|
||||
// ユーザーのinboxにアクティビティが届いた時の処理
|
||||
@Injectable()
|
||||
export class InboxProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -57,7 +57,7 @@ export class InboxProcessorService {
|
||||
private federationChart: FederationChart,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('inbox');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('inbox');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<InboxJobData>): Promise<string> {
|
||||
@ -67,7 +67,7 @@ export class InboxProcessorService {
|
||||
//#region Log
|
||||
const info = Object.assign({}, activity) as any;
|
||||
delete info['@context'];
|
||||
this.#logger.debug(JSON.stringify(info, null, 2));
|
||||
this.logger.debug(JSON.stringify(info, null, 2));
|
||||
//#endregion
|
||||
|
||||
const host = this.utilityService.toPuny(new URL(signature.keyId).hostname);
|
||||
|
@ -20,7 +20,7 @@ import type Bull from 'bull';
|
||||
|
||||
@Injectable()
|
||||
export class ResyncChartsProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -41,11 +41,11 @@ export class ResyncChartsProcessorService {
|
||||
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('resync-charts');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('resync-charts');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<Record<string, unknown>>, done: () => void): Promise<void> {
|
||||
this.#logger.info('Resync charts...');
|
||||
this.logger.info('Resync charts...');
|
||||
|
||||
// TODO: ユーザーごとのチャートも更新する
|
||||
// TODO: インスタンスごとのチャートも更新する
|
||||
@ -55,7 +55,7 @@ export class ResyncChartsProcessorService {
|
||||
this.usersChart.resync(),
|
||||
]);
|
||||
|
||||
this.#logger.succ('All charts successfully resynced.');
|
||||
this.logger.succ('All charts successfully resynced.');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ import type Bull from 'bull';
|
||||
|
||||
@Injectable()
|
||||
export class TickChartsProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -41,11 +41,11 @@ export class TickChartsProcessorService {
|
||||
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('tick-charts');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('tick-charts');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<Record<string, unknown>>, done: () => void): Promise<void> {
|
||||
this.#logger.info('Tick charts...');
|
||||
this.logger.info('Tick charts...');
|
||||
|
||||
await Promise.all([
|
||||
this.federationChart.tick(false),
|
||||
@ -62,7 +62,7 @@ export class TickChartsProcessorService {
|
||||
this.apRequestChart.tick(false),
|
||||
]);
|
||||
|
||||
this.#logger.succ('All charts successfully ticked.');
|
||||
this.logger.succ('All charts successfully ticked.');
|
||||
done();
|
||||
}
|
||||
}
|
||||
|
@ -12,7 +12,7 @@ import type { WebhookDeliverJobData } from '../types.js';
|
||||
|
||||
@Injectable()
|
||||
export class WebhookDeliverProcessorService {
|
||||
#logger: Logger;
|
||||
private logger: Logger;
|
||||
|
||||
constructor(
|
||||
@Inject(DI.config)
|
||||
@ -24,12 +24,12 @@ export class WebhookDeliverProcessorService {
|
||||
private httpRequestService: HttpRequestService,
|
||||
private queueLoggerService: QueueLoggerService,
|
||||
) {
|
||||
this.#logger = this.queueLoggerService.logger.createSubLogger('webhook');
|
||||
this.logger = this.queueLoggerService.logger.createSubLogger('webhook');
|
||||
}
|
||||
|
||||
public async process(job: Bull.Job<WebhookDeliverJobData>): Promise<string> {
|
||||
try {
|
||||
this.#logger.debug(`delivering ${job.data.webhookId}`);
|
||||
this.logger.debug(`delivering ${job.data.webhookId}`);
|
||||
|
||||
const res = await this.httpRequestService.getResponse({
|
||||
url: job.data.to,
|
||||
|
Reference in New Issue
Block a user