diff --git a/src/components/MemoryViewer/MemoryViewer.tsx b/src/components/MemoryViewer/MemoryViewer.tsx
index 65b1b23ba..b5104bf59 100644
--- a/src/components/MemoryViewer/MemoryViewer.tsx
+++ b/src/components/MemoryViewer/MemoryViewer.tsx
@@ -40,8 +40,6 @@ export interface MemoryProgressViewerProps {
stats: TMemoryStats;
className?: string;
warningThreshold?: number;
- value?: number | string;
- capacity?: number | string;
formatValues: FormatProgressViewerValues;
percents?: boolean;
dangerThreshold?: number;
@@ -49,14 +47,15 @@ export interface MemoryProgressViewerProps {
export function MemoryViewer({
stats,
- value,
- capacity,
percents,
formatValues,
className,
warningThreshold = 60,
dangerThreshold = 80,
}: MemoryProgressViewerProps) {
+ const value = stats.AnonRss;
+ const capacity = stats.HardLimit;
+
const theme = useTheme();
let fillWidth =
Math.round((parseFloat(String(value)) / parseFloat(String(capacity))) * 100) || 0;
diff --git a/src/components/nodesColumns/columns.tsx b/src/components/nodesColumns/columns.tsx
index 88ba1f9ff..b93d6fe33 100644
--- a/src/components/nodesColumns/columns.tsx
+++ b/src/components/nodesColumns/columns.tsx
@@ -163,12 +163,7 @@ export function getMemoryColumn<
defaultOrder: DataTable.DESCENDING,
render: ({row}) => {
return row.MemoryStats ? (
-
+
) : (
+ {'Memory details'}
+
+ {memoryStats ? (
+
+ ) : (
+
+ )}
+
);
diff --git a/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss b/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss
index 87b8e594f..003311176 100644
--- a/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss
+++ b/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.scss
@@ -63,4 +63,9 @@
&__storage-info {
margin-bottom: 36px;
}
+
+ &__memory-info {
+ width: 300px;
+ margin-bottom: 36px;
+ }
}
diff --git a/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.tsx b/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.tsx
index 3700207db..1a1304057 100644
--- a/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.tsx
+++ b/src/containers/Tenant/Diagnostics/TenantOverview/TenantOverview.tsx
@@ -123,7 +123,14 @@ export function TenantOverview({
return ;
}
case TENANT_METRICS_TABS_IDS.memory: {
- return ;
+ return (
+
+ );
}
case TENANT_METRICS_TABS_IDS.healthcheck: {
return ;
diff --git a/src/services/api.ts b/src/services/api.ts
index df8d7d0a9..7949c0e0d 100644
--- a/src/services/api.ts
+++ b/src/services/api.ts
@@ -201,6 +201,7 @@ export class YdbEmbeddedAPI extends AxiosWrapper {
path,
tablets: false,
storage: true,
+ memory: true,
},
{concurrentId, requestConfig: {signal}},
);
diff --git a/src/types/api/tenant.ts b/src/types/api/tenant.ts
index a4d2d1bef..08b5947e7 100644
--- a/src/types/api/tenant.ts
+++ b/src/types/api/tenant.ts
@@ -1,5 +1,5 @@
import type {EFlag} from './enums';
-import type {TPoolStats, TSystemStateInfo} from './nodes';
+import type {TMemoryStats, TPoolStats, TSystemStateInfo} from './nodes';
import type {TTabletStateInfo} from './tablet';
/**
@@ -50,6 +50,7 @@ export interface TTenant {
MemoryUsed?: string; // Actual memory consumption
/** uint64 */
MemoryLimit?: string;
+ MemoryStats?: TMemoryStats;
/** double */
CoresUsed?: number; // Actual cpu consumption
/** uint64 */