@sfdxy/anypoint-connect 0.14.0 → 0.15.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 (168) hide show
  1. package/README.md +15 -10
  2. package/dist/analysis/LogAnalyzer.d.ts +1 -1
  3. package/dist/analysis/LogAnalyzer.d.ts.map +1 -1
  4. package/dist/analysis/LogAnalyzer.js +2 -2
  5. package/dist/analysis/LogAnalyzer.js.map +1 -1
  6. package/dist/analysis/error-grouper.js +1 -1
  7. package/dist/analysis/error-grouper.js.map +1 -1
  8. package/dist/analysis/{utils.d.ts → normalize.d.ts} +1 -1
  9. package/dist/analysis/normalize.d.ts.map +1 -0
  10. package/dist/analysis/{utils.js → normalize.js} +2 -2
  11. package/dist/analysis/normalize.js.map +1 -0
  12. package/dist/analysis/parser.js +14 -3
  13. package/dist/analysis/parser.js.map +1 -1
  14. package/dist/analysis/pattern-detector.js +1 -1
  15. package/dist/analysis/pattern-detector.js.map +1 -1
  16. package/dist/analysis/stats.js +1 -1
  17. package/dist/analysis/stats.js.map +1 -1
  18. package/dist/api/DesignCenterApi.d.ts +0 -20
  19. package/dist/api/DesignCenterApi.d.ts.map +1 -1
  20. package/dist/api/DesignCenterApi.js +0 -22
  21. package/dist/api/DesignCenterApi.js.map +1 -1
  22. package/dist/api/MonitoringApi.d.ts +137 -93
  23. package/dist/api/MonitoringApi.d.ts.map +1 -1
  24. package/dist/api/MonitoringApi.js +471 -204
  25. package/dist/api/MonitoringApi.js.map +1 -1
  26. package/dist/auth/FileStore.js +1 -1
  27. package/dist/auth/FileStore.js.map +1 -1
  28. package/dist/cli.js +2 -2
  29. package/dist/cli.js.map +1 -1
  30. package/dist/client/AnypointClient.d.ts +1 -1
  31. package/dist/client/AnypointClient.d.ts.map +1 -1
  32. package/dist/client/AnypointClient.js +2 -2
  33. package/dist/client/AnypointClient.js.map +1 -1
  34. package/dist/commands/api.d.ts.map +1 -1
  35. package/dist/commands/api.js +36 -28
  36. package/dist/commands/api.js.map +1 -1
  37. package/dist/commands/apps.js +2 -2
  38. package/dist/commands/apps.js.map +1 -1
  39. package/dist/commands/auth.js +1 -1
  40. package/dist/commands/auth.js.map +1 -1
  41. package/dist/commands/config.js +1 -1
  42. package/dist/commands/config.js.map +1 -1
  43. package/dist/commands/deploy.d.ts +5 -1
  44. package/dist/commands/deploy.d.ts.map +1 -1
  45. package/dist/commands/deploy.js +53 -81
  46. package/dist/commands/deploy.js.map +1 -1
  47. package/dist/commands/design-center.d.ts +1 -1
  48. package/dist/commands/design-center.d.ts.map +1 -1
  49. package/dist/commands/design-center.js +36 -25
  50. package/dist/commands/design-center.js.map +1 -1
  51. package/dist/commands/monitor.d.ts +5 -6
  52. package/dist/commands/monitor.d.ts.map +1 -1
  53. package/dist/commands/monitor.js +210 -230
  54. package/dist/commands/monitor.js.map +1 -1
  55. package/dist/commands/shared.d.ts +2 -0
  56. package/dist/commands/shared.d.ts.map +1 -1
  57. package/dist/commands/shared.js +16 -1
  58. package/dist/commands/shared.js.map +1 -1
  59. package/dist/{utils/config.d.ts → config/profiles.d.ts} +1 -1
  60. package/dist/config/profiles.d.ts.map +1 -0
  61. package/dist/{utils/config.js → config/profiles.js} +1 -1
  62. package/dist/config/profiles.js.map +1 -0
  63. package/dist/index.d.ts +3 -2
  64. package/dist/index.d.ts.map +1 -1
  65. package/dist/index.js +3 -2
  66. package/dist/index.js.map +1 -1
  67. package/dist/mcp/prompts.js +7 -7
  68. package/dist/mcp/prompts.js.map +1 -1
  69. package/dist/mcp/server.d.ts +14 -0
  70. package/dist/mcp/server.d.ts.map +1 -0
  71. package/dist/mcp/server.js +60 -0
  72. package/dist/mcp/server.js.map +1 -0
  73. package/dist/mcp/tools/analysis.d.ts.map +1 -1
  74. package/dist/mcp/tools/analysis.js +8 -24
  75. package/dist/mcp/tools/analysis.js.map +1 -1
  76. package/dist/mcp/tools/anypoint-mq.d.ts.map +1 -1
  77. package/dist/mcp/tools/anypoint-mq.js +20 -52
  78. package/dist/mcp/tools/anypoint-mq.js.map +1 -1
  79. package/dist/mcp/tools/api-manager.d.ts.map +1 -1
  80. package/dist/mcp/tools/api-manager.js +29 -53
  81. package/dist/mcp/tools/api-manager.js.map +1 -1
  82. package/dist/mcp/tools/apps-deploy.d.ts +8 -0
  83. package/dist/mcp/tools/apps-deploy.d.ts.map +1 -0
  84. package/dist/mcp/tools/apps-deploy.js +386 -0
  85. package/dist/mcp/tools/apps-deploy.js.map +1 -0
  86. package/dist/mcp/tools/apps-lifecycle.d.ts +8 -0
  87. package/dist/mcp/tools/apps-lifecycle.d.ts.map +1 -0
  88. package/dist/mcp/tools/apps-lifecycle.js +275 -0
  89. package/dist/mcp/tools/apps-lifecycle.js.map +1 -0
  90. package/dist/mcp/tools/apps-read.d.ts +8 -0
  91. package/dist/mcp/tools/apps-read.d.ts.map +1 -0
  92. package/dist/mcp/tools/apps-read.js +251 -0
  93. package/dist/mcp/tools/apps-read.js.map +1 -0
  94. package/dist/mcp/tools/audit.d.ts.map +1 -1
  95. package/dist/mcp/tools/audit.js +9 -17
  96. package/dist/mcp/tools/audit.js.map +1 -1
  97. package/dist/mcp/tools/design-center.d.ts +2 -3
  98. package/dist/mcp/tools/design-center.d.ts.map +1 -1
  99. package/dist/mcp/tools/design-center.js +41 -185
  100. package/dist/mcp/tools/design-center.js.map +1 -1
  101. package/dist/mcp/tools/exchange.d.ts +1 -2
  102. package/dist/mcp/tools/exchange.d.ts.map +1 -1
  103. package/dist/mcp/tools/exchange.js +51 -312
  104. package/dist/mcp/tools/exchange.js.map +1 -1
  105. package/dist/mcp/tools/governance.d.ts +8 -0
  106. package/dist/mcp/tools/governance.d.ts.map +1 -0
  107. package/dist/mcp/tools/governance.js +59 -0
  108. package/dist/mcp/tools/governance.js.map +1 -0
  109. package/dist/mcp/tools/identity.d.ts.map +1 -1
  110. package/dist/mcp/tools/identity.js +15 -36
  111. package/dist/mcp/tools/identity.js.map +1 -1
  112. package/dist/mcp/tools/index.d.ts +4 -1
  113. package/dist/mcp/tools/index.d.ts.map +1 -1
  114. package/dist/mcp/tools/index.js +4 -1
  115. package/dist/mcp/tools/index.js.map +1 -1
  116. package/dist/mcp/tools/logs.d.ts.map +1 -1
  117. package/dist/mcp/tools/logs.js +6 -23
  118. package/dist/mcp/tools/logs.js.map +1 -1
  119. package/dist/mcp/tools/monitoring.d.ts +1 -2
  120. package/dist/mcp/tools/monitoring.d.ts.map +1 -1
  121. package/dist/mcp/tools/monitoring.js +78 -285
  122. package/dist/mcp/tools/monitoring.js.map +1 -1
  123. package/dist/mcp/tools/object-store.d.ts +1 -1
  124. package/dist/mcp/tools/object-store.d.ts.map +1 -1
  125. package/dist/mcp/tools/object-store.js +19 -59
  126. package/dist/mcp/tools/object-store.js.map +1 -1
  127. package/dist/mcp/tools/profile.d.ts.map +1 -1
  128. package/dist/mcp/tools/profile.js +15 -35
  129. package/dist/mcp/tools/profile.js.map +1 -1
  130. package/dist/mcp/tools/shared.d.ts +16 -0
  131. package/dist/mcp/tools/shared.d.ts.map +1 -1
  132. package/dist/mcp/tools/shared.js +12 -0
  133. package/dist/mcp/tools/shared.js.map +1 -1
  134. package/dist/mcp.d.ts +3 -11
  135. package/dist/mcp.d.ts.map +1 -1
  136. package/dist/mcp.js +4 -56
  137. package/dist/mcp.js.map +1 -1
  138. package/dist/safety/guards.d.ts +2 -2
  139. package/dist/safety/guards.d.ts.map +1 -1
  140. package/dist/safety/guards.js +4 -4
  141. package/dist/safety/guards.js.map +1 -1
  142. package/dist/utils/errors.d.ts +12 -0
  143. package/dist/utils/errors.d.ts.map +1 -1
  144. package/dist/utils/errors.js +26 -0
  145. package/dist/utils/errors.js.map +1 -1
  146. package/dist/{api/DesignCenterWorkflow.d.ts → workflows/design-center.d.ts} +4 -4
  147. package/dist/workflows/design-center.d.ts.map +1 -0
  148. package/dist/{api/DesignCenterWorkflow.js → workflows/design-center.js} +1 -1
  149. package/dist/workflows/design-center.js.map +1 -0
  150. package/dist/workflows/jar-deployment.d.ts +119 -0
  151. package/dist/workflows/jar-deployment.d.ts.map +1 -0
  152. package/dist/workflows/jar-deployment.js +117 -0
  153. package/dist/workflows/jar-deployment.js.map +1 -0
  154. package/package.json +10 -2
  155. package/dist/analysis/utils.d.ts.map +0 -1
  156. package/dist/analysis/utils.js.map +0 -1
  157. package/dist/api/DesignCenterWorkflow.d.ts.map +0 -1
  158. package/dist/api/DesignCenterWorkflow.js.map +0 -1
  159. package/dist/api/index.d.ts +0 -13
  160. package/dist/api/index.d.ts.map +0 -1
  161. package/dist/api/index.js +0 -13
  162. package/dist/api/index.js.map +0 -1
  163. package/dist/mcp/tools/applications.d.ts +0 -4
  164. package/dist/mcp/tools/applications.d.ts.map +0 -1
  165. package/dist/mcp/tools/applications.js +0 -815
  166. package/dist/mcp/tools/applications.js.map +0 -1
  167. package/dist/utils/config.d.ts.map +0 -1
  168. package/dist/utils/config.js.map +0 -1
@@ -1,11 +1,10 @@
1
1
  /**
2
2
  * Monitor CLI Commands
3
- * anc monitor view --env <envName> [-a <app>] [--from <date>] [--to <date>]
4
- * anc monitor perf --env <envName> [-a <app>]
5
- * anc monitor trend --env <envName> --app <app> [--granularity <5m|15m|30m|1h|1d>]
6
- * anc monitor workers --env <envName> [-a <app>]
7
- * anc monitor compare [--from <date>] [--to <date>]
8
- * anc monitor download --env <envName> --from <date> --to <date> [--output <path>] [--format json|csv]
3
+ * anc monitor summary [--env <name>] [-a <app>] [--by app|worker|route] [--from <date>] [--to <date>]
4
+ * anc monitor runtime --env <name> [-a <app>] [--from <date>] [--to <date>]
5
+ * anc monitor trend --env <name> --signal <traffic|latency|memory|cpu|gc> [-a <app>] [-g <granularity>]
6
+ * anc monitor query "<amql>" [--limit <n>] [--offset <n>]
7
+ * anc monitor download --env <name> --from <date> [--to <date>] [--output <path>] [--format json|csv]
9
8
  */
10
9
  import { Command } from 'commander';
11
10
  import * as fs from 'fs';
@@ -15,209 +14,272 @@ import { errorMessage } from '../utils/errors.js';
15
14
  import { parseDate } from '../utils/dates.js';
16
15
  import { printTable, formatMs, formatDate, formatBytes } from '../utils/formatter.js';
17
16
  import { createClient } from './shared.js';
18
- const GRANULARITY_MAP = {
19
- '5m': 'PT5M',
20
- '15m': 'PT15M',
21
- '30m': 'PT30M',
22
- '1h': 'PT1H',
23
- '1d': 'P1D',
24
- };
17
+ import { AMQL_MAX_LIMIT, GRANULARITIES, TIME_SERIES_SIGNALS, isGranularity, } from '../api/MonitoringApi.js';
18
+ function resolveWindow(opts) {
19
+ const to = opts.to ? parseDate(opts.to) : Date.now();
20
+ const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
21
+ return { from, to };
22
+ }
23
+ function periodLabel(from, to) {
24
+ return `${new Date(from).toLocaleString()} → ${new Date(to).toLocaleString()}`;
25
+ }
26
+ function formatPercent(value, digits = 1) {
27
+ return value === null || value === undefined ? '-' : `${(value * 100).toFixed(digits)}%`;
28
+ }
29
+ function formatOptionalBytes(value) {
30
+ return value === null || value === undefined ? '-' : formatBytes(value);
31
+ }
25
32
  function metricsToCSV(metrics) {
26
- const header = 'App Name,Requests,Avg Response Time (ms),Outbound Requests,Outbound Avg Response Time (ms)';
27
- const rows = metrics.map((m) => `${m.appName},${m.requestCount},${m.avgResponseTime.toFixed(1)},${m.outboundCount},${m.outboundAvgResponseTime.toFixed(1)}`);
33
+ const header = 'App Name,Requests,Failed,Failure Rate,Avg Response Time (ms),p95 (ms),p99 (ms),Outbound Requests,Outbound Failed,Outbound Avg Response Time (ms),Messages';
34
+ const rows = metrics.map((m) => [
35
+ m.appName,
36
+ m.requestCount,
37
+ m.failedCount,
38
+ m.failureRate.toFixed(4),
39
+ m.avgResponseTime.toFixed(1),
40
+ m.p95,
41
+ m.p99,
42
+ m.outboundCount,
43
+ m.outboundFailedCount,
44
+ m.outboundAvgResponseTime.toFixed(1),
45
+ m.messageCount,
46
+ ].join(','));
28
47
  return [header, ...rows].join('\n');
29
48
  }
49
+ const SERIES_COLUMNS = {
50
+ traffic: [
51
+ ['Requests', 'requestCount', String],
52
+ ['Failed', 'failedCount', String],
53
+ ['Avg', 'avgResponseTime', formatMs],
54
+ ['p95', 'p95', formatMs],
55
+ ],
56
+ latency: [
57
+ ['p50', 'p50', formatMs],
58
+ ['p75', 'p75', formatMs],
59
+ ['p90', 'p90', formatMs],
60
+ ['p95', 'p95', formatMs],
61
+ ['p99', 'p99', formatMs],
62
+ ],
63
+ memory: [
64
+ ['Heap', 'heapUsed', formatBytes],
65
+ ['Old Gen', 'oldGenUsed', formatBytes],
66
+ ['Metaspace', 'metaspaceUsed', formatBytes],
67
+ ],
68
+ cpu: [
69
+ ['System CPU', 'systemCpuLoad', (v) => formatPercent(v)],
70
+ ['Process CPU', 'processCpuLoad', (v) => formatPercent(v)],
71
+ ['Free RAM', 'freePhysicalMemory', formatBytes],
72
+ ],
73
+ gc: [
74
+ ['Old-gen GCs', 'oldGenGcCount', String],
75
+ ['Old-gen GC time', 'oldGenGcTimeMs', formatMs],
76
+ ['All GCs', 'gcCount', String],
77
+ ['All GC time', 'gcTimeMs', formatMs],
78
+ ],
79
+ };
80
+ function seriesRow(point, signal, showWorker) {
81
+ const cells = SERIES_COLUMNS[signal].map(([, key, format]) => {
82
+ const value = point[key];
83
+ return value === null || value === undefined ? '-' : format(Number(value));
84
+ });
85
+ return [
86
+ formatDate(point.timestamp),
87
+ point.appName,
88
+ ...(showWorker ? [String(point.workerId ?? '-')] : []),
89
+ ...cells,
90
+ ];
91
+ }
30
92
  export function createMonitorCommand() {
31
- const monitor = new Command('monitor').description('View and export monitoring metrics');
93
+ const monitor = new Command('monitor').description('Traffic, latency, JVM and host metrics from Anypoint Monitoring');
32
94
  monitor
33
- .command('view')
34
- .description('View application metrics')
95
+ .command('summary')
96
+ .description('Traffic, failures and latency per app, worker or route (omit --env to compare environments)')
97
+ .option('-e, --env <name>', 'Environment name or ID (default: every environment)')
35
98
  .option('-a, --app <name>', 'Filter by application name')
36
- .requiredOption('-e, --env <name>', 'Environment name')
99
+ .option('--by <grouping>', 'Group rows by app, worker or route', 'app')
37
100
  .option('--from <date>', 'Start time (default: 24h ago)')
38
101
  .option('--to <date>', 'End time (default: now)')
39
102
  .action(async (opts) => {
40
103
  try {
41
- const client = createClient();
42
- const orgId = await client.getDefaultOrgId();
43
- const env = await client.accessManagement.resolveEnvironment(orgId, opts.env);
44
- const to = opts.to ? parseDate(opts.to) : Date.now();
45
- const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
46
- const [metrics, perf] = await Promise.all([
47
- client.monitoring.getAppMetrics(orgId, env.id, from, to, opts.app),
48
- client.monitoring.getPerformanceMetrics(orgId, env.id, from, to, opts.app),
49
- ]);
50
- if (metrics.length === 0) {
51
- log.warn('No metrics data available for the specified period');
52
- return;
104
+ if (!['app', 'worker', 'route'].includes(opts.by)) {
105
+ throw new Error(`Invalid --by "${opts.by}". Use: app, worker, route`);
53
106
  }
54
- const perfByApp = new Map(perf.map((p) => [p.appName, p]));
55
- log.header(`Metrics for ${env.name} (${new Date(from).toLocaleDateString()} → ${new Date(to).toLocaleDateString()})`);
56
- printTable(['Application', 'Requests', 'Avg Response', 'p95', 'p99', 'Outbound', 'Outbound Avg'], metrics.map((m) => {
57
- const p = perfByApp.get(m.appName);
58
- return [
59
- m.appName,
60
- String(m.requestCount),
61
- formatMs(m.avgResponseTime),
62
- p ? formatMs(p.p95) : '-',
63
- p ? formatMs(p.p99) : '-',
64
- String(m.outboundCount),
65
- formatMs(m.outboundAvgResponseTime),
66
- ];
67
- }));
68
- const totalReqs = metrics.reduce((sum, m) => sum + m.requestCount, 0);
69
- console.log();
70
- log.kv('Total Requests', totalReqs);
71
- log.kv('Apps', metrics.length);
72
- }
73
- catch (error) {
74
- log.error(`Metrics failed: ${errorMessage(error)}`);
75
- process.exit(1);
76
- }
77
- });
78
- monitor
79
- .command('perf')
80
- .description('View percentile performance metrics (p50/p95/p99)')
81
- .option('-a, --app <name>', 'Filter by application name')
82
- .requiredOption('-e, --env <name>', 'Environment name')
83
- .option('--from <date>', 'Start time (default: 24h ago)')
84
- .option('--to <date>', 'End time (default: now)')
85
- .action(async (opts) => {
86
- try {
87
107
  const client = createClient();
88
108
  const orgId = await client.getDefaultOrgId();
89
- const env = await client.accessManagement.resolveEnvironment(orgId, opts.env);
90
- const to = opts.to ? parseDate(opts.to) : Date.now();
91
- const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
92
- const metrics = await client.monitoring.getPerformanceMetrics(orgId, env.id, from, to, opts.app);
93
- if (metrics.length === 0) {
94
- log.warn('No performance data available for the specified period');
109
+ const env = opts.env ? await client.accessManagement.resolveEnvironment(orgId, opts.env) : undefined;
110
+ const { from, to } = resolveWindow(opts);
111
+ const scope = { orgId, envId: env?.id, from, to, appName: opts.app };
112
+ const envColumn = env ? [] : ['Env'];
113
+ const envCell = (row) => (env ? [] : [row.envName ?? '-']);
114
+ log.header(`Metrics — ${env?.name ?? 'all environments'} (${periodLabel(from, to)})`);
115
+ if (opts.by === 'route') {
116
+ const routes = await client.monitoring.getRouteMetrics(scope);
117
+ if (routes.length === 0)
118
+ return log.warn('No traffic recorded for the specified period');
119
+ printTable(['Application', ...envColumn, 'Direction', 'Route', 'Requests', 'Failed', 'Avg', 'p95'], routes.map((r) => [
120
+ r.appName,
121
+ ...envCell(r),
122
+ r.direction,
123
+ r.route ?? '(unlabelled)',
124
+ String(r.requestCount),
125
+ String(r.failedCount),
126
+ formatMs(r.avgResponseTime),
127
+ formatMs(r.p95),
128
+ ]));
95
129
  return;
96
130
  }
97
- log.header(`Performance — ${env.name} (${new Date(from).toLocaleDateString()} → ${new Date(to).toLocaleDateString()})`);
98
- printTable(['Application', 'Requests', 'Avg', 'p50', 'p95', 'p99', 'Min', 'Max'], metrics.map((m) => [
131
+ const rows = await client.monitoring.getMetrics(scope, opts.by);
132
+ if (rows.length === 0)
133
+ return log.warn('No traffic recorded for the specified period');
134
+ printTable([
135
+ 'Application',
136
+ ...envColumn,
137
+ ...(opts.by === 'worker' ? ['Worker'] : []),
138
+ 'Requests',
139
+ 'Failed',
140
+ 'Avg',
141
+ 'p50',
142
+ 'p95',
143
+ 'p99',
144
+ 'Outbound',
145
+ 'Out Failed',
146
+ 'Messages',
147
+ ], rows.map((m) => [
99
148
  m.appName,
149
+ ...envCell(m),
150
+ ...(opts.by === 'worker' ? [m.workerId ?? '-'] : []),
100
151
  String(m.requestCount),
152
+ m.failedCount ? `${m.failedCount} (${formatPercent(m.failureRate, 2)})` : '0',
101
153
  formatMs(m.avgResponseTime),
102
154
  formatMs(m.p50),
103
155
  formatMs(m.p95),
104
156
  formatMs(m.p99),
105
- formatMs(m.minResponseTime),
106
- formatMs(m.maxResponseTime),
157
+ String(m.outboundCount),
158
+ String(m.outboundFailedCount),
159
+ String(m.messageCount),
107
160
  ]));
161
+ console.log();
162
+ log.kv('Total Requests', rows.reduce((sum, m) => sum + m.requestCount, 0));
163
+ log.kv('Total Failed', rows.reduce((sum, m) => sum + m.failedCount, 0));
108
164
  }
109
165
  catch (error) {
110
- log.error(`Performance metrics failed: ${errorMessage(error)}`);
166
+ log.error(`Metrics failed: ${errorMessage(error)}`);
111
167
  process.exit(1);
112
168
  }
113
169
  });
114
170
  monitor
115
- .command('trend')
116
- .description('View time-series metrics for an application')
117
- .requiredOption('-e, --env <name>', 'Environment name')
118
- .requiredOption('-a, --app <name>', 'Application name')
119
- .option('-g, --granularity <interval>', 'Time bucket size: 5m, 15m, 30m, 1h, 1d (default: 1h)', '1h')
171
+ .command('runtime')
172
+ .description('JVM heap, old-generation pressure, GC activity and host CPU/RAM per worker')
173
+ .requiredOption('-e, --env <name>', 'Environment name or ID')
174
+ .option('-a, --app <name>', 'Filter by application name')
120
175
  .option('--from <date>', 'Start time (default: 24h ago)')
121
176
  .option('--to <date>', 'End time (default: now)')
122
177
  .action(async (opts) => {
123
178
  try {
124
- const granularity = GRANULARITY_MAP[opts.granularity];
125
- if (!granularity) {
126
- log.error(`Invalid granularity "${opts.granularity}". Use: 5m, 15m, 30m, 1h, 1d`);
127
- process.exit(1);
128
- }
129
179
  const client = createClient();
130
180
  const orgId = await client.getDefaultOrgId();
131
181
  const env = await client.accessManagement.resolveEnvironment(orgId, opts.env);
132
- const to = opts.to ? parseDate(opts.to) : Date.now();
133
- const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
134
- const data = await client.monitoring.getTimeSeries(orgId, env.id, from, to, granularity, opts.app);
135
- if (data.length === 0) {
136
- log.warn('No time-series data available for the specified period');
137
- return;
138
- }
139
- log.header(`Trend — ${opts.app} in ${env.name} (${opts.granularity} buckets)`);
140
- printTable(['Time', 'Requests', 'Avg Response', 'p95'], data.map((d) => [
141
- formatDate(d.timestamp),
142
- String(d.requestCount),
143
- formatMs(d.avgResponseTime),
144
- formatMs(d.p95),
182
+ const { from, to } = resolveWindow(opts);
183
+ const workers = await client.monitoring.getRuntimeMetrics({
184
+ orgId,
185
+ envId: env.id,
186
+ from,
187
+ to,
188
+ appName: opts.app,
189
+ });
190
+ if (workers.length === 0)
191
+ return log.warn('No runtime metrics recorded for the specified period');
192
+ log.header(`Runtime — ${env.name} (${periodLabel(from, to)})`);
193
+ printTable([
194
+ 'Application',
195
+ 'Worker',
196
+ 'Heap avg / peak',
197
+ 'Old gen peak / limit',
198
+ 'Old-gen GCs',
199
+ 'GC time',
200
+ 'CPU sys avg / max',
201
+ 'Free RAM',
202
+ ], workers.map((w) => [
203
+ w.appName,
204
+ w.workerId,
205
+ `${formatBytes(w.heapUsedAvg)} / ${formatBytes(w.heapUsedPeak)}`,
206
+ w.oldGenLimit
207
+ ? `${formatBytes(w.oldGenUsedPeak)} / ${formatBytes(w.oldGenLimit)} (${formatPercent(w.oldGenPeakRatio, 0)})`
208
+ : formatBytes(w.oldGenUsedPeak),
209
+ String(w.oldGenGcCount),
210
+ formatMs(w.oldGenGcTimeMs),
211
+ `${formatPercent(w.systemCpuLoadAvg)} / ${formatPercent(w.systemCpuLoadMax)}`,
212
+ `${formatOptionalBytes(w.freePhysicalMemoryAvg)} of ${formatOptionalBytes(w.totalPhysicalMemory)}`,
145
213
  ]));
146
214
  }
147
215
  catch (error) {
148
- log.error(`Trend metrics failed: ${errorMessage(error)}`);
216
+ log.error(`Runtime metrics failed: ${errorMessage(error)}`);
149
217
  process.exit(1);
150
218
  }
151
219
  });
152
220
  monitor
153
- .command('workers')
154
- .description('View per-worker/replica performance metrics')
221
+ .command('trend')
222
+ .description('Bucketed time series for one signal')
223
+ .requiredOption('-e, --env <name>', 'Environment name or ID')
224
+ .option('-s, --signal <signal>', `Signal: ${TIME_SERIES_SIGNALS.join(', ')}`, 'traffic')
155
225
  .option('-a, --app <name>', 'Filter by application name')
156
- .requiredOption('-e, --env <name>', 'Environment name')
226
+ .option('-g, --granularity <interval>', `Bucket size: ${GRANULARITIES.join(', ')}`, '1h')
157
227
  .option('--from <date>', 'Start time (default: 24h ago)')
158
228
  .option('--to <date>', 'End time (default: now)')
159
229
  .action(async (opts) => {
160
230
  try {
231
+ if (!isGranularity(opts.granularity)) {
232
+ throw new Error(`Invalid granularity "${opts.granularity}". Use: ${GRANULARITIES.join(', ')}`);
233
+ }
234
+ if (!TIME_SERIES_SIGNALS.includes(opts.signal)) {
235
+ throw new Error(`Invalid signal "${opts.signal}". Use: ${TIME_SERIES_SIGNALS.join(', ')}`);
236
+ }
237
+ const signal = opts.signal;
161
238
  const client = createClient();
162
239
  const orgId = await client.getDefaultOrgId();
163
240
  const env = await client.accessManagement.resolveEnvironment(orgId, opts.env);
164
- const to = opts.to ? parseDate(opts.to) : Date.now();
165
- const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
166
- const metrics = await client.monitoring.getWorkerMetrics(orgId, env.id, from, to, opts.app);
167
- if (metrics.length === 0) {
168
- log.warn('No worker metrics available for the specified period');
169
- return;
170
- }
171
- log.header(`Workers — ${env.name} (${new Date(from).toLocaleDateString()} → ${new Date(to).toLocaleDateString()})`);
172
- printTable(['Application', 'Worker', 'Requests', 'Avg Response', 'p95', 'Max'], metrics.map((m) => [
173
- m.appName,
174
- m.workerId,
175
- String(m.requestCount),
176
- formatMs(m.avgResponseTime),
177
- formatMs(m.p95),
178
- formatMs(m.maxResponseTime),
179
- ]));
241
+ const { from, to } = resolveWindow(opts);
242
+ const points = await client.monitoring.getTimeSeries({ orgId, envId: env.id, from, to, appName: opts.app }, signal, opts.granularity);
243
+ if (points.length === 0)
244
+ return log.warn('No data recorded for the specified period');
245
+ const showWorker = points.some((p) => p.workerId !== undefined);
246
+ log.header(`Trend (${signal}) — ${opts.app ?? 'all apps'} in ${env.name}, ${opts.granularity} buckets`);
247
+ printTable([
248
+ 'Time',
249
+ 'Application',
250
+ ...(showWorker ? ['Worker'] : []),
251
+ ...SERIES_COLUMNS[signal].map(([label]) => label),
252
+ ], points.map((p) => seriesRow(p, signal, showWorker)));
180
253
  }
181
254
  catch (error) {
182
- log.error(`Worker metrics failed: ${errorMessage(error)}`);
255
+ log.error(`Trend failed: ${errorMessage(error)}`);
183
256
  process.exit(1);
184
257
  }
185
258
  });
186
259
  monitor
187
- .command('compare')
188
- .description('Compare performance across all environments')
189
- .option('--from <date>', 'Start time (default: 24h ago)')
190
- .option('--to <date>', 'End time (default: now)')
191
- .action(async (opts) => {
260
+ .command('query')
261
+ .description('Run a raw AMQL query and print the rows as JSON')
262
+ .argument('<amql>', 'AMQL query string')
263
+ .option('--limit <n>', `Rows per page (max ${AMQL_MAX_LIMIT})`, '200')
264
+ .option('--offset <n>', 'Row offset', '0')
265
+ .action(async (amql, opts) => {
192
266
  try {
193
267
  const client = createClient();
194
- const orgId = await client.getDefaultOrgId();
195
- const to = opts.to ? parseDate(opts.to) : Date.now();
196
- const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
197
- const metrics = await client.monitoring.getCrossEnvMetrics(orgId, from, to);
198
- if (metrics.length === 0) {
199
- log.warn('No cross-environment metrics available');
200
- return;
201
- }
202
- log.header(`Cross-Environment Comparison (${new Date(from).toLocaleDateString()} → ${new Date(to).toLocaleDateString()})`);
203
- printTable(['Application', 'Environment', 'Requests', 'Avg Response', 'p95', 'p99'], metrics.map((m) => [
204
- m.appName,
205
- m.envName,
206
- String(m.requestCount),
207
- formatMs(m.avgResponseTime),
208
- formatMs(m.p95),
209
- formatMs(m.p99),
210
- ]));
268
+ const rows = await client.monitoring.search(amql, {
269
+ limit: parseInt(opts.limit, 10),
270
+ offset: parseInt(opts.offset, 10),
271
+ });
272
+ console.log(JSON.stringify(rows, null, 2));
211
273
  }
212
274
  catch (error) {
213
- log.error(`Cross-env comparison failed: ${errorMessage(error)}`);
275
+ log.error(errorMessage(error));
214
276
  process.exit(1);
215
277
  }
216
278
  });
217
279
  monitor
218
280
  .command('download')
219
- .description('Export monitoring data to file')
220
- .requiredOption('-e, --env <name>', 'Environment name')
281
+ .description('Export per-app metrics for a period to a file')
282
+ .requiredOption('-e, --env <name>', 'Environment name or ID')
221
283
  .requiredOption('--from <date>', 'Start time')
222
284
  .option('--to <date>', 'End time (default: now)')
223
285
  .option('-o, --output <path>', 'Output file path')
@@ -227,103 +289,21 @@ export function createMonitorCommand() {
227
289
  const client = createClient();
228
290
  const orgId = await client.getDefaultOrgId();
229
291
  const env = await client.accessManagement.resolveEnvironment(orgId, opts.env);
230
- const to = opts.to ? parseDate(opts.to) : Date.now();
231
- const from = parseDate(opts.from);
292
+ const { from, to } = resolveWindow(opts);
232
293
  log.info(`Exporting metrics for ${chalk.bold(env.name)}`);
233
294
  log.kv('Period', `${new Date(from).toISOString()} → ${new Date(to).toISOString()}`);
234
295
  const exported = await client.monitoring.exportMetrics(orgId, env.id, env.name, from, to);
235
- let content;
236
- let ext;
237
- if (opts.format === 'csv') {
238
- content = metricsToCSV(exported.apps);
239
- ext = 'csv';
240
- }
241
- else {
242
- content = JSON.stringify(exported, null, 2);
243
- ext = 'json';
244
- }
296
+ const ext = opts.format === 'csv' ? 'csv' : 'json';
297
+ const content = ext === 'csv' ? metricsToCSV(exported.apps) : JSON.stringify(exported, null, 2);
245
298
  const output = opts.output || `metrics-${env.name.toLowerCase()}-${new Date().toISOString().split('T')[0]}.${ext}`;
246
299
  fs.writeFileSync(output, content, 'utf-8');
247
- log.success(`Exported ${exported.apps.length} apps metrics → ${chalk.bold(output)}`);
300
+ log.success(`Exported metrics for ${exported.apps.length} apps → ${chalk.bold(output)}`);
248
301
  }
249
302
  catch (error) {
250
303
  log.error(`Export failed: ${errorMessage(error)}`);
251
304
  process.exit(1);
252
305
  }
253
306
  });
254
- monitor
255
- .command('memory')
256
- .description('View JVM memory usage, GC stats, and thread counts per app')
257
- .option('-a, --app <name>', 'Filter by application name')
258
- .requiredOption('-e, --env <name>', 'Environment name')
259
- .option('--from <date>', 'Start time (default: 24h ago)')
260
- .option('--to <date>', 'End time (default: now)')
261
- .action(async (opts) => {
262
- try {
263
- const client = createClient();
264
- const orgId = await client.getDefaultOrgId();
265
- const env = await client.accessManagement.resolveEnvironment(orgId, opts.env);
266
- const to = opts.to ? parseDate(opts.to) : Date.now();
267
- const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
268
- const metrics = await client.monitoring.getMemoryMetrics(orgId, env.id, from, to, opts.app);
269
- if (metrics.length === 0) {
270
- log.warn('No memory metrics available for the specified period');
271
- return;
272
- }
273
- log.header(`Memory — ${env.name} (${new Date(from).toLocaleDateString()} → ${new Date(to).toLocaleDateString()})`);
274
- printTable(['Application', 'Heap Used', 'Heap Committed', 'Heap Max', 'GC Count', 'GC Time', 'Threads'], metrics.map((m) => [
275
- m.appName,
276
- formatBytes(m.heapUsed),
277
- formatBytes(m.heapCommitted),
278
- formatBytes(m.heapMax),
279
- String(Math.round(m.gcCount)),
280
- formatMs(m.gcTime),
281
- String(Math.round(m.threadCount)),
282
- ]));
283
- }
284
- catch (error) {
285
- log.error(`Memory metrics failed: ${errorMessage(error)}`);
286
- process.exit(1);
287
- }
288
- });
289
- monitor
290
- .command('memory-trend')
291
- .description('View JVM memory usage over time for an application')
292
- .requiredOption('-e, --env <name>', 'Environment name')
293
- .requiredOption('-a, --app <name>', 'Application name')
294
- .option('-g, --granularity <interval>', 'Time bucket size: 5m, 15m, 30m, 1h, 1d (default: 1h)', '1h')
295
- .option('--from <date>', 'Start time (default: 24h ago)')
296
- .option('--to <date>', 'End time (default: now)')
297
- .action(async (opts) => {
298
- try {
299
- const granularity = GRANULARITY_MAP[opts.granularity];
300
- if (!granularity) {
301
- log.error(`Invalid granularity "${opts.granularity}". Use: 5m, 15m, 30m, 1h, 1d`);
302
- process.exit(1);
303
- }
304
- const client = createClient();
305
- const orgId = await client.getDefaultOrgId();
306
- const env = await client.accessManagement.resolveEnvironment(orgId, opts.env);
307
- const to = opts.to ? parseDate(opts.to) : Date.now();
308
- const from = opts.from ? parseDate(opts.from) : to - 24 * 60 * 60 * 1000;
309
- const data = await client.monitoring.getMemoryTimeSeries(orgId, env.id, from, to, granularity, opts.app);
310
- if (data.length === 0) {
311
- log.warn('No memory time-series data available for the specified period');
312
- return;
313
- }
314
- log.header(`Memory Trend — ${opts.app} in ${env.name} (${opts.granularity} buckets)`);
315
- printTable(['Time', 'Heap Used', 'Heap Committed', 'GC Count'], data.map((d) => [
316
- formatDate(d.timestamp),
317
- formatBytes(d.heapUsed),
318
- formatBytes(d.heapCommitted),
319
- String(Math.round(d.gcCount)),
320
- ]));
321
- }
322
- catch (error) {
323
- log.error(`Memory trend failed: ${errorMessage(error)}`);
324
- process.exit(1);
325
- }
326
- });
327
307
  return monitor;
328
308
  }
329
309
  //# sourceMappingURL=monitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/commands/monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../src/commands/monitor.ts"],"names":[],"mappings":"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"}
@@ -8,4 +8,6 @@ import { AnypointClient } from '../client/AnypointClient.js';
8
8
  * If no profile is specified, auto-resolves from env / project config / default.
9
9
  */
10
10
  export declare function createClient(profile?: string): AnypointClient;
11
+ /** Ask a yes/no question on the terminal; anything but "y" or "yes" declines. */
12
+ export declare function confirmAction(question: string): Promise<boolean>;
11
13
  //# sourceMappingURL=shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAU7D"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/commands/shared.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAU7D;AAED,iFAAiF;AACjF,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAWtE"}