@or-sdk/druid 1.1.0-beta.1311.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.
Files changed (77) hide show
  1. package/README.md +15 -0
  2. package/dist/cjs/Druid.js +72 -0
  3. package/dist/cjs/Druid.js.map +1 -0
  4. package/dist/cjs/__tests__/Druid.spec.js +141 -0
  5. package/dist/cjs/__tests__/Druid.spec.js.map +1 -0
  6. package/dist/cjs/__tests__/fixtures/convert_response.json +105 -0
  7. package/dist/cjs/__tests__/fixtures/group_by_table_response.json +146 -0
  8. package/dist/cjs/__tests__/fixtures/metadata.json +716 -0
  9. package/dist/cjs/__tests__/fixtures/scan_lookup_response.json +31 -0
  10. package/dist/cjs/__tests__/fixtures/scan_table_response.json +131 -0
  11. package/dist/cjs/__tests__/fixtures/search_table_response.json +12 -0
  12. package/dist/cjs/__tests__/fixtures/time_series_table_response.json +32 -0
  13. package/dist/cjs/__tests__/result-converter.spec.js +296 -0
  14. package/dist/cjs/__tests__/result-converter.spec.js.map +1 -0
  15. package/dist/cjs/constants.js +6 -0
  16. package/dist/cjs/constants.js.map +1 -0
  17. package/dist/cjs/index.js +21 -0
  18. package/dist/cjs/index.js.map +1 -0
  19. package/dist/cjs/result-converter.js +108 -0
  20. package/dist/cjs/result-converter.js.map +1 -0
  21. package/dist/cjs/types.js +3 -0
  22. package/dist/cjs/types.js.map +1 -0
  23. package/dist/esm/Druid.js +49 -0
  24. package/dist/esm/Druid.js.map +1 -0
  25. package/dist/esm/__tests__/Druid.spec.js +62 -0
  26. package/dist/esm/__tests__/Druid.spec.js.map +1 -0
  27. package/dist/esm/__tests__/fixtures/convert_response.json +105 -0
  28. package/dist/esm/__tests__/fixtures/group_by_table_response.json +146 -0
  29. package/dist/esm/__tests__/fixtures/metadata.json +716 -0
  30. package/dist/esm/__tests__/fixtures/scan_lookup_response.json +31 -0
  31. package/dist/esm/__tests__/fixtures/scan_table_response.json +131 -0
  32. package/dist/esm/__tests__/fixtures/search_table_response.json +12 -0
  33. package/dist/esm/__tests__/fixtures/time_series_table_response.json +32 -0
  34. package/dist/esm/__tests__/result-converter.spec.js +291 -0
  35. package/dist/esm/__tests__/result-converter.spec.js.map +1 -0
  36. package/dist/esm/constants.js +3 -0
  37. package/dist/esm/constants.js.map +1 -0
  38. package/dist/esm/index.js +3 -0
  39. package/dist/esm/index.js.map +1 -0
  40. package/dist/esm/result-converter.js +97 -0
  41. package/dist/esm/result-converter.js.map +1 -0
  42. package/dist/esm/types.js +2 -0
  43. package/dist/esm/types.js.map +1 -0
  44. package/dist/types/Druid.d.ts +11 -0
  45. package/dist/types/Druid.d.ts.map +1 -0
  46. package/dist/types/__tests__/Druid.spec.d.ts +2 -0
  47. package/dist/types/__tests__/Druid.spec.d.ts.map +1 -0
  48. package/dist/types/__tests__/result-converter.spec.d.ts +2 -0
  49. package/dist/types/__tests__/result-converter.spec.d.ts.map +1 -0
  50. package/dist/types/constants.d.ts +3 -0
  51. package/dist/types/constants.d.ts.map +1 -0
  52. package/dist/types/index.d.ts +3 -0
  53. package/dist/types/index.d.ts.map +1 -0
  54. package/dist/types/result-converter.d.ts +3 -0
  55. package/dist/types/result-converter.d.ts.map +1 -0
  56. package/dist/types/types.d.ts +25 -0
  57. package/dist/types/types.d.ts.map +1 -0
  58. package/package.json +36 -0
  59. package/src/Druid.ts +102 -0
  60. package/src/__tests__/Druid.spec.ts +69 -0
  61. package/src/__tests__/fixtures/convert_response.json +105 -0
  62. package/src/__tests__/fixtures/group_by_table_response.json +146 -0
  63. package/src/__tests__/fixtures/metadata.json +716 -0
  64. package/src/__tests__/fixtures/scan_lookup_response.json +31 -0
  65. package/src/__tests__/fixtures/scan_table_response.json +131 -0
  66. package/src/__tests__/fixtures/search_table_response.json +12 -0
  67. package/src/__tests__/fixtures/time_series_table_response.json +32 -0
  68. package/src/__tests__/result-converter.spec.ts +304 -0
  69. package/src/constants.ts +2 -0
  70. package/src/index.ts +2 -0
  71. package/src/result-converter.ts +113 -0
  72. package/src/types.ts +37 -0
  73. package/tsconfig.dev.json +8 -0
  74. package/tsconfig.esm.json +12 -0
  75. package/tsconfig.json +7 -0
  76. package/tsconfig.types.json +10 -0
  77. package/vitest.config.js +22 -0
package/README.md ADDED
@@ -0,0 +1,15 @@
1
+ ## Installation:
2
+ ```
3
+ $ npm i @or-sdk/druid
4
+ ```
5
+
6
+ ## Usage:
7
+ ```typescript
8
+ import { Druid } from '@or-sdk/druid'
9
+
10
+ const druid = new Druid({
11
+ gatewayUrl: 'http://gateway.url/endpoint',
12
+ token: 'my-account-token-string',
13
+ providersAccountId: 'uuid-000...',
14
+ });
15
+ ```
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.Druid = void 0;
19
+ var base_1 = require("@or-sdk/base");
20
+ var constants_1 = require("./constants");
21
+ var result_converter_1 = require("./result-converter");
22
+ var Druid = (function (_super) {
23
+ __extends(Druid, _super);
24
+ function Druid(params) {
25
+ return _super.call(this, {
26
+ token: params.token,
27
+ serviceUrl: "".concat(params.gatewayUrl, "/").concat(params.providersAccountId),
28
+ serviceKey: constants_1.SERVICE_KEY,
29
+ }) || this;
30
+ }
31
+ Druid.prototype.fetchMetadata = function () {
32
+ return this.callApiV2({
33
+ method: 'GET',
34
+ route: constants_1.V3_ROUTE_PATH,
35
+ params: {
36
+ includeLookups: true,
37
+ },
38
+ });
39
+ };
40
+ Druid.prototype.convertSQLQuery = function (query, isRaw) {
41
+ if (isRaw === void 0) { isRaw = false; }
42
+ var data = {
43
+ query: query,
44
+ type: 'ExplainSQLPlan',
45
+ isRaw: isRaw,
46
+ };
47
+ return this.callApiV2({
48
+ method: 'POST',
49
+ data: data,
50
+ route: constants_1.V3_ROUTE_PATH,
51
+ });
52
+ };
53
+ Druid.prototype.runNativeQuery = function (query, options) {
54
+ if (options === void 0) { options = {}; }
55
+ var data = {
56
+ query: query,
57
+ };
58
+ var promise = this.callApiV2({
59
+ method: 'POST',
60
+ data: data,
61
+ route: constants_1.V3_ROUTE_PATH,
62
+ });
63
+ if (typeof options === 'boolean' && options) {
64
+ return promise;
65
+ }
66
+ var includeTimestamp = typeof options.includeTimestamp === 'boolean' ? options.includeTimestamp : false;
67
+ return promise.then(function (r) { return (0, result_converter_1.convertQueryResultsToPreview)(r, includeTimestamp); });
68
+ };
69
+ return Druid;
70
+ }(base_1.Base));
71
+ exports.Druid = Druid;
72
+ //# sourceMappingURL=Druid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Druid.js","sourceRoot":"","sources":["../../src/Druid.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,qCAAoC;AAEpC,yCAAyD;AACzD,uDAAkE;AAgBlE;IAA2B,yBAAI;IAU7B,eAAY,MAAmB;eAC7B,kBAAM;YACJ,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,UAAU,EAAE,UAAG,MAAM,CAAC,UAAU,cAAI,MAAM,CAAC,kBAAkB,CAAE;YAC/D,UAAU,EAAE,uBAAW;SACxB,CAAC;IACJ,CAAC;IASM,6BAAa,GAApB;QACE,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,MAAM,EAAE,KAAK;YACb,KAAK,EAAE,yBAAa;YACpB,MAAM,EAAE;gBACN,cAAc,EAAE,IAAI;aACrB;SACF,CAAC,CAAC;IACL,CAAC;IAaM,+BAAe,GAAtB,UAA0B,KAAa,EAAE,KAAa;QAAb,sBAAA,EAAA,aAAa;QACpD,IAAM,IAAI,GAAG;YACX,KAAK,OAAA;YACL,IAAI,EAAE,gBAAgB;YACtB,KAAK,OAAA;SACN,CAAC;QAEF,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,MAAM,EAAE,MAAM;YACd,IAAI,MAAA;YACJ,KAAK,EAAE,yBAAa;SACrB,CAAC,CAAC;IACL,CAAC;IAQM,8BAAc,GAArB,UAAsB,KAA8B,EAAE,OAAoC;QAApC,wBAAA,EAAA,YAAoC;QACxF,IAAM,IAAI,GAAG;YACX,KAAK,OAAA;SACN,CAAC;QAEF,IAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7B,MAAM,EAAE,MAAM;YACd,IAAI,MAAA;YACJ,KAAK,EAAE,yBAAa;SACrB,CAAC,CAAC;QACH,IAAI,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,EAAE;YAC3C,OAAO,OAAO,CAAC;SAChB;QACD,IAAM,gBAAgB,GAAG,OAAO,OAAO,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC;QAC1G,OAAO,OAAO,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,IAAA,+CAA4B,EAAC,CAAC,EAAE,gBAAgB,CAAC,EAAjD,CAAiD,CAAC,CAAC;IAChF,CAAC;IACH,YAAC;AAAD,CAAC,AAlFD,CAA2B,WAAI,GAkF9B;AAlFY,sBAAK"}
@@ -0,0 +1,141 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __importDefault = (this && this.__importDefault) || function (mod) {
50
+ return (mod && mod.__esModule) ? mod : { "default": mod };
51
+ };
52
+ Object.defineProperty(exports, "__esModule", { value: true });
53
+ var vitest_1 = require("vitest");
54
+ var msw_1 = require("msw");
55
+ var node_1 = require("msw/node");
56
+ var __1 = require("../");
57
+ var metadata_json_1 = __importDefault(require("./fixtures/metadata.json"));
58
+ var convert_response_json_1 = __importDefault(require("./fixtures/convert_response.json"));
59
+ var scan_table_response_json_1 = __importDefault(require("./fixtures/scan_table_response.json"));
60
+ var server = (0, node_1.setupServer)(msw_1.rest.get('https://gateway.url/test-account-id/druid/query/v3', function (req, res, ctx) {
61
+ if (req.headers.get('authorization') !== 'valid-auth-token') {
62
+ return res(ctx.status(401));
63
+ }
64
+ if (req.url.searchParams.get('includeLookups') !== 'true') {
65
+ return res(ctx.status(500));
66
+ }
67
+ return res(ctx.json(metadata_json_1.default));
68
+ }), msw_1.rest.post('https://gateway.url/test-account-id/druid/query/v3', function (req, res, ctx) { return __awaiter(void 0, void 0, void 0, function () {
69
+ var body;
70
+ return __generator(this, function (_a) {
71
+ switch (_a.label) {
72
+ case 0:
73
+ if (req.headers.get('authorization') !== 'valid-auth-token') {
74
+ return [2, res(ctx.status(401))];
75
+ }
76
+ return [4, req.json()];
77
+ case 1:
78
+ body = _a.sent();
79
+ if (body.type === 'ExplainSQLPlan') {
80
+ return [2, res(ctx.json(convert_response_json_1.default))];
81
+ }
82
+ return [2, res(ctx.json(scan_table_response_json_1.default))];
83
+ }
84
+ });
85
+ }); }));
86
+ var createDruidInstance = function (opts) {
87
+ if (opts === void 0) { opts = {}; }
88
+ return new __1.Druid(__assign({ gatewayUrl: 'https://gateway.url', providersAccountId: 'test-account-id', token: 'valid-auth-token' }, opts));
89
+ };
90
+ (0, vitest_1.describe)('Druid', function () {
91
+ (0, vitest_1.beforeAll)(function () { return server.listen(); });
92
+ (0, vitest_1.afterEach)(function () { return server.resetHandlers(); });
93
+ (0, vitest_1.afterAll)(function () { return server.close(); });
94
+ (0, vitest_1.it)('should create an instance successfully', function () {
95
+ var druid = createDruidInstance();
96
+ (0, vitest_1.expect)(druid).toBeInstanceOf(__1.Druid);
97
+ });
98
+ (0, vitest_1.it)('should fetch metadata properly', function () { return __awaiter(void 0, void 0, void 0, function () {
99
+ var druid, resp;
100
+ return __generator(this, function (_a) {
101
+ switch (_a.label) {
102
+ case 0:
103
+ druid = createDruidInstance();
104
+ return [4, druid.fetchMetadata()];
105
+ case 1:
106
+ resp = _a.sent();
107
+ (0, vitest_1.expect)(resp).toEqual(metadata_json_1.default);
108
+ return [2];
109
+ }
110
+ });
111
+ }); });
112
+ (0, vitest_1.it)('should convert sql query to native one properly', function () { return __awaiter(void 0, void 0, void 0, function () {
113
+ var druid, resp;
114
+ return __generator(this, function (_a) {
115
+ switch (_a.label) {
116
+ case 0:
117
+ druid = createDruidInstance();
118
+ return [4, druid.convertSQLQuery('select "BotId" from _table')];
119
+ case 1:
120
+ resp = _a.sent();
121
+ (0, vitest_1.expect)(resp).toEqual(convert_response_json_1.default);
122
+ return [2];
123
+ }
124
+ });
125
+ }); });
126
+ (0, vitest_1.it)('should run native query', function () { return __awaiter(void 0, void 0, void 0, function () {
127
+ var druid, resp;
128
+ return __generator(this, function (_a) {
129
+ switch (_a.label) {
130
+ case 0:
131
+ druid = createDruidInstance();
132
+ return [4, druid.runNativeQuery({ queryType: 'scan' }, true)];
133
+ case 1:
134
+ resp = _a.sent();
135
+ (0, vitest_1.expect)(resp).toEqual(scan_table_response_json_1.default);
136
+ return [2];
137
+ }
138
+ });
139
+ }); });
140
+ });
141
+ //# sourceMappingURL=Druid.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Druid.spec.js","sourceRoot":"","sources":["../../../src/__tests__/Druid.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,105 @@
1
+ {
2
+ "query": {
3
+ "queryType": "scan",
4
+ "dataSource": {
5
+ "type": "table",
6
+ "name": "staging_re_rollup_provider_ExecutionTime"
7
+ },
8
+ "intervals": {
9
+ "type": "intervals",
10
+ "intervals": [
11
+ "-146136543-09-08T08:23:32.096Z/146140482-04-24T15:36:27.903Z"
12
+ ]
13
+ },
14
+ "resultFormat": "compactedList",
15
+ "limit": 1000,
16
+ "columns": [
17
+ "AccountId",
18
+ "BotId",
19
+ "FlowId",
20
+ "Type",
21
+ "__time",
22
+ "count",
23
+ "sum_AudioDuration15Sec",
24
+ "sum_AudioDurationMin",
25
+ "sum_AudioDurationSec",
26
+ "sum_CharacterCount",
27
+ "sum_ExecutionDurationMs",
28
+ "sum_MemoryMb",
29
+ "sum_Millisecond100Seg",
30
+ "sum_Millisecond200Seg",
31
+ "sum_MillisecondTotal"
32
+ ],
33
+ "legacy": false,
34
+ "context": {
35
+ "queryId": "3ab8c67f-b348-4d0f-9210-ad3ccfa74b22",
36
+ "sqlOuterLimit": 1000,
37
+ "sqlQueryId": "3ab8c67f-b348-4d0f-9210-ad3ccfa74b22"
38
+ },
39
+ "granularity": {
40
+ "type": "all"
41
+ }
42
+ },
43
+ "signature": [
44
+ {
45
+ "name": "__time",
46
+ "type": "LONG"
47
+ },
48
+ {
49
+ "name": "AccountId",
50
+ "type": "STRING"
51
+ },
52
+ {
53
+ "name": "BotId",
54
+ "type": "STRING"
55
+ },
56
+ {
57
+ "name": "FlowId",
58
+ "type": "STRING"
59
+ },
60
+ {
61
+ "name": "Type",
62
+ "type": "STRING"
63
+ },
64
+ {
65
+ "name": "count",
66
+ "type": "LONG"
67
+ },
68
+ {
69
+ "name": "sum_AudioDuration15Sec",
70
+ "type": "LONG"
71
+ },
72
+ {
73
+ "name": "sum_AudioDurationMin",
74
+ "type": "LONG"
75
+ },
76
+ {
77
+ "name": "sum_AudioDurationSec",
78
+ "type": "LONG"
79
+ },
80
+ {
81
+ "name": "sum_CharacterCount",
82
+ "type": "DOUBLE"
83
+ },
84
+ {
85
+ "name": "sum_ExecutionDurationMs",
86
+ "type": "LONG"
87
+ },
88
+ {
89
+ "name": "sum_MemoryMb",
90
+ "type": "LONG"
91
+ },
92
+ {
93
+ "name": "sum_Millisecond100Seg",
94
+ "type": "LONG"
95
+ },
96
+ {
97
+ "name": "sum_Millisecond200Seg",
98
+ "type": "LONG"
99
+ },
100
+ {
101
+ "name": "sum_MillisecondTotal",
102
+ "type": "LONG"
103
+ }
104
+ ]
105
+ }
@@ -0,0 +1,146 @@
1
+ [
2
+ {
3
+ "version": "v1",
4
+ "timestamp": "2023-05-15T12:00:00.000Z",
5
+ "event": {
6
+ "Type": "ProviderLambda",
7
+ "total_usage": 21
8
+ }
9
+ },
10
+ {
11
+ "version": "v1",
12
+ "timestamp": "2023-05-15T12:00:00.000Z",
13
+ "event": {
14
+ "Type": "Read Druid",
15
+ "total_usage": 21
16
+ }
17
+ },
18
+ {
19
+ "version": "v1",
20
+ "timestamp": "2023-05-15T13:00:00.000Z",
21
+ "event": {
22
+ "Type": "ProviderLambda",
23
+ "total_usage": 4
24
+ }
25
+ },
26
+ {
27
+ "version": "v1",
28
+ "timestamp": "2023-05-15T13:00:00.000Z",
29
+ "event": {
30
+ "Type": "Read Druid",
31
+ "total_usage": 4
32
+ }
33
+ },
34
+ {
35
+ "version": "v1",
36
+ "timestamp": "2023-05-15T14:00:00.000Z",
37
+ "event": {
38
+ "Type": "ProviderLambda",
39
+ "total_usage": 7
40
+ }
41
+ },
42
+ {
43
+ "version": "v1",
44
+ "timestamp": "2023-05-15T14:00:00.000Z",
45
+ "event": {
46
+ "Type": "Read Druid",
47
+ "total_usage": 7
48
+ }
49
+ },
50
+ {
51
+ "version": "v1",
52
+ "timestamp": "2023-05-16T05:00:00.000Z",
53
+ "event": {
54
+ "Type": "ProviderLambda",
55
+ "total_usage": 5
56
+ }
57
+ },
58
+ {
59
+ "version": "v1",
60
+ "timestamp": "2023-05-16T05:00:00.000Z",
61
+ "event": {
62
+ "Type": "Read Druid",
63
+ "total_usage": 5
64
+ }
65
+ },
66
+ {
67
+ "version": "v1",
68
+ "timestamp": "2023-05-16T07:00:00.000Z",
69
+ "event": {
70
+ "Type": "ProviderLambda",
71
+ "total_usage": 25
72
+ }
73
+ },
74
+ {
75
+ "version": "v1",
76
+ "timestamp": "2023-05-16T07:00:00.000Z",
77
+ "event": {
78
+ "Type": "Read Druid",
79
+ "total_usage": 25
80
+ }
81
+ },
82
+ {
83
+ "version": "v1",
84
+ "timestamp": "2023-05-16T08:00:00.000Z",
85
+ "event": {
86
+ "Type": "ProviderLambda",
87
+ "total_usage": 52
88
+ }
89
+ },
90
+ {
91
+ "version": "v1",
92
+ "timestamp": "2023-05-16T08:00:00.000Z",
93
+ "event": {
94
+ "Type": "Read Druid",
95
+ "total_usage": 52
96
+ }
97
+ },
98
+ {
99
+ "version": "v1",
100
+ "timestamp": "2023-05-16T09:00:00.000Z",
101
+ "event": {
102
+ "Type": "ProviderLambda",
103
+ "total_usage": 21
104
+ }
105
+ },
106
+ {
107
+ "version": "v1",
108
+ "timestamp": "2023-05-16T09:00:00.000Z",
109
+ "event": {
110
+ "Type": "Read Druid",
111
+ "total_usage": 20
112
+ }
113
+ },
114
+ {
115
+ "version": "v1",
116
+ "timestamp": "2023-05-16T10:00:00.000Z",
117
+ "event": {
118
+ "Type": "ProviderLambda",
119
+ "total_usage": 7
120
+ }
121
+ },
122
+ {
123
+ "version": "v1",
124
+ "timestamp": "2023-05-16T10:00:00.000Z",
125
+ "event": {
126
+ "Type": "Read Druid",
127
+ "total_usage": 7
128
+ }
129
+ },
130
+ {
131
+ "version": "v1",
132
+ "timestamp": "2023-05-16T11:00:00.000Z",
133
+ "event": {
134
+ "Type": "ProviderLambda",
135
+ "total_usage": 29
136
+ }
137
+ },
138
+ {
139
+ "version": "v1",
140
+ "timestamp": "2023-05-16T11:00:00.000Z",
141
+ "event": {
142
+ "Type": "Read Druid",
143
+ "total_usage": 29
144
+ }
145
+ }
146
+ ]