@balena/open-balena-api 34.5.0-build-logs-6d6353e169f8e1cf6bc57ec15218ecd30e8f0eb5-1 → 35.0.0-build-otaviojacobi-test-7df65410e828dd380bca047fbd78fd23496d021c-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.
@@ -1237,7 +1237,7 @@ export interface ReleaseAsset {
1237
1237
  } | [Release['Read']];
1238
1238
  asset_key: Types['Short Text']['Read'];
1239
1239
  id: Types['Serial']['Read'];
1240
- asset: Types['WebResource']['Read'];
1240
+ asset: Types['WebResource']['Read'] | null;
1241
1241
  };
1242
1242
  Write: {
1243
1243
  created_at: Types['Date Time']['Write'];
@@ -1245,7 +1245,7 @@ export interface ReleaseAsset {
1245
1245
  release: Release['Write']['id'];
1246
1246
  asset_key: Types['Short Text']['Write'];
1247
1247
  id: Types['Serial']['Write'];
1248
- asset: Types['WebResource']['Write'];
1248
+ asset: Types['WebResource']['Write'] | null;
1249
1249
  };
1250
1250
  }
1251
1251
  export interface UserHasDirectAccessToApplication {
package/dist/balena.sbvr CHANGED
@@ -736,7 +736,7 @@ Fact type: release has asset key
736
736
 
737
737
  -- release asset
738
738
  Fact type: release asset has asset
739
- Necessity: each release asset has exactly one asset.
739
+ Necessity: each release asset has at most one asset.
740
740
 
741
741
 
742
742
  -- service environment variable
@@ -1,7 +1,6 @@
1
- import type { DeviceLogsBackend, HistoryOpts, InternalDeviceLog, LogContext, OutputDeviceLog, Subscription } from '../struct.js';
1
+ import type { DeviceLogsBackend, InternalDeviceLog, LogContext, OutputDeviceLog, Subscription } from '../struct.js';
2
2
  export declare class LokiBackend implements DeviceLogsBackend {
3
3
  private subscriptions;
4
- private querier;
5
4
  private pusher;
6
5
  private tailCalls;
7
6
  constructor();
@@ -15,7 +14,7 @@ export declare class LokiBackend implements DeviceLogsBackend {
15
14
  * @param ctx
16
15
  * @param count
17
16
  */
18
- history($ctx: LogContext, { count, start }: HistoryOpts): Promise<OutputDeviceLog[]>;
17
+ history($ctx: LogContext, count: number): Promise<OutputDeviceLog[]>;
19
18
  publish(ctx: LogContext, logs: Array<InternalDeviceLog & {
20
19
  version?: number;
21
20
  }>): Promise<any>;
@@ -26,7 +25,6 @@ export declare class LokiBackend implements DeviceLogsBackend {
26
25
  private getKey;
27
26
  private getStructuredMetadata;
28
27
  private getLabels;
29
- private fromStreamToDeviceLogs;
30
28
  private fromDeviceLogsToEntries;
31
29
  private fromLogEntriesToStream;
32
30
  }
@@ -9,6 +9,8 @@ import { setCurrentSubscriptions, incrementSubscriptionTotal, incrementPublishCa
9
9
  import { setTimeout } from 'timers/promises';
10
10
  import { omitNanoTimestamp } from '../config.js';
11
11
  import { requestAsync } from '../../../../infra/request-promise/index.js';
12
+ import WebSocket from 'ws';
13
+ import querystring from 'node:querystring';
12
14
  const { BadRequestError } = errors;
13
15
  // invert status object for quick lookup of status identifier using status code
14
16
  const statusKeys = _.transform(loki.status, function (result, value, key) {
@@ -19,11 +21,6 @@ const lokiIngesterAddress = `${LOKI_INGESTER_HOST}:${LOKI_INGESTER_GRPC_PORT}`;
19
21
  const MIN_BACKOFF = 100;
20
22
  const MAX_BACKOFF = 10 * 1000;
21
23
  const VERSION = 2;
22
- function createTimestampFromDate(date = new Date()) {
23
- const timestamp = new loki.Timestamp();
24
- timestamp.fromDate(date);
25
- return timestamp;
26
- }
27
24
  function backoff(fn, retryIf) {
28
25
  return async (...args) => {
29
26
  let nextBackoff = MIN_BACKOFF;
@@ -62,11 +59,7 @@ async function assertLokiLogContext(ctx) {
62
59
  passthrough: { req: permissions.root },
63
60
  options: {
64
61
  $select: ['belongs_to__application'],
65
- $expand: {
66
- belongs_to__application: {
67
- $select: ['id', 'organization'],
68
- },
69
- },
62
+ $expand: { belongs_to__application: { $select: ['id', 'organization'] } },
70
63
  },
71
64
  });
72
65
  if (device == null) {
@@ -84,7 +77,6 @@ async function assertLokiLogContext(ctx) {
84
77
  }
85
78
  export class LokiBackend {
86
79
  subscriptions;
87
- querier;
88
80
  pusher;
89
81
  tailCalls;
90
82
  constructor() {
@@ -92,10 +84,6 @@ export class LokiBackend {
92
84
  const compressionAlgorithm = LOKI_GRPC_SEND_GZIP
93
85
  ? compressionAlgorithms.gzip
94
86
  : compressionAlgorithms.identity;
95
- this.querier = new loki.QuerierClient(lokiIngesterAddress, loki.createInsecureCredentials(), {
96
- 'grpc.default_compression_algorithm': compressionAlgorithm,
97
- 'grpc.default_compression_level': LOKI_GRPC_RECEIVE_COMPRESSION_LEVEL,
98
- });
99
87
  this.pusher = new loki.PusherClient(lokiIngesterAddress, loki.createInsecureCredentials(), {
100
88
  'grpc.default_compression_algorithm': compressionAlgorithm,
101
89
  'grpc.default_compression_level': LOKI_GRPC_RECEIVE_COMPRESSION_LEVEL,
@@ -117,18 +105,15 @@ export class LokiBackend {
117
105
  * @param ctx
118
106
  * @param count
119
107
  */
120
- async history($ctx, { count, start }) {
108
+ async history($ctx, count) {
121
109
  const ctx = await assertLokiLogContext($ctx);
122
110
  const [, body] = await requestAsync({
123
111
  url: `http://${lokiQueryAddress}/loki/api/v1/query_range`,
124
- headers: {
125
- 'X-Scope-OrgID': ctx.orgId,
126
- },
112
+ headers: { 'X-Scope-OrgID': ctx.orgId },
127
113
  qs: {
128
114
  query: this.getDeviceQuery(ctx),
129
115
  limit: Number.isFinite(count) ? count : 1000,
130
116
  since: '30d',
131
- ...(start != null ? { start: `${BigInt(start) * 1000000n}` } : {}),
132
117
  },
133
118
  json: true,
134
119
  gzip: LOKI_HISTORY_GZIP,
@@ -174,9 +159,7 @@ export class LokiBackend {
174
159
  const startAt = Date.now();
175
160
  try {
176
161
  await new Promise((resolve, reject) => {
177
- this.pusher.push(pushRequest, loki.createOrgIdMetadata(ctx.orgId), {
178
- deadline: startAt + LOKI_PUSH_TIMEOUT,
179
- }, (err, response) => {
162
+ this.pusher.push(pushRequest, loki.createOrgIdMetadata(ctx.orgId), { deadline: startAt + LOKI_PUSH_TIMEOUT }, (err, response) => {
180
163
  if (err) {
181
164
  reject(err);
182
165
  }
@@ -194,33 +177,46 @@ export class LokiBackend {
194
177
  const ctx = await assertLokiLogContext($ctx);
195
178
  const key = this.getKey(ctx);
196
179
  if (!this.tailCalls.has(key)) {
197
- const request = new loki.TailRequest();
198
- request.setQuery(this.getDeviceQuery(ctx));
199
- request.setStart(createTimestampFromDate());
200
- const call = this.querier.tail(request, loki.createOrgIdMetadata(ctx.orgId));
201
- call.on('data', (response) => {
202
- const stream = response.getStream();
203
- if (stream) {
204
- const logs = this.fromStreamToDeviceLogs(stream);
205
- for (const log of logs) {
206
- this.subscriptions.emit(key, log);
207
- }
208
- }
209
- });
210
- call.on('error', (err) => {
211
- if (err.code !== loki.status.CANCELLED) {
212
- captureException(err, `Loki tail call error for device ${ctx.uuid}`);
213
- }
180
+ const ws = new WebSocket(`ws://${lokiQueryAddress}/loki/api/v1/tail?${querystring.stringify({
181
+ query: this.getDeviceQuery(ctx),
182
+ start: `${BigInt(Date.now()) * 1000000n}`,
183
+ })}`, { headers: { 'X-Scope-OrgID': ctx.orgId } });
184
+ ws.on('error', (err) => {
185
+ captureException(err, `Loki tail call message error for device ${ctx.uuid}`);
214
186
  this.subscriptions.removeListener(key, subscription);
215
187
  this.tailCalls.delete(key);
216
188
  setCurrentSubscriptions(this.tailCalls.size);
217
189
  });
218
- call.on('end', () => {
190
+ ws.on('close', () => {
219
191
  this.subscriptions.removeListener(key, subscription);
220
192
  this.tailCalls.delete(key);
221
193
  setCurrentSubscriptions(this.tailCalls.size);
222
194
  });
223
- this.tailCalls.set(key, call);
195
+ ws.on('open', function open() {
196
+ console.log('connected');
197
+ });
198
+ ws.on('message', (data) => {
199
+ try {
200
+ const result = JSON.parse(data.toString());
201
+ for (const stream of result.streams) {
202
+ // TODO: if there are multiple streams we may have to buffer the logs and sort them by timestamp
203
+ for (const [timestamp, logLine] of stream.values) {
204
+ const log = JSON.parse(logLine);
205
+ if (log.version !== VERSION) {
206
+ throw new Error(`Invalid Loki serialization version: ${JSON.stringify(log)}`);
207
+ }
208
+ delete log.version;
209
+ const nanoTimestamp = BigInt(timestamp);
210
+ log.createdAt = Math.floor(Number(nanoTimestamp / 1000000n));
211
+ this.subscriptions.emit(key, log);
212
+ }
213
+ }
214
+ }
215
+ catch (err) {
216
+ captureException(err, `Loki tail call message error for device ${ctx.uuid}`);
217
+ }
218
+ });
219
+ this.tailCalls.set(key, ws);
224
220
  incrementSubscriptionTotal();
225
221
  setCurrentSubscriptions(this.tailCalls.size);
226
222
  }
@@ -230,7 +226,7 @@ export class LokiBackend {
230
226
  const ctx = await assertLokiLogContext($ctx);
231
227
  const key = this.getKey(ctx);
232
228
  const call = this.tailCalls.get(key);
233
- call?.cancel();
229
+ call?.close();
234
230
  }
235
231
  getDeviceQuery(ctx) {
236
232
  return `{fleet_id="${ctx.appId}"} | device_id="${ctx.id}"`;
@@ -246,26 +242,6 @@ export class LokiBackend {
246
242
  getLabels(ctx) {
247
243
  return `{fleet_id="${ctx.appId}"}`;
248
244
  }
249
- fromStreamToDeviceLogs(stream) {
250
- try {
251
- return stream.getEntriesList().map((entry) => {
252
- const log = JSON.parse(entry.getLine());
253
- if (log.version !== VERSION) {
254
- throw new Error(`Invalid Loki serialization version: ${JSON.stringify(log)}`);
255
- }
256
- delete log.version;
257
- const timestampEntry = entry.getTimestamp();
258
- const nanoTimestamp = BigInt(timestampEntry.getSeconds()) * 1000000000n +
259
- BigInt(timestampEntry.getNanos());
260
- log.createdAt = Math.floor(Number(nanoTimestamp / 1000000n));
261
- return log;
262
- });
263
- }
264
- catch (err) {
265
- captureException(err, `Failed to convert stream to device log`);
266
- return [];
267
- }
268
- }
269
245
  fromDeviceLogsToEntries(ctx, logs) {
270
246
  const structuredMetadata = this.getStructuredMetadata(ctx);
271
247
  return logs.map((log) => {
@@ -1 +1 @@
1
- {"version":3,"file":"loki.js","sourceRoot":"","sources":["../../../../../src/features/device-logs/lib/backends/loki.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loki.js","sourceRoot":"","sources":["../../../../../src/features/device-logs/lib/backends/loki.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { DeviceLogsBackend, HistoryOpts, InternalDeviceLog, LogContext, OutputDeviceLog, Subscription } from '../struct.js';
1
+ import type { DeviceLogsBackend, InternalDeviceLog, LogContext, OutputDeviceLog, Subscription } from '../struct.js';
2
2
  import type { Result } from 'ioredis';
3
3
  declare module 'ioredis' {
4
4
  interface RedisCommander<Context> {
@@ -11,7 +11,7 @@ export declare class RedisBackend implements DeviceLogsBackend {
11
11
  private subscriptions;
12
12
  private subscriptionHeartbeats;
13
13
  constructor();
14
- history(ctx: LogContext, { count, start }: HistoryOpts): Promise<OutputDeviceLog[]>;
14
+ history(ctx: LogContext, count: number): Promise<OutputDeviceLog[]>;
15
15
  get available(): boolean;
16
16
  publish(ctx: LogContext, logs: InternalDeviceLog[]): Promise<void>;
17
17
  subscribe(ctx: LogContext, subscription: Subscription): void;
@@ -102,21 +102,14 @@ export class RedisBackend {
102
102
  constructor() {
103
103
  this.subscriptions = new EventEmitter();
104
104
  }
105
- async history(ctx, { count, start }) {
105
+ async history(ctx, count) {
106
106
  if (!this.connected) {
107
107
  throw new ServiceUnavailableError();
108
108
  }
109
109
  const key = this.getKey(ctx);
110
110
  const payloads = await redisRO.lrange(key, count === Infinity ? 0 : -count, -1);
111
- return (await Promise.all(payloads.map(this.fromRedisLog))).filter((log) => {
112
- if (log == null) {
113
- return false;
114
- }
115
- if (start == null) {
116
- return true;
117
- }
118
- return log.createdAt >= start;
119
- });
111
+ const parsedLogs = await Promise.all(payloads.map(this.fromRedisLog));
112
+ return _.compact(parsedLogs);
120
113
  }
121
114
  get available() {
122
115
  return this.connected;
@@ -1 +1 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../../../../src/features/device-logs/lib/backends/redis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../../../../src/features/device-logs/lib/backends/redis.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,6 @@ import { captureException, handleHttpErrors, } from '../../../infra/error-handli
5
5
  import { StreamState } from './struct.js';
6
6
  import { addRetentionLimit, getPrimaryBackend, getSecondaryBackend, shouldReadFromSecondary, } from './config.js';
7
7
  import { LOGS_DEFAULT_HISTORY_COUNT, LOGS_DEFAULT_RETENTION_LIMIT, LOGS_DEFAULT_SUBSCRIPTION_COUNT, LOGS_HEARTBEAT_INTERVAL, LOGS_READ_STREAM_FLUSH_INTERVAL, NDJSON_CTYPE, } from '../../../lib/config.js';
8
- import { DAYS } from '@balena/env-parsing';
9
- import { checkInt } from '../../../lib/utils.js';
10
8
  const { NotFoundError } = errors;
11
9
  const { api } = sbvrUtils;
12
10
  const getReadBackend = async () => shouldReadFromSecondary()
@@ -15,20 +13,12 @@ const getReadBackend = async () => shouldReadFromSecondary()
15
13
  export const read = (onLogReadStreamInitialized) => async (req, res) => {
16
14
  try {
17
15
  const ctx = await getReadContext(req);
18
- const isStreamingRead = req.query.stream === '1';
19
- const count = getCount(req.query.count, isStreamingRead
20
- ? LOGS_DEFAULT_SUBSCRIPTION_COUNT
21
- : LOGS_DEFAULT_HISTORY_COUNT);
22
- const start = getStart(req.query.start, undefined);
23
- if (isStreamingRead) {
24
- await handleStreamingRead(ctx, req, res, { count, start });
16
+ if (req.query.stream === '1') {
17
+ await handleStreamingRead(ctx, req, res);
25
18
  onLogReadStreamInitialized?.(req);
26
19
  }
27
20
  else {
28
- const logs = await getHistory(await getReadBackend(), ctx, {
29
- count,
30
- start,
31
- });
21
+ const logs = await getHistory(await getReadBackend(), ctx, req, LOGS_DEFAULT_HISTORY_COUNT);
32
22
  res.json(logs);
33
23
  }
34
24
  }
@@ -40,7 +30,7 @@ export const read = (onLogReadStreamInitialized) => async (req, res) => {
40
30
  res.status(500).end();
41
31
  }
42
32
  };
43
- async function handleStreamingRead(ctx, req, res, { count, start }) {
33
+ async function handleStreamingRead(ctx, req, res) {
44
34
  const backend = await getReadBackend();
45
35
  let state = StreamState.Buffering;
46
36
  let dropped = 0;
@@ -112,7 +102,7 @@ async function handleStreamingRead(ctx, req, res, { count, start }) {
112
102
  // Subscribe in parallel so we don't miss logs in between
113
103
  backend.subscribe(ctx, onLog);
114
104
  try {
115
- let logs = await getHistory(backend, ctx, { count, start });
105
+ let logs = await getHistory(backend, ctx, req, LOGS_DEFAULT_SUBSCRIPTION_COUNT);
116
106
  // We need this cast as typescript narrows to `StreamState.Buffering`
117
107
  // because it ignores that during the `await` break it can be changed
118
108
  // TODO: remove this once typescript removes the incorrect narrowing
@@ -163,29 +153,14 @@ function getCount(countParam, defaultCount) {
163
153
  }
164
154
  return Math.min(count, LOGS_DEFAULT_RETENTION_LIMIT);
165
155
  }
166
- function getStart(startParam, defaultStart) {
167
- let start;
168
- if (typeof startParam !== 'string') {
169
- start = defaultStart;
170
- }
171
- else {
172
- start = checkInt(startParam) || new Date(startParam).getTime();
173
- if (isNaN(start)) {
174
- start = defaultStart;
175
- }
176
- }
177
- if (start == null) {
178
- return start;
179
- }
180
- return Math.max(start, Date.now() - 30 * DAYS);
181
- }
182
- function getHistory(backend, ctx, opts) {
156
+ function getHistory(backend, ctx, { query }, defaultCount) {
157
+ const count = getCount(query.count, defaultCount);
183
158
  // Optimize the case where the caller doesn't need any history
184
- if (!opts.count) {
159
+ if (!count) {
185
160
  return [];
186
161
  }
187
162
  // TODO: Implement `?since` filter here too in the next phase
188
- return backend.history(ctx, opts);
163
+ return backend.history(ctx, count);
189
164
  }
190
165
  async function getReadContext(req) {
191
166
  const { uuid } = req.params;
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../src/features/device-logs/lib/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../src/features/device-logs/lib/read.ts"],"names":[],"mappings":"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"}
@@ -36,12 +36,8 @@ export interface OldSupervisorLog {
36
36
  image_id?: number;
37
37
  }
38
38
  export type Subscription = (log: OutputDeviceLog) => void;
39
- export type HistoryOpts = {
40
- count: number;
41
- start?: number;
42
- };
43
39
  export interface DeviceLogsBackend {
44
- history(ctx: LogContext, opts: HistoryOpts): Promise<OutputDeviceLog[]>;
40
+ history(ctx: LogContext, count: number): Promise<OutputDeviceLog[]>;
45
41
  available: boolean;
46
42
  /**
47
43
  * `logs` will be mutated to empty and so must be handled synchronously
@@ -1 +1 @@
1
- {"version":3,"file":"struct.js","sourceRoot":"","sources":["../../../../src/features/device-logs/lib/struct.ts"],"names":[],"mappings":"AAiEA,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACtB,uDAAS,CAAA;IACT,qDAAQ,CAAA;IACR,qDAAQ,CAAA;IACR,uDAAS,CAAA;IACT,iDAAM,CAAA;AACP,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB"}
1
+ {"version":3,"file":"struct.js","sourceRoot":"","sources":["../../../../src/features/device-logs/lib/struct.ts"],"names":[],"mappings":"AA+DA,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACtB,uDAAS,CAAA;IACT,qDAAQ,CAAA;IACR,qDAAQ,CAAA;IACR,uDAAS,CAAA;IACT,iDAAM,CAAA;AACP,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB"}
@@ -0,0 +1,2 @@
1
+ ALTER TABLE "release asset"
2
+ ALTER COLUMN "asset" DROP NOT NULL;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@balena/open-balena-api",
3
3
  "description": "Internet of things, Made Simple",
4
- "version": "34.5.0-build-logs-6d6353e169f8e1cf6bc57ec15218ecd30e8f0eb5-1",
4
+ "version": "35.0.0-build-otaviojacobi-test-7df65410e828dd380bca047fbd78fd23496d021c-1",
5
5
  "license": "AGPL-3.0",
6
6
  "repository": {
7
7
  "type": "git",
@@ -83,13 +83,15 @@
83
83
  "@types/semver": "^7.5.8",
84
84
  "@types/statuses": "^2.0.5",
85
85
  "@types/validator": "^13.12.2",
86
+ "@types/ws": "^8.5.14",
86
87
  "avsc": "^5.7.7",
87
88
  "aws-sdk": "^2.1692.0",
88
89
  "balena-device-config": "^6.3.0",
89
- "balena-semver": "^2.3.5",
90
+ "balena-semver": "^3.0.0",
90
91
  "basic-auth": "^2.0.1",
91
92
  "bluebird": "^3.7.2",
92
93
  "body-parser": "^1.20.3",
94
+ "bufferutil": "^4.0.9",
93
95
  "cache-manager": "^4.1.0",
94
96
  "cache-manager-ioredis": "^2.1.0",
95
97
  "common-tags": "^1.8.2",
@@ -132,7 +134,8 @@
132
134
  "typed-error": "^3.2.2",
133
135
  "typescript": "^5.7.3",
134
136
  "uuid": "^11.0.5",
135
- "validator": "^13.12.0"
137
+ "validator": "^13.12.0",
138
+ "ws": "^8.18.0"
136
139
  },
137
140
  "devDependencies": {
138
141
  "@balena/lint": "^9.1.3",
@@ -167,6 +170,6 @@
167
170
  "import": "@swc-node/register/esm-register"
168
171
  },
169
172
  "versionist": {
170
- "publishedAt": "2025-02-17T08:58:27.601Z"
173
+ "publishedAt": "2025-02-17T22:33:41.643Z"
171
174
  }
172
175
  }