@@ -233,15 +233,15 @@ |
else: |
if not(resq_Centroid.is_finished()): |
e = resq_Centroid.get_error() |
- logging.warning(f"{service_name} | Attempt #{attempt} failed: {e}") |
+ logging.warning(f"{service_name} | Attempt #{attempt} failed: {e} |{latitude}|{longitude}|") |
resq_Centroid, multipolygon = centroid_service_call(latitude, longitude, attempt+1) |
else: |
multipolygon = resq_Centroid.data["mupolygonkey"]["value"] |
- logging.info(f"{service_name} | Attempt #{attempt} succeded on ({multipolygon},{latitude},{longitude})") |
+ logging.info(f"{service_name} | Attempt #{attempt} succeded |{latitude}|{longitude}|{multipolygon}") |
logging.debug(f"Retrieved data: {resq_Centroid.data}") |
return resq_Centroid, multipolygon |
|
-def erosion_service_call(multipolygon, attempt=1): |
+def erosion_service_call(latitude, longitude, multipolygon, attempt=1): |
|
service_name = 'erosion service' |
## add params to weps erosion service |
@@ -250,20 +250,20 @@ |
req_erosion.add_metainfo({"verbose":True}) |
#logging.warning(req_erosion) |
|
- ## execute weps erosoin service |
+ ## execute weps erosion service |
resq_erosion = req_erosion.execute(erosionService) |
if (attempt > max_attempts): |
raise MaxAttemptsException(f"Maximum number of attempts reached: {max_attempts}") |
else: |
if not(resq_erosion.is_finished()): |
e = resq_erosion.get_error() |
- logging.warning(f"{service_name} | Attempt #{attempt} failed on multipolygon key {multipolygon}: {e}") |
+ logging.warning(f"{service_name} | Attempt #{attempt} failed: {e} |{latitude}|{longitude}|{multipolygon}") |
# increment_counter(counter) |
# if counter.value > acceptable_failure_num: |
# raise MaxFailuresException() |
- resq_erosion = erosion_service_call(multipolygon, attempt+1) |
+ resq_erosion = erosion_service_call(latitude, longitude, multipolygon, attempt+1) |
else: |
- logging.info(f"{service_name} | Attempt #{attempt} succeded on {multipolygon}: {resq_erosion.data}") |
+ logging.info(f"{service_name} | Attempt #{attempt} succeded: {resq_erosion.data} |{latitude}|{longitude}|{multipolygon}") |
return resq_erosion |
|
def execute(arg): |
@@ -278,77 +278,77 @@ |
resq_Centroid, multipolygon = centroid_service_call(latitude, longitude) |
# logging.info(resq_Centroid.data) |
|
- resq_erosion = erosion_service_call(multipolygon) |
+# resq_erosion = erosion_service_call(multipolygon) |
#logging.info(resq_erosion) |
|
- if resq_erosion is None: |
- raise TypeError() |
+# if resq_erosion is None: |
+# raise TypeError() |
|
- c_res = Results(idx, latitude, longitude) |
- c_res.add_mupolygonkey(multipolygon) |
- c_res.add_state(resq_erosion.data['state']['value']) |
- c_res.add_county(resq_erosion.data['county']['value']) |
+# c_res = Results(idx, latitude, longitude) |
+# c_res.add_mupolygonkey(multipolygon) |
+# c_res.add_state(resq_erosion.data['state']['value']) |
+# c_res.add_county(resq_erosion.data['county']['value']) |
|
- jl_all = [ s for s in resq_erosion.data['detailed_output']['value'] if s[0]['value'] == True ] |
+# jl_all = [ s for s in resq_erosion.data['detailed_output']['value'] if s[0]['value'] == True ] |
|
- if len(jl_all) > 1: |
- ## check which is the main component |
- max_comppct_r = 0 |
- for j in jl_all: |
- c_comppct_r = float(extract_json_key_value(j, key='comppct_r')) |
- if c_comppct_r > max_comppct_r: |
- max_comppct_r = c_comppct_r |
- jl = j |
- else: |
- jl = jl_all[0] |
+# if len(jl_all) > 1: |
+# ## check which is the main component |
+# max_comppct_r = 0 |
+# for j in jl_all: |
+# c_comppct_r = float(extract_json_key_value(j, key='comppct_r')) |
+# if c_comppct_r > max_comppct_r: |
+# max_comppct_r = c_comppct_r |
+# jl = j |
+# else: |
+# jl = jl_all[0] |
|
- # cokey |
- c_res.add_cokey(extract_json_key_value(jl, key='cokey')) |
- # compname |
- c_res.add_compname(extract_json_key_value(jl, key='compname')) |
- # claytotal_r |
- c_res.add_wepp_clay(extract_json_key_value(jl, key='sol_wepp_surface_clay')) |
- c_res.add_weps_clay(extract_json_key_value(jl, key='ifc_weps_surface_clay')) |
- # sandtotal_r |
- c_res.add_wepp_sand(extract_json_key_value(jl, key='sol_wepp_surface_sand')) |
- c_res.add_weps_sand(extract_json_key_value(jl, key='ifc_weps_surface_sand')) |
- # silttotal_r |
- c_res.add_weps_silt(extract_json_key_value(jl, key='ifc_weps_surface_silt')) |
- # wilting point |
- c_res.add_weps_wp(extract_json_key_value(jl, key='ifc_weps_surface_wilting_point')) |
+# # cokey |
+# c_res.add_cokey(extract_json_key_value(jl, key='cokey')) |
+# # compname |
+# c_res.add_compname(extract_json_key_value(jl, key='compname')) |
+# # claytotal_r |
+# c_res.add_wepp_clay(extract_json_key_value(jl, key='sol_wepp_surface_clay')) |
+# c_res.add_weps_clay(extract_json_key_value(jl, key='ifc_weps_surface_clay')) |
+# # sandtotal_r |
+# c_res.add_wepp_sand(extract_json_key_value(jl, key='sol_wepp_surface_sand')) |
+# c_res.add_weps_sand(extract_json_key_value(jl, key='ifc_weps_surface_sand')) |
+# # silttotal_r |
+# c_res.add_weps_silt(extract_json_key_value(jl, key='ifc_weps_surface_silt')) |
+# # wilting point |
+# c_res.add_weps_wp(extract_json_key_value(jl, key='ifc_weps_surface_wilting_point')) |
|
- c_res.add_WtAvgWaterSoilLoss(resq_erosion.data["WtAvgWaterSoilLoss"]['value']) |
- c_res.add_WtAvgWindSoilLoss(resq_erosion.data["WtAvgWindSoilLoss"]['value']) |
- c_res.add_WtAvgTotalSoilLoss(resq_erosion.data["WtAvgTotalSoilLoss"]['value']) |
- c_res.add_WtAvgWaterEI(resq_erosion.data["WtAvgWaterEI"]['value']) |
- c_res.add_WtAvgWindEI(resq_erosion.data["WtAvgWindEI"]['value']) |
+# c_res.add_WtAvgWaterSoilLoss(resq_erosion.data["WtAvgWaterSoilLoss"]['value']) |
+# c_res.add_WtAvgWindSoilLoss(resq_erosion.data["WtAvgWindSoilLoss"]['value']) |
+# c_res.add_WtAvgTotalSoilLoss(resq_erosion.data["WtAvgTotalSoilLoss"]['value']) |
+# c_res.add_WtAvgWaterEI(resq_erosion.data["WtAvgWaterEI"]['value']) |
+# c_res.add_WtAvgWindEI(resq_erosion.data["WtAvgWindEI"]['value']) |
|
- legacy_arr = resq_erosion.data["legacy_data_by_mapunit"]['value'][0] |
+# legacy_arr = resq_erosion.data["legacy_data_by_mapunit"]['value'][0] |
|
- soil_slope = [el['value'] for el in legacy_arr if el['name']=='soil_slp_lgth_fctr'][0] |
- soil_loss = [el['value'] for el in legacy_arr if el['name']=='soil_loss_tolr_fctr'][0] |
- c_res.add_soilSlpLgthFctr(soil_slope) |
- c_res.add_soilLossTolrFctr(soil_loss) |
+# soil_slope = [el['value'] for el in legacy_arr if el['name']=='soil_slp_lgth_fctr'][0] |
+# soil_loss = [el['value'] for el in legacy_arr if el['name']=='soil_loss_tolr_fctr'][0] |
+# c_res.add_soilSlpLgthFctr(soil_slope) |
+# c_res.add_soilLossTolrFctr(soil_loss) |
|
- legacy_r_factor = [el['value'] for el in legacy_arr if el['name']=='legacy_r_factor'][0] |
- legacy_waterEI = [el['value'] for el in legacy_arr if el['name']=='wtr_erod_fctr'][0] |
- c_res.add_legacyRfactor(legacy_r_factor) |
- c_res.add_wtrErodFctr(legacy_waterEI) |
- water_erosion_value = [el['value'] for el in legacy_arr if el['name']=='water_erosion'][0] |
- c_res.add_legacyWtAvgWaterEI(water_erosion_value) |
- c_res.eval_legacyWaterErosionValue() |
+# legacy_r_factor = [el['value'] for el in legacy_arr if el['name']=='legacy_r_factor'][0] |
+# legacy_waterEI = [el['value'] for el in legacy_arr if el['name']=='wtr_erod_fctr'][0] |
+# c_res.add_legacyRfactor(legacy_r_factor) |
+# c_res.add_wtrErodFctr(legacy_waterEI) |
+# water_erosion_value = [el['value'] for el in legacy_arr if el['name']=='water_erosion'][0] |
+# c_res.add_legacyWtAvgWaterEI(water_erosion_value) |
+# c_res.eval_legacyWaterErosionValue() |
|
- legacy_c_factor = [el['value'] for el in legacy_arr if el['name']=='legacy_c_factor'][0] |
- legacy_windEI = [el['value'] for el in legacy_arr if el['name']=='wind_erod_idx'][0] |
- c_res.add_legacyCfactor(legacy_c_factor) |
- c_res.add_windErodIndex(legacy_windEI) |
- wind_erosion_value = [el['value'] for el in legacy_arr if el['name']=='wind_erosion'][0] |
- c_res.add_legacyWtAvgWindEI(wind_erosion_value) |
- c_res.eval_legacyWindErosionValue() |
+# legacy_c_factor = [el['value'] for el in legacy_arr if el['name']=='legacy_c_factor'][0] |
+# legacy_windEI = [el['value'] for el in legacy_arr if el['name']=='wind_erod_idx'][0] |
+# c_res.add_legacyCfactor(legacy_c_factor) |
+# c_res.add_windErodIndex(legacy_windEI) |
+# wind_erosion_value = [el['value'] for el in legacy_arr if el['name']=='wind_erosion'][0] |
+# c_res.add_legacyWtAvgWindEI(wind_erosion_value) |
+# c_res.eval_legacyWindErosionValue() |
|
- results.append(c_res) |
- logging.info("List of results length: " + str(len(results))) |
- del [c_res] |
+# results.append(c_res) |
+# logging.info("List of results length: " + str(len(results))) |
+# del [c_res] |
|
except MaxAttemptsException as e: |
# Handle the "max attempts" exception |
@@ -360,9 +360,9 @@ |
|
except TypeError as ex: |
try: |
- logging.error(f"Failed to extract data on ({latitude},{longitude},{multipolygon}): {e}") |
+ logging.error(f"Failed to extract data |{latitude}|{longitude}|{multipolygon}") |
except: |
- logging.error(f"Failed to extract data on ({latitude},{longitude})") |
+ logging.error(f"Failed to extract data: {ex} ") |
|
except Exception as ex: |
logging.error(f"Failed to extract data: {ex}") |
@@ -373,8 +373,8 @@ |
|
## service attempts |
max_attempts = 4 |
-repo_basepath = '/home/daniele/documents/codebeamer/csip-crp1/' |
-# repo_basepath = '/home/eramscloud/vcs/hg/csip/csip-crp1/' |
+# repo_basepath = '/home/daniele/documents/codebeamer/csip-crp1/' |
+repo_basepath = '/home/eramscloud/vcs/hg/csip/csip-crp1/' |
## reference datetime for log and results |
ref_datetime = dt.datetime.now() |
|
@@ -390,8 +390,8 @@ |
output_file = '''{repo_basepath}data/{datetime:%Y%m%dT%H%M%S}.csv'''.format(repo_basepath=repo_basepath, datetime=ref_datetime) |
|
#read coordinates csv file |
-# d = pd.read_csv('''{repo_basepath}data/Results.csv'''.format(repo_basepath=repo_basepath)) |
-d = pd.read_csv('''{repo_basepath}data/test.csv'''.format(repo_basepath=repo_basepath)) |
+d = pd.read_csv('''{repo_basepath}data/Results.csv'''.format(repo_basepath=repo_basepath)) |
+# d = pd.read_csv('''{repo_basepath}data/test.csv'''.format(repo_basepath=repo_basepath)) |
df = pd.DataFrame(data = d) |
points_num = df.shape[0] |
#acceptable_failure_percentage = 20 |
@@ -408,10 +408,10 @@ |
|
logging.info("Number of results: " + str(len(results))) |
|
-if len(results) > 0: |
- with open(output_file, 'w', newline='') as csvfile: |
- writer = csv.writer(csvfile) |
- writer.writerow(results[0].write_header_line()) |
- [writer.writerow(r.write_results_line()) for r in results] |
- |
- csvfile.close() |
+#if len(results) > 0: |
+# with open(output_file, 'w', newline='') as csvfile: |
+# writer = csv.writer(csvfile) |
+# writer.writerow(results[0].write_header_line()) |
+# [writer.writerow(r.write_results_line()) for r in results] |
+# |
+# csvfile.close() |