Tento dokument byl přeložen umělou inteligencí. V případě nepřesností se prosím obraťte na anglickou verzi
Logování v NocoBase je založeno na knihovně Winston. Ve výchozím nastavení NocoBase dělí záznamy na logy požadavků API, logy běhu systému a logy provádění SQL dotazů. Logy požadavků API a provádění SQL dotazů jsou generovány interně aplikací. Vývojáři pluginů obvykle potřebují zaznamenávat pouze logy běhu systému související s jejich pluginy.
Tento dokument popisuje, jak vytvářet a zaznamenávat logy při vývoji pluginů.
NocoBase poskytuje metody pro logování běhu systému. Logy jsou zaznamenávány podle předdefinovaných polí a ukládány do určených souborů.
Všechny výše uvedené metody se řídí následujícím použitím:
Prvním parametrem je zpráva logu a druhým volitelný objekt metadata, který může obsahovat libovolné páry klíč-hodnota. Zde budou module, submodule a method extrahovány jako samostatná pole, zatímco zbývající pole budou umístěna do pole meta.
Pokud chcete použít výchozí metodu logování systému, ale nechcete výstup ukládat do výchozího souboru, můžete vytvořit vlastní instanci systémového loggeru pomocí createSystemLogger.
Pokud nechcete používat systémové metody logování a preferujete nativní metody Winstonu, můžete logy vytvářet následujícími způsoby.
createLoggeroptions rozšiřuje původní winston.LoggerOptions.
transports – Můžete použít přednastavené metody výstupu: 'console' | 'file' | 'dailyRotateFile'.format – Můžete použít přednastavené formáty logování: 'logfmt' | 'json' | 'delimiter'.app.createLoggerVe scénářích s více aplikacemi někdy chceme vlastní výstupní adresáře a soubory, které mohou být uloženy do adresáře pojmenovaného podle aktuální aplikace.
plugin.createLoggerScénář použití a metoda jsou stejné jako u app.createLogger.