From aad04cfa4876d4fa6c60fa73cd883224493e452a Mon Sep 17 00:00:00 2001 From: jchemutt Date: Thu, 23 May 2024 14:34:46 +0300 Subject: [PATCH] Implemented Trace Mechanism --- .../send_notification.cpython-312.pyc | Bin 0 -> 3126 bytes src/codes/data_extraction.py | 70 +++++++ src/codes/gwr_model.py | 7 + src/codes/import_biomass.py | 12 +- src/codes/notification.html | 177 ++++++++++++++++++ src/codes/send_notification.py | 64 +++++++ .../layers/biomass_et/biomass_20240101.tif | Bin 312643 -> 0 bytes .../biomass_et => tmp}/biomass_20240117.tif | Bin src/data/tmp/biomass_20240218.tif | Bin 312643 -> 0 bytes src/outputs/new_data_list_FINAL.txt | 4 +- 10 files changed, 330 insertions(+), 4 deletions(-) create mode 100644 src/codes/__pycache__/send_notification.cpython-312.pyc create mode 100644 src/codes/notification.html create mode 100644 src/codes/send_notification.py delete mode 100644 src/data/layers/biomass_et/biomass_20240101.tif rename src/data/{layers/biomass_et => tmp}/biomass_20240117.tif (100%) delete mode 100644 src/data/tmp/biomass_20240218.tif diff --git a/src/codes/__pycache__/send_notification.cpython-312.pyc b/src/codes/__pycache__/send_notification.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..39e912ad47b7a4b24c7cdb239e3f1ef320e79db8 GIT binary patch literal 3126 zcmb7GO>7&-6`m!R++8l0|N4XEpTuzz))Lbg{!^i(h$TmsW7;X~A~4IAptvh*8IsHH zE-Oo=k`-FOCSrgzVnB3Jz&zw&!v&(Ehx*V%(ICj77Yig%dMpD5noDm=T|j_NeY4bv zjA0}25Zrn1oA>6;yqWjy{!@}X2-+XG^K-{Ig#Jww+CaD4)BiFEts)u8Ob#VFJ(FNS zcjO#-XTr%4%$Z~Ju7t~$nVdV}28_*dc|O52NO5OFblPs8?d!@^dV%Et9q;xpupH`I zP)U*Q!4621UH2Rvi6RN#3+8!VM4#-Y{t5p}`Ek2`ftT^3;j+b(#T1@LUa8gN^Om(i5yP%bdOO9A@nRt!zjyBsoQ78u1qDs=e#rDwtUD@uWbseldpm1Bik8K)m<>|9Zoj)150o4H zx(98Bsa4q{OB7%Bmc7p_JJ~1u<$$_-QI@5$qz{*+>~qSXXJ)25Gu;n^UJxM&5kfr? zd}SX*@clpp$4f*ALxf0A1b^8N5&S<8!TG!hCb=|rD|_kAmOW)5J52FzZ|E9J%dYY+slYi0%7N^G?kJV$IYV{>*@G1A_Hci9slv8-qdP_=utBhc zDAl_?ot@q{o5a6&n-DLVx|UyZjPA#diyB6l(U)8$b8hSeAtj{%+@cmP zFNuUtVn9bQ9d^vWjUB3t-SbLX2AwHlRxQkF*kQs7GFrh*s|CPW;uP(}Ea57hg=Anh ztEmO-&nkib?^qIt0)OS73HdEkML{5pWqh4T$7U zn`SyQuagSK9NBG7oyF{h_{9$~Z$L!T%o*5~(=J0u-T*(shFC}&DR75fMT1x*`AOL{ z35$>yAysN7wX-iT)$PsssYW)a6if)&Nue&l0(A0{*G2Lm{DYl&<1+TzyQ22O?jA8~ z0FUeB-K>-9$KKtfrAj&M?i{8;$Y}qwZTrK_Pm(_e3nQ7$%q#hlX(p$%OeqgbGLr8V zi$-!*)$(x8Nkh*h?RP^m7TXa>7E<4PQ4|-k-$py{3bICh90Cu*-}nMv>K57v_1Biy zLkF!7HUg2_FV+LESTh@u!TP@SNYsjVrT@8+IQZFH)?~YH#G1S&tek6y_JQDD`Jf$$ ztO_@T`k`jvbwJpanJ3{s>+A+6TwPdMxcbS;CpQZ%?%;+Lycug8SmRpKiA}@^Ke|8D z9(wim-dlT{L(yxaTTXx=ig&0!(pYYaN3E&06s%sVT&kIMxpDfzp0TDBv)+HmNp0R& zl`7KBeB<0&yxD)U#ZR_He|5YvUb|2~(&(?pnqt(NddP`w-dhzb;>~ztbWLhT-fi(e zeG(p69ltSNzu1_%bLhc=W6kh!>+C}=+~yI?a#zo+oVk9b?rqF9{bMaQ_N@@8j#Nf!A2-IE!q_Hqx=t}`{bX(aioeAV5y@Ne z)_&QDxA?<5cwK7zc5U*n@ju7^a=yh+ZE?h_q=)E#^&=!CJb-#+MAUd<~p6FxXP^%Lnq^Yqihu34RM zFLurvN9;<}_Y##$&l;pq^$}Z>)egza=^&NlsV%i9*E>ha3)>O^G%j_>29c-Z3GlE3;<<)dn{lB|#3;hNHqEl)cbULCkG zusU*Mq@H~cooEK%v3%dTk=t|a&ENeB?kqD{`*mB4TsvalwV!=9VNJocWd=8SBn4|D k>)ySV=c)TO<`lE#Cou8YHV9{YC4?u(oL`N(CXaFd2mLm-LI3~& literal 0 HcmV?d00001 diff --git a/src/codes/data_extraction.py b/src/codes/data_extraction.py index d352c0e..7c65363 100644 --- a/src/codes/data_extraction.py +++ b/src/codes/data_extraction.py @@ -8,6 +8,7 @@ from datetime import date,timedelta sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), '..')) from codes.funcs import * +from codes.send_notification import * print ("") print ("") @@ -41,12 +42,19 @@ combined_output=os.path.join(outputs_path, "combined.csv") service_account = data["service_account"] +email_list= data["email_list"] try: credentials = ee.ServiceAccountCredentials(service_account, private_key) ee.Initialize(credentials) except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

Error Message:

" + dynamic_content += f"
  • Could not authenticate with the Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() layers = os.listdir(biomass_path) @@ -72,6 +80,12 @@ def addDate(image): except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Google Earth Engine Error
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() def getImage(product,start_date,end_date,variable): @@ -80,6 +94,12 @@ def getImage(product,start_date,end_date,variable): except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Google Earth Engine Error
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() ndvi=getImage("MODIS/061/MOD13A2",start_date_,end_date_,"NDVI"); @@ -112,6 +132,13 @@ def weeklyAverage(week): except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest CHIRPS Daily products cannot be found in Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) + exit_program() @@ -140,6 +167,12 @@ def weeklyAverage(week): except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest Soil Moisture products cannot be found in Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() @@ -186,10 +219,22 @@ def mergeDataframes(df1,df2): ndvi2=generateVariables(ndvi1,ndvi_output); else: truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest Terra Vegetation Indices 16-Day Global 1km products cannot be found in Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest Terra Vegetation Indices 16-Day Global 1km products cannot be found in Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() try: if preci16.size().getInfo()>0: @@ -197,10 +242,22 @@ def mergeDataframes(df1,df2): preci2=generateVariables(preci1,preci_output); else: truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest CHIRPS Daily products cannot be found in Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest CHIRPS Daily products cannot be found in Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() try: if sm16.size().getInfo()>0: @@ -216,10 +273,23 @@ def mergeDataframes(df1,df2): result_df.to_csv(combined_output,mode='w') else: truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest Soil Moisture products cannot be found in Google Earth Engine
  • " + + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() except EEException as e: print(str(e)) truncate_file(combined_output) + subject = "Biomass not updated" + dynamic_header = "Notice: Biomass Data Failed to Update:" + dynamic_info = "I hope this email finds you well. We are reaching out to inform you about a failure to update the biomass data. Below, you will find specific details about the error." + dynamic_content = "

    Error Message:

    " + dynamic_content += f"
  • Latest Soil Moisture products cannot be found in Google Earth Engine
  • " + send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) exit_program() diff --git a/src/codes/gwr_model.py b/src/codes/gwr_model.py index bdbd790..ce3d0e7 100644 --- a/src/codes/gwr_model.py +++ b/src/codes/gwr_model.py @@ -11,6 +11,13 @@ sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), '..')) from codes.funcs import * +print ("") +print ("") +print (" Running Geographically weighted regression model") +print ("") +print ("") +print ("") + # Constants project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) diff --git a/src/codes/import_biomass.py b/src/codes/import_biomass.py index b90017c..7d4aba4 100644 --- a/src/codes/import_biomass.py +++ b/src/codes/import_biomass.py @@ -3,6 +3,8 @@ import json sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), '..')) from codes.tools import GeoserverClient +from codes.funcs import * +from codes.send_notification import * print ("") @@ -34,13 +36,13 @@ folder_properties = os.path.join(folder_layers, forecast_type+"_properties") folder_tmp = os.path.join(folder_data, "tmp") fname = os.path.join(outputs_path, "new_data_list_FINAL.txt") - with open(fname) as f: file_content = f.readlines() rasters_files = [x.strip() for x in file_content] - +if len(rasters_files)==0: + exit_program() stores_biomass = [forecast_type] @@ -75,3 +77,9 @@ print("Process completed") +subject = "Biomass Updated" +dynamic_header = "Notice: Biomass Data Updated Successfully:" +dynamic_info = "I hope this email finds you well. We are reaching out to inform you Biomass data has been updated successfully. Below, you will find specific details about the raster files uploaded." +dynamic_content = "

    Raster Files:

    " +dynamic_content += f"
  • {rasters_files}
  • " +send_email_html(email_list, dynamic_header,dynamic_info,dynamic_content,subject) \ No newline at end of file diff --git a/src/codes/notification.html b/src/codes/notification.html new file mode 100644 index 0000000..28cc370 --- /dev/null +++ b/src/codes/notification.html @@ -0,0 +1,177 @@ + + + + + + + + Email Waterpoint Monitoring + + + + + + + + + + + +
    + + + + + + + + + + +
    + + logo-wp +

    Waterpoints Monitoring

    +
    +
    + + + + + + + +
    +

    + +

    +

    +

    + +

    +
    + + +
    +
    +
    + + + + + +
    +

    Contact us

    + +
    + + +

    Partners

    + + + + + + +
    + partner EIAR + + partner CGIAR + + partner Alliance + + partner Minister +
    +
    +
    +
    + + + \ No newline at end of file diff --git a/src/codes/send_notification.py b/src/codes/send_notification.py new file mode 100644 index 0000000..253b1d3 --- /dev/null +++ b/src/codes/send_notification.py @@ -0,0 +1,64 @@ +import json +import smtplib +from email.mime.text import MIMEText +from email.mime.multipart import MIMEMultipart +import os +from bs4 import BeautifulSoup + + + +# Constants +project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '..')) +filepath = os.path.join(project_root, 'data.json') +codes_path = os.path.join(project_root, 'codes') +html_file_path = os.path.join(codes_path,'notification.html') + + +with open(filepath) as f: + data = json.load(f) + + +email_list= data["email_list"] + + +def send_email_html(user_emails, dynamic_header,dynamic_info,dynamic_content,subject): + smtp_server = data["smtp_server"] + smtp_port = data["smtp_port"] + smtp_username = data["smtp_username"] + smtp_password = data["smtp_password"] + + + msg = MIMEMultipart() + msg["Subject"] = subject + msg["From"] = smtp_username + msg["To"] = ", ".join(user_emails) + + html_content = "" + if os.path.exists(html_file_path): + with open(html_file_path, "r", encoding="utf-8") as html_file: + html_content = html_file.read() + + soup = BeautifulSoup(html_content, 'html.parser') + header = soup.find('h1', {'id': 'header'}) + if header: + header.append(BeautifulSoup(dynamic_header, 'html.parser')) + info = soup.find('p', {'id': 'info'}) + if info: + info.append(BeautifulSoup(dynamic_info, 'html.parser')) + + container_ul = soup.find('tr', {'id': 'container'}) + if container_ul: + container_ul.append(BeautifulSoup(dynamic_content, 'html.parser')) + + html_content = str(soup) + + msg.attach(MIMEText(html_content, "html")) + + with smtplib.SMTP(smtp_server, smtp_port) as server: + server.starttls() + server.login(smtp_username, smtp_password) + server.sendmail(smtp_username, user_emails, msg.as_string()) + + + + diff --git a/src/data/layers/biomass_et/biomass_20240101.tif b/src/data/layers/biomass_et/biomass_20240101.tif deleted file mode 100644 index 74e012f72a49f910e77f59337dc466a4e31402f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 312643 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