next-logger 1.2.0
Install from the command line:
Learn more about npm packages
$ npm install @navikt/next-logger@1.2.0
Install via package.json:
"@navikt/next-logger": "1.2.0"
About this version
A simple logger that lets you log from both the frontend and the backend. Both show up in logs.adeo.no under +application:yourapp
with correct log level.
You need an API route that will receive all the log statements.
Create a new API route /pages/api/logger.ts
, it should look like this:
export { pinoLoggingRoute as default } from '@navikt/next-logger';
Anywhere in your application where you want to log, you should import import { logger } from '@navikt/next-logger';
, this is a pino instance, use it to log, for example: logger.warn("Uh oh")
.
Step 3 (Optional): Integarting with next-logger
The pino configuration from this library can be shared with next-logger.
Simply create a next-logger.config.js
in the root of your project, and re-export the logging config as following:
const { backendLogger } = require('@navikt/next-logger');
module.exports = {
logger: backendLogger,
};
If your application is using a base path, or you want to have your logger on a different API-route, you can configure the logger.
In your _app.tsx
, on root in the file, you can use configureLogger
as such:
configureLogger({
basePath: '/my/base/path',
apiPath: '/api/other-logger',
})
Or if you only want to change the base path:
configureLogger({ basePath: '/my/base/path', })