o hd@sddlmZddlZddlmZddlmZddlmZddlm Z ddl m Z ddl m Z ddlZejZejZejZejZejZejZejZd d Zd d Zd dZddZddZddZ dS))JSONDecodeErrorN)datetime)Config) relativedelta)build)MediaIoBaseUpload)ServiceAccountCredentialsc Cztrttt}tdd|d}|WStdWdSty5}ztdt |WYd}~dSd}~wt yO}ztdt |WYd}~dSd}~ww)NZanalyticsreportingv4 credentials0No key path set for Google JSON credential file.z6An error occurred while instantiating the GA reporter.) KEY_PATHrfrom_json_keyfile_nameSCOPErlogginginforerrorstr TypeError)r analyticser9/home/cmiss/Jenkins/workspace/SPARC-API/app/metrics/ga.pyinit_ga_reporting& rcCsttdd}|d}z;|jdt|tddgddigdgid }t|d rG|d d d d d dd }t |WSWdSYdS)N)yearsz%Y-%m-%dZreportRequests) startDateendDate expressionz ga:sessions)ZviewIdZ dateRangesmetrics)bodyreportsrdataZtotalsvalues) rnowrstrftimer#ZbatchGetVIEW_IDexecutelenint)r start_dateformatted_start_datereporttotalrrrget_ga_1year_sessions*s*     r0c Cr )Nsheetsr r r z9An error occurred while instantiating the GSPREAD client.) rrr SPREADS_SCOPErrrrrrr)r r1rrrrinit_gspread_clientDrr3cCs.|r|jtdddd|giddS)NEventsZ USER_ENTEREDZ INSERT_ROWSr%) spreadsheetIdrangeZvalueInputOptionZinsertDataOptionr"T) spreadsheetsr%appendEVENTS_SPREADS_IDr))clientrowrrrappend_contactXs r<c Cr )Ndrivev3r r z7An error occurred while instantiating the DRIVE client.) rrr DRIVE_SCOPErrrrrrr)r r=rrrrinit_drive_clienterr@cCsd|jdkrdSt|}|jpd}|p|jtgd}t||dd}|j||ddd }|S) NFzapplication/octet-stream)nameparentsT)mimetypeZ resumable webViewLink)r"Z media_bodyfieldssupportsAllDrives) filenameioBytesIOreadrDEVENTS_ATTACHMENTS_FOLDERrfilescreater))r:filerH file_streamZ mime_typeZ file_metadataZmediaresprrr upload_fileys"  rR)!jsonrrr app.configrdateutil.relativedeltargoogleapiclient.discoveryrZgoogleapiclient.httproauth2client.service_accountrrIGOOGLE_API_GA_SCOPErGOOGLE_API_SPREADS_SCOPEr2GOOGLE_API_DRIVE_SCOPEr?GOOGLE_API_GA_KEY_PATHrGOOGLE_API_GA_VIEW_IDr(r9rLrr0r3r<r@rRrrrrs,