@restatedev/restate-sdk-cloudflare-workers 1.4.0 → 1.5.0
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/dist/esm/src/common_api.d.ts +5 -5
- package/dist/esm/src/common_api.d.ts.map +1 -1
- package/dist/esm/src/common_api.js +1 -1
- package/dist/esm/src/common_api.js.map +1 -1
- package/dist/esm/src/context.d.ts +68 -10
- package/dist/esm/src/context.d.ts.map +1 -1
- package/dist/esm/src/context.js +20 -8
- package/dist/esm/src/context.js.map +1 -1
- package/dist/esm/src/context_impl.d.ts +28 -58
- package/dist/esm/src/context_impl.d.ts.map +1 -1
- package/dist/esm/src/context_impl.js +196 -425
- package/dist/esm/src/context_impl.js.map +1 -1
- package/dist/esm/src/endpoint/endpoint_builder.d.ts +4 -5
- package/dist/esm/src/endpoint/endpoint_builder.d.ts.map +1 -1
- package/dist/esm/src/endpoint/endpoint_builder.js +21 -16
- package/dist/esm/src/endpoint/endpoint_builder.js.map +1 -1
- package/dist/esm/src/endpoint/fetch_endpoint.d.ts +3 -4
- package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +1 -1
- package/dist/esm/src/endpoint/fetch_endpoint.js +0 -4
- package/dist/esm/src/endpoint/fetch_endpoint.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/fetch.d.ts.map +1 -1
- package/dist/esm/src/endpoint/handlers/fetch.js +1 -0
- package/dist/esm/src/endpoint/handlers/fetch.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/generic.d.ts +7 -13
- package/dist/esm/src/endpoint/handlers/generic.d.ts.map +1 -1
- package/dist/esm/src/endpoint/handlers/generic.js +110 -51
- package/dist/esm/src/endpoint/handlers/generic.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/lambda.d.ts.map +1 -1
- package/dist/esm/src/endpoint/handlers/lambda.js +15 -3
- package/dist/esm/src/endpoint/handlers/lambda.js.map +1 -1
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings.d.ts +37 -208
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings_bg.js +667 -930
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings_bg.wasm +0 -0
- package/dist/esm/src/endpoint/handlers/vm/sdk_shared_core_wasm_bindings_bg.wasm.d.ts +66 -63
- package/dist/esm/src/endpoint/lambda_endpoint.d.ts +3 -4
- package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +1 -1
- package/dist/esm/src/endpoint/lambda_endpoint.js +0 -4
- package/dist/esm/src/endpoint/lambda_endpoint.js.map +1 -1
- package/dist/esm/src/endpoint/node_endpoint.d.ts +3 -4
- package/dist/esm/src/endpoint/node_endpoint.d.ts.map +1 -1
- package/dist/esm/src/endpoint/node_endpoint.js +12 -4
- package/dist/esm/src/endpoint/node_endpoint.js.map +1 -1
- package/dist/esm/src/endpoint.d.ts +6 -37
- package/dist/esm/src/endpoint.d.ts.map +1 -1
- package/dist/esm/src/generated/version.d.ts +1 -1
- package/dist/esm/src/generated/version.js +1 -1
- package/dist/esm/src/io.d.ts +25 -0
- package/dist/esm/src/io.d.ts.map +1 -0
- package/dist/esm/src/io.js +73 -0
- package/dist/esm/src/io.js.map +1 -0
- package/dist/esm/src/logging/console_logger_transport.d.ts +5 -0
- package/dist/esm/src/logging/console_logger_transport.d.ts.map +1 -0
- package/dist/esm/src/{logger.js → logging/console_logger_transport.js} +40 -90
- package/dist/esm/src/logging/console_logger_transport.js.map +1 -0
- package/dist/esm/src/logging/logger.d.ts +11 -0
- package/dist/esm/src/logging/logger.d.ts.map +1 -0
- package/dist/esm/src/logging/logger.js +57 -0
- package/dist/esm/src/logging/logger.js.map +1 -0
- package/dist/esm/src/logging/logger_transport.d.ts +52 -0
- package/dist/esm/src/logging/logger_transport.d.ts.map +1 -0
- package/dist/esm/src/logging/logger_transport.js +55 -0
- package/dist/esm/src/logging/logger_transport.js.map +1 -0
- package/dist/esm/src/promises.d.ts +110 -0
- package/dist/esm/src/promises.d.ts.map +1 -0
- package/dist/esm/src/promises.js +311 -0
- package/dist/esm/src/promises.js.map +1 -0
- package/dist/esm/src/types/components.d.ts +11 -3
- package/dist/esm/src/types/components.d.ts.map +1 -1
- package/dist/esm/src/types/components.js +36 -3
- package/dist/esm/src/types/components.js.map +1 -1
- package/dist/esm/src/types/discovery.d.ts +4 -0
- package/dist/esm/src/types/discovery.d.ts.map +1 -1
- package/dist/esm/src/types/errors.d.ts +8 -0
- package/dist/esm/src/types/errors.d.ts.map +1 -1
- package/dist/esm/src/types/errors.js +10 -0
- package/dist/esm/src/types/errors.js.map +1 -1
- package/dist/esm/src/types/rpc.d.ts +66 -41
- package/dist/esm/src/types/rpc.d.ts.map +1 -1
- package/dist/esm/src/types/rpc.js +25 -76
- package/dist/esm/src/types/rpc.js.map +1 -1
- package/dist/esm/src/user_agent.d.ts +1 -1
- package/dist/esm/src/utils/buffer.d.ts +1 -0
- package/dist/esm/src/utils/buffer.d.ts.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/dist/esm/src/logger.d.ts +0 -35
- package/dist/esm/src/logger.d.ts.map +0 -1
- package/dist/esm/src/logger.js.map +0 -1
|
@@ -8,30 +8,41 @@
|
|
|
8
8
|
* directory of this repository or package, or at
|
|
9
9
|
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
10
10
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
})(RestateLogLevel || (RestateLogLevel = {}));
|
|
22
|
-
export function logLevel(level) {
|
|
23
|
-
switch (level) {
|
|
11
|
+
import { RestateLogLevel } from "./logger_transport.js";
|
|
12
|
+
export const defaultLoggerTransport = (params, message, ...optionalParams) => {
|
|
13
|
+
if (params.replaying) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
if (logLevel(params.level) < logLevel(DEFAULT_CONSOLE_LOGGER_LOG_LEVEL)) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const p = `${formatLogPrefix(params.context)} ${params.level.toUpperCase()}:`;
|
|
20
|
+
switch (params.level) {
|
|
24
21
|
case RestateLogLevel.TRACE:
|
|
25
|
-
return
|
|
22
|
+
return console.trace(p, message, ...optionalParams);
|
|
26
23
|
case RestateLogLevel.DEBUG:
|
|
27
|
-
return
|
|
24
|
+
return console.debug(p, message, ...optionalParams);
|
|
28
25
|
case RestateLogLevel.INFO:
|
|
29
|
-
return
|
|
26
|
+
return console.info(p, message, ...optionalParams);
|
|
30
27
|
case RestateLogLevel.WARN:
|
|
31
|
-
return
|
|
28
|
+
return console.warn(p, message, ...optionalParams);
|
|
32
29
|
case RestateLogLevel.ERROR:
|
|
33
|
-
return
|
|
30
|
+
return console.error(p, message, ...optionalParams);
|
|
31
|
+
default:
|
|
32
|
+
throw new TypeError(`unset or unknown log level ${params.level}`);
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
// this is the log level as provided by the environment variable RESTATE_LOG_LEVEL,
|
|
36
|
+
// but it only affects the default logger - custom loggers get all log events and
|
|
37
|
+
// should use their own filtering mechanism
|
|
38
|
+
export const DEFAULT_CONSOLE_LOGGER_LOG_LEVEL = readRestateLogLevel();
|
|
39
|
+
function readRestateLogLevel() {
|
|
40
|
+
const env = globalThis.process?.env?.RESTATE_LOGGING;
|
|
41
|
+
const level = logLevelFromName(env);
|
|
42
|
+
if (level !== null) {
|
|
43
|
+
return level;
|
|
34
44
|
}
|
|
45
|
+
return RestateLogLevel.INFO;
|
|
35
46
|
}
|
|
36
47
|
function logLevelFromName(name) {
|
|
37
48
|
if (!name) {
|
|
@@ -53,58 +64,26 @@ function logLevelFromName(name) {
|
|
|
53
64
|
throw new TypeError(`unknown name ${name}`);
|
|
54
65
|
}
|
|
55
66
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
// should use their own filtering mechanism
|
|
59
|
-
export const DEFAULT_LOGGER_LOG_LEVEL = readRestateLogLevel();
|
|
60
|
-
export const defaultLogger = (params, message, ...optionalParams) => {
|
|
61
|
-
if (params.replaying) {
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
if (logLevel(params.level) < logLevel(DEFAULT_LOGGER_LOG_LEVEL)) {
|
|
65
|
-
return;
|
|
66
|
-
}
|
|
67
|
-
const p = `${formatLogPrefix(params.context)}[${new Date().toISOString()}] ${params.level.toUpperCase()}: `;
|
|
68
|
-
switch (params.level) {
|
|
67
|
+
function logLevel(level) {
|
|
68
|
+
switch (level) {
|
|
69
69
|
case RestateLogLevel.TRACE:
|
|
70
|
-
return
|
|
70
|
+
return 1;
|
|
71
71
|
case RestateLogLevel.DEBUG:
|
|
72
|
-
return
|
|
72
|
+
return 2;
|
|
73
73
|
case RestateLogLevel.INFO:
|
|
74
|
-
return
|
|
74
|
+
return 3;
|
|
75
75
|
case RestateLogLevel.WARN:
|
|
76
|
-
return
|
|
76
|
+
return 4;
|
|
77
77
|
case RestateLogLevel.ERROR:
|
|
78
|
-
return
|
|
79
|
-
default:
|
|
80
|
-
throw new TypeError(`unset or unknown log level ${params.level}`);
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
function readRestateLogLevel() {
|
|
84
|
-
const env = globalThis.process?.env?.RESTATE_LOGGING;
|
|
85
|
-
const level = logLevelFromName(env);
|
|
86
|
-
if (level !== null) {
|
|
87
|
-
return level;
|
|
88
|
-
}
|
|
89
|
-
return RestateLogLevel.INFO;
|
|
90
|
-
}
|
|
91
|
-
export class LoggerContext {
|
|
92
|
-
invocationId;
|
|
93
|
-
additionalContext;
|
|
94
|
-
fqMethodName;
|
|
95
|
-
constructor(invocationId, packageName, serviceName, handlerName, additionalContext) {
|
|
96
|
-
this.invocationId = invocationId;
|
|
97
|
-
this.additionalContext = additionalContext;
|
|
98
|
-
this.fqMethodName = packageName
|
|
99
|
-
? `${packageName}.${serviceName}/${handlerName}`
|
|
100
|
-
: `${serviceName}/${handlerName}`;
|
|
78
|
+
return 5;
|
|
101
79
|
}
|
|
102
80
|
}
|
|
103
81
|
function formatLogPrefix(context) {
|
|
82
|
+
let prefix = `[restate][${new Date().toISOString()}]`;
|
|
104
83
|
if (context === undefined) {
|
|
105
|
-
return
|
|
84
|
+
return prefix;
|
|
106
85
|
}
|
|
107
|
-
|
|
86
|
+
prefix = `${prefix}[${context.invocationTarget}][${context.invocationId}]`;
|
|
108
87
|
if (context.additionalContext !== undefined) {
|
|
109
88
|
for (const [k, v] of Object.entries(context.additionalContext)) {
|
|
110
89
|
prefix = prefix + `[${k}: ${v}]`;
|
|
@@ -112,33 +91,4 @@ function formatLogPrefix(context) {
|
|
|
112
91
|
}
|
|
113
92
|
return prefix;
|
|
114
93
|
}
|
|
115
|
-
|
|
116
|
-
return {
|
|
117
|
-
get: () => {
|
|
118
|
-
return logger.bind(null, {
|
|
119
|
-
source,
|
|
120
|
-
level,
|
|
121
|
-
replaying: isReplaying(),
|
|
122
|
-
context,
|
|
123
|
-
});
|
|
124
|
-
},
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
export var LogSource;
|
|
128
|
-
(function (LogSource) {
|
|
129
|
-
LogSource["SYSTEM"] = "SYSTEM";
|
|
130
|
-
LogSource["JOURNAL"] = "JOURNAL";
|
|
131
|
-
LogSource["USER"] = "USER";
|
|
132
|
-
})(LogSource || (LogSource = {}));
|
|
133
|
-
export function createRestateConsole(logger, source, context, isReplaying = () => false) {
|
|
134
|
-
const info = loggerForLevel(logger, source, RestateLogLevel.INFO, isReplaying, context);
|
|
135
|
-
return Object.create(console, {
|
|
136
|
-
trace: loggerForLevel(logger, source, RestateLogLevel.TRACE, isReplaying, context),
|
|
137
|
-
debug: loggerForLevel(logger, source, RestateLogLevel.DEBUG, isReplaying, context),
|
|
138
|
-
info,
|
|
139
|
-
log: info,
|
|
140
|
-
warn: loggerForLevel(logger, source, RestateLogLevel.WARN, isReplaying, context),
|
|
141
|
-
error: loggerForLevel(logger, source, RestateLogLevel.ERROR, isReplaying, context),
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
//# sourceMappingURL=logger.js.map
|
|
94
|
+
//# sourceMappingURL=console_logger_transport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console_logger_transport.js","sourceRoot":"","sources":["../../../../src/logging/console_logger_transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import type { LoggerContext, LoggerTransport, LogSource } from "./logger_transport.js";
|
|
3
|
+
import { RestateLogLevel } from "./logger_transport.js";
|
|
4
|
+
/**
|
|
5
|
+
* Logging facade used internally by the Restate SDK.
|
|
6
|
+
*/
|
|
7
|
+
export interface Logger extends Console {
|
|
8
|
+
logForLevel(level: RestateLogLevel, message?: any, ...optionalParams: any[]): void;
|
|
9
|
+
}
|
|
10
|
+
export declare function createLogger(loggerTransport: LoggerTransport, source: LogSource, context?: LoggerContext, isReplaying?: () => boolean): Logger;
|
|
11
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../src/logging/logger.ts"],"names":[],"mappings":";AAaA,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACV,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,MAAO,SAAQ,OAAO;IACrC,WAAW,CACT,KAAK,EAAE,eAAe,EACtB,OAAO,CAAC,EAAE,GAAG,EACb,GAAG,cAAc,EAAE,GAAG,EAAE,GACvB,IAAI,CAAC;CACT;AAED,wBAAgB,YAAY,CAC1B,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,aAAa,EACvB,WAAW,GAAE,MAAM,OAAqB,GACvC,MAAM,CA2FR"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
|
|
3
|
+
*
|
|
4
|
+
* This file is part of the Restate SDK for Node.js/TypeScript,
|
|
5
|
+
* which is released under the MIT license.
|
|
6
|
+
*
|
|
7
|
+
* You can find a copy of the license in file LICENSE in the root
|
|
8
|
+
* directory of this repository or package, or at
|
|
9
|
+
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
10
|
+
*/
|
|
11
|
+
import { RestateLogLevel } from "./logger_transport.js";
|
|
12
|
+
export function createLogger(loggerTransport, source, context, isReplaying = () => false) {
|
|
13
|
+
function loggerForLevel(loggerTransport, source, level, isReplaying, context) {
|
|
14
|
+
return {
|
|
15
|
+
get: () => {
|
|
16
|
+
return loggerTransport.bind(null, {
|
|
17
|
+
source,
|
|
18
|
+
level,
|
|
19
|
+
replaying: isReplaying(),
|
|
20
|
+
context,
|
|
21
|
+
});
|
|
22
|
+
},
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
const info = loggerForLevel(loggerTransport, source, RestateLogLevel.INFO, isReplaying, context);
|
|
26
|
+
return Object.create(console, {
|
|
27
|
+
trace: loggerForLevel(loggerTransport, source, RestateLogLevel.TRACE, isReplaying, context),
|
|
28
|
+
debug: loggerForLevel(loggerTransport, source, RestateLogLevel.DEBUG, isReplaying, context),
|
|
29
|
+
info,
|
|
30
|
+
log: info,
|
|
31
|
+
warn: loggerForLevel(loggerTransport, source, RestateLogLevel.WARN, isReplaying, context),
|
|
32
|
+
error: loggerForLevel(loggerTransport, source, RestateLogLevel.ERROR, isReplaying, context),
|
|
33
|
+
logForLevel: {
|
|
34
|
+
get() {
|
|
35
|
+
return (level, message, ...optionalParams) => {
|
|
36
|
+
if (optionalParams?.length === 0 || optionalParams === undefined) {
|
|
37
|
+
loggerTransport.bind(null)({
|
|
38
|
+
source,
|
|
39
|
+
level,
|
|
40
|
+
replaying: isReplaying(),
|
|
41
|
+
context,
|
|
42
|
+
}, message);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
loggerTransport.bind(null)({
|
|
46
|
+
source,
|
|
47
|
+
level,
|
|
48
|
+
replaying: isReplaying(),
|
|
49
|
+
context,
|
|
50
|
+
}, message, optionalParams);
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../../src/logging/logger.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAaxD,MAAM,UAAU,YAAY,CAC1B,eAAgC,EAChC,MAAiB,EACjB,OAAuB,EACvB,cAA6B,GAAG,EAAE,CAAC,KAAK;IAExC,SAAS,cAAc,CACrB,eAAgC,EAChC,MAAiB,EACjB,KAAsB,EACtB,WAA0B,EAC1B,OAAuB;QAEvB,OAAO;YACL,GAAG,EAAE,GAAG,EAAE;gBACR,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE;oBAChC,MAAM;oBACN,KAAK;oBACL,SAAS,EAAE,WAAW,EAAE;oBACxB,OAAO;iBACR,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,cAAc,CACzB,eAAe,EACf,MAAM,EACN,eAAe,CAAC,IAAI,EACpB,WAAW,EACX,OAAO,CACR,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;QAC5B,KAAK,EAAE,cAAc,CACnB,eAAe,EACf,MAAM,EACN,eAAe,CAAC,KAAK,EACrB,WAAW,EACX,OAAO,CACR;QACD,KAAK,EAAE,cAAc,CACnB,eAAe,EACf,MAAM,EACN,eAAe,CAAC,KAAK,EACrB,WAAW,EACX,OAAO,CACR;QACD,IAAI;QACJ,GAAG,EAAE,IAAI;QACT,IAAI,EAAE,cAAc,CAClB,eAAe,EACf,MAAM,EACN,eAAe,CAAC,IAAI,EACpB,WAAW,EACX,OAAO,CACR;QACD,KAAK,EAAE,cAAc,CACnB,eAAe,EACf,MAAM,EACN,eAAe,CAAC,KAAK,EACrB,WAAW,EACX,OAAO,CACR;QACD,WAAW,EAAE;YACX,GAAG;gBACD,OAAO,CACL,KAAsB,EACtB,OAAa,EACb,GAAG,cAAqB,EAClB,EAAE;oBACR,IAAI,cAAc,EAAE,MAAM,KAAK,CAAC,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;wBACjE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CACxB;4BACE,MAAM;4BACN,KAAK;4BACL,SAAS,EAAE,WAAW,EAAE;4BACxB,OAAO;yBACR,EACD,OAAO,CACR,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CACxB;4BACE,MAAM;4BACN,KAAK;4BACL,SAAS,EAAE,WAAW,EAAE;4BACxB,OAAO;yBACR,EACD,OAAO,EACP,cAAc,CACf,CAAC;oBACJ,CAAC;gBACH,CAAC,CAAC;YACJ,CAAC;SACF;KACF,CAAW,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { Request } from "../context.js";
|
|
2
|
+
/**
|
|
3
|
+
* Logger level.
|
|
4
|
+
*/
|
|
5
|
+
export declare enum RestateLogLevel {
|
|
6
|
+
TRACE = "trace",
|
|
7
|
+
DEBUG = "debug",
|
|
8
|
+
INFO = "info",
|
|
9
|
+
WARN = "warn",
|
|
10
|
+
ERROR = "error"
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Source of the log.
|
|
14
|
+
*/
|
|
15
|
+
export declare enum LogSource {
|
|
16
|
+
SYSTEM = "SYSTEM",
|
|
17
|
+
JOURNAL = "JOURNAL",
|
|
18
|
+
USER = "USER"
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Log event metadata metadata.
|
|
22
|
+
*/
|
|
23
|
+
export type LogMetadata = {
|
|
24
|
+
source: LogSource;
|
|
25
|
+
level: RestateLogLevel;
|
|
26
|
+
replaying: boolean;
|
|
27
|
+
context?: LoggerContext;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Logger transport, often known in other logging libraries as appender. Filtering of log events should happen within this function as well.
|
|
31
|
+
*
|
|
32
|
+
* This can be overridden in {@link RestateEndpointBase.setLogger} to customize logging. The default Logger transport will log to console.
|
|
33
|
+
*/
|
|
34
|
+
export type LoggerTransport = (params: LogMetadata, message?: any, ...optionalParams: any[]) => void;
|
|
35
|
+
/**
|
|
36
|
+
* Logger context.
|
|
37
|
+
*/
|
|
38
|
+
export declare class LoggerContext {
|
|
39
|
+
readonly invocationId: string;
|
|
40
|
+
readonly serviceName: string;
|
|
41
|
+
readonly handlerName: string;
|
|
42
|
+
readonly key?: string | undefined;
|
|
43
|
+
readonly request?: Request | undefined;
|
|
44
|
+
readonly additionalContext?: {
|
|
45
|
+
[name: string]: string;
|
|
46
|
+
} | undefined;
|
|
47
|
+
readonly invocationTarget: string;
|
|
48
|
+
constructor(invocationId: string, serviceName: string, handlerName: string, key?: string | undefined, request?: Request | undefined, additionalContext?: {
|
|
49
|
+
[name: string]: string;
|
|
50
|
+
} | undefined);
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=logger_transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger_transport.d.ts","sourceRoot":"","sources":["../../../../src/logging/logger_transport.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C;;GAEG;AACH,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,oBAAY,SAAS;IACnB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;CACd;AAED;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,eAAe,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,CAC5B,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE,GAAG,EACb,GAAG,cAAc,EAAE,GAAG,EAAE,KACrB,IAAI,CAAC;AAEV;;GAEG;AACH,qBAAa,aAAa;IAItB,QAAQ,CAAC,YAAY,EAAE,MAAM;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM;IAC5B,QAAQ,CAAC,GAAG,CAAC;IACb,QAAQ,CAAC,OAAO,CAAC;IACjB,QAAQ,CAAC,iBAAiB,CAAC;;;IAR7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;gBAGvB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,oBAAQ,EACZ,OAAO,CAAC,qBAAS,EACjB,iBAAiB,CAAC;;iBAA4B;CAO1D"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
|
|
3
|
+
*
|
|
4
|
+
* This file is part of the Restate SDK for Node.js/TypeScript,
|
|
5
|
+
* which is released under the MIT license.
|
|
6
|
+
*
|
|
7
|
+
* You can find a copy of the license in file LICENSE in the root
|
|
8
|
+
* directory of this repository or package, or at
|
|
9
|
+
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Logger level.
|
|
13
|
+
*/
|
|
14
|
+
export var RestateLogLevel;
|
|
15
|
+
(function (RestateLogLevel) {
|
|
16
|
+
RestateLogLevel["TRACE"] = "trace";
|
|
17
|
+
RestateLogLevel["DEBUG"] = "debug";
|
|
18
|
+
RestateLogLevel["INFO"] = "info";
|
|
19
|
+
RestateLogLevel["WARN"] = "warn";
|
|
20
|
+
RestateLogLevel["ERROR"] = "error";
|
|
21
|
+
})(RestateLogLevel || (RestateLogLevel = {}));
|
|
22
|
+
/**
|
|
23
|
+
* Source of the log.
|
|
24
|
+
*/
|
|
25
|
+
export var LogSource;
|
|
26
|
+
(function (LogSource) {
|
|
27
|
+
LogSource["SYSTEM"] = "SYSTEM";
|
|
28
|
+
LogSource["JOURNAL"] = "JOURNAL";
|
|
29
|
+
LogSource["USER"] = "USER";
|
|
30
|
+
})(LogSource || (LogSource = {}));
|
|
31
|
+
/**
|
|
32
|
+
* Logger context.
|
|
33
|
+
*/
|
|
34
|
+
export class LoggerContext {
|
|
35
|
+
invocationId;
|
|
36
|
+
serviceName;
|
|
37
|
+
handlerName;
|
|
38
|
+
key;
|
|
39
|
+
request;
|
|
40
|
+
additionalContext;
|
|
41
|
+
invocationTarget;
|
|
42
|
+
constructor(invocationId, serviceName, handlerName, key, request, additionalContext) {
|
|
43
|
+
this.invocationId = invocationId;
|
|
44
|
+
this.serviceName = serviceName;
|
|
45
|
+
this.handlerName = handlerName;
|
|
46
|
+
this.key = key;
|
|
47
|
+
this.request = request;
|
|
48
|
+
this.additionalContext = additionalContext;
|
|
49
|
+
this.invocationTarget =
|
|
50
|
+
key === undefined || key.length === 0
|
|
51
|
+
? `${serviceName}/${handlerName}`
|
|
52
|
+
: `${serviceName}/${key}/${handlerName}`;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=logger_transport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger_transport.js","sourceRoot":"","sources":["../../../../src/logging/logger_transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH;;GAEG;AACH,MAAM,CAAN,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,kCAAe,CAAA;IACf,kCAAe,CAAA;IACf,gCAAa,CAAA;IACb,gCAAa,CAAA;IACb,kCAAe,CAAA;AACjB,CAAC,EANW,eAAe,KAAf,eAAe,QAM1B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,8BAAiB,CAAA;IACjB,gCAAmB,CAAA;IACnB,0BAAa,CAAA;AACf,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB;AAuBD;;GAEG;AACH,MAAM,OAAO,aAAa;IAIb;IACA;IACA;IACA;IACA;IACA;IARF,gBAAgB,CAAS;IAElC,YACW,YAAoB,EACpB,WAAmB,EACnB,WAAmB,EACnB,GAAY,EACZ,OAAiB,EACjB,iBAA8C;QAL9C,iBAAY,GAAZ,YAAY,CAAQ;QACpB,gBAAW,GAAX,WAAW,CAAQ;QACnB,gBAAW,GAAX,WAAW,CAAQ;QACnB,QAAG,GAAH,GAAG,CAAS;QACZ,YAAO,GAAP,OAAO,CAAU;QACjB,sBAAiB,GAAjB,iBAAiB,CAA6B;QAEvD,IAAI,CAAC,gBAAgB;YACnB,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;gBACnC,CAAC,CAAC,GAAG,WAAW,IAAI,WAAW,EAAE;gBACjC,CAAC,CAAC,GAAG,WAAW,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;IAC/C,CAAC;CACF"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import type { CombineablePromise, InvocationId, InvocationPromise } from "./context.js";
|
|
2
|
+
import type * as vm from "./endpoint/handlers/vm/sdk_shared_core_wasm_bindings.js";
|
|
3
|
+
import { TerminalError } from "./types/errors.js";
|
|
4
|
+
import { CompletablePromise } from "./utils/completable_promise.js";
|
|
5
|
+
import type { ContextImpl, RunClosuresTracker } from "./context_impl.js";
|
|
6
|
+
import type { InputPump, OutputPump } from "./io.js";
|
|
7
|
+
export declare function pendingPromise<T>(): Promise<T>;
|
|
8
|
+
export declare const RESTATE_CTX_SYMBOL: unique symbol;
|
|
9
|
+
export interface RestatePromise<T> extends CombineablePromise<T> {
|
|
10
|
+
[RESTATE_CTX_SYMBOL]: ContextImpl;
|
|
11
|
+
tryCancel(): void;
|
|
12
|
+
tryComplete(): void;
|
|
13
|
+
uncompletedLeaves(): Array<number>;
|
|
14
|
+
publicPromise(): Promise<T>;
|
|
15
|
+
}
|
|
16
|
+
export type AsyncResultValue = "Empty" | {
|
|
17
|
+
Success: Uint8Array;
|
|
18
|
+
} | {
|
|
19
|
+
Failure: vm.WasmFailure;
|
|
20
|
+
} | {
|
|
21
|
+
StateKeys: string[];
|
|
22
|
+
} | {
|
|
23
|
+
InvocationId: string;
|
|
24
|
+
};
|
|
25
|
+
export declare function extractContext(n: any): ContextImpl | undefined;
|
|
26
|
+
declare abstract class AbstractRestatePromise<T> implements RestatePromise<T> {
|
|
27
|
+
[RESTATE_CTX_SYMBOL]: ContextImpl;
|
|
28
|
+
private pollingPromise?;
|
|
29
|
+
private cancelPromise;
|
|
30
|
+
protected constructor(ctx: ContextImpl);
|
|
31
|
+
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
|
|
32
|
+
catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null | undefined): Promise<T | TResult>;
|
|
33
|
+
finally(onfinally?: (() => void) | null | undefined): Promise<T>;
|
|
34
|
+
private publicPromiseOrCancelPromise;
|
|
35
|
+
orTimeout(millis: number): CombineablePromise<T>;
|
|
36
|
+
map<U>(mapper: (value?: T, failure?: TerminalError) => U): CombineablePromise<U>;
|
|
37
|
+
tryCancel(): void;
|
|
38
|
+
abstract tryComplete(): void;
|
|
39
|
+
abstract uncompletedLeaves(): Array<number>;
|
|
40
|
+
abstract publicPromise(): Promise<T>;
|
|
41
|
+
abstract [Symbol.toStringTag]: string;
|
|
42
|
+
}
|
|
43
|
+
export declare class RestateSinglePromise<T> extends AbstractRestatePromise<T> {
|
|
44
|
+
readonly handle: number;
|
|
45
|
+
private readonly completer;
|
|
46
|
+
private state;
|
|
47
|
+
private completablePromise;
|
|
48
|
+
constructor(ctx: ContextImpl, handle: number, completer: (value: AsyncResultValue, prom: CompletablePromise<T>) => void);
|
|
49
|
+
uncompletedLeaves(): number[];
|
|
50
|
+
tryComplete(): void;
|
|
51
|
+
publicPromise(): Promise<T>;
|
|
52
|
+
readonly [Symbol.toStringTag] = "RestateSinglePromise";
|
|
53
|
+
}
|
|
54
|
+
export declare class RestateInvocationPromise<T> extends RestateSinglePromise<T> implements InvocationPromise<T> {
|
|
55
|
+
private readonly invocationIdPromise;
|
|
56
|
+
constructor(ctx: ContextImpl, handle: number, completer: (value: AsyncResultValue, prom: CompletablePromise<T>) => void, invocationIdPromise: Promise<InvocationId>);
|
|
57
|
+
get invocationId(): Promise<InvocationId>;
|
|
58
|
+
}
|
|
59
|
+
export declare class RestateCombinatorPromise extends AbstractRestatePromise<any> {
|
|
60
|
+
readonly childs: Array<RestatePromise<any>>;
|
|
61
|
+
private state;
|
|
62
|
+
private readonly combinatorPromise;
|
|
63
|
+
constructor(ctx: ContextImpl, combinatorConstructor: (promises: Promise<any>[]) => Promise<any>, childs: Array<RestatePromise<any>>);
|
|
64
|
+
uncompletedLeaves(): number[];
|
|
65
|
+
tryComplete(): void;
|
|
66
|
+
publicPromise(): Promise<unknown>;
|
|
67
|
+
readonly [Symbol.toStringTag] = "RestateCombinatorPromise";
|
|
68
|
+
}
|
|
69
|
+
export declare class RestatePendingPromise<T> implements RestatePromise<T> {
|
|
70
|
+
[RESTATE_CTX_SYMBOL]: ContextImpl;
|
|
71
|
+
constructor(ctx: ContextImpl);
|
|
72
|
+
then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null | undefined, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null | undefined): Promise<TResult1 | TResult2>;
|
|
73
|
+
catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null | undefined): Promise<T | TResult>;
|
|
74
|
+
finally(onfinally?: (() => void) | null | undefined): Promise<T>;
|
|
75
|
+
orTimeout(): CombineablePromise<T>;
|
|
76
|
+
map<U>(): CombineablePromise<U>;
|
|
77
|
+
tryCancel(): void;
|
|
78
|
+
tryComplete(): void;
|
|
79
|
+
uncompletedLeaves(): number[];
|
|
80
|
+
publicPromise(): Promise<T>;
|
|
81
|
+
readonly [Symbol.toStringTag] = "RestatePendingPromise";
|
|
82
|
+
}
|
|
83
|
+
export declare class InvocationPendingPromise<T> extends RestatePendingPromise<T> implements InvocationPromise<T> {
|
|
84
|
+
constructor(ctx: ContextImpl);
|
|
85
|
+
get invocationId(): Promise<InvocationId>;
|
|
86
|
+
}
|
|
87
|
+
export declare class RestateMappedPromise<T, U> extends AbstractRestatePromise<U> {
|
|
88
|
+
readonly inner: RestatePromise<T>;
|
|
89
|
+
private publicPromiseMapper;
|
|
90
|
+
constructor(ctx: ContextImpl, inner: RestatePromise<T>, mapper: (value?: T, failure?: TerminalError) => U);
|
|
91
|
+
tryComplete(): void;
|
|
92
|
+
uncompletedLeaves(): number[];
|
|
93
|
+
publicPromise(): Promise<U>;
|
|
94
|
+
readonly [Symbol.toStringTag] = "RestateMappedPromise";
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Promises executor, gluing VM with I/O and Promises given to user space.
|
|
98
|
+
*/
|
|
99
|
+
export declare class PromisesExecutor {
|
|
100
|
+
private readonly coreVm;
|
|
101
|
+
private readonly inputPump;
|
|
102
|
+
private readonly outputPump;
|
|
103
|
+
private readonly runClosuresTracker;
|
|
104
|
+
private readonly errorCallback;
|
|
105
|
+
constructor(coreVm: vm.WasmVM, inputPump: InputPump, outputPump: OutputPump, runClosuresTracker: RunClosuresTracker, errorCallback: (e: any) => void);
|
|
106
|
+
doProgress(restatePromise: RestatePromise<unknown>): Promise<void>;
|
|
107
|
+
private doProgressInner;
|
|
108
|
+
}
|
|
109
|
+
export {};
|
|
110
|
+
//# sourceMappingURL=promises.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promises.d.ts","sourceRoot":"","sources":["../../../src/promises.ts"],"names":[],"mappings":"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"}
|