Questa documentazione è stata tradotta automaticamente dall'IA.
Il sistema di logging di NocoBase si basa su Winston. Per impostazione predefinita, NocoBase categorizza i log in log delle richieste API, log di runtime del sistema e log di esecuzione SQL. I log delle richieste API e quelli di esecuzione SQL vengono generati internamente dall'applicazione, mentre gli sviluppatori di plugin di solito devono solo occuparsi dei log di runtime del sistema relativi ai loro plugin.
Questo documento spiega come creare e generare log durante lo sviluppo di un plugin.
NocoBase offre metodi per la generazione dei log di runtime del sistema. I log vengono generati seguendo campi specifici e indirizzati a file designati.
Tutti i metodi sopra descritti seguono la sintassi seguente:
Il primo parametro è il messaggio del log, mentre il secondo è un oggetto metadata opzionale, che può contenere qualsiasi coppia chiave-valore. I campi module, submodule e method verranno estratti come campi separati, mentre i campi rimanenti saranno inseriti nel campo meta.
Se desidera utilizzare il metodo di generazione predefinito del sistema ma non vuole che l'output venga indirizzato al file predefinito, può creare un'istanza di logger di sistema personalizzata usando createSystemLogger.
Se non desidera utilizzare i metodi di generazione forniti dal sistema e preferisce quelli nativi di Winston, può creare i log usando i seguenti metodi.
createLoggerL'oggetto options estende le originali winston.LoggerOptions.
transports - Può utilizzare 'console' | 'file' | 'dailyRotateFile' per applicare i metodi di output predefiniti.format - Può utilizzare 'logfmt' | 'json' | 'delimiter' per applicare i formati di generazione predefiniti.app.createLoggerNegli scenari multi-applicazione, a volte desideriamo personalizzare le directory e i file di output, indirizzandoli a una directory con il nome dell'applicazione corrente.
plugin.createLoggerIl caso d'uso e la sintassi sono gli stessi di app.createLogger.