@optimizely/ocp-cli 1.0.8 → 1.0.10

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.
@@ -15,5 +15,6 @@ export declare class LogsCommand {
15
15
  private formatLevel;
16
16
  private dumpLogs;
17
17
  private tailLogs;
18
+ private buildRequests;
18
19
  private buildRequest;
19
20
  }
@@ -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 = '';
@@ -90,6 +92,9 @@ let LogsCommand = class LogsCommand {
90
92
  'an epoch timestamp, or relative string (i.e. "5m" for 5 minutes.'));
91
93
  }
92
94
  toDate = this.to ? (0, parseDate_1.parseDate)(this.to) : new Date();
95
+ if (fromDate >= toDate) {
96
+ (0, die_1.die)(chalk.red('--from must be before --to'));
97
+ }
93
98
  }
94
99
  this.availability = this.availability ? this.availability : 'us';
95
100
  const shard = (await Rivendell_1.Rivendell.shards()).find((_shard) => _shard.id === this.availability);
@@ -120,15 +125,17 @@ let LogsCommand = class LogsCommand {
120
125
  }
121
126
  }
122
127
  async dumpLogs(shard, from, cb, to) {
123
- let result;
124
128
  let count = 0;
125
- const request = this.buildRequest(from, to);
126
- do {
127
- result = await Moria_1.Moria.searchLogging(request, shard);
128
- result.entries.forEach(cb);
129
- request.cursor = result.cursor;
130
- count += result.entries.length;
131
- } while (result.entries.length > 0);
129
+ const requests = this.buildRequests(from, to);
130
+ for (const request of requests) {
131
+ let result;
132
+ do {
133
+ result = await Moria_1.Moria.searchLogging(request, shard);
134
+ result.entries.forEach(cb);
135
+ request.cursor = result.cursor;
136
+ count += result.entries.length;
137
+ } while (result.entries.length > 0);
138
+ }
132
139
  return count;
133
140
  }
134
141
  async tailLogs(shard, from) {
@@ -154,6 +161,19 @@ let LogsCommand = class LogsCommand {
154
161
  };
155
162
  await query();
156
163
  }
164
+ buildRequests(from, to) {
165
+ let start = typeof from === 'number' ? from : from.valueOf();
166
+ const end = to ? (typeof to === 'number' ? to : to.valueOf()) : new Date().valueOf();
167
+ const requests = [];
168
+ while (start + INTERVAL < end) {
169
+ requests.push(this.buildRequest(start, start + INTERVAL - 1));
170
+ start += INTERVAL;
171
+ }
172
+ if (start < end) {
173
+ requests.push(this.buildRequest(start, to));
174
+ }
175
+ return requests;
176
+ }
157
177
  buildRequest(from, to) {
158
178
  return {
159
179
  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;AAKhB,IAAM,WAAW,GAAjB,MAAM,WAAW;IAAjB;QA+CG,iBAAY,GAAW,EAAE,CAAC;QAmE1B,kBAAa,GAAG,CAAC,KAAe,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAG;gBACd,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;gBAClC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC7B,KAAK,CAAC,OAAO;aACd,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACjC,CAAC,CAAA;QAEO,gBAAW,GAAG,CAAC,KAAe,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,CAAC,CAAC;YAClB,QAAQ,KAAK,CAAC,WAAW,EAAE,EAAE;gBAC3B,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACnB,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC5C;gBACD,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAClB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC3C;gBACD,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAClB,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC7C;gBACD,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACnB,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC3C;gBACD;oBACE,OAAO,EAAE,CAAC;aACb;QACH,CAAC,CAAA;IA+DH,CAAC;IAzJc,AAAN,KAAK,CAAC,IAAI;QACf,IAAA,iCAAe,GAAE,CAAC;QAClB,IAAI,CAAC,IAAA,8CAAkC,EAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAClD,IAAA,SAAG,EAAC,KAAK,CAAC,GAAG,CAAC,kDAAkD;gBAC9D,kEAAkE,CAAC,CAAC,CAAC;SACxE;QACD,MAAM,QAAQ,GAAG,IAAA,qBAAS,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,MAAwB,CAAC;QAE7B,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC/C,IAAA,SAAG,EAAC,sDAAsD,CAAC,CAAC;SAC7D;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;YAC5D,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE;YAC5E,IAAA,SAAG,EAAC,sDAAsD,CAAC,CAAC;SAC7D;QAED,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,qBAAS,CAAC,OAAO,EAAE,EAAE;YAC/D,IAAA,SAAG,EAAC,yEAAyE,CAAC,CAAC;SAChF;QAED,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,IAAI,CAAC,EAAE,EAAE;gBACX,IAAA,SAAG,EAAC,0CAA0C,CAAC,CAAC;aACjD;SACF;aAAM;YACL,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,IAAA,8CAAkC,EAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAC3D,IAAA,SAAG,EAAC,KAAK,CAAC,GAAG,CAAC,iDAAiD;oBAC7D,kEAAkE,CAAC,CAAC,CAAC;aACxE;YACD,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;SACpD;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,MAAM,KAAK,GAAG,CAAC,MAAM,qBAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3F,IAAI,CAAC,KAAK,EAAE;YACV,IAAA,SAAG,EAAC,iDAAiD,CAAC,CAAC;SACxD;QAED,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAc,CAAC,EAAE;gBACzE,IAAA,SAAG,EAAC,oCAAoC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACjF;SACF;QAED,IAAI;YACF,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAM,EAAE,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC;aAC9C;iBAAM;gBACL,MAAM,OAAO,GAAG,IAAI,iCAAe,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChD,IAAI;oBACF,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;iBACnE;wBAAS;oBACR,OAAO,CAAC,IAAI,EAAE,CAAC;iBAChB;aACF;SACF;QAAC,OAAO,CAAM,EAAE;YACf,IAAA,SAAG,EAAC,IAAA,yBAAW,EAAC,CAAC,CAAC,CAAC,CAAC;SACrB;IACH,CAAC;IA+BO,KAAK,CAAC,QAAQ,CACpB,KAAsB,EACtB,IAAmB,EACnB,EAAoB,EACpB,EAAkB;QAElB,IAAI,MAA2B,CAAC;QAChC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC5C,GAAG;YACD,MAAM,GAAG,MAAM,aAAK,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC3B,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SAChC,QAAQ,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpC,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,KAAsB,EAAE,IAAU;QACvD,MAAM,WAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;QAC3C,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE3B,MAAM,QAAQ,GAAG,CAAC,KAAe,EAAE,EAAE;YACnC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;gBAC9B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC1B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC1B,IAAI,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,eAAe,EAAE;oBAClD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;iBACxD;gBACD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;aACrC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,iCAAe,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEhD,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC;YAC3C,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;YACvD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACvD,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;QACjD,CAAC,CAAC;QACF,MAAM,KAAK,EAAE,CAAC;IAChB,CAAC;IAEO,YAAY,CAAC,IAAmB,EAAE,EAAkB;QAC1D,OAAO;YACL,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB;YACD,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE;YACvD,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YAClE,KAAK,EAAE,IAAI,CAAC,KAAiB;YAC7B,KAAK,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC;IACJ,CAAC;CACF,CAAA;AAzMC;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,wEAAwE,CAAC;0CACzD;AAItB;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,yHAAyH,CAAC;4CACxG;AAIxB;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,8BAA8B,CAAC;+CACV;AAI3B;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,6DAA6D,CAAC;8CAC1C;AAI1B;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,yFAAyF,CAAC;0CAC1E;AAKtB;IAHC,eAAM;IACN,IAAA,aAAI,EAAC,+CAA+C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACzF,IAAA,qBAAY,EAAC,OAAO,CAAC;0CACA;AAKtB;IAHC,eAAM;IACN,IAAA,aAAI,EAAC,+GAA+G,CAAC;IACrH,IAAA,qBAAY,EAAC,KAAK,CAAC;yCACC;AAIrB;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,+FAA+F,CAAC;uCACnF;AAKnB;IAHC,aAAI;IACJ,IAAA,aAAI,EAAC,gBAAgB,CAAC;IACtB,IAAA,qBAAY,EAAC,KAAK,CAAC;yCACE;AAKtB;IAHC,eAAM;IACN,IAAA,aAAI,EAAC,yEAAyE,CAAC;IAC/E,iBAAQ;2CACgB;AAIzB;IAFC,IAAA,eAAM,EAAC,GAAG,CAAC;IACX,IAAA,aAAI,EAAC,2DAA2D,CAAC;iDAChC;AAIrB;IAFZ,gBAAO;IACP,IAAA,aAAI,EAAC,gBAAgB,CAAC;uCA8DtB;AAhHU,WAAW;IADvB,IAAA,kBAAS,EAAC,KAAK,CAAC;GACJ,WAAW,CA4MvB;AA5MY,kCAAW"}
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;AAEvB,oFAAoF;AACpF,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAK9B,IAAM,WAAW,GAAjB,MAAM,WAAW;IAAjB;QA+CG,iBAAY,GAAW,EAAE,CAAC;QAuE1B,kBAAa,GAAG,CAAC,KAAe,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAG;gBACd,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;gBAClC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC7B,KAAK,CAAC,OAAO;aACd,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACjC,CAAC,CAAA;QAEO,gBAAW,GAAG,CAAC,KAAe,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,CAAC,CAAC;YAClB,QAAQ,KAAK,CAAC,WAAW,EAAE,EAAE;gBAC3B,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACnB,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC5C;gBACD,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAClB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC3C;gBACD,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAClB,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC7C;gBACD,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACnB,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;iBAC3C;gBACD;oBACE,OAAO,EAAE,CAAC;aACb;QACH,CAAC,CAAA;IAmFH,CAAC;IAjLc,AAAN,KAAK,CAAC,IAAI;QACf,IAAA,iCAAe,GAAE,CAAC;QAClB,IAAI,CAAC,IAAA,8CAAkC,EAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAClD,IAAA,SAAG,EAAC,KAAK,CAAC,GAAG,CAAC,kDAAkD;gBAC9D,kEAAkE,CAAC,CAAC,CAAC;SACxE;QACD,MAAM,QAAQ,GAAG,IAAA,qBAAS,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,MAAwB,CAAC;QAE7B,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC/C,IAAA,SAAG,EAAC,sDAAsD,CAAC,CAAC;SAC7D;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC;YAC5D,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE;YAC5E,IAAA,SAAG,EAAC,sDAAsD,CAAC,CAAC;SAC7D;QAED,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,qBAAS,CAAC,OAAO,EAAE,EAAE;YAC/D,IAAA,SAAG,EAAC,yEAAyE,CAAC,CAAC;SAChF;QAED,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,IAAI,CAAC,EAAE,EAAE;gBACX,IAAA,SAAG,EAAC,0CAA0C,CAAC,CAAC;aACjD;SACF;aAAM;YACL,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,IAAA,8CAAkC,EAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAC3D,IAAA,SAAG,EAAC,KAAK,CAAC,GAAG,CAAC,iDAAiD;oBAC7D,kEAAkE,CAAC,CAAC,CAAC;aACxE;YACD,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;YAEnD,IAAI,QAAQ,IAAI,MAAM,EAAE;gBACtB,IAAA,SAAG,EAAC,KAAK,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAC;aAC9C;SACF;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,MAAM,KAAK,GAAG,CAAC,MAAM,qBAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3F,IAAI,CAAC,KAAK,EAAE;YACV,IAAA,SAAG,EAAC,iDAAiD,CAAC,CAAC;SACxD;QAED,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAc,CAAC,EAAE;gBACzE,IAAA,SAAG,EAAC,oCAAoC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACjF;SACF;QAED,IAAI;YACF,IAAI,IAAI,CAAC,IAAI,EAAE;gBACb,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAM,EAAE,IAAA,qBAAS,EAAC,IAAI,CAAC,CAAC,CAAC;aAC9C;iBAAM;gBACL,MAAM,OAAO,GAAG,IAAI,iCAAe,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChD,IAAI;oBACF,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;iBACnE;wBAAS;oBACR,OAAO,CAAC,IAAI,EAAE,CAAC;iBAChB;aACF;SACF;QAAC,OAAO,CAAM,EAAE;YACf,IAAA,SAAG,EAAC,IAAA,yBAAW,EAAC,CAAC,CAAC,CAAC,CAAC;SACrB;IACH,CAAC;IA+BO,KAAK,CAAC,QAAQ,CACpB,KAAsB,EACtB,IAAmB,EACnB,EAAoB,EACpB,EAAkB;QAElB,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC9B,IAAI,MAA2B,CAAC;YAChC,GAAG;gBACD,MAAM,GAAG,MAAM,aAAK,CAAC,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACnD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC3B,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC/B,KAAK,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;aAChC,QAAQ,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;SACrC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,KAAsB,EAAE,IAAU;QACvD,MAAM,WAAW,GAAgB,IAAI,GAAG,EAAE,CAAC;QAC3C,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAE3B,MAAM,QAAQ,GAAG,CAAC,KAAe,EAAE,EAAE;YACnC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;gBAC9B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAC1B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC1B,IAAI,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,eAAe,EAAE;oBAClD,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;iBACxD;gBACD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;aACrC;QACH,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,iCAAe,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEhD,MAAM,KAAK,GAAG,KAAK,IAAI,EAAE;YACvB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC,KAAK,CAAC;YAC3C,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;YACvD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;YACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;YACvD,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,CAAC;QACjD,CAAC,CAAC;QACF,MAAM,KAAK,EAAE,CAAC;IAChB,CAAC;IAEO,aAAa,CAAC,IAAmB,EAAE,EAAkB;QAC3D,IAAI,KAAK,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7D,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAErF,MAAM,QAAQ,GAA4B,EAAE,CAAC;QAC7C,OAAO,KAAK,GAAG,QAAQ,GAAG,GAAG,EAAE;YAC7B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9D,KAAK,IAAI,QAAQ,CAAC;SACnB;QAED,IAAI,KAAK,GAAG,GAAG,EAAE;YACf,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;SAC7C;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,YAAY,CAAC,IAAmB,EAAE,EAAkB;QAC1D,OAAO;YACL,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB;YACD,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE;YACvD,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YAClE,KAAK,EAAE,IAAI,CAAC,KAAiB;YAC7B,KAAK,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC;IACJ,CAAC;CACF,CAAA;AAjOC;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,wEAAwE,CAAC;0CACzD;AAItB;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,yHAAyH,CAAC;4CACxG;AAIxB;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,8BAA8B,CAAC;+CACV;AAI3B;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,6DAA6D,CAAC;8CAC1C;AAI1B;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,yFAAyF,CAAC;0CAC1E;AAKtB;IAHC,eAAM;IACN,IAAA,aAAI,EAAC,+CAA+C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACzF,IAAA,qBAAY,EAAC,OAAO,CAAC;0CACA;AAKtB;IAHC,eAAM;IACN,IAAA,aAAI,EAAC,+GAA+G,CAAC;IACrH,IAAA,qBAAY,EAAC,KAAK,CAAC;yCACC;AAIrB;IAFC,eAAM;IACN,IAAA,aAAI,EAAC,+FAA+F,CAAC;uCACnF;AAKnB;IAHC,aAAI;IACJ,IAAA,aAAI,EAAC,gBAAgB,CAAC;IACtB,IAAA,qBAAY,EAAC,KAAK,CAAC;yCACE;AAKtB;IAHC,eAAM;IACN,IAAA,aAAI,EAAC,yEAAyE,CAAC;IAC/E,iBAAQ;2CACgB;AAIzB;IAFC,IAAA,eAAM,EAAC,GAAG,CAAC;IACX,IAAA,aAAI,EAAC,2DAA2D,CAAC;iDAChC;AAIrB;IAFZ,gBAAO;IACP,IAAA,aAAI,EAAC,gBAAgB,CAAC;uCAkEtB;AApHU,WAAW;IADvB,IAAA,kBAAS,EAAC,KAAK,CAAC;GACJ,WAAW,CAoOvB;AApOY,kCAAW"}
@@ -1249,7 +1249,7 @@
1249
1249
  },
1250
1250
  "commands": [],
1251
1251
  "package": {
1252
- "version": "1.0.8",
1252
+ "version": "1.0.10",
1253
1253
  "name": "@optimizely/ocp-cli",
1254
1254
  "license": "Apache-2.0",
1255
1255
  "executable": "ocp"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optimizely/ocp-cli",
3
- "version": "1.0.8",
3
+ "version": "1.0.10",
4
4
  "description": "Optimizely Connect Platform command line interface",
5
5
  "repository": "https://github.com/ZaiusInc/ocp-cli",
6
6
  "license": "Apache-2.0",
@@ -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')
@@ -118,6 +121,10 @@ export class LogsCommand {
118
121
  'an epoch timestamp, or relative string (i.e. "5m" for 5 minutes.'));
119
122
  }
120
123
  toDate = this.to ? parseDate(this.to) : new Date();
124
+
125
+ if (fromDate >= toDate) {
126
+ die(chalk.red('--from must be before --to'));
127
+ }
121
128
  }
122
129
 
123
130
  this.availability = this.availability ? this.availability : 'us';
@@ -183,15 +190,18 @@ export class LogsCommand {
183
190
  cb: LogEntryCallback,
184
191
  to?: Date | number
185
192
  ): Promise<number> {
186
- let result: LoggingSearchResult;
187
193
  let count = 0;
188
- const request = this.buildRequest(from, to);
189
- do {
190
- result = await Moria.searchLogging(request, shard);
191
- result.entries.forEach(cb);
192
- request.cursor = result.cursor;
193
- count += result.entries.length;
194
- } while (result.entries.length > 0);
194
+ const requests = this.buildRequests(from, to);
195
+ for (const request of requests) {
196
+ let result: LoggingSearchResult;
197
+ do {
198
+ result = await Moria.searchLogging(request, shard);
199
+ result.entries.forEach(cb);
200
+ request.cursor = result.cursor;
201
+ count += result.entries.length;
202
+ } while (result.entries.length > 0);
203
+ }
204
+
195
205
  return count;
196
206
  }
197
207
 
@@ -222,6 +232,23 @@ export class LogsCommand {
222
232
  await query();
223
233
  }
224
234
 
235
+ private buildRequests(from: Date | number, to?: Date | number): LoggingSearchCriteria[] {
236
+ let start = typeof from === 'number' ? from : from.valueOf();
237
+ const end = to ? (typeof to === 'number' ? to : to.valueOf()) : new Date().valueOf();
238
+
239
+ const requests: LoggingSearchCriteria[] = [];
240
+ while (start + INTERVAL < end) {
241
+ requests.push(this.buildRequest(start, start + INTERVAL - 1));
242
+ start += INTERVAL;
243
+ }
244
+
245
+ if (start < end) {
246
+ requests.push(this.buildRequest(start, to));
247
+ }
248
+
249
+ return requests;
250
+ }
251
+
225
252
  private buildRequest(from: Date | number, to?: Date | number): LoggingSearchCriteria {
226
253
  return {
227
254
  context: {