add error handler

This commit is contained in:
MapleLeaf
2022-01-03 04:48:00 -06:00
parent fdb5bd74c5
commit 22779b747b
3 changed files with 47 additions and 9 deletions

View File

@@ -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",

View File

@@ -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 })