Difference between revisions of "Statistical Algorithms Importer: StatusUpdate"
From Gcube Wiki
(→Updating the status of a process) |
(→Updating the status of a process) |
||
Line 8: | Line 8: | ||
== Updating the status of a process == | == Updating the status of a process == | ||
− | It is sufficient to '''write a file named "status.txt" ''' locally to the process indicating '''a number from | + | It is sufficient to '''write a file named "status.txt" ''' locally to the process indicating '''a number from 20 to 90'''. The [[DataMiner_Manager|DataMiner]] will transform this information into a WPS status, also visible through the status bar of the DataMiner GUI. The algorithm's status is always forced to 100 by DataMiner at the end of the computation. |
+ | |||
+ | === Python example === | ||
+ | For example, the following Python script writes a local ./status.txt file indicating its internal status. | ||
+ | |||
+ | <source lang = "python"> | ||
+ | .... | ||
+ | |||
+ | def updateStatus(self,perc): | ||
+ | with open('status.txt','w') as st: | ||
+ | st.write(perc) | ||
+ | |||
+ | .... | ||
+ | updateStatus('20') | ||
+ | doJob() | ||
+ | updateStatus('90') | ||
+ | |||
+ | </source> | ||
+ | |||
+ | === R example === | ||
For example, the following R script writes a local ./status.txt file indicating its internal status. | For example, the following R script writes a local ./status.txt file indicating its internal status. |
Revision as of 14:13, 22 June 2021
- This page explains how to update the status of a process from a SAI-integrated algorithm.
Updating the status of a process
It is sufficient to write a file named "status.txt" locally to the process indicating a number from 20 to 90. The DataMiner will transform this information into a WPS status, also visible through the status bar of the DataMiner GUI. The algorithm's status is always forced to 100 by DataMiner at the end of the computation.
Python example
For example, the following Python script writes a local ./status.txt file indicating its internal status.
.... def updateStatus(self,perc): with open('status.txt','w') as st: st.write(perc) .... updateStatus('20') doJob() updateStatus('90')
R example
For example, the following R script writes a local ./status.txt file indicating its internal status.
nseconds <- 60 nsteps = nseconds/10 for (i in 1:nsteps){ status = i*100/nsteps cat("Status",status,"\n") write(status,file="status.txt") Sys.sleep(1) } output="test.txt" write(nseconds,file=output)