mirror of
https://github.com/skooner-k8s/skooner.git
synced 2026-05-05 15:26:45 +00:00
Merge pull request #309 from defenseunicorns/fix-pod-and-node-views-in-kube-system-ns
Fix pod and node views in kube system namespace.
This commit is contained in:
@@ -24,9 +24,9 @@ export default function NodeCpuChart({items, metrics}: {items?: Node[], metrics?
|
||||
function getNodeCpuTotals(items?: Node[], metrics?: _.Dictionary<Metrics>) {
|
||||
if (!items || !metrics) return null;
|
||||
|
||||
const metricValues = Object.values(metrics);
|
||||
const used = _.sumBy(metricValues, x => parseCpu(x.usage.cpu)) / TO_ONE_CPU;
|
||||
const available = _.sumBy(items, x => parseCpu(x.status.capacity.cpu)) / TO_ONE_CPU;
|
||||
const metricValues = Object.values(metrics) || [];
|
||||
|
||||
const used = _.sumBy(metricValues, x => parseCpu(_.get(x, 'usage.cpu'))) / TO_ONE_CPU;
|
||||
const available = _.sumBy(items, x => parseCpu(_.get(x, 'status.capacity.cpu'))) / TO_ONE_CPU;
|
||||
return {used, available};
|
||||
}
|
||||
|
||||
@@ -33,9 +33,9 @@ export default function NodeRamChart({items, metrics}: {items?: Node[], metrics?
|
||||
function getNodeRamTotals(items?: Node[], metrics?: _.Dictionary<Metrics>) {
|
||||
if (!items || !metrics) return undefined;
|
||||
|
||||
const metricValues = Object.values(metrics);
|
||||
const used = _.sumBy(metricValues, x => parseRam(x.usage.memory));
|
||||
const available = _.sumBy(items, x => parseRam(x.status.capacity.memory));
|
||||
const metricValues = Object.values(metrics) || [];
|
||||
|
||||
const used = _.sumBy(metricValues, x => parseRam(_.get(x, 'usage.memory')));
|
||||
const available = _.sumBy(items, x => parseRam(_.get(x, 'status.capacity.memory')));
|
||||
return {used, available};
|
||||
}
|
||||
|
||||
@@ -60,7 +60,7 @@ export default class NodeView extends Base<Props, State> {
|
||||
|
||||
<ChartsContainer>
|
||||
<div className='charts_item'>
|
||||
{item ? (
|
||||
{item && item.status ? (
|
||||
<span className='charts_number'>{getUptime(item)}</span>
|
||||
) : (
|
||||
<LoadingChart />
|
||||
@@ -84,7 +84,8 @@ export default class NodeView extends Base<Props, State> {
|
||||
</ChartsContainer>
|
||||
|
||||
<div className='contentPanel'>
|
||||
{!item ? <Loading /> : (
|
||||
{!item && <Loading />}
|
||||
{item && item.status ? (
|
||||
<div>
|
||||
<MetadataFields item={item} />
|
||||
<Field name='Kernel Version' value={item.status.nodeInfo.kernelVersion} />
|
||||
@@ -96,12 +97,13 @@ export default class NodeView extends Base<Props, State> {
|
||||
<Field name='Kube Proxy' value={item.status.nodeInfo.kubeProxyVersion} />
|
||||
<Field name='Taints'>{getTaints(item)}</Field>
|
||||
</div>
|
||||
)}
|
||||
) : null}
|
||||
</div>
|
||||
|
||||
<div className='contentPanel_header'>Conditions</div>
|
||||
<div className='contentPanel'>
|
||||
{!item ? <Loading /> : (
|
||||
{!item && <Loading />}
|
||||
{item && item.status ? (
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
@@ -124,7 +126,7 @@ export default class NodeView extends Base<Props, State> {
|
||||
))}
|
||||
</tbody>
|
||||
</table>
|
||||
)}
|
||||
) : null}
|
||||
</div>
|
||||
|
||||
<div className='contentPanel_header'>Pods</div>
|
||||
|
||||
@@ -50,9 +50,14 @@ export default class PodView extends Base<Props, State> {
|
||||
const {item, metrics, events} = this.state || {};
|
||||
|
||||
const errors = getErrors(item);
|
||||
const filteredEvents = filterByOwner(events, item);
|
||||
// @ts-ignore
|
||||
const filteredMetrics = getMetrics(item && [item], metrics && [metrics]);
|
||||
let filteredEvents;
|
||||
let filteredMetrics;
|
||||
|
||||
if (item?.metadata) {
|
||||
filteredEvents = filterByOwner(events, item);
|
||||
// @ts-ignore
|
||||
filteredMetrics = getMetrics(item && [item], metrics && [metrics]);
|
||||
}
|
||||
|
||||
return (
|
||||
<div id='content'>
|
||||
@@ -87,7 +92,8 @@ export default class PodView extends Base<Props, State> {
|
||||
</ChartsContainer>
|
||||
|
||||
<div className='contentPanel'>
|
||||
{!item ? <Loading /> : (
|
||||
{!item && <Loading />}
|
||||
{item && item.status ? (
|
||||
<div>
|
||||
<MetadataFields item={item} />
|
||||
<Field name='Owned By'>
|
||||
@@ -123,7 +129,7 @@ export default class PodView extends Base<Props, State> {
|
||||
</Field>
|
||||
<Field name='Selector'>{objectMap(item.spec.nodeSelector)}</Field>
|
||||
</div>
|
||||
)}
|
||||
) : null}
|
||||
</div>
|
||||
|
||||
<ContainersPanel spec={item && item.spec} />
|
||||
|
||||
Reference in New Issue
Block a user