diff --git a/src/server/WebBackend.cpp b/src/server/WebBackend.cpp index 3a8fa5f..0b71c5e 100644 --- a/src/server/WebBackend.cpp +++ b/src/server/WebBackend.cpp @@ -603,6 +603,14 @@ RestOutputStruct::ExitCode WebSocket::EvaluateSysadmUpdateRequest(const QJsonVal }else if(act=="changesettings"){ ok = true; out->insert("changesettings", sysadm::Update::writeSettings(in_args.toObject()) ); + + }else if(act=="listlogs"){ + ok = true; + out->insert("listlogs", sysadm::Update::listLogs() ); + + }else if(act=="readlogs" && in_args.toObject().contains("logs") ){ + ok = true; + out->insert("readlogs", sysadm::Update::readLog(in_args.toObject()) ); } } //end of "action" key usage diff --git a/src/server/library/sysadm-update.cpp b/src/server/library/sysadm-update.cpp index 6de29ea..8235626 100644 --- a/src/server/library/sysadm-update.cpp +++ b/src/server/library/sysadm-update.cpp @@ -310,3 +310,38 @@ QJsonObject Update::writeSettings(QJsonObject obj){ return ret; } + +//List/Read update logs +QJsonObject Update::listLogs(){ + QJsonObject out; + QDir logdir("/var/log"); + QFileInfoList logs = logdir.entryInfoList(QStringList() << "pc-updatemanager*", QDir::Files, QDir::Time); + for(int i=0; i