rclone-webui-react
rclone-webui-react copied to clipboard
Web GUI progress fields
Hello. I've just started using the Web GUI, and I really like it! I'm doing a sync between my local drive and google drive, and the GUI is great for a progress report, except it could be better. stats logs a little more info that would be great to have in the GUI.
Here's what I can see using stats: Transferred: 1.195G / 62.546 GBytes, 2%, 464.619 kBytes/s, ETA 1d14h27m39s Checks: 4299 / 4299, 100% Transferred: 2 / 86, 2% Elapsed time: 45m1.4s
The Web GUI doesn't show the overall GB to be transferred and the overall progress (2% above), not does it who the overall ETA. Finally, it doesn't show to the total number of files to be transferred (86 above). It would be great to have stats in the dashboard of the web GUI. All the stuff in bold above is not shown in the GUI, but would be great if it were.
Hi, @odinian Thanks for the suggestions. It would be great to have those displayed in stats. I am currently running low on bandwidth, would anyone like to take this up? @ncw can you suggest someone?
hi. Unfortunately, I'm not a programmer, so I don't know how to make this enhancement. It does appear that one may just need to add "totalTransfers" and "totalBytes" to the stats array in GlobalStatus in the RunningJobs.js file. Possible this:
function GlobalStatus({stats}) {
const {speed, bytes, checks, elapsedTime, deletes, errors, transfers, lastError, totalTransfers, totalBytes} = stats;
return (
<Card>
<CardHeader><strong>Global Stats</strong></CardHeader>
<CardBody>
<table className="table">
<tbody>
<tr>
<td className="card-subtitle">Bytes Transferred:</td>
<td className="card-text">{formatBytes(bytes)}</td>
</tr>
<tr>
<td className="card-subtitle">Total to Transfer:</td>
<td className="card-text">{formatBytes(totalBytes)}</td>
</tr>
<tr>
<td className="card-subtitle">Average Speed:</td>
<td className="card-text">{formatBytes(speed)}PS</td>
</tr>
<tr>
<td className="card-subtitle">Checks:</td>
<td className="card-text">{checks}</td>
</tr>
<tr>
<td className="card-subtitle">Deletes:</td>
<td className="card-text">{deletes}</td>
</tr>
<tr>
<td className="card-subtitle">Running since:</td>
<td className="card-text">{secondsToStr(elapsedTime)}</td>
</tr>
<tr className={errors > 0 ? "table-danger" : ""}>
<td className="card-subtitle">Errors:</td>
<td className="card-text">{errors}</td>
</tr>
<tr>
<td className="card-subtitle">Transfers:</td>
<td className="card-text">{transfers}</td>
</tr>
<tr>
<td className="card-subtitle">Total to Transer:</td>
<td className="card-text">{totalTransfers}</td>
</tr>
<tr>
<td className="card-subtitle">Last Error:</td>
<td className="card-text">{lastError}</td>
</tr>
</tbody>
</table>
</CardBody>
{/*<CardFooter></CardFooter>*/}
</Card>);
}
For this rclone issue, the following parameters were exposed to the REST API, and can be displayed via an rclone rc core/stats
command. It would be nice to display them in the web-UI, especially useful for sync operations (might be put in a dedicated sync tab?)
- totalChecks - total number of checks needed in sync
- totalTransfers - total number of transfers needed in sync
- totalBytes - total number of bytes to transfer in sync
- eta - eta of sync in seconds
rclone rc job/list --rc-addr=:5572 --rc-no-auth
rclone rc core/stats