@calltelemetry/cli 0.12.21 → 0.13.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.
Files changed (62) hide show
  1. package/dist/commands/db.d.ts +1 -0
  2. package/dist/commands/db.d.ts.map +1 -1
  3. package/dist/commands/db.js +29 -0
  4. package/dist/commands/db.js.map +1 -1
  5. package/dist/commands/ship-db.d.ts +1 -1
  6. package/dist/commands/ship-db.d.ts.map +1 -1
  7. package/dist/commands/ship-db.js +30 -1
  8. package/dist/commands/ship-db.js.map +1 -1
  9. package/dist/commands/ship-shell.d.ts.map +1 -1
  10. package/dist/commands/ship-shell.js +8 -5
  11. package/dist/commands/ship-shell.js.map +1 -1
  12. package/dist/commands/ship-update.d.ts.map +1 -1
  13. package/dist/commands/ship-update.js +3 -17
  14. package/dist/commands/ship-update.js.map +1 -1
  15. package/dist/commands/update.d.ts +2 -2
  16. package/dist/commands/update.d.ts.map +1 -1
  17. package/dist/commands/update.js +9 -23
  18. package/dist/commands/update.js.map +1 -1
  19. package/dist/lib/auto-update.d.ts +15 -4
  20. package/dist/lib/auto-update.d.ts.map +1 -1
  21. package/dist/lib/auto-update.js +110 -39
  22. package/dist/lib/auto-update.js.map +1 -1
  23. package/dist/lib/paths.d.ts +5 -0
  24. package/dist/lib/paths.d.ts.map +1 -1
  25. package/dist/lib/paths.js +5 -0
  26. package/dist/lib/paths.js.map +1 -1
  27. package/dist/lib/postgres-profiles.d.ts +51 -0
  28. package/dist/lib/postgres-profiles.d.ts.map +1 -0
  29. package/dist/lib/postgres-profiles.js +103 -0
  30. package/dist/lib/postgres-profiles.js.map +1 -0
  31. package/dist/lib/postgres.d.ts +2 -1
  32. package/dist/lib/postgres.d.ts.map +1 -1
  33. package/dist/lib/postgres.js +3 -30
  34. package/dist/lib/postgres.js.map +1 -1
  35. package/dist/lib/storage-report.d.ts +199 -0
  36. package/dist/lib/storage-report.d.ts.map +1 -0
  37. package/dist/lib/storage-report.js +986 -0
  38. package/dist/lib/storage-report.js.map +1 -0
  39. package/dist/lib/update-steps.d.ts +5 -1
  40. package/dist/lib/update-steps.d.ts.map +1 -1
  41. package/dist/lib/update-steps.js +14 -2
  42. package/dist/lib/update-steps.js.map +1 -1
  43. package/dist/lib/version.d.ts +1 -1
  44. package/dist/lib/version.d.ts.map +1 -1
  45. package/dist/lib/version.js +1 -1
  46. package/dist/lib/version.js.map +1 -1
  47. package/dist/shell/commands/appliance-performance.d.ts +2 -1
  48. package/dist/shell/commands/appliance-performance.d.ts.map +1 -1
  49. package/dist/shell/commands/appliance-performance.js +24 -56
  50. package/dist/shell/commands/appliance-performance.js.map +1 -1
  51. package/dist/shell/commands/db.d.ts +1 -0
  52. package/dist/shell/commands/db.d.ts.map +1 -1
  53. package/dist/shell/commands/db.js +26 -0
  54. package/dist/shell/commands/db.js.map +1 -1
  55. package/dist/shell/commands/registry.d.ts.map +1 -1
  56. package/dist/shell/commands/registry.js +10 -0
  57. package/dist/shell/commands/registry.js.map +1 -1
  58. package/dist/ship-entry.js +1 -1
  59. package/dist/ui/views/SelfUpdateView.d.ts.map +1 -1
  60. package/dist/ui/views/SelfUpdateView.js +15 -24
  61. package/dist/ui/views/SelfUpdateView.js.map +1 -1
  62. package/package.json +3 -2
@@ -3,6 +3,7 @@ import { execa } from 'execa';
3
3
  import { getPaths } from './paths.js';
4
4
  import { writeFileSafe } from './fs.js';
5
5
  import { readEnvKeys, updateEnvKeys } from './env.js';
6
+ import { PG_CONNECTION_PROFILES, PG_PROFILE_ORDER } from './postgres-profiles.js';
6
7
  export function getPostgresVersion() {
7
8
  const { overrideFile, postgresDefaultVersion } = getPaths();
8
9
  if (existsSync(overrideFile)) {
@@ -32,36 +33,8 @@ export function getCurrentPostgresImage() {
32
33
  }
33
34
  return 'unknown';
34
35
  }
35
- const PG_PROFILES = {
36
- small: {
37
- PG_PROFILE: 'small',
38
- PG_MAX_CONNECTIONS: '100',
39
- DB_POOL_SIZE: '15',
40
- DB_CALL_CONTROL_POOL_SIZE: '15',
41
- DB_BACKGROUND_POOL_SIZE: '15',
42
- DB_DISCOVERY_POOL_SIZE: '15',
43
- DB_OBAN_POOL_SIZE: '15',
44
- },
45
- medium: {
46
- PG_PROFILE: 'medium',
47
- PG_MAX_CONNECTIONS: '200',
48
- DB_POOL_SIZE: '20',
49
- DB_CALL_CONTROL_POOL_SIZE: '20',
50
- DB_BACKGROUND_POOL_SIZE: '20',
51
- DB_DISCOVERY_POOL_SIZE: '20',
52
- DB_OBAN_POOL_SIZE: '20',
53
- },
54
- large: {
55
- PG_PROFILE: 'large',
56
- PG_MAX_CONNECTIONS: '300',
57
- DB_POOL_SIZE: '25',
58
- DB_CALL_CONTROL_POOL_SIZE: '25',
59
- DB_BACKGROUND_POOL_SIZE: '25',
60
- DB_DISCOVERY_POOL_SIZE: '25',
61
- DB_OBAN_POOL_SIZE: '25',
62
- },
63
- };
64
- export const VALID_PROFILES = Object.keys(PG_PROFILES);
36
+ const PG_PROFILES = PG_CONNECTION_PROFILES;
37
+ export const VALID_PROFILES = [...PG_PROFILE_ORDER];
65
38
  /**
66
39
  * Apply a PG connection profile — overwrites all profile keys in .env.
67
40
  */
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../src/lib/postgres.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../src/lib/postgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAsB,MAAM,wBAAwB,CAAC;AAEtG,MAAM,UAAU,kBAAkB;IAChC,MAAM,EAAE,YAAY,EAAE,sBAAsB,EAAE,GAAG,QAAQ,EAAE,CAAC;IAC5D,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC7D,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEjD,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACtD,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACxD,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAWD,MAAM,WAAW,GAAG,sBAAsB,CAAC;AAE3C,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAG,gBAAgB,CAAgB,CAAC;AAEnE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAkB;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;IAC5D,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,IAAI,SAAS,CAAC;IAC5C,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,GAAG,GAAG,WAAW,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC;IACnC,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACvB,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAAe;IACtD,MAAM,EAAE,yBAAyB,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,CAAC;IAE3E,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CACb,+BAA+B,OAAO,IAAI;YAC1C,uBAAuB,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC9D,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,UAAU,aAAa,OAAO,OAAO,CAAC;IAErD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;QACtD,MAAM,aAAa,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,EAAE,CAAC,CAAC;IACnE,CAAC;AACH,CAAC"}
@@ -0,0 +1,199 @@
1
+ export declare const STORAGE_REPORT_SCHEMA_VERSION = 1;
2
+ export interface StorageReportOptions {
3
+ top?: number;
4
+ scanDepth?: number;
5
+ timeoutMs?: number;
6
+ }
7
+ export interface FilesystemUsage {
8
+ path: string;
9
+ filesystem: string;
10
+ mount: string;
11
+ sizeBytes: number;
12
+ usedBytes: number;
13
+ availableBytes: number;
14
+ usedPercent: number;
15
+ inodeUsedPercent: number | null;
16
+ }
17
+ export interface StorageEntry {
18
+ path: string;
19
+ bytes: number;
20
+ pretty: string;
21
+ }
22
+ export interface DatabaseRelationUsage {
23
+ schemaName: string;
24
+ tableName: string;
25
+ relationKind: string;
26
+ isPartition: boolean;
27
+ totalBytes: number;
28
+ tableBytes: number;
29
+ heapBytes: number;
30
+ indexBytes: number;
31
+ toastBytes: number;
32
+ estimatedLiveRows: number;
33
+ estimatedDeadRows: number;
34
+ lastVacuum: string | null;
35
+ lastAutovacuum: string | null;
36
+ lastAnalyze: string | null;
37
+ lastAutoanalyze: string | null;
38
+ }
39
+ export interface OldestTableRecord {
40
+ schemaName: string;
41
+ tableName: string;
42
+ columnName: string;
43
+ oldestAt: string | null;
44
+ newestAt: string | null;
45
+ relationBytes: number;
46
+ estimatedRows: number;
47
+ }
48
+ export interface PurgeConfigStatus {
49
+ orgId: number | null;
50
+ tableName: string | null;
51
+ moduleName: string | null;
52
+ enabled: boolean | null;
53
+ status: 'disabled' | 'over_max' | 'over_high' | 'stale' | 'healthy' | 'unknown';
54
+ retentionDaysMax: number | null;
55
+ retentionDaysMinimum: number | null;
56
+ retentionDaysCurrent: number | null;
57
+ sizeThresholdHighKb: number | null;
58
+ sizeThresholdLowKb: number | null;
59
+ sizeMaxKb: number | null;
60
+ lastSizeKb: number | null;
61
+ lastRecordCount: number | null;
62
+ lastPurgeAt: string | null;
63
+ lastEvaluatedAt: string | null;
64
+ purgeStrategy: string | null;
65
+ totalPurges: number | null;
66
+ totalRecordsPurged: number | null;
67
+ relationBytes: number | null;
68
+ }
69
+ export interface PurgeAuditStatus {
70
+ available: boolean;
71
+ rowCount: number;
72
+ successRows: number;
73
+ issueRows: number;
74
+ issueCount: number;
75
+ tablesAudited: number;
76
+ tablesHealthy: number;
77
+ totalDatabaseSizeKb: number;
78
+ oldestAuditAt: string | null;
79
+ newestAuditAt: string | null;
80
+ }
81
+ export interface PurgeHistorySummary {
82
+ action: string | null;
83
+ status: string | null;
84
+ recordCount: number;
85
+ oldestAt: string | null;
86
+ newestAt: string | null;
87
+ payloadBytes: number;
88
+ }
89
+ export interface PurgeHistoryRecord {
90
+ id: string | null;
91
+ action: string | null;
92
+ status: string | null;
93
+ insertedAt: string | null;
94
+ recordBytes: number;
95
+ }
96
+ export interface PurgeFailureRecord {
97
+ orgId: number | null;
98
+ tableName: string | null;
99
+ consecutiveFailures: number;
100
+ lastFailureAt: string | null;
101
+ lastSuccessAt: string | null;
102
+ recordBytes: number;
103
+ }
104
+ export interface PurgeFailureStatus {
105
+ available: boolean;
106
+ rowCount: number;
107
+ failingRows: number;
108
+ totalConsecutiveFailures: number;
109
+ maxConsecutiveFailures: number;
110
+ oldestFailureAt: string | null;
111
+ newestFailureAt: string | null;
112
+ oldestFailures: PurgeFailureRecord[];
113
+ }
114
+ export interface PurgeDispatchStatus {
115
+ available: boolean;
116
+ rowCount: number;
117
+ coveredCount: number;
118
+ totalTables: number;
119
+ minNextOffset: number | null;
120
+ maxNextOffset: number | null;
121
+ oldestUpdatedAt: string | null;
122
+ newestUpdatedAt: string | null;
123
+ }
124
+ export interface ObanQueueSummary {
125
+ queue: string | null;
126
+ state: string | null;
127
+ jobCount: number;
128
+ oldestAt: string | null;
129
+ newestAt: string | null;
130
+ payloadBytes: number;
131
+ }
132
+ export interface ObanJobRecord {
133
+ id: number | null;
134
+ queue: string | null;
135
+ state: string | null;
136
+ worker: string | null;
137
+ attempts: number | null;
138
+ maxAttempts: number | null;
139
+ eventAt: string | null;
140
+ recordBytes: number;
141
+ }
142
+ export interface PartitionSummary {
143
+ schemaName: string;
144
+ parentTableName: string;
145
+ partitionCount: number;
146
+ oldestPartition: string | null;
147
+ newestPartition: string | null;
148
+ totalBytes: number;
149
+ }
150
+ export interface StorageReport {
151
+ schemaVersion: typeof STORAGE_REPORT_SCHEMA_VERSION;
152
+ generatedAt: string;
153
+ hostname: string;
154
+ installDir: string;
155
+ scan: {
156
+ root: string;
157
+ roots: string[];
158
+ filesystemOnly: true;
159
+ topLimit: number;
160
+ maxDepth: number;
161
+ warnings: string[];
162
+ };
163
+ filesystems: FilesystemUsage[];
164
+ topDirectories: StorageEntry[];
165
+ topFiles: StorageEntry[];
166
+ database: {
167
+ name: string;
168
+ totalBytes: number | null;
169
+ nonSystemRelationBytes: number | null;
170
+ relationCount: number | null;
171
+ relations: DatabaseRelationUsage[];
172
+ oldestTables: OldestTableRecord[];
173
+ warnings: string[];
174
+ };
175
+ purge: {
176
+ configs: PurgeConfigStatus[];
177
+ auditStatus: PurgeAuditStatus;
178
+ historySummary: PurgeHistorySummary[];
179
+ oldestHistory: PurgeHistoryRecord[];
180
+ failureStatus: PurgeFailureStatus;
181
+ dispatchStatus: PurgeDispatchStatus;
182
+ obanQueues: ObanQueueSummary[];
183
+ oldestObanJobs: ObanJobRecord[];
184
+ partitions: PartitionSummary[];
185
+ warnings: string[];
186
+ };
187
+ warnings: string[];
188
+ }
189
+ export declare function normalizeStorageReportOptions(options?: StorageReportOptions): Required<StorageReportOptions>;
190
+ export declare function parseDuOutput(output: string, limit: number): StorageEntry[];
191
+ export declare function parseSizedPathOutput(output: string, limit: number): StorageEntry[];
192
+ export declare function buildStorageReport(options?: StorageReportOptions): Promise<StorageReport>;
193
+ export declare function renderStorageReportText(report: StorageReport): string;
194
+ export declare function writeStorageReportJson(path: string, report: StorageReport): Promise<void>;
195
+ export declare function runStorageReportCommand(options?: StorageReportOptions & {
196
+ jsonPath?: string;
197
+ }): Promise<void>;
198
+ export declare const PURGE_REPORT_TABLES: string[];
199
+ //# sourceMappingURL=storage-report.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-report.d.ts","sourceRoot":"","sources":["../../src/lib/storage-report.ts"],"names":[],"mappings":"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"}