@optimizely/ocp-cli 1.0.7 → 1.0.9
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/commands/app/Logs.d.ts +1 -0
- package/dist/commands/app/Logs.js +23 -8
- package/dist/commands/app/Logs.js.map +1 -1
- package/dist/lib/Shards.js +1 -6
- package/dist/lib/Shards.js.map +1 -1
- package/dist/oo-cli.manifest.json +1 -1
- package/package.json +1 -1
- package/src/commands/app/Logs.ts +29 -8
- package/src/lib/Shards.ts +1 -8
|
@@ -30,6 +30,8 @@ const TAIL_CONFIG = Object.freeze({
|
|
|
30
30
|
});
|
|
31
31
|
// Maximum page size for search results.
|
|
32
32
|
const PAGE_SIZE = 5000;
|
|
33
|
+
// interval for which to send range queries to loki, longer intervals often time out
|
|
34
|
+
const INTERVAL = 24 * 60 * 60 * 1000;
|
|
33
35
|
let LogsCommand = class LogsCommand {
|
|
34
36
|
constructor() {
|
|
35
37
|
this.availability = '';
|
|
@@ -120,15 +122,17 @@ let LogsCommand = class LogsCommand {
|
|
|
120
122
|
}
|
|
121
123
|
}
|
|
122
124
|
async dumpLogs(shard, from, cb, to) {
|
|
123
|
-
let result;
|
|
124
125
|
let count = 0;
|
|
125
|
-
const
|
|
126
|
-
|
|
127
|
-
result
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
126
|
+
const requests = this.buildRequests(from, to);
|
|
127
|
+
for (const request of requests) {
|
|
128
|
+
let result;
|
|
129
|
+
do {
|
|
130
|
+
result = await Moria_1.Moria.searchLogging(request, shard);
|
|
131
|
+
result.entries.forEach(cb);
|
|
132
|
+
request.cursor = result.cursor;
|
|
133
|
+
count += result.entries.length;
|
|
134
|
+
} while (result.entries.length > 0);
|
|
135
|
+
}
|
|
132
136
|
return count;
|
|
133
137
|
}
|
|
134
138
|
async tailLogs(shard, from) {
|
|
@@ -154,6 +158,17 @@ let LogsCommand = class LogsCommand {
|
|
|
154
158
|
};
|
|
155
159
|
await query();
|
|
156
160
|
}
|
|
161
|
+
buildRequests(from, to) {
|
|
162
|
+
let start = typeof from === 'number' ? from : from.valueOf();
|
|
163
|
+
const end = to ? (typeof to === 'number' ? to : to.valueOf()) : new Date().valueOf();
|
|
164
|
+
const requests = [];
|
|
165
|
+
while (start + INTERVAL < end) {
|
|
166
|
+
requests.push(this.buildRequest(start, start + INTERVAL - 1));
|
|
167
|
+
start += INTERVAL;
|
|
168
|
+
}
|
|
169
|
+
requests.push(this.buildRequest(start, to));
|
|
170
|
+
return requests;
|
|
171
|
+
}
|
|
157
172
|
buildRequest(from, to) {
|
|
158
173
|
return {
|
|
159
174
|
context: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logs.js","sourceRoot":"","sources":["../../../src/commands/app/Logs.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+BAA+B;AAE/B,mCAAsF;AACtF,mDAAkF;AAClF,uCAAkC;AAClC,+DAA0D;AAC1D,+DAA0D;AAC1D,2CAAsC;AACtC,mDAA8C;AAC9C,uDAAkD;AAIlD,IAAO,QAAQ,GAAG,aAAK,CAAC,QAAQ,CAAC;AAEjC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IAChC,mEAAmE;IACnE,8FAA8F;IAC9F,WAAW,EAAE,KAAK;IAElB,0DAA0D;IAC1D,gEAAgE;IAChE,KAAK,EAAE,KAAK;IAEZ,eAAe,EAAE,IAAI;IAErB,4BAA4B;IAC5B,eAAe,EAAE,IAAI;CACtB,CAAC,CAAC;AAEH,wCAAwC;AACxC,MAAM,SAAS,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Logs.js","sourceRoot":"","sources":["../../../src/commands/app/Logs.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/Shards.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.targetShards = exports.applicableShards = void 0;
|
|
4
|
-
const semver_1 = require("semver");
|
|
5
4
|
const AppContext_1 = require("./AppContext");
|
|
6
5
|
const Config_1 = require("./Config");
|
|
7
6
|
const Rivendell_1 = require("./Rivendell");
|
|
@@ -9,14 +8,10 @@ async function applicableShards(availability = '', fromManifest) {
|
|
|
9
8
|
if ((0, Config_1.getEnv)() === 'staging') {
|
|
10
9
|
return ['us'];
|
|
11
10
|
}
|
|
12
|
-
const manifest = fromManifest || (0, AppContext_1.readAppYaml)();
|
|
13
|
-
const pre = (0, semver_1.prerelease)(manifest.meta.version);
|
|
14
|
-
if (pre && pre[0] === 'dev') {
|
|
15
|
-
return ['us'];
|
|
16
|
-
}
|
|
17
11
|
if (availability) {
|
|
18
12
|
return [availability];
|
|
19
13
|
}
|
|
14
|
+
const manifest = fromManifest || (0, AppContext_1.readAppYaml)();
|
|
20
15
|
return resolveShards(manifest);
|
|
21
16
|
}
|
|
22
17
|
exports.applicableShards = applicableShards;
|
package/dist/lib/Shards.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shards.js","sourceRoot":"","sources":["../../src/lib/Shards.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"Shards.js","sourceRoot":"","sources":["../../src/lib/Shards.ts"],"names":[],"mappings":";;;AACA,6CAA2C;AAC3C,qCAAkC;AAClC,2CAAwC;AAEjC,KAAK,UAAU,gBAAgB,CAAC,YAAY,GAAG,EAAE,EAAE,YAA0B;IAClF,IAAI,IAAA,eAAM,GAAE,KAAK,SAAS,EAAE;QAC1B,OAAO,CAAC,IAAI,CAAC,CAAC;KACf;IAED,IAAI,YAAY,EAAE;QAChB,OAAO,CAAC,YAAY,CAAC,CAAC;KACvB;IAED,MAAM,QAAQ,GAAG,YAAY,IAAI,IAAA,wBAAW,GAAE,CAAC;IAC/C,OAAO,aAAa,CAAC,QAAQ,CAAC,CAAC;AACjC,CAAC;AAXD,4CAWC;AAEM,KAAK,UAAU,YAAY;IAChC,OAAO,MAAM,aAAa,CAAC,IAAA,wBAAW,GAAE,CAAC,CAAC;AAC5C,CAAC;AAFD,oCAEC;AAED,KAAK,UAAU,aAAa,CAAC,QAAqB;IAChD,IAAI,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;QAC1B,MAAM,GAAG,CAAC,MAAM,qBAAS,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;KACtD;IAED,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAChE,CAAC"}
|
package/package.json
CHANGED
package/src/commands/app/Logs.ts
CHANGED
|
@@ -31,6 +31,9 @@ const TAIL_CONFIG = Object.freeze({
|
|
|
31
31
|
// Maximum page size for search results.
|
|
32
32
|
const PAGE_SIZE = 5000;
|
|
33
33
|
|
|
34
|
+
// interval for which to send range queries to loki, longer intervals often time out
|
|
35
|
+
const INTERVAL = 24 * 60 * 60 * 1000;
|
|
36
|
+
|
|
34
37
|
type LogEntryCallback = (entry: LogEntry) => void;
|
|
35
38
|
|
|
36
39
|
@namespace('app')
|
|
@@ -183,15 +186,18 @@ export class LogsCommand {
|
|
|
183
186
|
cb: LogEntryCallback,
|
|
184
187
|
to?: Date | number
|
|
185
188
|
): Promise<number> {
|
|
186
|
-
let result: LoggingSearchResult;
|
|
187
189
|
let count = 0;
|
|
188
|
-
const
|
|
189
|
-
|
|
190
|
-
result
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
190
|
+
const requests = this.buildRequests(from, to);
|
|
191
|
+
for (const request of requests) {
|
|
192
|
+
let result: LoggingSearchResult;
|
|
193
|
+
do {
|
|
194
|
+
result = await Moria.searchLogging(request, shard);
|
|
195
|
+
result.entries.forEach(cb);
|
|
196
|
+
request.cursor = result.cursor;
|
|
197
|
+
count += result.entries.length;
|
|
198
|
+
} while (result.entries.length > 0);
|
|
199
|
+
}
|
|
200
|
+
|
|
195
201
|
return count;
|
|
196
202
|
}
|
|
197
203
|
|
|
@@ -222,6 +228,21 @@ export class LogsCommand {
|
|
|
222
228
|
await query();
|
|
223
229
|
}
|
|
224
230
|
|
|
231
|
+
private buildRequests(from: Date | number, to?: Date | number): LoggingSearchCriteria[] {
|
|
232
|
+
let start = typeof from === 'number' ? from : from.valueOf();
|
|
233
|
+
const end = to ? (typeof to === 'number' ? to : to.valueOf()) : new Date().valueOf();
|
|
234
|
+
|
|
235
|
+
const requests: LoggingSearchCriteria[] = [];
|
|
236
|
+
while (start + INTERVAL < end) {
|
|
237
|
+
requests.push(this.buildRequest(start, start + INTERVAL - 1));
|
|
238
|
+
start += INTERVAL;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
requests.push(this.buildRequest(start, to));
|
|
242
|
+
|
|
243
|
+
return requests;
|
|
244
|
+
}
|
|
245
|
+
|
|
225
246
|
private buildRequest(from: Date | number, to?: Date | number): LoggingSearchCriteria {
|
|
226
247
|
return {
|
|
227
248
|
context: {
|
package/src/lib/Shards.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { AppManifest } from '@zaiusinc/app-sdk';
|
|
2
|
-
import { prerelease } from 'semver';
|
|
3
2
|
import { readAppYaml } from './AppContext';
|
|
4
3
|
import { getEnv } from './Config';
|
|
5
4
|
import { Rivendell } from './Rivendell';
|
|
@@ -9,17 +8,11 @@ export async function applicableShards(availability = '', fromManifest?: AppMani
|
|
|
9
8
|
return ['us'];
|
|
10
9
|
}
|
|
11
10
|
|
|
12
|
-
const manifest = fromManifest || readAppYaml();
|
|
13
|
-
const pre = prerelease(manifest.meta.version);
|
|
14
|
-
|
|
15
|
-
if (pre && pre[0] === 'dev') {
|
|
16
|
-
return ['us'];
|
|
17
|
-
}
|
|
18
|
-
|
|
19
11
|
if (availability) {
|
|
20
12
|
return [availability];
|
|
21
13
|
}
|
|
22
14
|
|
|
15
|
+
const manifest = fromManifest || readAppYaml();
|
|
23
16
|
return resolveShards(manifest);
|
|
24
17
|
}
|
|
25
18
|
|