Skip to content

Commit d6ba6c7

Browse files
committed
simple way to add more logs related to upload progress
will be important to try to see upload performance bottlenecks Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
1 parent 27963b7 commit d6ba6c7

File tree

2 files changed

+15
-11
lines changed

2 files changed

+15
-11
lines changed

src/libsync/propagateupload.cpp

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,18 +64,27 @@ void PUTFileJob::start()
6464

6565
req.setPriority(QNetworkRequest::LowPriority); // Long uploads must not block non-propagation jobs.
6666

67+
auto requestID = QByteArray{};
68+
6769
if (_url.isValid()) {
68-
sendRequest("PUT", _url, req, _device);
70+
const auto reply = sendRequest("PUT", _url, req, _device);
71+
requestID = reply->request().rawHeader("X-Request-ID");
6972
} else {
70-
sendRequest("PUT", makeDavUrl(path()), req, _device);
73+
const auto reply = sendRequest("PUT", makeDavUrl(path()), req, _device);
74+
requestID = reply->request().rawHeader("X-Request-ID");
7175
}
7276

7377
if (reply()->error() != QNetworkReply::NoError) {
7478
qCWarning(lcPutJob) << " Network error: " << reply()->errorString();
7579
}
7680

81+
connect(reply(), &QNetworkReply::uploadProgress, this, [requestID] (qint64 bytesSent, qint64 bytesTotal) {
82+
qCDebug(lcPutJob()) << requestID << "upload progress" << bytesSent << bytesTotal;
83+
});
84+
7785
connect(reply(), &QNetworkReply::uploadProgress, this, &PUTFileJob::uploadProgress);
7886
connect(this, &AbstractNetworkJob::networkActivity, account().data(), &Account::propagatorNetworkActivity);
87+
7988
_requestTimer.start();
8089
AbstractNetworkJob::start();
8190
}

src/libsync/putmultifilejob.cpp

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -71,21 +71,16 @@ void PutMultiFileJob::start()
7171
_body.append(onePart);
7272
}
7373

74-
sendRequest("POST", _url, req, &_body);
74+
const auto newReply = sendRequest("POST", _url, req, &_body);
75+
const auto &requestID = newReply->request().rawHeader("X-Request-ID");
7576

7677
if (reply()->error() != QNetworkReply::NoError) {
7778
qCWarning(lcPutMultiFileJob) << " Network error: " << reply()->errorString();
7879
}
7980

8081
connect(reply(), &QNetworkReply::uploadProgress, this, &PutMultiFileJob::uploadProgress);
81-
connect(reply(), &QNetworkReply::uploadProgress, this, [] (qint64 bytesSent, qint64 bytesTotal) {
82-
qCDebug(lcPutMultiFileJob()) << "upload progress" << bytesSent << bytesTotal;
83-
});
84-
connect(reply(), &QNetworkReply::bytesWritten, this, [] (qint64 bytesSent) {
85-
qCDebug(lcPutMultiFileJob()) << "upload progress" << bytesSent;
86-
});
87-
connect(reply(), &QNetworkReply::requestSent, this, [] () {
88-
qCDebug(lcPutMultiFileJob()) << "request sent";
82+
connect(reply(), &QNetworkReply::uploadProgress, this, [requestID] (qint64 bytesSent, qint64 bytesTotal) {
83+
qCDebug(lcPutMultiFileJob()) << requestID << "upload progress" << bytesSent << bytesTotal;
8984
});
9085
connect(this, &AbstractNetworkJob::networkActivity, account().data(), &Account::propagatorNetworkActivity);
9186
_requestTimer.start();

0 commit comments

Comments
 (0)