From 09181f284d5c7b54e53e8413abe92b4067ba819d Mon Sep 17 00:00:00 2001 From: Joakim Carlstein Date: Tue, 12 Dec 2023 15:25:22 +0100 Subject: [PATCH] feat(reporter-pino): don't log the full metadata object for each migration --- .changeset/sour-windows-appear.md | 5 +++++ packages/reporter-pino/src/index.ts | 27 ++++++++++++++++++--------- 2 files changed, 23 insertions(+), 9 deletions(-) create mode 100644 .changeset/sour-windows-appear.md diff --git a/.changeset/sour-windows-appear.md b/.changeset/sour-windows-appear.md new file mode 100644 index 0000000..2a76b93 --- /dev/null +++ b/.changeset/sour-windows-appear.md @@ -0,0 +1,5 @@ +--- +'@emigrate/reporter-pino': minor +--- + +Only log the relative file path to the migration instead of the full metadata object diff --git a/packages/reporter-pino/src/index.ts b/packages/reporter-pino/src/index.ts index 65f6ce5..18af18e 100644 --- a/packages/reporter-pino/src/index.ts +++ b/packages/reporter-pino/src/index.ts @@ -82,7 +82,7 @@ class PinoReporter implements Required { const failedMigrations = nonLockedMigrations.filter( (migration) => 'status' in migration && migration.status === 'failed', ); - const unlockableCount = nonLockedMigrations.length - failedMigrations.length; + const unlockableCount = this.#command === 'up' ? nonLockedMigrations.length - failedMigrations.length : 0; const parts = [ `${lockedMigrations.length} of ${migrations.length} pending migrations to run`, unlockableCount > 0 ? `(${unlockableCount} locked)` : '', @@ -93,35 +93,44 @@ class PinoReporter implements Required { } onNewMigration(migration: MigrationMetadata, content: string): Awaitable { - this.#logger.info({ migration, content }, `Created new migration file: ${migration.name}`); + this.#logger.info( + { migration: migration.relativeFilePath, content }, + `Created new migration file: ${migration.name}`, + ); } onMigrationRemoveStart(migration: MigrationMetadata): Awaitable { - this.#logger.debug({ migration }, `Removing migration: ${migration.name}`); + this.#logger.debug({ migration: migration.relativeFilePath }, `Removing migration: ${migration.name}`); } onMigrationRemoveSuccess(migration: MigrationMetadataFinished): Awaitable { - this.#logger.info({ migration }, `Successfully removed migration: ${migration.name}`); + this.#logger.info({ migration: migration.relativeFilePath }, `Successfully removed migration: ${migration.name}`); } onMigrationRemoveError(migration: MigrationMetadataFinished, error: Error): Awaitable { - this.#logger.error({ migration, [this.errorKey]: error }, `Failed to remove migration: ${migration.name}`); + this.#logger.error( + { migration: migration.relativeFilePath, [this.errorKey]: error }, + `Failed to remove migration: ${migration.name}`, + ); } onMigrationStart(migration: MigrationMetadata): Awaitable { - this.#logger.info({ migration }, `${migration.name} (running)`); + this.#logger.info({ migration: migration.relativeFilePath }, `${migration.name} (running)`); } onMigrationSuccess(migration: MigrationMetadataFinished): Awaitable { - this.#logger.info({ migration }, `${migration.name} (${migration.status})`); + this.#logger.info({ migration: migration.relativeFilePath }, `${migration.name} (${migration.status})`); } onMigrationError(migration: MigrationMetadataFinished, error: Error): Awaitable { - this.#logger.error({ migration, [this.errorKey]: error }, `${migration.name} (${migration.status})`); + this.#logger.error( + { migration: migration.relativeFilePath, [this.errorKey]: error }, + `${migration.name} (${migration.status})`, + ); } onMigrationSkip(migration: MigrationMetadataFinished): Awaitable { - this.#logger.info({ migration }, `${migration.name} (${migration.status})`); + this.#logger.info({ migration: migration.relativeFilePath }, `${migration.name} (${migration.status})`); } onFinished(migrations: MigrationMetadataFinished[], error?: Error | undefined): Awaitable {