openclaw-observability 2026.3.21 → 2026.3.23

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 (43) hide show
  1. package/dist/config.d.ts +11 -0
  2. package/dist/config.d.ts.map +1 -1
  3. package/dist/config.js +6 -2
  4. package/dist/config.js.map +1 -1
  5. package/dist/index.d.ts +12 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +805 -98
  8. package/dist/index.js.map +1 -1
  9. package/dist/redaction.d.ts.map +1 -1
  10. package/dist/redaction.js +8 -1
  11. package/dist/redaction.js.map +1 -1
  12. package/dist/security/scanner.d.ts +15 -1
  13. package/dist/security/scanner.d.ts.map +1 -1
  14. package/dist/security/scanner.js +148 -11
  15. package/dist/security/scanner.js.map +1 -1
  16. package/dist/security/types.d.ts +1 -0
  17. package/dist/security/types.d.ts.map +1 -1
  18. package/dist/security/types.js +1 -0
  19. package/dist/security/types.js.map +1 -1
  20. package/dist/storage/duckdb-local-writer.d.ts +2 -1
  21. package/dist/storage/duckdb-local-writer.d.ts.map +1 -1
  22. package/dist/storage/duckdb-local-writer.js +20 -7
  23. package/dist/storage/duckdb-local-writer.js.map +1 -1
  24. package/dist/storage/mysql-writer.d.ts +3 -1
  25. package/dist/storage/mysql-writer.d.ts.map +1 -1
  26. package/dist/storage/mysql-writer.js +11 -6
  27. package/dist/storage/mysql-writer.js.map +1 -1
  28. package/dist/types.d.ts +3 -0
  29. package/dist/types.d.ts.map +1 -1
  30. package/dist/types.js +3 -0
  31. package/dist/types.js.map +1 -1
  32. package/dist/web/api.d.ts +2 -2
  33. package/dist/web/api.d.ts.map +1 -1
  34. package/dist/web/api.js +121 -57
  35. package/dist/web/api.js.map +1 -1
  36. package/dist/web/routes.d.ts +7 -3
  37. package/dist/web/routes.d.ts.map +1 -1
  38. package/dist/web/routes.js +176 -25
  39. package/dist/web/routes.js.map +1 -1
  40. package/dist/web/ui.js +1190 -141
  41. package/dist/web/ui.js.map +1 -1
  42. package/openclaw.plugin.json +2 -2
  43. package/package.json +1 -1
package/dist/web/api.js CHANGED
@@ -16,38 +16,44 @@ exports.getAnalytics = getAnalytics;
16
16
  /* ------------------------------------------------------------------ */
17
17
  /* API functions */
18
18
  /* ------------------------------------------------------------------ */
19
+ function normalizePositiveInt(value, defaultValue) {
20
+ if (!Number.isFinite(value))
21
+ return defaultValue;
22
+ const normalized = Math.floor(Number(value));
23
+ return normalized > 0 ? normalized : defaultValue;
24
+ }
19
25
  /** Get summary statistics */
20
26
  async function getStats(pool) {
21
27
  const [sessionRows] = await pool.query('SELECT COUNT(*) as cnt FROM audit_sessions');
22
28
  const [actionRows] = await pool.query(`SELECT COUNT(*) as cnt,
23
29
  COALESCE(SUM(COALESCE(prompt_tokens,0) + COALESCE(completion_tokens,0)), 0) as tokens,
24
- COALESCE(AVG(NULLIF(duration_ms, 0)), 0) as avg_latency
30
+ COALESCE(AVG(NULLIF(duration_ms, 0)), 0) as avg_latency,
31
+ COALESCE(SUM(CASE WHEN action_type = 'agent_end' THEN 1 ELSE 0 END), 0) as total_end,
32
+ COALESCE(SUM(CASE WHEN action_type = 'agent_end' AND output_result LIKE '%"success":true%' THEN 1 ELSE 0 END), 0) as success_end
25
33
  FROM audit_actions`);
26
- const [successRows] = await pool.query(`SELECT COUNT(*) as cnt FROM audit_actions
27
- WHERE action_type = 'agent_end' AND output_result LIKE '%"success":true%'`);
28
- const [totalEndRows] = await pool.query(`SELECT COUNT(*) as cnt FROM audit_actions WHERE action_type = 'agent_end'`);
29
34
  // Count by action_type
30
35
  const [typeCounts] = await pool.query('SELECT action_type, COUNT(*) as cnt FROM audit_actions GROUP BY action_type ORDER BY cnt DESC');
31
36
  const actionTypeCounts = {};
32
37
  for (const row of typeCounts) {
33
38
  actionTypeCounts[row.action_type] = Number(row.cnt);
34
39
  }
35
- const totalEnd = Number(totalEndRows[0]?.cnt ?? 0);
40
+ const totalEnd = Number(actionRows[0]?.total_end ?? 0);
41
+ const successEnd = Number(actionRows[0]?.success_end ?? 0);
36
42
  return {
37
43
  totalSessions: Number(sessionRows[0]?.cnt ?? 0),
38
44
  totalActions: Number(actionRows[0]?.cnt ?? 0),
39
45
  totalTokens: Number(actionRows[0]?.tokens ?? 0),
40
46
  avgLatencyMs: Math.round(Number(actionRows[0]?.avg_latency ?? 0)),
41
47
  successRate: totalEnd > 0
42
- ? Math.round(Number(successRows[0]?.cnt ?? 0) / totalEnd * 100)
48
+ ? Math.round(successEnd / totalEnd * 100)
43
49
  : 100,
44
50
  actionTypeCounts,
45
51
  };
46
52
  }
47
53
  /** Get session list */
48
54
  async function getSessions(pool, params) {
49
- const page = params.page || 1;
50
- const limit = Math.min(params.limit || 20, 100);
55
+ const page = normalizePositiveInt(params.page, 1);
56
+ const limit = Math.min(normalizePositiveInt(params.limit, 20), 100);
51
57
  const offset = (page - 1) * limit;
52
58
  let where = '1=1';
53
59
  const values = [];
@@ -75,17 +81,26 @@ async function getSessions(pool, params) {
75
81
  )`;
76
82
  values.push(like, like, like, like, like, like);
77
83
  }
78
- // Time range filter
84
+ // Time range filter: use "last active time" (end_time fallback start_time)
85
+ // so "recent 24h" reflects recently updated sessions, not only newly started sessions.
79
86
  if (params.timeFrom) {
80
- where += ' AND start_time >= ?';
87
+ where += ' AND COALESCE(end_time, start_time) >= ?';
81
88
  values.push(params.timeFrom);
82
89
  }
83
90
  if (params.timeTo) {
84
- where += ' AND start_time <= ?';
91
+ where += ' AND COALESCE(end_time, start_time) <= ?';
85
92
  values.push(params.timeTo);
86
93
  }
94
+ // Hide noisy pseudo rows from trace list
95
+ where += " AND LOWER(COALESCE(user_id,'')) NOT IN ('unknown','unkown')";
96
+ where += " AND LOWER(COALESCE(session_id,'')) NOT IN ('unknown','unkown','-')";
87
97
  const [countRows] = await pool.query('SELECT COUNT(*) as cnt FROM audit_sessions WHERE ' + where, values);
88
- const [rows] = await pool.query('SELECT * FROM audit_sessions WHERE ' + where + ' ORDER BY start_time DESC LIMIT ? OFFSET ?', [...values, limit, offset]);
98
+ const [rows] = await pool.query(`SELECT * FROM audit_sessions WHERE ${where}
99
+ ORDER BY
100
+ CASE WHEN LOWER(COALESCE(user_id,'')) = 'system' THEN 1 ELSE 0 END ASC,
101
+ COALESCE(end_time, start_time) DESC,
102
+ start_time DESC
103
+ LIMIT ? OFFSET ?`, [...values, limit, offset]);
89
104
  return {
90
105
  sessions: rows,
91
106
  total: Number(countRows[0]?.cnt ?? 0),
@@ -97,14 +112,17 @@ async function getSessionActions(pool, sessionId, options) {
97
112
  const selectCols = options?.fields === 'action_type'
98
113
  ? 'action_type, created_at'
99
114
  : '*';
100
- const limitClause = options?.limit ? ` LIMIT ${Math.min(options.limit, 1000)}` : '';
115
+ const limitedRows = options?.limit
116
+ ? Math.min(normalizePositiveInt(options.limit, 1000), 1000)
117
+ : undefined;
118
+ const limitClause = limitedRows ? ` LIMIT ${limitedRows}` : '';
101
119
  const [rows] = await pool.query(`SELECT ${selectCols} FROM audit_actions WHERE session_id = ? ORDER BY created_at ASC, id ASC${limitClause}`, [sessionId]);
102
120
  return rows;
103
121
  }
104
122
  /** Get action list */
105
123
  async function getActions(pool, params) {
106
- const page = params.page || 1;
107
- const limit = Math.min(params.limit || 50, 200);
124
+ const page = normalizePositiveInt(params.page, 1);
125
+ const limit = Math.min(normalizePositiveInt(params.limit, 50), 200);
108
126
  const offset = (page - 1) * limit;
109
127
  let where = '1=1';
110
128
  const values = [];
@@ -125,8 +143,8 @@ async function getActions(pool, params) {
125
143
  }
126
144
  /** Get security alert list */
127
145
  async function getAlerts(pool, params) {
128
- const page = params.page || 1;
129
- const limit = Math.min(params.limit || 20, 100);
146
+ const page = normalizePositiveInt(params.page, 1);
147
+ const limit = Math.min(normalizePositiveInt(params.limit, 20), 100);
130
148
  const offset = (page - 1) * limit;
131
149
  let where = '1=1';
132
150
  const values = [];
@@ -168,7 +186,16 @@ async function getAlerts(pool, params) {
168
186
  values.push(params.timeTo);
169
187
  }
170
188
  const [countRows] = await pool.query('SELECT COUNT(*) as cnt FROM audit_alerts WHERE ' + where, values);
171
- const [rows] = await pool.query('SELECT * FROM audit_alerts WHERE ' + where + ' ORDER BY created_at DESC LIMIT ? OFFSET ?', [...values, limit, offset]);
189
+ const [rows] = await pool.query(`SELECT * FROM audit_alerts WHERE ${where}
190
+ ORDER BY
191
+ CASE severity
192
+ WHEN 'critical' THEN 0
193
+ WHEN 'warn' THEN 1
194
+ WHEN 'info' THEN 2
195
+ ELSE 3
196
+ END ASC,
197
+ created_at DESC
198
+ LIMIT ? OFFSET ?`, [...values, limit, offset]);
172
199
  return {
173
200
  alerts: rows,
174
201
  total: Number(countRows[0]?.cnt ?? 0),
@@ -176,27 +203,43 @@ async function getAlerts(pool, params) {
176
203
  }
177
204
  /** Get security alert statistics */
178
205
  async function getAlertStats(pool) {
179
- const [totalRows] = await pool.query('SELECT COUNT(*) as cnt FROM audit_alerts');
180
- const [sevRows] = await pool.query('SELECT severity, COUNT(*) as cnt FROM audit_alerts GROUP BY severity');
181
- const [catRows] = await pool.query('SELECT category, COUNT(*) as cnt FROM audit_alerts GROUP BY category');
182
- const [statusRows] = await pool.query('SELECT status, COUNT(*) as cnt FROM audit_alerts GROUP BY status');
183
- // NOW() - INTERVAL 24 HOUR compatible with MySQL and DuckDB
184
- const [recentRows] = await pool.query('SELECT COUNT(*) as cnt FROM audit_alerts WHERE created_at >= (NOW() - INTERVAL 24 HOUR)');
206
+ const [summaryRows] = await pool.query(`SELECT
207
+ COUNT(*) as total_cnt,
208
+ COALESCE(SUM(CASE WHEN created_at >= (NOW() - INTERVAL 24 HOUR) THEN 1 ELSE 0 END), 0) as recent_24h
209
+ FROM audit_alerts`);
210
+ const [groupRows] = await pool.query(`SELECT 'severity' as grp, severity as k, COUNT(*) as cnt
211
+ FROM audit_alerts
212
+ GROUP BY severity
213
+ UNION ALL
214
+ SELECT 'category' as grp, category as k, COUNT(*) as cnt
215
+ FROM audit_alerts
216
+ GROUP BY category
217
+ UNION ALL
218
+ SELECT 'status' as grp, status as k, COUNT(*) as cnt
219
+ FROM audit_alerts
220
+ GROUP BY status`);
185
221
  const bySeverity = {};
186
- for (const r of sevRows)
187
- bySeverity[r.severity] = Number(r.cnt);
188
222
  const byCategory = {};
189
- for (const r of catRows)
190
- byCategory[r.category] = Number(r.cnt);
191
223
  const byStatus = {};
192
- for (const r of statusRows)
193
- byStatus[r.status] = Number(r.cnt);
224
+ for (const r of groupRows) {
225
+ const grp = String(r.grp || '');
226
+ const key = String(r.k || '');
227
+ const count = Number(r.cnt || 0);
228
+ if (!key)
229
+ continue;
230
+ if (grp === 'severity')
231
+ bySeverity[key] = count;
232
+ else if (grp === 'category')
233
+ byCategory[key] = count;
234
+ else if (grp === 'status')
235
+ byStatus[key] = count;
236
+ }
194
237
  return {
195
- total: Number(totalRows[0]?.cnt ?? 0),
238
+ total: Number(summaryRows[0]?.total_cnt ?? 0),
196
239
  bySeverity,
197
240
  byCategory,
198
241
  byStatus,
199
- recent24h: Number(recentRows[0]?.cnt ?? 0),
242
+ recent24h: Number(summaryRows[0]?.recent_24h ?? 0),
200
243
  };
201
244
  }
202
245
  /** Update alert status */
@@ -329,14 +372,26 @@ async function getAnalytics(pool, params) {
329
372
  // Fill gaps: for hourly, fill missing hours so the chart looks continuous
330
373
  if (granularity === 'hour' && params.timeFrom) {
331
374
  const from = new Date(params.timeFrom);
332
- const now = new Date();
333
- const hourMs = 3600 * 1000;
334
- // Round from down to the hour
335
- from.setMinutes(0, 0, 0);
336
- for (let t = from.getTime(); t <= now.getTime(); t += hourMs) {
337
- const key = new Date(t).toISOString().replace('T', ' ').slice(0, 13);
338
- if (!tsMap.has(key)) {
339
- tsMap.set(key, { date: key, sessions: 0, actions: 0, tokens: 0, inputTokens: 0, outputTokens: 0 });
375
+ if (!Number.isFinite(from.getTime())) {
376
+ // Invalid date input should not trigger synthetic point generation.
377
+ // Existing points from SQL results are still returned.
378
+ }
379
+ else {
380
+ const endCandidate = params.timeTo ? new Date(params.timeTo) : new Date();
381
+ const end = Number.isFinite(endCandidate.getTime()) ? endCandidate : new Date();
382
+ const hourMs = 3600 * 1000;
383
+ const maxFillPoints = 2000;
384
+ let pointCount = 0;
385
+ // Round from down to the hour
386
+ from.setMinutes(0, 0, 0);
387
+ for (let t = from.getTime(); t <= end.getTime(); t += hourMs) {
388
+ if (pointCount >= maxFillPoints)
389
+ break;
390
+ const key = new Date(t).toISOString().replace('T', ' ').slice(0, 13);
391
+ if (!tsMap.has(key)) {
392
+ tsMap.set(key, { date: key, sessions: 0, actions: 0, tokens: 0, inputTokens: 0, outputTokens: 0 });
393
+ }
394
+ pointCount++;
340
395
  }
341
396
  }
342
397
  }
@@ -373,23 +428,32 @@ async function getAnalytics(pool, params) {
373
428
  actionDistribution[r.action_type] = Number(r.cnt);
374
429
  }
375
430
  // 5. Top agents
376
- const [agentRows] = await pool.query(`SELECT user_id, COUNT(DISTINCT session_id) as sessions,
377
- SUM(total_tokens) as tokens
378
- FROM audit_sessions
379
- WHERE user_id != '' AND ` + sessTimeWhere + `
380
- GROUP BY user_id ORDER BY sessions DESC LIMIT 10`, sessTimeVals);
381
- // Get action counts per agent
382
- const topAgents = [];
383
- for (const r of agentRows) {
384
- const [actCnt] = await pool.query(`SELECT COUNT(*) as cnt FROM audit_actions
385
- WHERE user_id = ? AND ` + timeWhere, [r.user_id, ...timeVals]);
386
- topAgents.push({
387
- agent: r.user_id,
388
- sessions: Number(r.sessions),
389
- tokens: Number(r.tokens ?? 0),
390
- actions: Number(actCnt[0]?.cnt ?? 0),
391
- });
392
- }
431
+ const [topAgentRows] = await pool.query(`SELECT b.user_id, b.sessions, b.tokens, COALESCE(COUNT(a.id), 0) as actions
432
+ FROM (
433
+ SELECT user_id, COUNT(DISTINCT session_id) as sessions, COALESCE(SUM(total_tokens), 0) as tokens
434
+ FROM audit_sessions
435
+ WHERE user_id != ''
436
+ AND LOWER(user_id) NOT IN ('unknown','unkown')
437
+ AND ` + sessTimeWhere + `
438
+ GROUP BY user_id
439
+ ORDER BY
440
+ CASE WHEN LOWER(user_id) = 'system' THEN 1 ELSE 0 END ASC,
441
+ sessions DESC
442
+ LIMIT 10
443
+ ) b
444
+ LEFT JOIN audit_actions a
445
+ ON a.user_id = b.user_id
446
+ AND ` + timeWhere + `
447
+ GROUP BY b.user_id, b.sessions, b.tokens
448
+ ORDER BY
449
+ CASE WHEN LOWER(b.user_id) = 'system' THEN 1 ELSE 0 END ASC,
450
+ b.sessions DESC`, [...sessTimeVals, ...timeVals]);
451
+ const topAgents = topAgentRows.map((r) => ({
452
+ agent: String(r.user_id || ''),
453
+ sessions: Number(r.sessions ?? 0),
454
+ tokens: Number(r.tokens ?? 0),
455
+ actions: Number(r.actions ?? 0),
456
+ }));
393
457
  return { overview, timeSeries, granularity, modelUsage, actionDistribution, topAgents, tokensByModel };
394
458
  }
395
459
  //# sourceMappingURL=api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/web/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/web/api.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { IncomingMessage, ServerResponse } from 'node:http';
6
6
  import { AuditWriter } from '../storage/writer';
7
+ import { SecurityConfig } from '../security/scanner';
7
8
  export interface RegisterHttpRoute {
8
9
  (params: {
9
10
  path: string;
@@ -15,8 +16,11 @@ export interface RegisterHttpRoute {
15
16
  }
16
17
  /**
17
18
  * Register all observability panel HTTP routes.
18
- * Auth is required: requests must provide ?token=... or Authorization: Bearer ...
19
- * matching the requiredToken (from plugin ui.accessToken, or gateway.auth.token, or built-in default).
19
+ * When requiredToken is set (from ~/.openclaw/openclaw.json gateway.auth.token), require ?token= or Authorization: Bearer.
20
+ * When requiredToken is missing or empty, no auth allow all.
20
21
  */
21
- export declare function registerAuditRoutes(registerHttpRoute: RegisterHttpRoute, writer: AuditWriter, requiredToken: string): void;
22
+ export declare function registerAuditRoutes(registerHttpRoute: RegisterHttpRoute, writer: AuditWriter, requiredToken: string | undefined, securityControl?: {
23
+ getConfig: () => SecurityConfig;
24
+ updateConfig: (patch: Partial<SecurityConfig>) => SecurityConfig;
25
+ }): void;
22
26
  //# sourceMappingURL=routes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/web/routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG5D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAMhD,MAAM,WAAW,iBAAiB;IAChC,CAAC,MAAM,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;QACjG,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;QAC3B,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;QAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GAAG,IAAI,CAAC;CACV;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,MAAM,GACpB,IAAI,CA4JN"}
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/web/routes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAM5D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAMrD,MAAM,WAAW,iBAAiB;IAChC,CAAC,MAAM,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;QACjG,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;QAC3B,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;QAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GAAG,IAAI,CAAC;CACV;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,iBAAiB,EAAE,iBAAiB,EACpC,MAAM,EAAE,WAAW,EACnB,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,eAAe,CAAC,EAAE;IAChB,SAAS,EAAE,MAAM,cAAc,CAAC;IAChC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,cAAc,CAAC,KAAK,cAAc,CAAC;CAClE,GACA,IAAI,CAmNN"}