What is the problem you are having with rclone?
I’m working on a Go client that integrates with rclone (mount) + WinFsp to mount WebDAV volumes.
My main concern: what happens when an upload fails (network issue, permission error, quota exceeded, etc.)?
-
Does rclone keep the file in the
--cache-diruntil it can retry? -
Can I rely only on rclone’s stdout/stderr logs (I’m already parsing JSON logs) to know if a file was successfully uploaded or if it’s still “dirty”?
-
Are there recommended best practices for monitoring pending/failed uploads?
-
Is checking the
cache-dirdirectly enough, or is there a more “official” way (maybe via rc commands likevfs/status)?
The idea is that my client should be able to notify the user:
“File is still pending in cache / failed to upload”
Because if the user unplugs my go client that runs the rclone process, it "loses files" in the remote webdav server.
What’s the best approach here to ensure users don’t lose data if rclone can’t push the file upstream immediately?
Thanks in advance!
Run the command 'rclone version' and share the full output of the command.
v1.71.0
Which cloud storage system are you using? (eg Google Drive)
Webdav
The command you were trying to run (eg rclone copy /tmp remote:tmp)`
```
RCLONE MOUNT of:
args := []string{
"mount",
":webdav:",
"--webdav-url", link,
"--webdav-user", username,
"--webdav-pass", obscuredPassword,
driveLetter,
"--vfs-cache-mode", "full",
"--volname", fmt.Sprintf("\"%s\"", volumeName),
"--no-console",
"--use-cookies",
"--use-json-log", //Used to better handle logs
"--log-level", "INFO",
"--vfs-write-back", "0",
"--dir-cache-time", "5s",
"--poll-interval", "10s",
"--cache-dir", "tmp",
}
```