@nerrewton/spring_logger
v7.0.3
Published
Tool for recording logs in node js with express framework using a third party or custom API
Downloads
8
Readme
Spring Logger
This is a package for capturing error messages and tracking their origin, we include at first Sentry as a third party company for logging purposes but it can support others APIs.
Installation
npm install @nerrewton/spring_logger
Usage for node with Express
import express, { IRouter } from "express"
import { init as initSpringLogger, end as endSpringLogger, write as writeSpringLogger, NodeSentryLogger } from "@nerrewton/spring_logger"
import userRouter from "./routes/userRouter"
const app = express()
const router: IRouter = app.Router()
// SpringLogger Inicialization for Sentry node API
initSpringLogger( new NodeSentryLogger("http:<url external API>"), app )
// Unhandle error should be tracked by SpringLogger
app.get("/unhandle_error", function mainHandler(req, res) {
throw new Error("My first error!")
})
// Manual trigger error tracking
app.get("/info_error", function manualError(req, res) {
try{
throw new Error("My first error!")
}catch( e ){
writeSpringLogger( "info", e )
}
})
router.use("/user", userRouter)
// SpringLogger close inicialization for Sentry node API
endSpringLogger( app )
app.listen( 8080 , function () {
console.log( " API is runing on port 8080")
})
// ./routes/userRouter.js
import { write as writeSpringLogger } from "@nerrewton/spring_logger"
import { Router } from 'express';
const userRouter = Router();
userRouter.get('/', (req, res): => {
try{
throw new Error("My first error from users router!")
}catch( e ){
// trigger manually an error from user router
writeSpringLogger( "info", e )
}
return res.json("OK");
})
export default userRouter