add error handler
This commit is contained in:
@@ -17,18 +17,19 @@
|
||||
"esbuild": "^0.14.10",
|
||||
"esno": "^0.13.0",
|
||||
"express": "^4.17.2",
|
||||
"express-promise-router": "^4.1.1",
|
||||
"gray-matter": "^4.0.3",
|
||||
"http-terminator": "^3.0.4",
|
||||
"markdown-it": "^12.3.0",
|
||||
"markdown-it-prism": "^2.2.1",
|
||||
"pino": "^7.6.2",
|
||||
"pino-colada": "^2.2.2",
|
||||
"pino-http": "^6.5.0",
|
||||
"postcss": "^8.4.5",
|
||||
"reacord": "workspace:*",
|
||||
"react": "^18.0.0-rc.0",
|
||||
"react-dom": "^18.0.0-rc.0",
|
||||
"postcss": "^8.4.5",
|
||||
"tailwindcss": "^3.0.8",
|
||||
"markdown-it": "^12.3.0",
|
||||
"markdown-it-prism": "^2.2.1"
|
||||
"tailwindcss": "^3.0.8"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/browser-sync": "^2.26.3",
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import compression from "compression"
|
||||
import type { Request } from "express"
|
||||
import type { ErrorRequestHandler, Request } from "express"
|
||||
import express from "express"
|
||||
import Router from "express-promise-router"
|
||||
import httpTerminator from "http-terminator"
|
||||
import pino from "pino"
|
||||
import pinoHttp from "pino-http"
|
||||
@@ -16,7 +17,12 @@ import { Landing } from "./pages/landing"
|
||||
const logger = pino()
|
||||
const port = process.env.PORT || 3000
|
||||
|
||||
const app = express()
|
||||
const errorHandler: ErrorRequestHandler = (error, request, response, next) => {
|
||||
response.status(500).send(error.message)
|
||||
logger.error(error)
|
||||
}
|
||||
|
||||
const router = Router()
|
||||
.use(pinoHttp({ logger }))
|
||||
.use(compression())
|
||||
.get("/tailwind.css", serveTailwindCss())
|
||||
@@ -51,9 +57,13 @@ const app = express()
|
||||
sendJsx(res, <Landing />)
|
||||
})
|
||||
|
||||
const server = app.listen(port, () => {
|
||||
logger.info(`Server is running on https://localhost:${port}`)
|
||||
})
|
||||
.use(errorHandler)
|
||||
|
||||
const server = express()
|
||||
.use(router)
|
||||
.listen(port, () => {
|
||||
logger.info(`Server is running on https://localhost:${port}`)
|
||||
})
|
||||
|
||||
const terminator = httpTerminator.createHttpTerminator({ server })
|
||||
|
||||
|
||||
Reference in New Issue
Block a user