@abyss-project/storage 1.0.21 → 1.0.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.
- package/dist/api/hourly-metrics.api.d.ts +4 -0
- package/dist/api/hourly-metrics.api.js +16 -0
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.js +1 -0
- package/dist/types/interface/api/index.d.ts +4 -0
- package/dist/types/interface/api/index.js +4 -0
- package/dist/types/interface/api/requests/hourly-metrics.request.d.ts +28 -0
- package/dist/types/interface/api/requests/hourly-metrics.request.js +2 -0
- package/dist/types/interface/api/requests/metrics.admin.request.d.ts +13 -0
- package/dist/types/interface/api/requests/metrics.admin.request.js +2 -0
- package/dist/types/interface/api/responses/hourly-metrics.response.d.ts +82 -0
- package/dist/types/interface/api/responses/hourly-metrics.response.js +2 -0
- package/dist/types/interface/api/responses/metrics.admin.response.d.ts +19 -0
- package/dist/types/interface/api/responses/metrics.admin.response.js +2 -0
- package/dist/types/interface/api/responses/report.admin.response.d.ts +13 -25
- package/dist/types/interface/index.d.ts +2 -0
- package/dist/types/interface/index.js +2 -0
- package/dist/types/interface/models/application-file-thumbnail.model.d.ts +1 -0
- package/dist/types/interface/models/application-file.model.d.ts +1 -0
- package/dist/types/interface/models/application-hourly-metrics.model.d.ts +41 -0
- package/dist/types/interface/models/application-hourly-metrics.model.js +2 -0
- package/dist/types/interface/models/application-lifetime-metrics.model.d.ts +27 -0
- package/dist/types/interface/models/application-lifetime-metrics.model.js +2 -0
- package/dist/types/interface/models/application-store-entry.model.d.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { IGetStorageHourlyMetricsParams, IGetStorageHourlyMetricsQuery, IGetStorageHourlyMetricsResponse, IGetAggregatedStorageHourlyMetricsParams, IGetAggregatedStorageHourlyMetricsQuery, IGetAggregatedStorageHourlyMetricsResponse, IGetStorageHourlyMetricsComparisonParams, IGetStorageHourlyMetricsComparisonQuery, IGetStorageHourlyMetricsComparisonResponse } from '../types';
|
|
2
|
+
export declare const getStorageHourlyMetrics: (params: IGetStorageHourlyMetricsParams, query: IGetStorageHourlyMetricsQuery) => Promise<IGetStorageHourlyMetricsResponse>;
|
|
3
|
+
export declare const getAggregatedStorageHourlyMetrics: (params: IGetAggregatedStorageHourlyMetricsParams, query: IGetAggregatedStorageHourlyMetricsQuery) => Promise<IGetAggregatedStorageHourlyMetricsResponse>;
|
|
4
|
+
export declare const getStorageHourlyMetricsComparison: (params: IGetStorageHourlyMetricsComparisonParams, query: IGetStorageHourlyMetricsComparisonQuery) => Promise<IGetStorageHourlyMetricsComparisonResponse>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getStorageHourlyMetricsComparison = exports.getAggregatedStorageHourlyMetrics = exports.getStorageHourlyMetrics = void 0;
|
|
4
|
+
const __1 = require("..");
|
|
5
|
+
const getStorageHourlyMetrics = async (params, query) => {
|
|
6
|
+
return (await __1.AbyssStorageCore.axios.get(`metrics/hourly/${params.projectId}`, { params: query })).data;
|
|
7
|
+
};
|
|
8
|
+
exports.getStorageHourlyMetrics = getStorageHourlyMetrics;
|
|
9
|
+
const getAggregatedStorageHourlyMetrics = async (params, query) => {
|
|
10
|
+
return (await __1.AbyssStorageCore.axios.get(`metrics/hourly/${params.projectId}/aggregated`, { params: query })).data;
|
|
11
|
+
};
|
|
12
|
+
exports.getAggregatedStorageHourlyMetrics = getAggregatedStorageHourlyMetrics;
|
|
13
|
+
const getStorageHourlyMetricsComparison = async (params, query) => {
|
|
14
|
+
return (await __1.AbyssStorageCore.axios.get(`metrics/hourly/${params.projectId}/comparison`, { params: query })).data;
|
|
15
|
+
};
|
|
16
|
+
exports.getStorageHourlyMetricsComparison = getStorageHourlyMetricsComparison;
|
package/dist/api/index.d.ts
CHANGED
package/dist/api/index.js
CHANGED
|
@@ -33,3 +33,4 @@ __exportStar(require("./application-store.admin.api"), exports);
|
|
|
33
33
|
__exportStar(require("./application-store.public.api"), exports);
|
|
34
34
|
__exportStar(require("./application-store.api"), exports);
|
|
35
35
|
__exportStar(require("./report.admin.api"), exports);
|
|
36
|
+
__exportStar(require("./hourly-metrics.api"), exports);
|
|
@@ -20,6 +20,8 @@ export * from './requests/application-store.admin.request';
|
|
|
20
20
|
export * from './requests/application-store.public.request';
|
|
21
21
|
export * from './requests/application-store.request';
|
|
22
22
|
export * from './requests/report.admin.request';
|
|
23
|
+
export * from './requests/metrics.admin.request';
|
|
24
|
+
export * from './requests/hourly-metrics.request';
|
|
23
25
|
export * from './responses/application.response';
|
|
24
26
|
export * from './responses/application.admin.response';
|
|
25
27
|
export * from './responses/application-file.admin.response';
|
|
@@ -38,3 +40,5 @@ export * from './responses/application-store.admin.response';
|
|
|
38
40
|
export * from './responses/application-store.public.response';
|
|
39
41
|
export * from './responses/application-store.response';
|
|
40
42
|
export * from './responses/report.admin.response';
|
|
43
|
+
export * from './responses/metrics.admin.response';
|
|
44
|
+
export * from './responses/hourly-metrics.response';
|
|
@@ -36,6 +36,8 @@ __exportStar(require("./requests/application-store.admin.request"), exports);
|
|
|
36
36
|
__exportStar(require("./requests/application-store.public.request"), exports);
|
|
37
37
|
__exportStar(require("./requests/application-store.request"), exports);
|
|
38
38
|
__exportStar(require("./requests/report.admin.request"), exports);
|
|
39
|
+
__exportStar(require("./requests/metrics.admin.request"), exports);
|
|
40
|
+
__exportStar(require("./requests/hourly-metrics.request"), exports);
|
|
39
41
|
__exportStar(require("./responses/application.response"), exports);
|
|
40
42
|
__exportStar(require("./responses/application.admin.response"), exports);
|
|
41
43
|
__exportStar(require("./responses/application-file.admin.response"), exports);
|
|
@@ -54,3 +56,5 @@ __exportStar(require("./responses/application-store.admin.response"), exports);
|
|
|
54
56
|
__exportStar(require("./responses/application-store.public.response"), exports);
|
|
55
57
|
__exportStar(require("./responses/application-store.response"), exports);
|
|
56
58
|
__exportStar(require("./responses/report.admin.response"), exports);
|
|
59
|
+
__exportStar(require("./responses/metrics.admin.response"), exports);
|
|
60
|
+
__exportStar(require("./responses/hourly-metrics.response"), exports);
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export interface IGetStorageHourlyMetricsParams {
|
|
2
|
+
projectId: string;
|
|
3
|
+
}
|
|
4
|
+
export interface IGetStorageHourlyMetricsQuery {
|
|
5
|
+
applicationIds?: string[];
|
|
6
|
+
startDate?: Date;
|
|
7
|
+
endDate?: Date;
|
|
8
|
+
limit?: number;
|
|
9
|
+
offset?: number;
|
|
10
|
+
granularity?: 'hour' | 'day' | 'week' | 'month';
|
|
11
|
+
}
|
|
12
|
+
export interface IGetAggregatedStorageHourlyMetricsParams {
|
|
13
|
+
projectId: string;
|
|
14
|
+
}
|
|
15
|
+
export interface IGetAggregatedStorageHourlyMetricsQuery {
|
|
16
|
+
applicationIds?: string[];
|
|
17
|
+
startDate?: Date;
|
|
18
|
+
endDate?: Date;
|
|
19
|
+
}
|
|
20
|
+
export interface IGetStorageHourlyMetricsComparisonParams {
|
|
21
|
+
projectId: string;
|
|
22
|
+
}
|
|
23
|
+
export interface IGetStorageHourlyMetricsComparisonQuery {
|
|
24
|
+
applicationIds: string[];
|
|
25
|
+
startDate?: Date;
|
|
26
|
+
endDate?: Date;
|
|
27
|
+
metrics?: string[];
|
|
28
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface IFillLifetimeMetricsAdminBody {
|
|
2
|
+
applicationIds?: string[];
|
|
3
|
+
force?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IFillHourlyMetricsAdminBody {
|
|
6
|
+
applicationIds?: string[];
|
|
7
|
+
days?: number;
|
|
8
|
+
force?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface IAggregateHourAdminBody {
|
|
11
|
+
applicationIds?: string[];
|
|
12
|
+
applicationCronTaskHistoryId?: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { IResponse, IApplicationHourlyMetrics, FilesByType } from '../..';
|
|
2
|
+
export interface IStorageHourlyMetricsRecord extends Omit<IApplicationHourlyMetrics, 'application'> {
|
|
3
|
+
}
|
|
4
|
+
export interface IAggregatedStorageMetricsSummary {
|
|
5
|
+
totalFiles: number;
|
|
6
|
+
totalFilesSize: number;
|
|
7
|
+
totalCreatedFiles: number;
|
|
8
|
+
totalCreatedFilesSize: number;
|
|
9
|
+
totalDeletedFiles: number;
|
|
10
|
+
totalDeletedFilesSize: number;
|
|
11
|
+
netFileChange: number;
|
|
12
|
+
netSizeChange: number;
|
|
13
|
+
totalThumbnails: number;
|
|
14
|
+
totalThumbnailsSize: number;
|
|
15
|
+
totalCreatedThumbnails: number;
|
|
16
|
+
totalCreatedThumbnailsSize: number;
|
|
17
|
+
totalDeletedThumbnails: number;
|
|
18
|
+
totalDeletedThumbnailsSize: number;
|
|
19
|
+
totalPreSignUrls: number;
|
|
20
|
+
usedPreSignUrls: number;
|
|
21
|
+
preSignUrlUsageRate: number;
|
|
22
|
+
uploadPreSignUrls: number;
|
|
23
|
+
downloadPreSignUrls: number;
|
|
24
|
+
writePreSignUrls: number;
|
|
25
|
+
usedUploadPreSignUrls: number;
|
|
26
|
+
usedDownloadPreSignUrls: number;
|
|
27
|
+
usedWritePreSignUrls: number;
|
|
28
|
+
totalWebhooks: number;
|
|
29
|
+
successfulWebhooks: number;
|
|
30
|
+
failedWebhooks: number;
|
|
31
|
+
webhookSuccessRate: number;
|
|
32
|
+
totalStoreEntries: number;
|
|
33
|
+
filesByMimeType: Record<string, FilesByType>;
|
|
34
|
+
}
|
|
35
|
+
export interface IStorageMetricsTimeSeriesPoint {
|
|
36
|
+
timestamp: string;
|
|
37
|
+
value: number;
|
|
38
|
+
}
|
|
39
|
+
export interface IStorageMetricsTimeSeries {
|
|
40
|
+
metricName: string;
|
|
41
|
+
applicationId: string;
|
|
42
|
+
applicationName?: string;
|
|
43
|
+
data: IStorageMetricsTimeSeriesPoint[];
|
|
44
|
+
}
|
|
45
|
+
export interface IGetStorageHourlyMetricsData {
|
|
46
|
+
metricsByApplication: Record<string, IStorageHourlyMetricsRecord[]>;
|
|
47
|
+
totalByApplication: Record<string, number>;
|
|
48
|
+
periodStart: string;
|
|
49
|
+
periodEnd: string;
|
|
50
|
+
}
|
|
51
|
+
export type IGetStorageHourlyMetricsResponse = IResponse<IGetStorageHourlyMetricsData>;
|
|
52
|
+
export interface IGetAggregatedStorageHourlyMetricsData {
|
|
53
|
+
aggregatedByApplication: Record<string, IAggregatedStorageMetricsSummary>;
|
|
54
|
+
overallAggregated: IAggregatedStorageMetricsSummary;
|
|
55
|
+
periodStart: string;
|
|
56
|
+
periodEnd: string;
|
|
57
|
+
hoursInPeriod: number;
|
|
58
|
+
}
|
|
59
|
+
export type IGetAggregatedStorageHourlyMetricsResponse = IResponse<IGetAggregatedStorageHourlyMetricsData>;
|
|
60
|
+
export interface IApplicationStorageMetricsComparison {
|
|
61
|
+
applicationId: string;
|
|
62
|
+
applicationName?: string;
|
|
63
|
+
aggregated: IAggregatedStorageMetricsSummary;
|
|
64
|
+
trends: {
|
|
65
|
+
totalFiles: IStorageMetricsTimeSeriesPoint[];
|
|
66
|
+
totalFilesSize: IStorageMetricsTimeSeriesPoint[];
|
|
67
|
+
createdFiles: IStorageMetricsTimeSeriesPoint[];
|
|
68
|
+
preSignUrls: IStorageMetricsTimeSeriesPoint[];
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
export interface IGetStorageHourlyMetricsComparisonData {
|
|
72
|
+
applications: IApplicationStorageMetricsComparison[];
|
|
73
|
+
periodStart: string;
|
|
74
|
+
periodEnd: string;
|
|
75
|
+
}
|
|
76
|
+
export type IGetStorageHourlyMetricsComparisonResponse = IResponse<IGetStorageHourlyMetricsComparisonData>;
|
|
77
|
+
export interface IGetStorageMetricsTimeSeriesData {
|
|
78
|
+
series: IStorageMetricsTimeSeries[];
|
|
79
|
+
periodStart: string;
|
|
80
|
+
periodEnd: string;
|
|
81
|
+
}
|
|
82
|
+
export type IGetStorageMetricsTimeSeriesResponse = IResponse<IGetStorageMetricsTimeSeriesData>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IResponse } from '../..';
|
|
2
|
+
export interface IFillLifetimeMetricsData {
|
|
3
|
+
success: boolean;
|
|
4
|
+
message: string;
|
|
5
|
+
requestId: string;
|
|
6
|
+
}
|
|
7
|
+
export type IFillLifetimeMetricsAdminResponse = IResponse<IFillLifetimeMetricsData>;
|
|
8
|
+
export interface IFillHourlyMetricsData {
|
|
9
|
+
success: boolean;
|
|
10
|
+
message: string;
|
|
11
|
+
requestId: string;
|
|
12
|
+
}
|
|
13
|
+
export type IFillHourlyMetricsAdminResponse = IResponse<IFillHourlyMetricsData>;
|
|
14
|
+
export interface IAggregateHourData {
|
|
15
|
+
success: boolean;
|
|
16
|
+
message: string;
|
|
17
|
+
requestId: string;
|
|
18
|
+
}
|
|
19
|
+
export type IAggregateHourAdminResponse = IResponse<IAggregateHourData>;
|
|
@@ -10,42 +10,30 @@ export interface PreSignUrlsByType {
|
|
|
10
10
|
write: PreSignUrlTypeStats;
|
|
11
11
|
}
|
|
12
12
|
export interface FilesByType {
|
|
13
|
-
mimeType: string;
|
|
14
13
|
count: number;
|
|
15
14
|
totalSize: number;
|
|
16
15
|
}
|
|
17
|
-
export interface
|
|
16
|
+
export interface CoreLifetimeMetrics {
|
|
18
17
|
totalFiles: number;
|
|
19
18
|
totalSize: number;
|
|
20
19
|
totalPreSignUrlsGenerated: number;
|
|
21
20
|
totalPreSignUrlsUsed: number;
|
|
22
21
|
averageFileSize: number;
|
|
23
|
-
filesByType:
|
|
22
|
+
filesByType: Record<string, FilesByType>;
|
|
24
23
|
preSignUrlsByType: PreSignUrlsByType;
|
|
25
|
-
largestFile: {
|
|
26
|
-
id: string;
|
|
27
|
-
name: string;
|
|
28
|
-
size: number;
|
|
29
|
-
mimeType: string;
|
|
30
|
-
} | null;
|
|
31
24
|
mostUploadedFileType: string;
|
|
32
|
-
topFilesByPreSignUrlUsage: Array<{
|
|
33
|
-
fileId: string;
|
|
34
|
-
fileName: string;
|
|
35
|
-
uploadCount: number;
|
|
36
|
-
downloadCount: number;
|
|
37
|
-
writeCount: number;
|
|
38
|
-
totalUsageCount: number;
|
|
39
|
-
}>;
|
|
40
25
|
}
|
|
41
|
-
export interface
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
26
|
+
export interface LifetimeMetrics extends CoreLifetimeMetrics {
|
|
27
|
+
}
|
|
28
|
+
export interface ApplicationMetrics extends CoreLifetimeMetrics {
|
|
29
|
+
createdFiles: number;
|
|
30
|
+
createdFilesSize: number;
|
|
31
|
+
deletedFiles: number;
|
|
32
|
+
deletedFilesSize: number;
|
|
33
|
+
createdThumbnails: number;
|
|
34
|
+
createdThumbnailsSize: number;
|
|
35
|
+
deletedThumbnails: number;
|
|
36
|
+
deletedThumbnailsSize: number;
|
|
49
37
|
largestFile: {
|
|
50
38
|
id: string;
|
|
51
39
|
name: string;
|
|
@@ -6,6 +6,8 @@ export * from './models/pre-sign-url.model';
|
|
|
6
6
|
export * from './models/application-file-thumbnail.model';
|
|
7
7
|
export * from './models/stream-media.model';
|
|
8
8
|
export * from './models/application-store-entry.model';
|
|
9
|
+
export * from './models/application-hourly-metrics.model';
|
|
10
|
+
export * from './models/application-lifetime-metrics.model';
|
|
9
11
|
export * from './api';
|
|
10
12
|
export * from './dto';
|
|
11
13
|
export * from './constants';
|
|
@@ -22,6 +22,8 @@ __exportStar(require("./models/pre-sign-url.model"), exports);
|
|
|
22
22
|
__exportStar(require("./models/application-file-thumbnail.model"), exports);
|
|
23
23
|
__exportStar(require("./models/stream-media.model"), exports);
|
|
24
24
|
__exportStar(require("./models/application-store-entry.model"), exports);
|
|
25
|
+
__exportStar(require("./models/application-hourly-metrics.model"), exports);
|
|
26
|
+
__exportStar(require("./models/application-lifetime-metrics.model"), exports);
|
|
25
27
|
__exportStar(require("./api"), exports);
|
|
26
28
|
__exportStar(require("./dto"), exports);
|
|
27
29
|
__exportStar(require("./constants"), exports);
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { FilesByType } from '../api';
|
|
2
|
+
import { IApplication } from './application.model';
|
|
3
|
+
export interface IApplicationHourlyMetrics {
|
|
4
|
+
id: string;
|
|
5
|
+
applicationId: string;
|
|
6
|
+
hour: Date;
|
|
7
|
+
totalFiles: number;
|
|
8
|
+
totalFilesSize: number;
|
|
9
|
+
createdFiles: number;
|
|
10
|
+
createdFilesSize: number;
|
|
11
|
+
deletedFiles: number;
|
|
12
|
+
deletedFilesSize: number;
|
|
13
|
+
totalThumbnails: number;
|
|
14
|
+
totalThumbnailsSize: number;
|
|
15
|
+
createdThumbnails: number;
|
|
16
|
+
createdThumbnailsSize: number;
|
|
17
|
+
deletedThumbnails: number;
|
|
18
|
+
deletedThumbnailsSize: number;
|
|
19
|
+
totalPreSignUrls: number;
|
|
20
|
+
usedPreSignUrls: number;
|
|
21
|
+
uploadPreSignUrls: number;
|
|
22
|
+
downloadPreSignUrls: number;
|
|
23
|
+
writePreSignUrls: number;
|
|
24
|
+
usedUploadPreSignUrls: number;
|
|
25
|
+
usedDownloadPreSignUrls: number;
|
|
26
|
+
usedWritePreSignUrls: number;
|
|
27
|
+
totalWebhooks: number;
|
|
28
|
+
successfulWebhooks: number;
|
|
29
|
+
failedWebhooks: number;
|
|
30
|
+
totalStoreEntries: number;
|
|
31
|
+
filesByMimeType: Record<string, FilesByType>;
|
|
32
|
+
topLargestFiles: {
|
|
33
|
+
id: string;
|
|
34
|
+
name: string;
|
|
35
|
+
size: number;
|
|
36
|
+
mimeType: string;
|
|
37
|
+
}[];
|
|
38
|
+
createdAt?: Date;
|
|
39
|
+
updatedAt?: Date;
|
|
40
|
+
application?: IApplication;
|
|
41
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { IApplication } from './application.model';
|
|
2
|
+
export interface IApplicationLifetimeMetrics {
|
|
3
|
+
id: string;
|
|
4
|
+
applicationId: string;
|
|
5
|
+
totalFiles: number;
|
|
6
|
+
totalFilesSize: number;
|
|
7
|
+
deletedFiles: number;
|
|
8
|
+
deletedFilesSize: number;
|
|
9
|
+
totalThumbnails: number;
|
|
10
|
+
totalThumbnailsSize: number;
|
|
11
|
+
totalPreSignUrls: number;
|
|
12
|
+
usedPreSignUrls: number;
|
|
13
|
+
uploadPreSignUrls: number;
|
|
14
|
+
downloadPreSignUrls: number;
|
|
15
|
+
writePreSignUrls: number;
|
|
16
|
+
usedUploadPreSignUrls: number;
|
|
17
|
+
usedDownloadPreSignUrls: number;
|
|
18
|
+
usedWritePreSignUrls: number;
|
|
19
|
+
totalWebhooks: number;
|
|
20
|
+
successfulWebhooks: number;
|
|
21
|
+
failedWebhooks: number;
|
|
22
|
+
totalStoreEntries: number;
|
|
23
|
+
lastCalculatedAt: Date;
|
|
24
|
+
createdAt?: Date;
|
|
25
|
+
updatedAt?: Date;
|
|
26
|
+
application?: IApplication;
|
|
27
|
+
}
|