@gitpod/gitpod-protocol 0.1.5-se-workspace-for-teams.5 → 0.1.5-se-workspaceid.1
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/data/gitpod-schema.json +9 -2
- package/lib/accounting-protocol.d.ts +0 -1
- package/lib/accounting-protocol.d.ts.map +1 -1
- package/lib/accounting-protocol.js +10 -11
- package/lib/accounting-protocol.js.map +1 -1
- package/lib/admin-protocol.d.ts +8 -2
- package/lib/admin-protocol.d.ts.map +1 -1
- package/lib/admin-protocol.js +2 -13
- package/lib/admin-protocol.js.map +1 -1
- package/lib/analytics.d.ts +13 -1
- package/lib/analytics.d.ts.map +1 -1
- package/lib/context-url.js +4 -4
- package/lib/context-url.js.map +1 -1
- package/lib/context-url.spec.js +45 -48
- package/lib/context-url.spec.js.map +1 -1
- package/lib/email-protocol.js +4 -4
- package/lib/email-protocol.js.map +1 -1
- package/lib/encryption/container-module.js +4 -4
- package/lib/encryption/container-module.js.map +1 -1
- package/lib/encryption/encryption-engine.js +19 -20
- package/lib/encryption/encryption-engine.js.map +1 -1
- package/lib/encryption/encryption-engine.spec.js +29 -36
- package/lib/encryption/encryption-engine.spec.js.map +1 -1
- package/lib/encryption/encryption-service.js +29 -43
- package/lib/encryption/encryption-service.js.map +1 -1
- package/lib/encryption/key-provider.js +25 -30
- package/lib/encryption/key-provider.js.map +1 -1
- package/lib/env.d.ts +0 -1
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +12 -14
- package/lib/env.js.map +1 -1
- package/lib/gitpod-file-parser.js +25 -41
- package/lib/gitpod-file-parser.js.map +1 -1
- package/lib/gitpod-file-parser.spec.js +116 -116
- package/lib/gitpod-file-parser.spec.js.map +1 -1
- package/lib/gitpod-service.d.ts +30 -8
- package/lib/gitpod-service.d.ts.map +1 -1
- package/lib/gitpod-service.js +149 -295
- package/lib/gitpod-service.js.map +1 -1
- package/lib/ide-protocol.d.ts +81 -0
- package/lib/ide-protocol.d.ts.map +1 -0
- package/lib/ide-protocol.js +8 -0
- package/lib/ide-protocol.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -1
- package/lib/messaging/browser/connection.d.ts +3 -3
- package/lib/messaging/browser/connection.d.ts.map +1 -1
- package/lib/messaging/browser/connection.js +172 -35
- package/lib/messaging/browser/connection.js.map +1 -1
- package/lib/messaging/browser/window-connection.js +35 -55
- package/lib/messaging/browser/window-connection.js.map +1 -1
- package/lib/messaging/client-call-metrics.js +17 -18
- package/lib/messaging/client-call-metrics.js.map +1 -1
- package/lib/messaging/connection-error-handler.js +11 -23
- package/lib/messaging/connection-error-handler.js.map +1 -1
- package/lib/messaging/error.d.ts +1 -1
- package/lib/messaging/error.d.ts.map +1 -1
- package/lib/messaging/error.js +2 -2
- package/lib/messaging/error.js.map +1 -1
- package/lib/messaging/handler.d.ts +10 -0
- package/lib/messaging/handler.d.ts.map +1 -1
- package/lib/messaging/node/connection.d.ts +0 -10
- package/lib/messaging/node/connection.d.ts.map +1 -1
- package/lib/messaging/node/connection.js +11 -49
- package/lib/messaging/node/connection.js.map +1 -1
- package/lib/messaging/proxy-factory.d.ts +2 -0
- package/lib/messaging/proxy-factory.d.ts.map +1 -1
- package/lib/messaging/proxy-factory.js +73 -160
- package/lib/messaging/proxy-factory.js.map +1 -1
- package/lib/oss-allowlist.d.ts +14 -0
- package/lib/oss-allowlist.d.ts.map +1 -0
- package/lib/oss-allowlist.js +8 -0
- package/lib/oss-allowlist.js.map +1 -0
- package/lib/permission.d.ts +1 -2
- package/lib/permission.d.ts.map +1 -1
- package/lib/permission.js +12 -13
- package/lib/permission.js.map +1 -1
- package/lib/plans.d.ts +1 -1
- package/lib/plans.d.ts.map +1 -1
- package/lib/plans.js +38 -57
- package/lib/plans.js.map +1 -1
- package/lib/protocol.d.ts +11 -7
- package/lib/protocol.d.ts.map +1 -1
- package/lib/protocol.js +44 -114
- package/lib/protocol.js.map +1 -1
- package/lib/snapshot-url.d.ts +14 -0
- package/lib/snapshot-url.d.ts.map +1 -0
- package/lib/snapshot-url.js +26 -0
- package/lib/snapshot-url.js.map +1 -0
- package/lib/snapshot-url.spec.d.ts +7 -0
- package/lib/snapshot-url.spec.d.ts.map +1 -0
- package/lib/snapshot-url.spec.js +41 -0
- package/lib/snapshot-url.spec.js.map +1 -0
- package/lib/team-subscription-protocol.js +13 -13
- package/lib/team-subscription-protocol.js.map +1 -1
- package/lib/teams-projects-protocol.d.ts +11 -1
- package/lib/teams-projects-protocol.d.ts.map +1 -1
- package/lib/teams-projects-protocol.js +4 -15
- package/lib/teams-projects-protocol.js.map +1 -1
- package/lib/util/analytics.d.ts.map +1 -1
- package/lib/util/analytics.js +35 -26
- package/lib/util/analytics.js.map +1 -1
- package/lib/util/async-iterator.js +55 -133
- package/lib/util/async-iterator.js.map +1 -1
- package/lib/util/cancelable.js +17 -59
- package/lib/util/cancelable.js.map +1 -1
- package/lib/util/date-time.js +8 -8
- package/lib/util/date-time.js.map +1 -1
- package/lib/util/deferred.js +10 -12
- package/lib/util/deferred.js.map +1 -1
- package/lib/util/disposable.js +26 -39
- package/lib/util/disposable.js.map +1 -1
- package/lib/util/event.js +58 -74
- package/lib/util/event.js.map +1 -1
- package/lib/util/garbage-collected-cache.d.ts +1 -0
- package/lib/util/garbage-collected-cache.d.ts.map +1 -1
- package/lib/util/garbage-collected-cache.js +26 -46
- package/lib/util/garbage-collected-cache.js.map +1 -1
- package/lib/util/generate-workspace-id.d.ts +1 -1
- package/lib/util/generate-workspace-id.d.ts.map +1 -1
- package/lib/util/generate-workspace-id.js +27 -67
- package/lib/util/generate-workspace-id.js.map +1 -1
- package/lib/util/generate-workspace-id.spec.js +56 -78
- package/lib/util/generate-workspace-id.spec.js.map +1 -1
- package/lib/util/gitpod-cookie.d.ts +20 -0
- package/lib/util/gitpod-cookie.d.ts.map +1 -0
- package/lib/util/gitpod-cookie.js +44 -0
- package/lib/util/gitpod-cookie.js.map +1 -0
- package/lib/util/gitpod-host-url.d.ts +1 -0
- package/lib/util/gitpod-host-url.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.js +96 -103
- package/lib/util/gitpod-host-url.js.map +1 -1
- package/lib/util/gitpod-host-url.spec.js +87 -135
- package/lib/util/gitpod-host-url.spec.js.map +1 -1
- package/lib/util/grpc.js +3 -3
- package/lib/util/grpc.js.map +1 -1
- package/lib/util/jaeger-client-types.d.ts +68 -0
- package/lib/util/jaeger-client-types.d.ts.map +1 -0
- package/lib/util/jaeger-client-types.js +8 -0
- package/lib/util/jaeger-client-types.js.map +1 -0
- package/lib/util/logging.d.ts +32 -32
- package/lib/util/logging.d.ts.map +1 -1
- package/lib/util/logging.js +68 -109
- package/lib/util/logging.js.map +1 -1
- package/lib/util/make-link.js +2 -2
- package/lib/util/make-link.js.map +1 -1
- package/lib/util/parse-workspace-id.d.ts +10 -0
- package/lib/util/parse-workspace-id.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.js +31 -7
- package/lib/util/parse-workspace-id.js.map +1 -1
- package/lib/util/parse-workspace-id.spec.d.ts +4 -0
- package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.spec.js +123 -84
- package/lib/util/parse-workspace-id.spec.js.map +1 -1
- package/lib/util/queue.js +16 -55
- package/lib/util/queue.js.map +1 -1
- package/lib/util/queue.spec.js +144 -288
- package/lib/util/queue.spec.js.map +1 -1
- package/lib/util/repeat.d.ts +15 -0
- package/lib/util/repeat.d.ts.map +1 -0
- package/lib/util/repeat.js +55 -0
- package/lib/util/repeat.js.map +1 -0
- package/lib/util/safe-promise.js +9 -12
- package/lib/util/safe-promise.js.map +1 -1
- package/lib/util/semaphore.js +15 -46
- package/lib/util/semaphore.js.map +1 -1
- package/lib/util/skip-if.js +6 -6
- package/lib/util/skip-if.js.map +1 -1
- package/lib/util/timeutil.js +16 -16
- package/lib/util/timeutil.js.map +1 -1
- package/lib/util/timeutil.spec.js +21 -24
- package/lib/util/timeutil.spec.js.map +1 -1
- package/lib/util/tracing.d.ts +50 -5
- package/lib/util/tracing.d.ts.map +1 -1
- package/lib/util/tracing.js +171 -63
- package/lib/util/tracing.js.map +1 -1
- package/lib/util/tracing.spec.d.ts +7 -0
- package/lib/util/tracing.spec.d.ts.map +1 -0
- package/lib/util/tracing.spec.js +121 -0
- package/lib/util/tracing.spec.js.map +1 -0
- package/lib/util/workspace-port-authentication.js +2 -2
- package/lib/util/workspace-port-authentication.js.map +1 -1
- package/lib/workspace-cluster.d.ts +11 -1
- package/lib/workspace-cluster.d.ts.map +1 -1
- package/lib/workspace-cluster.js +3 -3
- package/lib/workspace-cluster.js.map +1 -1
- package/lib/workspace-instance.d.ts +4 -2
- package/lib/workspace-instance.d.ts.map +1 -1
- package/lib/wsready.js +1 -1
- package/package.json +20 -12
- package/pkg-yarn.lock +12 -7
- package/src/accounting-protocol.ts +1 -3
- package/src/admin-protocol.ts +9 -3
- package/src/analytics.ts +16 -1
- package/src/email-protocol.ts +1 -1
- package/src/env.ts +0 -1
- package/src/gitpod-service.ts +30 -9
- package/src/ide-protocol.ts +92 -0
- package/src/index.ts +2 -0
- package/src/messaging/browser/connection.ts +176 -10
- package/src/messaging/error.ts +2 -2
- package/src/messaging/handler.ts +12 -0
- package/src/messaging/node/connection.ts +1 -45
- package/src/messaging/proxy-factory.ts +10 -4
- package/src/oss-allowlist.ts +15 -0
- package/src/permission.ts +0 -1
- package/src/protocol.ts +13 -8
- package/src/snapshot-url.spec.ts +25 -0
- package/src/snapshot-url.ts +27 -0
- package/src/team-subscription-protocol.ts +1 -1
- package/src/teams-projects-protocol.ts +14 -2
- package/src/util/analytics.ts +17 -1
- package/src/util/garbage-collected-cache.ts +7 -1
- package/src/util/generate-workspace-id.spec.ts +16 -0
- package/src/util/generate-workspace-id.ts +19 -2
- package/src/util/gitpod-cookie.ts +39 -0
- package/src/util/gitpod-host-url.ts +12 -8
- package/src/util/grpc.ts +3 -3
- package/src/util/jaeger-client-types.ts +102 -0
- package/src/util/logging.ts +65 -52
- package/src/util/parse-workspace-id.spec.ts +21 -1
- package/src/util/parse-workspace-id.ts +32 -6
- package/src/util/repeat.ts +45 -0
- package/src/util/tracing.spec.ts +83 -0
- package/src/util/tracing.ts +157 -18
- package/src/workspace-cluster.ts +8 -1
- package/src/workspace-instance.ts +12 -6
- package/src/wsready.ts +1 -1
- package/lib/util/repeater.d.ts +0 -22
- package/lib/util/repeater.d.ts.map +0 -1
- package/lib/util/repeater.js +0 -118
- package/lib/util/repeater.js.map +0 -1
- package/src/util/jaeger-client.d.ts +0 -105
- package/src/util/repeater.ts +0 -49
package/lib/util/logging.js
CHANGED
|
@@ -4,43 +4,12 @@
|
|
|
4
4
|
* Licensed under the GNU Affero General Public License (AGPL).
|
|
5
5
|
* See License-AGPL.txt in the project root for license information.
|
|
6
6
|
*/
|
|
7
|
-
var __assign = (this && this.__assign) || function () {
|
|
8
|
-
__assign = Object.assign || function(t) {
|
|
9
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
10
|
-
s = arguments[i];
|
|
11
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
12
|
-
t[p] = s[p];
|
|
13
|
-
}
|
|
14
|
-
return t;
|
|
15
|
-
};
|
|
16
|
-
return __assign.apply(this, arguments);
|
|
17
|
-
};
|
|
18
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
19
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
20
|
-
if (!m) return o;
|
|
21
|
-
var i = m.call(o), r, ar = [], e;
|
|
22
|
-
try {
|
|
23
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
24
|
-
}
|
|
25
|
-
catch (error) { e = { error: error }; }
|
|
26
|
-
finally {
|
|
27
|
-
try {
|
|
28
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
29
|
-
}
|
|
30
|
-
finally { if (e) throw e.error; }
|
|
31
|
-
}
|
|
32
|
-
return ar;
|
|
33
|
-
};
|
|
34
|
-
var __spread = (this && this.__spread) || function () {
|
|
35
|
-
for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
|
|
36
|
-
return ar;
|
|
37
|
-
};
|
|
38
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
8
|
exports.LogrusLogLevel = exports.LogrusLogLevels = exports.log = exports.LogContext = void 0;
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
9
|
+
const inspect = require('util').inspect; // undefined in frontend
|
|
10
|
+
let jsonLogging = false;
|
|
11
|
+
let component;
|
|
12
|
+
let version;
|
|
44
13
|
;
|
|
45
14
|
var LogContext;
|
|
46
15
|
(function (LogContext) {
|
|
@@ -56,35 +25,19 @@ var LogContext;
|
|
|
56
25
|
;
|
|
57
26
|
var log;
|
|
58
27
|
(function (log) {
|
|
59
|
-
function error() {
|
|
60
|
-
var args = [];
|
|
61
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
62
|
-
args[_i] = arguments[_i];
|
|
63
|
-
}
|
|
28
|
+
function error(...args) {
|
|
64
29
|
errorLog(false, args);
|
|
65
30
|
}
|
|
66
31
|
log.error = error;
|
|
67
|
-
function warn() {
|
|
68
|
-
var args = [];
|
|
69
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
70
|
-
args[_i] = arguments[_i];
|
|
71
|
-
}
|
|
32
|
+
function warn(...args) {
|
|
72
33
|
warnLog(false, args);
|
|
73
34
|
}
|
|
74
35
|
log.warn = warn;
|
|
75
|
-
function info() {
|
|
76
|
-
var args = [];
|
|
77
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
78
|
-
args[_i] = arguments[_i];
|
|
79
|
-
}
|
|
36
|
+
function info(...args) {
|
|
80
37
|
infoLog(false, args);
|
|
81
38
|
}
|
|
82
39
|
log.info = info;
|
|
83
|
-
function debug() {
|
|
84
|
-
var args = [];
|
|
85
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
86
|
-
args[_i] = arguments[_i];
|
|
87
|
-
}
|
|
40
|
+
function debug(...args) {
|
|
88
41
|
debugLog(false, args);
|
|
89
42
|
}
|
|
90
43
|
log.debug = debug;
|
|
@@ -99,27 +52,29 @@ var log;
|
|
|
99
52
|
log.enableJSONLogging = enableJSONLogging;
|
|
100
53
|
function setLogLevel(logLevel) {
|
|
101
54
|
jsonLogging = true;
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
else {
|
|
114
|
-
return noop;
|
|
115
|
-
}
|
|
55
|
+
console.error = function (...args) {
|
|
56
|
+
errorLog(true, args);
|
|
57
|
+
};
|
|
58
|
+
console.warn = function (...args) {
|
|
59
|
+
warnLog(true, args);
|
|
60
|
+
};
|
|
61
|
+
console.info = function (...args) {
|
|
62
|
+
infoLog(true, args);
|
|
63
|
+
};
|
|
64
|
+
console.debug = function (...args) {
|
|
65
|
+
debugLog(true, args);
|
|
116
66
|
};
|
|
117
|
-
console.error = setLog(errorLog, "error");
|
|
118
|
-
console.warn = setLog(warnLog, "warning");
|
|
119
|
-
console.info = setLog(infoLog, "info");
|
|
120
|
-
console.debug = setLog(debugLog, "debug");
|
|
121
67
|
console.log = console.info;
|
|
122
68
|
// FIXME wrap also other console methods (e.g. trace())
|
|
69
|
+
// set/unset log functions based on loglevel so we only have to evaluate once, not every call
|
|
70
|
+
const noop = () => { };
|
|
71
|
+
const setLog = (logFunc, funcLevel) => {
|
|
72
|
+
return LogrusLogLevel.isGreatherOrEqual(funcLevel, logLevel) ? logFunc : noop;
|
|
73
|
+
};
|
|
74
|
+
errorLog = setLog(doErrorLog, "error");
|
|
75
|
+
warnLog = setLog(doWarnLog, "warning");
|
|
76
|
+
infoLog = setLog(doInfoLog, "info");
|
|
77
|
+
debugLog = setLog(doDebugLog, "debug");
|
|
123
78
|
}
|
|
124
79
|
log.setLogLevel = setLogLevel;
|
|
125
80
|
function resetToDefaultLogging() {
|
|
@@ -136,16 +91,20 @@ var log;
|
|
|
136
91
|
}
|
|
137
92
|
log.setVersion = setVersion;
|
|
138
93
|
})(log = exports.log || (exports.log = {}));
|
|
139
|
-
|
|
94
|
+
let errorLog = doErrorLog;
|
|
95
|
+
function doErrorLog(calledViaConsole, args) {
|
|
140
96
|
doLog(calledViaConsole, errorConsoleLog, 'ERROR', args);
|
|
141
97
|
}
|
|
142
|
-
|
|
98
|
+
let warnLog = doWarnLog;
|
|
99
|
+
function doWarnLog(calledViaConsole, args) {
|
|
143
100
|
doLog(calledViaConsole, warnConsoleLog, 'WARNING', args);
|
|
144
101
|
}
|
|
145
|
-
|
|
102
|
+
let infoLog = doInfoLog;
|
|
103
|
+
function doInfoLog(calledViaConsole, args) {
|
|
146
104
|
doLog(calledViaConsole, infoConsoleLog, 'INFO', args);
|
|
147
105
|
}
|
|
148
|
-
|
|
106
|
+
let debugLog = doDebugLog;
|
|
107
|
+
function doDebugLog(calledViaConsole, args) {
|
|
149
108
|
doLog(calledViaConsole, debugConsoleLog, 'DEBUG', args);
|
|
150
109
|
}
|
|
151
110
|
exports.LogrusLogLevels = {
|
|
@@ -171,15 +130,15 @@ var LogrusLogLevel;
|
|
|
171
130
|
LogrusLogLevel.isGreatherOrEqual = isGreatherOrEqual;
|
|
172
131
|
function getLevelArity(lvl) {
|
|
173
132
|
return Object.keys(exports.LogrusLogLevels)
|
|
174
|
-
.findIndex(
|
|
133
|
+
.findIndex((l) => l === lvl);
|
|
175
134
|
}
|
|
176
135
|
function getFromEnv() {
|
|
177
|
-
|
|
136
|
+
const lvlStr = process.env.LOG_LEVEL;
|
|
178
137
|
if (!lvlStr) {
|
|
179
138
|
return undefined;
|
|
180
139
|
}
|
|
181
|
-
|
|
182
|
-
|
|
140
|
+
const lvl = lvlStr;
|
|
141
|
+
const exists = exports.LogrusLogLevels[lvl];
|
|
183
142
|
if (!exists) {
|
|
184
143
|
return undefined;
|
|
185
144
|
}
|
|
@@ -189,7 +148,7 @@ var LogrusLogLevel;
|
|
|
189
148
|
})(LogrusLogLevel = exports.LogrusLogLevel || (exports.LogrusLogLevel = {}));
|
|
190
149
|
var GoogleLogSeverity;
|
|
191
150
|
(function (GoogleLogSeverity) {
|
|
192
|
-
GoogleLogSeverity.isGreaterOrEqualThanWarning =
|
|
151
|
+
GoogleLogSeverity.isGreaterOrEqualThanWarning = (severity) => {
|
|
193
152
|
switch (severity) {
|
|
194
153
|
case 'INFO':
|
|
195
154
|
case 'DEBUG':
|
|
@@ -201,17 +160,17 @@ var GoogleLogSeverity;
|
|
|
201
160
|
})(GoogleLogSeverity || (GoogleLogSeverity = {}));
|
|
202
161
|
function doLog(calledViaConsole, consoleLog, severity, args) {
|
|
203
162
|
if (!jsonLogging) {
|
|
204
|
-
consoleLog
|
|
163
|
+
consoleLog(...args);
|
|
205
164
|
return;
|
|
206
165
|
}
|
|
207
166
|
if (args.length == 0) {
|
|
208
167
|
// console.xyz()
|
|
209
168
|
return;
|
|
210
169
|
}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
170
|
+
let context;
|
|
171
|
+
let message;
|
|
172
|
+
let error;
|
|
173
|
+
let payloadArgs;
|
|
215
174
|
if (args[0] instanceof Error) {
|
|
216
175
|
// console.xyz(Error, ...any) / log.xyz(Error) / log.xyz(Error, LogPayload)
|
|
217
176
|
error = args[0];
|
|
@@ -259,7 +218,7 @@ function doLog(calledViaConsole, consoleLog, severity, args) {
|
|
|
259
218
|
payloadArgs = args;
|
|
260
219
|
}
|
|
261
220
|
}
|
|
262
|
-
|
|
221
|
+
const logItem = makeLogItem(severity, context, message, error, payloadArgs, calledViaConsole);
|
|
263
222
|
if (logItem !== undefined) {
|
|
264
223
|
consoleLog(logItem);
|
|
265
224
|
}
|
|
@@ -268,20 +227,20 @@ function makeLogItem(severity, context, message, error, payloadArgs, calledViaCo
|
|
|
268
227
|
if (context !== undefined && Object.keys(context).length == 0) {
|
|
269
228
|
context = undefined;
|
|
270
229
|
}
|
|
271
|
-
|
|
230
|
+
let reportedErrorEvent = {};
|
|
272
231
|
if (GoogleLogSeverity.isGreaterOrEqualThanWarning(severity)) {
|
|
273
232
|
reportedErrorEvent = makeReportedErrorEvent(error);
|
|
274
233
|
}
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
severity
|
|
278
|
-
message
|
|
279
|
-
error
|
|
280
|
-
payload
|
|
281
|
-
|
|
234
|
+
const payload = payloadArgs.length == 0 ? undefined : payloadArgs.length == 1 ? payloadArgs[0] : payloadArgs;
|
|
235
|
+
const logItem = Object.assign(Object.assign({}, reportedErrorEvent), { component,
|
|
236
|
+
severity, time: new Date().toISOString(), environment: process.env.KUBE_STAGE, context,
|
|
237
|
+
message,
|
|
238
|
+
error,
|
|
239
|
+
payload, loggedViaConsole: calledViaConsole ? true : undefined });
|
|
240
|
+
let result = stringifyLogItem(logItem);
|
|
282
241
|
if (result.length > maxAllowedLogItemLength && payload !== undefined) {
|
|
283
242
|
delete logItem.payload;
|
|
284
|
-
logItem.payloadStub =
|
|
243
|
+
logItem.payloadStub = `Payload stripped as log item was longer than ${maxAllowedLogItemLength} characters`;
|
|
285
244
|
result = stringifyLogItem(logItem);
|
|
286
245
|
if (result.length <= maxAllowedLogItemLength) {
|
|
287
246
|
log.warn('Log item too large, stripping payload', { logItemStub: makeLogItemStub(logItem) });
|
|
@@ -296,7 +255,7 @@ function makeLogItem(severity, context, message, error, payloadArgs, calledViaCo
|
|
|
296
255
|
// See https://cloud.google.com/error-reporting/docs/formatting-error-messages
|
|
297
256
|
// and https://cloud.google.com/error-reporting/reference/rest/v1beta1/projects.events/report#ReportedErrorEvent
|
|
298
257
|
function makeReportedErrorEvent(error) {
|
|
299
|
-
|
|
258
|
+
const result = {
|
|
300
259
|
// Serves as marker only
|
|
301
260
|
"@type": "type.googleapis.com/google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent",
|
|
302
261
|
// This is useful for filtering in the UI
|
|
@@ -307,7 +266,7 @@ function makeReportedErrorEvent(error) {
|
|
|
307
266
|
};
|
|
308
267
|
if (error) {
|
|
309
268
|
// According to: https://cloud.google.com/error-reporting/docs/formatting-error-messages#json_representation
|
|
310
|
-
|
|
269
|
+
const stackTrace = error.stack;
|
|
311
270
|
if (stackTrace) {
|
|
312
271
|
result.stack_trace = stackTrace;
|
|
313
272
|
}
|
|
@@ -315,7 +274,7 @@ function makeReportedErrorEvent(error) {
|
|
|
315
274
|
return result;
|
|
316
275
|
}
|
|
317
276
|
function makeLogItemStub(logItem) {
|
|
318
|
-
|
|
277
|
+
const result = {
|
|
319
278
|
component: logItem.component,
|
|
320
279
|
severity: logItem.severity,
|
|
321
280
|
time: logItem.time,
|
|
@@ -357,16 +316,16 @@ function stringifyLogItem(logItem) {
|
|
|
357
316
|
* Jsonifies Errors properly, not as {} only.
|
|
358
317
|
*/
|
|
359
318
|
function jsonStringifyWithErrors(value) {
|
|
360
|
-
return JSON.stringify(value,
|
|
319
|
+
return JSON.stringify(value, (key, value) => { return value instanceof Error ? value.stack : value; });
|
|
361
320
|
}
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
321
|
+
const logConsoleLog = console.log;
|
|
322
|
+
const errorConsoleLog = console.error;
|
|
323
|
+
const warnConsoleLog = console.warn;
|
|
324
|
+
const infoConsoleLog = console.info;
|
|
325
|
+
const debugConsoleLog = console.debug;
|
|
367
326
|
// according to https://cloud.google.com/logging/quotas#logging_usage_limits, the log item must fit in 100 KB (internal data
|
|
368
327
|
// size; its relation to the stringified JSON's size is unknown), so let's have a sufficient safe margin
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
328
|
+
const maxAllowedLogItemLength = 32 * 1024;
|
|
329
|
+
const maxMessageStubLength = 1024;
|
|
330
|
+
const maxErrorStubLength = 4096;
|
|
372
331
|
//# sourceMappingURL=logging.js.map
|
package/lib/util/logging.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/util/logging.ts"],"names":[],"mappings":";AAAA;;;;GAIG
|
|
1
|
+
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/util/logging.ts"],"names":[],"mappings":"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"}
|
package/lib/util/make-link.js
CHANGED
|
@@ -10,8 +10,8 @@ function isOpenNewTab(event) {
|
|
|
10
10
|
return event.metaKey || (event.ctrlKey);
|
|
11
11
|
}
|
|
12
12
|
function makeLink(node, url, hover) {
|
|
13
|
-
node.onclick =
|
|
14
|
-
|
|
13
|
+
node.onclick = event => {
|
|
14
|
+
let target = '_self';
|
|
15
15
|
if (isOpenNewTab(event)) {
|
|
16
16
|
target = '_blank';
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make-link.js","sourceRoot":"","sources":["../../src/util/make-link.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,SAAS,YAAY,CAAC,KAAiB;IACnC,OAAO,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,SAAgB,QAAQ,CAAC,IAAiB,EAAE,GAAW,EAAE,KAAa;IAClE,IAAI,CAAC,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"make-link.js","sourceRoot":"","sources":["../../src/util/make-link.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,SAAS,YAAY,CAAC,KAAiB;IACnC,OAAO,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED,SAAgB,QAAQ,CAAC,IAAiB,EAAE,GAAW,EAAE,KAAa;IAClE,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE;QACnB,IAAI,MAAM,GAAG,OAAO,CAAC;QACrB,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE;YACrB,MAAM,GAAG,QAAQ,CAAC;SACrB;QACD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAA;IACD,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACvB,CAAC;AAVD,4BAUC"}
|
|
@@ -11,4 +11,14 @@
|
|
|
11
11
|
* @param hostname The hostname the request is headed to
|
|
12
12
|
*/
|
|
13
13
|
export declare const parseWorkspaceIdFromHostname: (hostname: string) => string | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* @param maybeId
|
|
16
|
+
* @returns
|
|
17
|
+
*/
|
|
18
|
+
export declare const matchesInstanceIdOrLegacyWorkspaceIdExactly: (maybeId: string) => boolean;
|
|
19
|
+
/**
|
|
20
|
+
* @param maybeWorkspaceId
|
|
21
|
+
* @returns
|
|
22
|
+
*/
|
|
23
|
+
export declare const matchesNewWorkspaceIdExactly: (maybeWorkspaceId: string) => boolean;
|
|
14
24
|
//# sourceMappingURL=parse-workspace-id.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-workspace-id.d.ts","sourceRoot":"","sources":["../../src/util/parse-workspace-id.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"parse-workspace-id.d.ts","sourceRoot":"","sources":["../../src/util/parse-workspace-id.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,aAAsB,MAAM,uBAWpE,CAAC;AAMF;;;GAGG;AACH,eAAO,MAAM,2CAA2C,YAAqB,MAAM,KAAG,OAGrF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,qBAA8B,MAAM,KAAG,OAE/E,CAAC"}
|
|
@@ -5,7 +5,14 @@
|
|
|
5
5
|
* See License-AGPL.txt in the project root for license information.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.parseWorkspaceIdFromHostname = void 0;
|
|
8
|
+
exports.matchesNewWorkspaceIdExactly = exports.matchesInstanceIdOrLegacyWorkspaceIdExactly = exports.parseWorkspaceIdFromHostname = void 0;
|
|
9
|
+
const REGEX_WORKSPACE_ID = /[0-9a-z]{2,16}-[0-9a-z]{2,16}-[0-9a-z]{8}/;
|
|
10
|
+
const REGEX_WORKSPACE_ID_EXACT = new RegExp(`^${REGEX_WORKSPACE_ID.source}$`);
|
|
11
|
+
// We need to parse the workspace id precisely here to get the case '<some-str>-<port>-<wsid>.ws.' right
|
|
12
|
+
const REGEX_WORKSPACE_ID_FROM_HOSTNAME = new RegExp(`(${REGEX_WORKSPACE_ID.source})\.ws`);
|
|
13
|
+
const REGEX_WORKSPACE_ID_LEGACY = /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/;
|
|
14
|
+
const REGEX_WORKSPACE_ID_LEGACY_EXACT = new RegExp(`^${REGEX_WORKSPACE_ID_LEGACY.source}$`);
|
|
15
|
+
const REGEX_WORKSPACE_ID_LEGACY_FROM_HOSTNAME = new RegExp(`(${REGEX_WORKSPACE_ID_LEGACY.source})\.ws`);
|
|
9
16
|
/**
|
|
10
17
|
* Hostname may be of the form:
|
|
11
18
|
* - moccasin-ferret-155799b3.ws-eu01.gitpod.io
|
|
@@ -13,16 +20,13 @@ exports.parseWorkspaceIdFromHostname = void 0;
|
|
|
13
20
|
* - webview-1234-moccasin-ferret-155799b3.ws-eu01.gitpod.io (or any other string replacing webview)
|
|
14
21
|
* @param hostname The hostname the request is headed to
|
|
15
22
|
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
var wsIdExpression = /([0-9a-z]{2,16}-[0-9a-z]{2,16}-[0-9a-z]{8})\.ws/g;
|
|
19
|
-
var match = wsIdExpression.exec(hostname);
|
|
23
|
+
const parseWorkspaceIdFromHostname = function (hostname) {
|
|
24
|
+
const match = REGEX_WORKSPACE_ID_FROM_HOSTNAME.exec(hostname);
|
|
20
25
|
if (match && match.length >= 2) {
|
|
21
26
|
return match[1];
|
|
22
27
|
}
|
|
23
28
|
else {
|
|
24
|
-
|
|
25
|
-
var legacyMatch = legacyUrlFormat.exec(hostname);
|
|
29
|
+
const legacyMatch = REGEX_WORKSPACE_ID_LEGACY_FROM_HOSTNAME.exec(hostname);
|
|
26
30
|
if (legacyMatch && legacyMatch.length >= 2) {
|
|
27
31
|
return legacyMatch[1];
|
|
28
32
|
}
|
|
@@ -30,4 +34,24 @@ var parseWorkspaceIdFromHostname = function (hostname) {
|
|
|
30
34
|
}
|
|
31
35
|
};
|
|
32
36
|
exports.parseWorkspaceIdFromHostname = parseWorkspaceIdFromHostname;
|
|
37
|
+
/** Equalls UUIDv4 (and REGEX_WORKSPACE_ID_LEGACY!) */
|
|
38
|
+
const REGEX_INSTANCE_ID = /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/;
|
|
39
|
+
const REGEX_INSTANCE_ID_EXACT = new RegExp(`^${REGEX_INSTANCE_ID.source}$`);
|
|
40
|
+
/**
|
|
41
|
+
* @param maybeId
|
|
42
|
+
* @returns
|
|
43
|
+
*/
|
|
44
|
+
const matchesInstanceIdOrLegacyWorkspaceIdExactly = function (maybeId) {
|
|
45
|
+
return REGEX_INSTANCE_ID_EXACT.test(maybeId)
|
|
46
|
+
|| REGEX_WORKSPACE_ID_LEGACY_EXACT.test(maybeId);
|
|
47
|
+
};
|
|
48
|
+
exports.matchesInstanceIdOrLegacyWorkspaceIdExactly = matchesInstanceIdOrLegacyWorkspaceIdExactly;
|
|
49
|
+
/**
|
|
50
|
+
* @param maybeWorkspaceId
|
|
51
|
+
* @returns
|
|
52
|
+
*/
|
|
53
|
+
const matchesNewWorkspaceIdExactly = function (maybeWorkspaceId) {
|
|
54
|
+
return REGEX_WORKSPACE_ID_EXACT.test(maybeWorkspaceId);
|
|
55
|
+
};
|
|
56
|
+
exports.matchesNewWorkspaceIdExactly = matchesNewWorkspaceIdExactly;
|
|
33
57
|
//# sourceMappingURL=parse-workspace-id.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-workspace-id.js","sourceRoot":"","sources":["../../src/util/parse-workspace-id.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;
|
|
1
|
+
{"version":3,"file":"parse-workspace-id.js","sourceRoot":"","sources":["../../src/util/parse-workspace-id.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,MAAM,kBAAkB,GAAG,2CAA2C,CAAC;AACvE,MAAM,wBAAwB,GAAG,IAAI,MAAM,CAAC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9E,wGAAwG;AACxG,MAAM,gCAAgC,GAAG,IAAI,MAAM,CAAC,IAAI,kBAAkB,CAAC,MAAM,OAAO,CAAC,CAAC;AAE1F,MAAM,yBAAyB,GAAG,8DAA8D,CAAC;AACjG,MAAM,+BAA+B,GAAG,IAAI,MAAM,CAAC,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,CAAC;AAC5F,MAAM,uCAAuC,GAAG,IAAI,MAAM,CAAC,IAAI,yBAAyB,CAAC,MAAM,OAAO,CAAC,CAAC;AAExG;;;;;;GAMG;AACI,MAAM,4BAA4B,GAAG,UAAS,QAAgB;IACjE,MAAM,KAAK,GAAG,gCAAgC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;QAC5B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;KACnB;SAAM;QACH,MAAM,WAAW,GAAG,uCAAuC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3E,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE;YACxC,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;SACzB;QACD,OAAO,SAAS,CAAC;KACpB;AACL,CAAC,CAAC;AAXW,QAAA,4BAA4B,gCAWvC;AAEF,sDAAsD;AACtD,MAAM,iBAAiB,GAAG,8DAA8D,CAAC;AACzF,MAAM,uBAAuB,GAAG,IAAI,MAAM,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;AAE5E;;;GAGG;AACI,MAAM,2CAA2C,GAAG,UAAS,OAAe;IAC/E,OAAO,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC;WACrC,+BAA+B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACzD,CAAC,CAAC;AAHW,QAAA,2CAA2C,+CAGtD;AAEF;;;GAGG;AACI,MAAM,4BAA4B,GAAG,UAAS,gBAAwB;IACzE,OAAO,wBAAwB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAC3D,CAAC,CAAC;AAFW,QAAA,4BAA4B,gCAEvC"}
|
|
@@ -12,5 +12,9 @@ export declare class ParseWorkspaceIdTest {
|
|
|
12
12
|
parseLegacyWorkspaceIdFromHostname_fromWorkspacePortLocation(): void;
|
|
13
13
|
parseLegacyWorkspaceIdFromHostname_fromWorkspacePortLocationWithWebviewPrefix(): void;
|
|
14
14
|
parseLegacyWorkspaceIdFromHostname_fromWorkspacePortLocationWithWebviewPrefixCustomHost(): void;
|
|
15
|
+
matchesInstanceIdOrLegacyWorkspaceIdExactly_positive(): void;
|
|
16
|
+
matchesInstanceIdOrLegacyWorkspaceIdExactly_negative(): void;
|
|
17
|
+
matchesWorkspaceIdExactly_new_positive(): void;
|
|
18
|
+
matchesWorkspaceIdExactly_new_negative(): void;
|
|
15
19
|
}
|
|
16
20
|
//# sourceMappingURL=parse-workspace-id.spec.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-workspace-id.spec.d.ts","sourceRoot":"","sources":["../../src/util/parse-workspace-id.spec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,qBACa,oBAAoB;IAEhB,kDAAkD;IAKlD,sDAAsD;IAKtD,uEAAuE;IAKvE,iFAAiF;IAMjF,wDAAwD;IAKxD,4DAA4D;IAK5D,6EAA6E;IAK7E,uFAAuF;
|
|
1
|
+
{"version":3,"file":"parse-workspace-id.spec.d.ts","sourceRoot":"","sources":["../../src/util/parse-workspace-id.spec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,qBACa,oBAAoB;IAEhB,kDAAkD;IAKlD,sDAAsD;IAKtD,uEAAuE;IAKvE,iFAAiF;IAMjF,wDAAwD;IAKxD,4DAA4D;IAK5D,6EAA6E;IAK7E,uFAAuF;IAMvF,oDAAoD;IAIpD,oDAAoD;IAMpD,sCAAsC;IAItC,sCAAsC;CAItD"}
|