@scayle/storefront-nuxt
Version:
Nuxt integration for the SCAYLE Commerce Engine and Storefront API
24 lines (23 loc) • 886 B
JavaScript
import { createConsola } from "consola";
import { defineNitroPlugin } from "nitropack/runtime/plugin";
import { useRuntimeConfig } from "#imports";
import createLog from "../../createLog.js";
import { JSONReporter } from "../../JSONReporter.js";
export default defineNitroPlugin((nitroApp) => {
const config = useRuntimeConfig();
const logConfig = config.public.storefront.log;
const log = createLog(
(opts) => createConsola({
...logConfig.json ? { reporters: [new JSONReporter()] } : void 0,
stderr: logConfig.output === "stdout" ? process.stdout : process.stderr,
stdout: logConfig.output === "stderr" ? process.stderr : process.stdout,
...opts
}),
logConfig.name,
logConfig.level
);
log.info(`Logger instance created. Level: ${logConfig.level}`);
nitroApp.hooks.hook("request", (event) => {
event.context.$log = log;
});
});