robusta-dev / krr

Prometheus-based Kubernetes Resource Recommendations

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Failed to use custom strategy : "Cannot import name 'MaxCPULoader' "

hafx opened this issue · comments

commented

Describe the bug
Hello,
I don't succeed to use my own strategy.
Here the output of the command :

(venv) [root@selfhost bin]# python3.9 krr/custom_strategy.py mystrat -p http://127.0.0.1:8428
Traceback (most recent call last):
  File "/opt/python/krr/venv/bin/krr/custom_strategy.py", line 8, in <module>
    from robusta_krr.core.integrations.prometheus.metrics import MaxCPULoader, MaxMemoryLoader
ImportError: cannot import name 'MaxCPULoader' from 'robusta_krr.core.integrations.prometheus.metrics' (/opt/python/krr/venv/bin/krr/robusta_krr/core/integrations/prometheus/metrics/__init__.py)

To Reproduce
Using a custom strategy file.
My custom_strategy.py is a copy past of the example in : krr/examples/custom_strategy.py

Expected behavior
Using a custom strategy with success.

Server:

  • OS: Centos
  • Version of krr : 1.6.0

Others informations :
It works without problem if I use this command :
python3.9 krr/krr.py simple -p http://127.0.0.1:8428

All the requirement already satisfied :

(venv) [root@selfhost bin]# python3.9 pip install -r krr/requirements.txt
Ignoring colorama: markers 'python_version >= "3.9" and python_version < "3.12" and platform_system == "Windows"' don't match your environment
Requirement already satisfied: about-time==4.2.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 1)) (4.2.1)
Requirement already satisfied: aiostream==0.4.5 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 2)) (0.4.5)
Requirement already satisfied: alive-progress==3.1.2 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 3)) (3.1.2)
Requirement already satisfied: boto3==1.28.21 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 4)) (1.28.21)
Requirement already satisfied: botocore==1.31.21 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 5)) (1.31.21)
Requirement already satisfied: cachetools==5.3.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 6)) (5.3.0)
Requirement already satisfied: certifi==2022.12.7 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 7)) (2022.12.7)
Requirement already satisfied: charset-normalizer==3.0.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 8)) (3.0.1)
Requirement already satisfied: click==8.1.3 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 9)) (8.1.3)
Requirement already satisfied: commonmark==0.9.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 11)) (0.9.1)
Requirement already satisfied: contourpy==1.0.7 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 12)) (1.0.7)
Requirement already satisfied: cycler==0.11.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 13)) (0.11.0)
Requirement already satisfied: dateparser==1.1.7 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 14)) (1.1.7)
Requirement already satisfied: fonttools==4.39.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 15)) (4.39.0)
Requirement already satisfied: google-auth==2.16.2 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 16)) (2.16.2)
Requirement already satisfied: grapheme==0.6.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 17)) (0.6.0)
Requirement already satisfied: httmock==1.4.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 18)) (1.4.0)
Requirement already satisfied: idna==3.4 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 19)) (3.4)
Requirement already satisfied: importlib-resources==5.12.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 20)) (5.12.0)
Requirement already satisfied: jmespath==1.0.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 21)) (1.0.1)
Requirement already satisfied: kiwisolver==1.4.4 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 22)) (1.4.4)
Requirement already satisfied: kubernetes==26.1.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 23)) (26.1.0)
Requirement already satisfied: matplotlib==3.7.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 24)) (3.7.1)
Requirement already satisfied: numpy==1.24.2 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 25)) (1.24.2)
Requirement already satisfied: oauthlib==3.2.2 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 26)) (3.2.2)
Requirement already satisfied: packaging==23.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 27)) (23.0)
Requirement already satisfied: pandas==1.5.3 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 28)) (1.5.3)
Requirement already satisfied: pillow==9.4.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 29)) (9.4.0)
Requirement already satisfied: prometheus-api-client==0.5.3 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 30)) (0.5.3)
Requirement already satisfied: prometrix==0.1.10 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 31)) (0.1.10)
Requirement already satisfied: pyasn1-modules==0.2.8 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 32)) (0.2.8)
Requirement already satisfied: pyasn1==0.4.8 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 33)) (0.4.8)
Requirement already satisfied: pydantic==1.10.7 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 34)) (1.10.7)
Requirement already satisfied: pygments==2.14.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 35)) (2.14.0)
Requirement already satisfied: pyparsing==3.0.9 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 36)) (3.0.9)
Requirement already satisfied: python-dateutil==2.8.2 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 37)) (2.8.2)
Requirement already satisfied: pytz-deprecation-shim==0.1.0.post0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 38)) (0.1.0.post0)
Requirement already satisfied: pytz==2022.7.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 39)) (2022.7.1)
Requirement already satisfied: pyyaml==6.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 40)) (6.0)
Requirement already satisfied: regex==2022.10.31 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 41)) (2022.10.31)
Requirement already satisfied: requests-oauthlib==1.3.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 42)) (1.3.1)
Requirement already satisfied: requests==2.28.2 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 43)) (2.28.2)
Requirement already satisfied: rich==12.6.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 44)) (12.6.0)
Requirement already satisfied: rsa==4.9 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 45)) (4.9)
Requirement already satisfied: s3transfer==0.6.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 46)) (0.6.1)
Requirement already satisfied: setuptools==67.4.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 47)) (67.4.0)
Requirement already satisfied: shellingham==1.5.0.post1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 48)) (1.5.0.post1)
Requirement already satisfied: six==1.16.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 49)) (1.16.0)
Requirement already satisfied: slack-sdk==3.21.3 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 50)) (3.21.3)
Requirement already satisfied: typer==0.7.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from typer[all]==0.7.0->-r krr/requirements.txt (line 51)) (0.7.0)
Requirement already satisfied: typing-extensions==4.5.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 52)) (4.5.0)
Requirement already satisfied: tzdata==2022.7 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 53)) (2022.7)
Requirement already satisfied: tzlocal==4.2 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 54)) (4.2)
Requirement already satisfied: urllib3==1.26.14 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 55)) (1.26.14)
Requirement already satisfied: websocket-client==1.5.1 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 56)) (1.5.1)
Requirement already satisfied: zipp==3.15.0 in /opt/python/krr/venv/lib/python3.9/site-packages (from -r krr/requirements.txt (line 57)) (3.15.0)
Requirement already satisfied: colorama<0.5.0,>=0.4.3 in /opt/python/krr/venv/lib/python3.9/site-packages (from typer[all]==0.7.0->-r krr/requirements.txt (line 51)) (0.4.6)

Thanks

Just confirmed that this is fixed in 1.7.1