@effect-app/infra 1.43.2 → 1.43.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # @effect-app/infra
2
2
 
3
+ ## 1.43.4
4
+
5
+ ### Patch Changes
6
+
7
+ - 4a814f5: improve error report
8
+ - Updated dependencies [4a814f5]
9
+ - @effect-app/infra-adapters@1.20.4
10
+ - effect-app@1.30.3
11
+
12
+ ## 1.43.3
13
+
14
+ ### Patch Changes
15
+
16
+ - cda1477: update packages
17
+ - Updated dependencies [cda1477]
18
+ - @effect-app/infra-adapters@1.20.3
19
+ - effect-app@1.30.2
20
+ - @effect-app/schema@1.19.1
21
+ - @effect-app/core@1.17.1
22
+
3
23
  ## 1.43.2
4
24
 
5
25
  ### Patch Changes
@@ -15,24 +15,8 @@ var _logger = require("./logger.cjs");
15
15
  var _RequestContextContainer = require("./services/RequestContextContainer.cjs");
16
16
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17
17
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
- const tryToJson = error => {
19
- try {
20
- return error.toJSON();
21
- } catch {
22
- try {
23
- return error.toString();
24
- } catch (err) {
25
- try {
26
- return `Failed to convert error: ${err}`;
27
- } catch {
28
- return `Failed to convert error: unknown failure`;
29
- }
30
- }
31
- }
32
- };
33
18
  function reportError(name) {
34
19
  return (cause, extras) => _effectApp.Effect.gen(function* () {
35
- yield* (0, _errors.annotateSpanWithError)(cause, name);
36
20
  if (_effectApp.Cause.isInterrupted(cause)) {
37
21
  yield* _logger.InfraLogger.logDebug("Interrupted").pipe(_effectApp.Effect.annotateLogs("extras", JSON.stringify(extras ?? {})));
38
22
  return;
@@ -41,7 +25,7 @@ function reportError(name) {
41
25
  yield* reportSentry(error, extras);
42
26
  yield* _logger.InfraLogger.logError("Reporting error", cause).pipe(_effectApp.Effect.annotateLogs((0, _utils.dropUndefined)({
43
27
  extras,
44
- __cause__: tryToJson(error),
28
+ cause: (0, _errors.tryToJson)(error),
45
29
  __error_name__: name
46
30
  })), _effectApp.Effect.catchAllCause(cause => _logger.InfraLogger.logError("Failed to log error", cause)), _effectApp.Effect.catchAllCause(() => _logger.InfraLogger.logError("Failed to log error cause")));
47
31
  error[_errors.ErrorReported] = true;
@@ -54,7 +38,8 @@ function reportSentry(error, extras) {
54
38
  const scope = new Sentry.Scope();
55
39
  if (context) scope.setContext("context", context);
56
40
  if (extras) scope.setContext("extras", extras);
57
- scope.setContext("error", tryToJson(error));
41
+ scope.setContext("error", (0, _errors.tryToJson)(error));
42
+ scope.setContext("cause", (0, _errors.tryToJson)(error.originalCause));
58
43
  Sentry.captureException(error, scope);
59
44
  }));
60
45
  }
@@ -66,10 +51,9 @@ function logError(name) {
66
51
  })));
67
52
  return;
68
53
  }
69
- const error = new _errors.CauseException(cause, name);
70
54
  yield* _logger.InfraLogger.logWarning("Logging error", cause).pipe(_effectApp.Effect.annotateLogs((0, _utils.dropUndefined)({
71
55
  extras,
72
- __cause__: tryToJson(error),
56
+ cause: (0, _errors.tryToJson)(cause),
73
57
  __error_name__: name
74
58
  })), _effectApp.Effect.catchAllCause(cause => _logger.InfraLogger.logError("Failed to log error", cause)), _effectApp.Effect.catchAllCause(() => _logger.InfraLogger.logError("Failed to log error cause")));
75
59
  });
@@ -1 +1 @@
1
- {"version":3,"file":"errorReporter.cjs","names":["_utils","require","Sentry","_interopRequireWildcard","_effectApp","_errors","_logger","_RequestContextContainer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","tryToJson","error","toJSON","toString","err","reportError","name","cause","extras","Effect","gen","annotateSpanWithError","Cause","isInterrupted","InfraLogger","logDebug","pipe","annotateLogs","JSON","stringify","CauseException","reportSentry","logError","dropUndefined","__cause__","__error_name__","catchAllCause","ErrorReported","RequestContextContainer","getOption","map","ctx","context","Option","getOrUndefined","scope","Scope","setContext","captureException","logWarning","console","reportMessage","message","captureMessage","warn"],"sources":["../src/errorReporter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"errorReporter.cjs","names":["_utils","require","Sentry","_interopRequireWildcard","_effectApp","_errors","_logger","_RequestContextContainer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","reportError","name","cause","extras","Effect","gen","Cause","isInterrupted","InfraLogger","logDebug","pipe","annotateLogs","JSON","stringify","error","CauseException","reportSentry","logError","dropUndefined","tryToJson","__error_name__","catchAllCause","ErrorReported","RequestContextContainer","getOption","map","ctx","context","Option","getOrUndefined","scope","Scope","setContext","originalCause","captureException","logWarning","console","reportMessage","message","captureMessage","warn"],"sources":["../src/errorReporter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -24,7 +24,9 @@ const jsonLogger = exports.jsonLogger = _effectApp.Logger.make(({
24
24
  fiber: _effectApp.FiberId.threadName(fiberId),
25
25
  message,
26
26
  request: _effectApp.Option.getOrUndefined(c),
27
- cause: cause != null && cause != _effectApp.Cause.empty ? _effectApp.Cause.pretty(cause) : undefined,
27
+ cause: cause !== null && cause !== _effectApp.Cause.empty ? _effectApp.Cause.pretty(cause, {
28
+ renderErrorCause: true
29
+ }) : undefined,
28
30
  spans: _effectApp.List.map(spans, _ => ({
29
31
  label: _.label,
30
32
  timing: nowMillis - _.startTime
@@ -1 +1 @@
1
- {"version":3,"file":"jsonLogger.cjs","names":["_effectApp","require","_shared","jsonLogger","exports","Logger","make","annotations","cause","context","fiberId","logLevel","message","spans","now","Date","nowMillis","getTime","c","getRequestContext","data","timestamp","level","label","fiber","FiberId","threadName","request","Option","getOrUndefined","Cause","empty","pretty","undefined","List","map","_","timing","startTime","pipe","toArray","HashMap","size","reduce","prev","k","v","globalThis","console","log","JSON","stringify","logJson","replace","defaultLogger","withSpanAnnotations"],"sources":["../../src/logger/jsonLogger.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEO,MAAME,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAGE,iBAAM,CAACC,IAAI,CACnC,CAAC;EAAEC,WAAW;EAAEC,KAAK;EAAEC,OAAO;EAAEC,OAAO;EAAEC,QAAQ;EAAEC,OAAO;EAAEC;AAAK,CAAE,KAAI;EACrE,MAAMC,GAAG,GAAG,IAAIC,IAAI,EAAE;EACtB,MAAMC,SAAS,GAAGF,GAAG,CAACG,OAAO,EAAE;EAE/B,MAAMC,CAAC,GAAG,IAAAC,yBAAiB,EAACV,OAAO,CAAC;EAEpC,MAAMW,IAAI,GAAG;IACXC,SAAS,EAAEP,GAAG;IACdQ,KAAK,EAAEX,QAAQ,CAACY,KAAK;IACrBC,KAAK,EAAEC,kBAAO,CAACC,UAAU,CAAChB,OAAO,CAAC;IAClCE,OAAO;IACPe,OAAO,EAAEC,iBAAM,CAACC,cAAc,CAACX,CAAC,CAAC;IACjCV,KAAK,EAAEA,KAAK,IAAI,IAAI,IAAIA,KAAK,IAAIsB,gBAAK,CAACC,KAAK,GAAGD,gBAAK,CAACE,MAAM,CAACxB,KAAK,CAAC,GAAGyB,SAAS;IAC9EpB,KAAK,EAAEqB,eAAI,CAACC,GAAG,CAACtB,KAAK,EAAGuB,CAAC,KAAM;MAAEb,KAAK,EAAEa,CAAC,CAACb,KAAK;MAAEc,MAAM,EAAErB,SAAS,GAAGoB,CAAC,CAACE;IAAS,CAAE,CAAC,CAAC,CAACC,IAAI,CAACL,eAAI,CAACM,OAAO,CAAC;IACvGjC,WAAW,EAAEkC,kBAAO,CAACC,IAAI,CAACnC,WAAW,CAAC,GAAG,CAAC,GACtC,CAAC,GAAGA,WAAW,CAAC,CAACoC,MAAM,CAAC,CAACC,IAAI,EAAE,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAI;MACzCF,IAAI,CAACC,CAAC,CAAC,GAAGC,CAAC;MACX,OAAOF,IAAI;IACb,CAAC,EAAE,EAA6B,CAAC,GAC/BX;GACL;EAEDc,UAAU,CAACC,OAAO,CAACC,GAAG,CAACC,IAAI,CAACC,SAAS,CAAC/B,IAAI,CAAC,CAAC;AAC9C,CAAC,CACF;AAEM,MAAMgC,OAAO,GAAAhD,OAAA,CAAAgD,OAAA,GAAG/C,iBAAM,CAACgD,OAAO,CAAChD,iBAAM,CAACiD,aAAa,EAAEjD,iBAAM,CAACkD,mBAAmB,CAACpD,UAAU,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"jsonLogger.cjs","names":["_effectApp","require","_shared","jsonLogger","exports","Logger","make","annotations","cause","context","fiberId","logLevel","message","spans","now","Date","nowMillis","getTime","c","getRequestContext","data","timestamp","level","label","fiber","FiberId","threadName","request","Option","getOrUndefined","Cause","empty","pretty","renderErrorCause","undefined","List","map","_","timing","startTime","pipe","toArray","HashMap","size","reduce","prev","k","v","globalThis","console","log","JSON","stringify","logJson","replace","defaultLogger","withSpanAnnotations"],"sources":["../../src/logger/jsonLogger.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEO,MAAME,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAGE,iBAAM,CAACC,IAAI,CACnC,CAAC;EAAEC,WAAW;EAAEC,KAAK;EAAEC,OAAO;EAAEC,OAAO;EAAEC,QAAQ;EAAEC,OAAO;EAAEC;AAAK,CAAE,KAAI;EACrE,MAAMC,GAAG,GAAG,IAAIC,IAAI,EAAE;EACtB,MAAMC,SAAS,GAAGF,GAAG,CAACG,OAAO,EAAE;EAE/B,MAAMC,CAAC,GAAG,IAAAC,yBAAiB,EAACV,OAAO,CAAC;EAEpC,MAAMW,IAAI,GAAG;IACXC,SAAS,EAAEP,GAAG;IACdQ,KAAK,EAAEX,QAAQ,CAACY,KAAK;IACrBC,KAAK,EAAEC,kBAAO,CAACC,UAAU,CAAChB,OAAO,CAAC;IAClCE,OAAO;IACPe,OAAO,EAAEC,iBAAM,CAACC,cAAc,CAACX,CAAC,CAAC;IACjCV,KAAK,EAAEA,KAAK,KAAK,IAAI,IAAIA,KAAK,KAAKsB,gBAAK,CAACC,KAAK,GAAGD,gBAAK,CAACE,MAAM,CAACxB,KAAK,EAAE;MAAEyB,gBAAgB,EAAE;IAAI,CAAE,CAAC,GAAGC,SAAS;IAC5GrB,KAAK,EAAEsB,eAAI,CAACC,GAAG,CAACvB,KAAK,EAAGwB,CAAC,KAAM;MAAEd,KAAK,EAAEc,CAAC,CAACd,KAAK;MAAEe,MAAM,EAAEtB,SAAS,GAAGqB,CAAC,CAACE;IAAS,CAAE,CAAC,CAAC,CAACC,IAAI,CAACL,eAAI,CAACM,OAAO,CAAC;IACvGlC,WAAW,EAAEmC,kBAAO,CAACC,IAAI,CAACpC,WAAW,CAAC,GAAG,CAAC,GACtC,CAAC,GAAGA,WAAW,CAAC,CAACqC,MAAM,CAAC,CAACC,IAAI,EAAE,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAI;MACzCF,IAAI,CAACC,CAAC,CAAC,GAAGC,CAAC;MACX,OAAOF,IAAI;IACb,CAAC,EAAE,EAA6B,CAAC,GAC/BX;GACL;EAEDc,UAAU,CAACC,OAAO,CAACC,GAAG,CAACC,IAAI,CAACC,SAAS,CAAChC,IAAI,CAAC,CAAC;AAC9C,CAAC,CACF;AAEM,MAAMiC,OAAO,GAAAjD,OAAA,CAAAiD,OAAA,GAAGhD,iBAAM,CAACiD,OAAO,CAACjD,iBAAM,CAACkD,aAAa,EAAElD,iBAAM,CAACmD,mBAAmB,CAACrD,UAAU,CAAC,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"RequestContext.d.ts","sourceRoot":"","sources":["../src/RequestContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAG9B,eAAO,MAAM,MAAM,yBAAwB,CAAA;AAC3C,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAA;;;;;;qBAW/B,EAAG,iBAAiB,eAI3B,EAAE,sBAAqB;;;qBAKb,EAAG,iBACL,eACP,EAAA,sBAAsB;;;;;;yBAaR,EAAE,iBAAiB;;;yBAcA,EAAG,iBAAiB;;;;;;;;;;;;;;AA9CvD,qBAAa,oBAAqB,SAAQ,yBASxC;CAAG;;;;;;;qBADG,EAAG,iBAAiB,eAI3B,EAAE,sBAAqB;;;qBAKb,EAAG,iBACL,eACP,EAAA,sBAAsB;;;;;;;;;;;yBAaR,EAAE,iBAAiB;;;yBAcA,EAAG,iBAAiB;;;;;;;;;;;;;;;;AAnCvD;;;GAGG;AACH,qBAAa,cAAe,SAAQ,mBAgBlC;IAEA,MAAM,CAAC,OAAO,CACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,qBAAqB,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAUhE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc;;;;;;CASrD;AAED,eAAO,MAAM,cAAc,QAAS,cAAc;;;;;;;;;CAkBhD,CAAA;AAKF,yBAAiB,oBAAoB,CAAC;IACpC,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACzF;AACD,yBAAiB,cAAc,CAAC;IAC9B,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;KAAG;CACnF"}
1
+ {"version":3,"file":"RequestContext.d.ts","sourceRoot":"","sources":["../src/RequestContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAG9B,eAAO,MAAM,MAAM,yBAAwB,CAAA;AAC3C,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAA;;;;;;uBAW5B,iBAAiB,iBAIzB,sBAAqB;;;uBAKV,iBACL,iBACP,sBAAsB;;;;;;2BAaN,iBAAiB;;;2BAcG,iBAAiB;;;;;;;;;;;;;;AA9CvD,qBAAa,oBAAqB,SAAQ,yBASxC;CAAG;;;;;;;uBADM,iBAAiB,iBAIzB,sBAAqB;;;uBAKV,iBACL,iBACP,sBAAsB;;;;;;;;;;;2BAaN,iBAAiB;;;2BAcG,iBAAiB;;;;;;;;;;;;;;;;AAnCvD;;;GAGG;AACH,qBAAa,cAAe,SAAQ,mBAgBlC;IAEA,MAAM,CAAC,OAAO,CACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,qBAAqB,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAUhE,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc;;;;;;CASrD;AAED,eAAO,MAAM,cAAc,QAAS,cAAc;;;;;;;;;CAkBhD,CAAA;AAKF,yBAAiB,oBAAoB,CAAC;IACpC,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACzF;AACD,yBAAiB,cAAc,CAAC;IAC9B,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;KAAG;CACnF"}
@@ -1 +1 @@
1
- {"version":3,"file":"errorReporter.d.ts","sourceRoot":"","sources":["../src/errorReporter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAU,MAAM,YAAY,CAAA;AAClD,OAAO,EAAyB,cAAc,EAAiB,MAAM,aAAa,CAAA;AAoBlF,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,sEAyBhE;AAgBD,wBAAgB,QAAQ,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,uCAmB1D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,QAG9C;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,qCAU9E"}
1
+ {"version":3,"file":"errorReporter.d.ts","sourceRoot":"","sources":["../src/errorReporter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAU,MAAM,YAAY,CAAA;AAClD,OAAO,EAAE,cAAc,EAA4B,MAAM,aAAa,CAAA;AAItE,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,sEAwBhE;AAiBD,wBAAgB,QAAQ,CAAC,CAAC,EACxB,IAAI,EAAE,MAAM,WAEG,KAAK,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,uCAkB1D;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,QAG9C;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,qCAU9E"}
@@ -1,30 +1,11 @@
1
1
  import { dropUndefined } from "@effect-app/core/utils";
2
2
  import * as Sentry from "@sentry/node";
3
3
  import { Cause, Effect, Option } from "effect-app";
4
- import { annotateSpanWithError, CauseException, ErrorReported } from "./errors.js";
4
+ import { CauseException, ErrorReported, tryToJson } from "./errors.js";
5
5
  import { InfraLogger } from "./logger.js";
6
6
  import { RequestContextContainer } from "./services/RequestContextContainer.js";
7
- const tryToJson = (error) => {
8
- try {
9
- return error.toJSON();
10
- }
11
- catch {
12
- try {
13
- return error.toString();
14
- }
15
- catch (err) {
16
- try {
17
- return `Failed to convert error: ${err}`;
18
- }
19
- catch {
20
- return `Failed to convert error: unknown failure`;
21
- }
22
- }
23
- }
24
- };
25
7
  export function reportError(name) {
26
8
  return (cause, extras) => Effect.gen(function* () {
27
- yield* annotateSpanWithError(cause, name);
28
9
  if (Cause.isInterrupted(cause)) {
29
10
  yield* InfraLogger.logDebug("Interrupted").pipe(Effect.annotateLogs("extras", JSON.stringify(extras ?? {})));
30
11
  return;
@@ -35,7 +16,7 @@ export function reportError(name) {
35
16
  .logError("Reporting error", cause)
36
17
  .pipe(Effect.annotateLogs(dropUndefined({
37
18
  extras,
38
- __cause__: tryToJson(error),
19
+ cause: tryToJson(error),
39
20
  __error_name__: name
40
21
  })), Effect.catchAllCause((cause) => InfraLogger.logError("Failed to log error", cause)), Effect.catchAllCause(() => InfraLogger.logError("Failed to log error cause")));
41
22
  error[ErrorReported] = true;
@@ -51,6 +32,7 @@ function reportSentry(error, extras) {
51
32
  if (extras)
52
33
  scope.setContext("extras", extras);
53
34
  scope.setContext("error", tryToJson(error));
35
+ scope.setContext("cause", tryToJson(error.originalCause));
54
36
  Sentry.captureException(error, scope);
55
37
  }));
56
38
  }
@@ -60,12 +42,11 @@ export function logError(name) {
60
42
  yield* InfraLogger.logDebug("Interrupted").pipe(Effect.annotateLogs(dropUndefined({ extras })));
61
43
  return;
62
44
  }
63
- const error = new CauseException(cause, name);
64
45
  yield* InfraLogger
65
46
  .logWarning("Logging error", cause)
66
47
  .pipe(Effect.annotateLogs(dropUndefined({
67
48
  extras,
68
- __cause__: tryToJson(error),
49
+ cause: tryToJson(cause),
69
50
  __error_name__: name
70
51
  })), Effect.catchAllCause((cause) => InfraLogger.logError("Failed to log error", cause)), Effect.catchAllCause(() => InfraLogger.logError("Failed to log error cause")));
71
52
  });
@@ -86,4 +67,4 @@ export function reportMessage(message, extras) {
86
67
  console.warn(message);
87
68
  }));
88
69
  }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JSZXBvcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lcnJvclJlcG9ydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEtBQUssTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQTtBQUUvRSxNQUFNLFNBQVMsR0FBRyxDQUFJLEtBQXdCLEVBQUUsRUFBRTtJQUNoRCxJQUFJLENBQUM7UUFDSCxPQUFPLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUN2QixDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsSUFBSSxDQUFDO1lBQ0gsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDekIsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUM7Z0JBQ0gsT0FBTyw0QkFBNEIsR0FBRyxFQUFFLENBQUE7WUFDMUMsQ0FBQztZQUFDLE1BQU0sQ0FBQztnQkFDUCxPQUFPLDBDQUEwQyxDQUFBO1lBQ25ELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztBQUNILENBQUMsQ0FBQTtBQUVELE1BQU0sVUFBVSxXQUFXLENBQ3pCLElBQVk7SUFFWixPQUFPLENBQUMsS0FBcUIsRUFBRSxNQUFnQyxFQUFFLEVBQUUsQ0FDakUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7UUFDbEIsS0FBSyxDQUFDLENBQUMscUJBQXFCLENBQUMsS0FBSyxF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
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JSZXBvcnRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9lcnJvclJlcG9ydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUN0RCxPQUFPLEtBQUssTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDekMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFFL0UsTUFBTSxVQUFVLFdBQVcsQ0FDekIsSUFBWTtJQUVaLE9BQU8sQ0FBQyxLQUFxQixFQUFFLE1BQWdDLEVBQUUsRUFBRSxDQUNqRSxNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUNsQixJQUFJLEtBQUssQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMvQixLQUFLLENBQUMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDNUcsT0FBTTtRQUNSLENBQUM7UUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLGNBQWMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFFN0MsS0FBSyxDQUFDLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUNsQyxLQUFLLENBQUMsQ0FBQyxXQUFXO2FBQ2YsUUFBUSxDQUFDLGlCQUFpQixF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
@@ -10,7 +10,7 @@ export const jsonLogger = Logger.make(({ annotations, cause, context, fiberId, l
10
10
  fiber: FiberId.threadName(fiberId),
11
11
  message,
12
12
  request: Option.getOrUndefined(c),
13
- cause: cause != null && cause != Cause.empty ? Cause.pretty(cause) : undefined,
13
+ cause: cause !== null && cause !== Cause.empty ? Cause.pretty(cause, { renderErrorCause: true }) : undefined,
14
14
  spans: List.map(spans, (_) => ({ label: _.label, timing: nowMillis - _.startTime })).pipe(List.toArray),
15
15
  annotations: HashMap.size(annotations) > 0
16
16
  ? [...annotations].reduce((prev, [k, v]) => {
@@ -22,4 +22,4 @@ export const jsonLogger = Logger.make(({ annotations, cause, context, fiberId, l
22
22
  globalThis.console.log(JSON.stringify(data));
23
23
  });
24
24
  export const logJson = Logger.replace(Logger.defaultLogger, Logger.withSpanAnnotations(jsonLogger));
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbkxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dnZXIvanNvbkxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUNuQyxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtJQUNyRSxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFBO0lBQ3RCLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUUvQixNQUFNLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUVwQyxNQUFNLElBQUksR0FBRztRQUNYLFNBQVMsRUFBRSxHQUFHO1FBQ2QsS0FBSyxFQUFFLFFBQVEsQ0FBQyxLQUFLO1FBQ3JCLEtBQUssRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztRQUNsQyxPQUFPO1FBQ1AsT0FBTyxFQUFFLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLEtBQUssRUFBRSxLQUFLLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1FBQzlFLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUN2RyxXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDO1lBQ3hDLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3pDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBQ1gsT0FBTyxJQUFJLENBQUE7WUFDYixDQUFDLEVBQUUsRUFBNkIsQ0FBQztZQUNqQyxDQUFDLENBQUMsU0FBUztLQUNkLENBQUE7SUFFRCxVQUFVLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7QUFDOUMsQ0FBQyxDQUNGLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFBIn0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbkxvZ2dlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dnZXIvanNvbkxvZ2dlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUNuQyxDQUFDLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtJQUNyRSxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFBO0lBQ3RCLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUUvQixNQUFNLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUVwQyxNQUFNLElBQUksR0FBRztRQUNYLFNBQVMsRUFBRSxHQUFHO1FBQ2QsS0FBSyxFQUFFLFFBQVEsQ0FBQyxLQUFLO1FBQ3JCLEtBQUssRUFBRSxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztRQUNsQyxPQUFPO1FBQ1AsT0FBTyxFQUFFLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLEtBQUssRUFBRSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFFLGdCQUFnQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7UUFDNUcsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3ZHLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUM7WUFDeEMsQ0FBQyxDQUFDLENBQUMsR0FBRyxXQUFXLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDekMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDWCxPQUFPLElBQUksQ0FBQTtZQUNiLENBQUMsRUFBRSxFQUE2QixDQUFDO1lBQ2pDLENBQUMsQ0FBQyxTQUFTO0tBQ2QsQ0FBQTtJQUVELFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtBQUM5QyxDQUFDLENBQ0YsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUEifQ==
package/package.json CHANGED
@@ -1,17 +1,17 @@
1
1
  {
2
2
  "name": "@effect-app/infra",
3
- "version": "1.43.2",
3
+ "version": "1.43.4",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
7
7
  "@azure/cosmos": "^4.1.1",
8
8
  "@azure/service-bus": "^7.9.5",
9
- "@effect/rpc": "^0.43.4",
10
- "@effect/rpc-http": "^0.41.4",
9
+ "@effect/rpc": "^0.43.5",
10
+ "@effect/rpc-http": "^0.41.5",
11
11
  "express-oauth2-jwt-bearer": "^1.6.0",
12
12
  "@faker-js/faker": "^8.4.1",
13
13
  "@sendgrid/helpers": "^8.0.0",
14
- "@sendgrid/mail": "^8.1.3",
14
+ "@sendgrid/mail": "^8.1.4",
15
15
  "change-case": "^5.4.4",
16
16
  "cross-fetch": "^4.0.0",
17
17
  "fast-check": "~3.22.0",
@@ -20,16 +20,16 @@
20
20
  "proper-lockfile": "^4.1.2",
21
21
  "pure-rand": "6.1.0",
22
22
  "redlock": "^4.2.0",
23
- "@effect-app/core": "1.17.0",
24
- "@effect-app/infra-adapters": "1.20.2",
25
- "effect-app": "1.30.1",
26
- "@effect-app/schema": "1.19.0"
23
+ "@effect-app/infra-adapters": "1.20.4",
24
+ "@effect-app/core": "1.17.1",
25
+ "@effect-app/schema": "1.19.1",
26
+ "effect-app": "1.30.3"
27
27
  },
28
28
  "devDependencies": {
29
29
  "@babel/cli": "^7.25.7",
30
30
  "@sentry/node": "^8.34.0",
31
31
  "@types/express": "^5.0.0",
32
- "@types/node": "~22.7.5",
32
+ "@types/node": "~22.7.6",
33
33
  "@types/proper-lockfile": "^4.1.4",
34
34
  "@types/redis": "^2.8.32",
35
35
  "@types/redlock": "^4.0.7",
@@ -43,9 +43,9 @@
43
43
  },
44
44
  "peerDependencies": {
45
45
  "express": "^4.21.1",
46
- "@effect/platform": "^0.68.5",
47
- "@effect/schema": "^0.75.4",
48
- "@effect/sql": "^0.16.5",
46
+ "@effect/platform": "^0.68.6",
47
+ "@effect/schema": "^0.75.5",
48
+ "@effect/sql": "^0.16.6",
49
49
  "@effect/vitest": "^0.12.1",
50
50
  "effect": "^3.9.2"
51
51
  },
@@ -1,32 +1,15 @@
1
1
  import { dropUndefined } from "@effect-app/core/utils"
2
2
  import * as Sentry from "@sentry/node"
3
3
  import { Cause, Effect, Option } from "effect-app"
4
- import { annotateSpanWithError, CauseException, ErrorReported } from "./errors.js"
4
+ import { CauseException, ErrorReported, tryToJson } from "./errors.js"
5
5
  import { InfraLogger } from "./logger.js"
6
6
  import { RequestContextContainer } from "./services/RequestContextContainer.js"
7
7
 
8
- const tryToJson = <T>(error: CauseException<T>) => {
9
- try {
10
- return error.toJSON()
11
- } catch {
12
- try {
13
- return error.toString()
14
- } catch (err) {
15
- try {
16
- return `Failed to convert error: ${err}`
17
- } catch {
18
- return `Failed to convert error: unknown failure`
19
- }
20
- }
21
- }
22
- }
23
-
24
8
  export function reportError(
25
9
  name: string
26
10
  ) {
27
11
  return (cause: Cause<unknown>, extras?: Record<string, unknown>) =>
28
12
  Effect.gen(function*() {
29
- yield* annotateSpanWithError(cause, name)
30
13
  if (Cause.isInterrupted(cause)) {
31
14
  yield* InfraLogger.logDebug("Interrupted").pipe(Effect.annotateLogs("extras", JSON.stringify(extras ?? {})))
32
15
  return
@@ -39,7 +22,7 @@ export function reportError(
39
22
  .pipe(
40
23
  Effect.annotateLogs(dropUndefined({
41
24
  extras,
42
- __cause__: tryToJson(error),
25
+ cause: tryToJson(error),
43
26
  __error_name__: name
44
27
  })),
45
28
  Effect.catchAllCause((cause) => InfraLogger.logError("Failed to log error", cause)),
@@ -61,6 +44,7 @@ function reportSentry(
61
44
  if (context) scope.setContext("context", context as unknown as Record<string, unknown>)
62
45
  if (extras) scope.setContext("extras", extras)
63
46
  scope.setContext("error", tryToJson(error) as any)
47
+ scope.setContext("cause", tryToJson(error.originalCause) as any)
64
48
  Sentry.captureException(error, scope)
65
49
  }))
66
50
  }
@@ -74,13 +58,12 @@ export function logError<E>(
74
58
  yield* InfraLogger.logDebug("Interrupted").pipe(Effect.annotateLogs(dropUndefined({ extras })))
75
59
  return
76
60
  }
77
- const error = new CauseException(cause, name)
78
61
  yield* InfraLogger
79
62
  .logWarning("Logging error", cause)
80
63
  .pipe(
81
64
  Effect.annotateLogs(dropUndefined({
82
65
  extras,
83
- __cause__: tryToJson(error),
66
+ cause: tryToJson(cause),
84
67
  __error_name__: name
85
68
  })),
86
69
  Effect.catchAllCause((cause) => InfraLogger.logError("Failed to log error", cause)),
@@ -14,7 +14,7 @@ export const jsonLogger = Logger.make<unknown, void>(
14
14
  fiber: FiberId.threadName(fiberId),
15
15
  message,
16
16
  request: Option.getOrUndefined(c),
17
- cause: cause != null && cause != Cause.empty ? Cause.pretty(cause) : undefined,
17
+ cause: cause !== null && cause !== Cause.empty ? Cause.pretty(cause, { renderErrorCause: true }) : undefined,
18
18
  spans: List.map(spans, (_) => ({ label: _.label, timing: nowMillis - _.startTime })).pipe(List.toArray),
19
19
  annotations: HashMap.size(annotations) > 0
20
20
  ? [...annotations].reduce((prev, [k, v]) => {