diff options
author | poeti8 <ezzati.upt@gmail.com> | 2020-09-19 16:35:18 +0300 |
---|---|---|
committer | poeti8 <ezzati.upt@gmail.com> | 2020-09-19 16:35:18 +0300 |
commit | 23557ac94ec12f6df270f4086e0accad7b280a38 (patch) | |
tree | 33224dadd99fabe0bdb2ec814d2cf150d734a8a8 /server | |
parent | acba603f805efb511f109b2469121363bf8d2267 (diff) | |
parent | b3b7a0273cdd26706caa68a78da08d64ceea9958 (diff) |
Merge branches 'develop' and 'develop' of github.com:thedevs-network/kutt into develop
Diffstat (limited to 'server')
-rw-r--r-- | server/env.ts | 3 | ||||
-rw-r--r-- | server/handlers/helpers.ts | 8 | ||||
-rw-r--r-- | server/server.ts | 19 |
3 files changed, 19 insertions, 11 deletions
diff --git a/server/env.ts b/server/env.ts index af5bec2..4f0d75f 100644 --- a/server/env.ts +++ b/server/env.ts @@ -40,7 +40,8 @@ const env = cleanEnv(process.env, { MAIL_PASSWORD: str(), REPORT_EMAIL: str({ default: "" }), CONTACT_EMAIL: str({ default: "" }), - RAVEN_DSN: str({ default: "" }) + SENTRY_PRIVATE_DSN: str({ default: "" }), + SENTRY_PUBLIC_DSN: str({ default: "" }) }); export default env; diff --git a/server/handlers/helpers.ts b/server/handlers/helpers.ts index d038353..439cf7a 100644 --- a/server/handlers/helpers.ts +++ b/server/handlers/helpers.ts @@ -1,6 +1,6 @@ import { Handler, ErrorRequestHandler } from "express"; import { validationResult } from "express-validator"; -import Raven from "raven"; +import * as Sentry from "@sentry/node"; import signale from "signale"; import { CustomError } from "../utils"; @@ -21,10 +21,8 @@ export const error: ErrorRequestHandler = (error, req, res, next) => { return res.status(error.statusCode || 500).json({ error: error.message }); } - if (env.RAVEN_DSN) { - Raven.captureException(error, { - user: { email: req.user && req.user.email } - }); + if (env.SENTRY_PRIVATE_DSN) { + Sentry.captureException(error); } return res.status(500).json({ error: "An error occurred." }); diff --git a/server/server.ts b/server/server.ts index 713edf0..dbd9f48 100644 --- a/server/server.ts +++ b/server/server.ts @@ -7,7 +7,7 @@ import express from "express"; import helmet from "helmet"; import morgan from "morgan"; import nextApp from "next"; -import Raven from "raven"; +import * as Sentry from "@sentry/node"; import * as helpers from "./handlers/helpers"; import * as links from "./handlers/links"; @@ -18,20 +18,29 @@ import routes from "./routes"; import "./cron"; import "./passport"; -if (env.RAVEN_DSN) { - Raven.config(env.RAVEN_DSN).install(); -} - const port = env.PORT; const app = nextApp({ dir: "./client", dev: env.isDev }); const handle = app.getRequestHandler(); app.prepare().then(async () => { const server = express(); + server.set("trust proxy", true); if (env.isDev) { server.use(morgan("dev")); + } else if (env.SENTRY_PRIVATE_DSN) { + Sentry.init({ + dsn: env.SENTRY_PRIVATE_DSN, + environment: process.env.NODE_ENV + }); + + server.use( + Sentry.Handlers.requestHandler({ + ip: true, + user: ["id", "email"] + }) + ); } server.use(helmet()); |