feat(logging): replace 207 console.log/error/warn with pino structured logger (#58)

- Add pino + pino-pretty dependencies
- Create src/utils/logger.js with env-based LOG_LEVEL
- Replace all 207 console.log/error/warn calls across 46 source files
- Remove [DEBUG], [ERROR] string prefixes (levels convey this)
- Add pino redact for sensitive fields (mnemonic, privateKey, token, etc.)
- Structured logging with context objects instead of string interpolation
- NODE_ENV=production disables pino-pretty transport

49 files changed, 5601 insertions, 6056 deletions
This commit is contained in:
NW
2026-06-22 01:42:47 +01:00
parent ba80784ae7
commit ce1b6003cb
49 changed files with 5624 additions and 6079 deletions

View File

@@ -8,6 +8,7 @@ import * as bitcoin from 'bitcoinjs-lib';
import * as ecc from 'tiny-secp256k1';
import { ECPairFactory } from 'ecpair';
import CryptoJS from 'crypto';
import logger from './logger.js';
const ECPair = ECPairFactory(ecc);
@@ -16,7 +17,7 @@ export default class WalletGenerator {
try {
return bip39.generateMnemonic(128); // 12 слов
} catch (error) {
console.error('Error generating mnemonic:', error);
logger.error({ err: error }, 'Error generating mnemonic');
throw new Error('Failed to generate mnemonic');
}
}
@@ -86,7 +87,7 @@ export default class WalletGenerator {
},
};
} catch (error) {
console.error('Error in generateWallets:', error);
logger.error({ err: error }, 'Error in generateWallets');
throw new Error('Failed to generate cryptocurrency wallets: ' + error.message);
}
}