New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@compas/server

Package Overview
Dependencies
Maintainers
1
Versions
199
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@compas/server - npm Package Compare versions

Comparing version 0.10.0 to 0.10.1

src/middleware/sentry.d.ts

8

package.json
{
"name": "@compas/server",
"version": "0.10.0",
"version": "0.10.1",
"description": "Koa server and common middleware",

@@ -24,9 +24,9 @@ "exports": {

"dependencies": {
"@compas/stdlib": "0.10.0",
"@compas/stdlib": "0.10.1",
"@types/formidable": "2.0.6",
"@types/koa": "2.14.0",
"@types/koa": "2.15.0",
"co-body": "6.1.0",
"formidable": "2.1.1",
"keygrip": "1.1.0",
"koa": "2.15.0"
"koa": "2.15.3"
},

@@ -33,0 +33,0 @@ "author": {

@@ -8,2 +8,3 @@ import { isProduction } from "@compas/stdlib";

import { notFoundHandler } from "./middleware/notFound.js";
import { sentry } from "./middleware/sentry.js";

@@ -82,2 +83,4 @@ /**

app.use(sentry());
app.use(logMiddleware(app, opts.logOptions ?? {}));

@@ -84,0 +87,0 @@ app.use(errorHandler(opts.errorOptions ?? {}));

@@ -1,2 +0,2 @@

import { AppError, isProduction } from "@compas/stdlib";
import { _compasSentryExport, AppError, isProduction } from "@compas/stdlib";

@@ -33,2 +33,3 @@ /**

const origErr = error;
let err = error;

@@ -42,2 +43,16 @@ let log = ctx.log.info;

if (err.status >= 500) {
if (_compasSentryExport) {
if (err === origErr) {
// An AppError.serverError was thrown.
_compasSentryExport.captureException(
new Error(err.key, {
cause: err,
}),
);
} else {
// Something else was thrown.
_compasSentryExport.captureException(origErr);
}
}
log = ctx.log.error;

@@ -44,0 +59,0 @@ }

import { Transform } from "node:stream";
import {
_compasSentryExport,
AppError,

@@ -44,3 +45,3 @@ eventStart,

*/
function logInfo(ctx, startTime, length) {
function logInfoAndEndTrace(ctx, startTime, length) {
const duration = Math.round(

@@ -83,4 +84,26 @@ Number(process.hrtime.bigint() - startTime) / 1000000,

if (options.disableRootEvent !== true && ctx.method !== "OPTIONS") {
if (_compasSentryExport) {
const span = _compasSentryExport.getActiveSpan();
if (span) {
span.description = ctx.event.name;
span.updateName(ctx.event.name);
}
}
eventStop(ctx.event);
}
if (_compasSentryExport) {
const span = _compasSentryExport.getActiveSpan();
if (span) {
span.setStatus(
_compasSentryExport.getSpanStatusFromHttpCode(ctx.status),
);
span.setAttributes({
params: ctx.validatedParams,
query: ctx.validatedQuery,
});
span.end();
}
}
}

@@ -101,2 +124,6 @@

});
if (_compasSentryExport) {
_compasSentryExport.captureException(error);
}
});

@@ -130,4 +157,5 @@

}
if (!isNil(responseLength)) {
logInfo(ctx, startTime, responseLength);
logInfoAndEndTrace(ctx, startTime, responseLength);
return;

@@ -141,3 +169,3 @@ } else if (ctx.body && ctx.body.readable) {

logInfo(ctx, startTime, isNil(counter) ? 0 : counter.length);
logInfoAndEndTrace(ctx, startTime, isNil(counter) ? 0 : counter.length);
};

@@ -144,0 +172,0 @@ }

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc