import json
import logging
-import urllib
from functools import wraps
import requests
-import urllib3
+from six.moves import urllib
from functest.utils.constants import CONST
import functest.utils.functest_utils as ft_utils
if current_scenario is None:
EnergyRecorder.stop()
else:
+ EnergyRecorder.logger.debug("Restoring previous scenario (%s/%s)",
+ current_scenario["scenario"],
+ current_scenario["step"])
EnergyRecorder.submit_scenario(
current_scenario["scenario"],
current_scenario["step"]
INITIAL_STEP = "running"
# Default connection timeout
- CONNECTION_TIMOUT = urllib3.Timeout(connect=1, read=3)
+ CONNECTION_TIMEOUT = 4
@staticmethod
def load_config():
assert environment
uri_comp = "/recorders/environment/"
- uri_comp += urllib.quote_plus(environment)
- EnergyRecorder.logger.debug(
- "API recorder at: " + energy_recorder_uri + uri_comp)
+ uri_comp += urllib.parse.quote_plus(environment)
# Creds
creds_usr = ft_utils.get_functest_config(
headers={
'content-type': 'application/json'
},
- timeout=EnergyRecorder.CONNECTION_TIMOUT)
+ timeout=EnergyRecorder.CONNECTION_TIMEOUT)
api_available = json.loads(resp.text)["status"] == "OK"
- except Exception: # pylint: disable=broad-except
- EnergyRecorder.logger.error(
- "Energy recorder API is not available")
+ EnergyRecorder.logger.info(
+ "API recorder available at : %s",
+ energy_recorder_uri + uri_comp)
+ except Exception as exc: # pylint: disable=broad-except
+ EnergyRecorder.logger.info(
+ "Energy recorder API is not available, cause=%s",
+ str(exc))
api_available = False
# Final config
EnergyRecorder.energy_recorder_api = {
return_status = True
# Ensure that connectyvity settings are loaded
if EnergyRecorder.load_config():
- EnergyRecorder.logger.debug("Submitting scenario")
+ EnergyRecorder.logger.debug("Submitting scenario (%s/%s)",
+ scenario, step)
# Create API payload
payload = {
headers={
'content-type': 'application/json'
},
- timeout=EnergyRecorder.CONNECTION_TIMOUT
+ timeout=EnergyRecorder.CONNECTION_TIMEOUT
)
if response.status_code != 200:
EnergyRecorder.logger.error(
headers={
'content-type': 'application/json'
},
- timeout=EnergyRecorder.CONNECTION_TIMOUT
+ timeout=EnergyRecorder.CONNECTION_TIMEOUT
)
if response.status_code != 200:
EnergyRecorder.logger.error(
headers={
'content-type': 'application/json'
},
- timeout=EnergyRecorder.CONNECTION_TIMOUT
+ timeout=EnergyRecorder.CONNECTION_TIMEOUT
)
if response.status_code != 200:
EnergyRecorder.logger.error(
response = requests.get(
EnergyRecorder.energy_recorder_api["uri"],
auth=EnergyRecorder.energy_recorder_api["auth"],
- timeout=EnergyRecorder.CONNECTION_TIMOUT
+ timeout=EnergyRecorder.CONNECTION_TIMEOUT
)
if response.status_code == 200:
return_value = json.loads(response.text)