summaryrefslogtreecommitdiff
path: root/robusta_krr/formatters
diff options
context:
space:
mode:
authorLeaveMyYard <33721692+LeaveMyYard@users.noreply.github.com>2023-06-28 11:46:08 +0300
committerLeaveMyYard <33721692+LeaveMyYard@users.noreply.github.com>2023-06-28 11:46:08 +0300
commita7524ed069837524d520b79f5cdc955d694fe3c9 (patch)
tree9eac86afb2c2394d4764f104ed10a2c9096638a8 /robusta_krr/formatters
parentcac3bbd68bcbf61efb65d19412bcc947a031b313 (diff)
Add explanation when HPA prevents the recommendation
Diffstat (limited to 'robusta_krr/formatters')
-rw-r--r--robusta_krr/formatters/table.py13
1 files changed, 10 insertions, 3 deletions
diff --git a/robusta_krr/formatters/table.py b/robusta_krr/formatters/table.py
index cc6da69..846732a 100644
--- a/robusta_krr/formatters/table.py
+++ b/robusta_krr/formatters/table.py
@@ -1,5 +1,5 @@
import itertools
-from typing import Any
+from typing import Any, Optional
from rich.table import Table
@@ -22,7 +22,7 @@ def _format(value: RecommendationValue) -> str:
def __calc_diff(allocated, recommended, selector, multiplier=1) -> str:
- if recommended is None or isinstance(recommended, str) or selector != "requests":
+ if recommended is None or isinstance(recommended.value, str) or selector != "requests":
return ""
else:
reccomended_val = recommended.value if isinstance(recommended.value, (int, float)) else 0
@@ -34,6 +34,7 @@ def __calc_diff(allocated, recommended, selector, multiplier=1) -> str:
def _format_request_str(item: ResourceScan, resource: ResourceType, selector: str) -> str:
allocated = getattr(item.object.allocations, selector)[resource]
+ info = item.recommended.info.get(resource)
recommended = getattr(item.recommended, selector)[resource]
severity = recommended.severity
@@ -45,7 +46,13 @@ def _format_request_str(item: ResourceScan, resource: ResourceType, selector: st
diff = f"({diff}) "
return (
- diff + f"[{severity.color}]" + _format(allocated) + " -> " + _format(recommended.value) + f"[/{severity.color}]"
+ diff
+ + f"[{severity.color}]"
+ + _format(allocated)
+ + " -> "
+ + _format(recommended.value)
+ + f"[/{severity.color}]"
+ + (f" [grey27]({info})[/grey27]" if info else "")
)