Skip to content

Commit

Permalink
refactor: [log] process optimization
Browse files Browse the repository at this point in the history
Optimize logging for framework, burn, extensionlib

Log: log optimization

Task: https://pms.uniontech.com/task-view-278195.html
  • Loading branch information
Johnson-zs authored and deepin-bot[bot] committed Jul 25, 2023
1 parent 5a4a888 commit 88a0f92
Show file tree
Hide file tree
Showing 7 changed files with 40 additions and 30 deletions.
2 changes: 0 additions & 2 deletions src/apps/dde-file-manager/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -279,8 +279,6 @@ int main(int argc, char *argv[])
"and other useful functions."));
a.setAttribute(Qt::AA_UseHighDpiPixmaps);

DApplicationSettings setting;

DPF_NAMESPACE::backtrace::installStackTraceHandler();
initLog();
autoReleaseMemory();
Expand Down
40 changes: 24 additions & 16 deletions src/dfm-framework/lifecycle/private/pluginmanager_p.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -91,13 +91,15 @@ bool PluginManagerPrivate::readPlugins()
if (!lazyLoadPluginsNames.contains(obj->name()))
notLazyLoadQuene.append(obj);
else
qInfo() << "Skip load: " << obj->name();
qInfo() << "Skip load(lazy load): " << obj->name();
});

#ifdef QT_DEBUG
qDebug() << "Start traversing the meta information of all plugins: ";
for (auto read : readQueue) {
qDebug() << read;
}
qDebug() << "End traversal of meta information for all plugins!";
#endif

return readQueue.isEmpty() ? false : true;
Expand Down Expand Up @@ -253,13 +255,15 @@ void PluginManagerPrivate::jsonToMeta(PluginMetaObjectPointer metaObject, const
*/
bool PluginManagerPrivate::loadPlugins()
{
qInfo() << "Start loading all plugins: ";
dependsSort(&loadQueue, &notLazyLoadQuene);

bool ret = true;
std::for_each(loadQueue.begin(), loadQueue.end(), [&ret, this](PluginMetaObjectPointer pointer) {
if (!PluginManagerPrivate::doLoadPlugin(pointer))
ret = false;
});
qInfo() << "End loading all plugins.";

return ret;
}
Expand All @@ -269,11 +273,13 @@ bool PluginManagerPrivate::loadPlugins()
*/
bool PluginManagerPrivate::initPlugins()
{
qInfo() << "Start initializing all plugins: ";
bool ret = true;
std::for_each(loadQueue.begin(), loadQueue.end(), [&ret, this](PluginMetaObjectPointer pointer) {
if (!PluginManagerPrivate::doInitPlugin(pointer))
ret = false;
});
qInfo() << "End initialization of all plugins.";

emit Listener::instance()->pluginsInitialized();
allPluginsInitialized = true;
Expand All @@ -286,11 +292,13 @@ bool PluginManagerPrivate::initPlugins()
*/
bool PluginManagerPrivate::startPlugins()
{
qInfo() << "Start start all plugins: ";
bool ret = true;
std::for_each(loadQueue.begin(), loadQueue.end(), [&ret, this](PluginMetaObjectPointer pointer) {
if (!PluginManagerPrivate::doStartPlugin(pointer))
ret = false;
});
qInfo() << "End start of all plugins.";

emit Listener::instance()->pluginsStarted();
allPluginsStarted = true;
Expand Down Expand Up @@ -332,7 +340,7 @@ void PluginManagerPrivate::dependsSort(QQueue<PluginMetaObjectPointer> *dstQueue
for (const PluginDepend &depend : ptr->depends()) {
QString &&name { depend.name() };
if (srcMap.contains(name)) {
qInfo() << name << "->" << ptr->name();
qInfo("Dependency `%s` <- `%s`", qUtf8Printable(name), qUtf8Printable(ptr->name()));
dependGroup.append({ srcMap.value(name), ptr });
} else {
qWarning("Plugin `%s` cannot depend a unkonw plugin: `%s`", qUtf8Printable(ptr->name()), qUtf8Printable(name));
Expand All @@ -343,7 +351,7 @@ void PluginManagerPrivate::dependsSort(QQueue<PluginMetaObjectPointer> *dstQueue
// sort
dstQueue->clear();
if (!doPluginSort(dependGroup, srcMap, dstQueue)) {
qCritical() << "Sort depnd group failed";
qWarning() << "Sort depnd group failed!";
*dstQueue = *srcQueue;
return;
}
Expand All @@ -355,9 +363,9 @@ bool PluginManagerPrivate::doLoadPlugin(PluginMetaObjectPointer pointer)

// 流程互斥
if (pointer->d->state >= PluginMetaObject::State::kLoaded) {
qDebug() << "Is Loaded plugin: "
<< pointer->d->name
<< pointer->fileName();
qInfo() << "Is Loaded plugin: "
<< pointer->d->name
<< pointer->fileName();
return true;
}

Expand Down Expand Up @@ -420,9 +428,9 @@ bool PluginManagerPrivate::doInitPlugin(PluginMetaObjectPointer pointer)
Q_ASSERT(pointer);

if (pointer->d->state >= PluginMetaObject::State::kInitialized) {
qDebug() << "Is initialized plugin: "
<< pointer->d->name
<< pointer->fileName();
qInfo() << "Is initialized plugin: "
<< pointer->d->name
<< pointer->fileName();
return true;
}

Expand Down Expand Up @@ -452,9 +460,9 @@ bool PluginManagerPrivate::doStartPlugin(PluginMetaObjectPointer pointer)
Q_ASSERT(pointer);

if (pointer->d->state >= PluginMetaObject::State::kStarted) {
qDebug() << "Is started plugin:"
<< pointer->d->name
<< pointer->fileName();
qInfo() << "Is started plugin:"
<< pointer->d->name
<< pointer->fileName();
return true;
}

Expand Down Expand Up @@ -488,9 +496,9 @@ bool PluginManagerPrivate::doStopPlugin(PluginMetaObjectPointer pointer)
Q_ASSERT(pointer);

if (pointer->d->state >= PluginMetaObject::State::kStoped) {
qDebug() << "Is stoped plugin:"
<< pointer->d->name
<< pointer->fileName();
qInfo() << "Is stoped plugin:"
<< pointer->d->name
<< pointer->fileName();
return true;
}

Expand All @@ -513,7 +521,7 @@ bool PluginManagerPrivate::doStopPlugin(PluginMetaObjectPointer pointer)
qInfo() << "stop" << pointer->d->loader->fileName();

if (!pointer->d->loader->unload()) {
qDebug() << pointer->d->loader->errorString();
qWarning() << "Unload plugin failed: " << pointer->d->loader->errorString();
return false;
}

Expand Down
6 changes: 3 additions & 3 deletions src/plugins/common/dfmplugin-burn/utils/auditlogjob.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@ CopyFromDiscAuditLog::CopyFromDiscAuditLog(const QList<QUrl> &srcList, const QLi

void CopyFromDiscAuditLog::doLog(QDBusInterface &interface)
{
qInfo() << __PRETTY_FUNCTION__;
for (int i = 0; i != urlsOfDisc.size(); ++i) {
const QString &srcPath { urlsOfDisc.at(i).toLocalFile() };
const QString &destPath { urlsOfDest.at(i).toLocalFile() };
Expand Down Expand Up @@ -101,13 +100,14 @@ BurnFilesAuditLogJob::BurnFilesAuditLogJob(const QVariantMap &info, const QUrl &

void BurnFilesAuditLogJob::doLog(QDBusInterface &interface)
{
qInfo() << __PRETTY_FUNCTION__;
QString device { discDeviceInfo.value(DeviceProperty::kDevice).toString() };
const auto &pathMap { Application::dataPersistence()->value("StagingMap", device).toMap() };

for (const QFileInfo &info : burnedFileInfoList()) {
if (!info.exists())
if (!info.exists()) {
qWarning() << "File doesn't exitsts: " << info.absoluteFilePath();
continue;
}

const QString &discPath { info.absoluteFilePath() };
QString nativePath { pathMap.contains(discPath) ? pathMap.value(discPath).toString() : discPath };
Expand Down
7 changes: 5 additions & 2 deletions src/plugins/common/dfmplugin-burn/utils/burnjob.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -109,11 +109,11 @@ void AbstractBurnJob::readFunc(int progressFd, int checkFd)
while (true) {
char buf[kPipeBufferSize] { 0 };
if (read(progressFd, buf, kPipeBufferSize) <= 0) {
qDebug() << "progressFd break";
qWarning() << "progressFd break";
break;
} else {
QByteArray bufByes(buf);
qDebug() << "burn files, read bytes json:" << bufByes;
qInfo() << "burn files, read bytes json:" << bufByes;
QJsonParseError jsonError;
QJsonObject obj { QJsonDocument::fromJson(bufByes, &jsonError).object() };
if (jsonError.error == QJsonParseError::NoError) {
Expand Down Expand Up @@ -218,6 +218,7 @@ bool AbstractBurnJob::readyToWork()
QString mpt { qvariant_cast<QString>(map[DeviceProperty::kMountPoint]) };
if (!mpt.isEmpty()) {
if (!DeviceManager::instance()->unmountBlockDev(curDevId)) {
qWarning() << "The device was not safely unmounted: " << curDevId;
emit requestErrorMessageDialog(tr("The device was not safely unmounted"), tr("Disk is busy, cannot unmount now"));
return false;
}
Expand Down Expand Up @@ -429,6 +430,7 @@ void BurnISOFilesJob::writeFunc(int progressFd, int checkFd)
qInfo() << "Burn ret: " << isSuccess << manager->lastError() << localPath;
auto check { opts.testFlag(BurnOption::kVerifyDatas) };
if (check && isSuccess) {
qInfo() << "Enable check media";
double gud, slo, bad;
curPhase = kCheckData;
manager->checkmedia(&gud, &slo, &bad);
Expand Down Expand Up @@ -469,6 +471,7 @@ void BurnISOImageJob::writeFunc(int progressFd, int checkFd)

auto check { opts.testFlag(BurnOption::kVerifyDatas) };
if (check && isSuccess) {
qInfo() << "Enable check media";
double gud, slo, bad;
curPhase = kCheckData;
manager->checkmedia(&gud, &slo, &bad);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,40 +17,40 @@ DPUTILS_BEGIN_NAMESPACE
void ExtensionPluginInitWorker::doWork(const QStringList &paths)
{
// do scan plugins
qInfo() << "Start scan extension lib paths: " << paths;
std::for_each(paths.cbegin(), paths.cend(), [this](const QString &path) {
qInfo() << "Start scan: " << path;
QDirIterator itera(path, { "*.so" }, QDir::Files | QDir::NoSymLinks);
if (!itera.hasNext())
qWarning() << "Cannot find extension lib at: " << path;
while (itera.hasNext()) {
itera.next();
ExtPluginLoaderPointer ptr { new ExtensionPluginLoader(itera.filePath()) };
allLoaders.insert({ itera.filePath(), ptr });
qInfo() << "Scaned ext plugin: " << itera.filePath();
qInfo() << "Scaned extension plugin: " << itera.filePath();
}
});
emit scanPluginsFinished();

// do load plugins
qInfo() << "Start load plugins";
qInfo() << "Start load extension plugins";
for (const auto &[k, v] : allLoaders) {
if (!v->loadPlugin()) {
qWarning() << "Load failed: " << v->fileName() << v->lastError();
continue;
}
qInfo() << "Loaded ext plugin:" << v->fileName();
qInfo() << "Loaded extension plugin:" << v->fileName();
loadedLoaders.insert({ k, v });
}
emit loadPluginsFinished();

// do init plugins
qInfo() << "Start init plugins";
qInfo() << "Start init extension plugins";
for (const auto &[k, v] : loadedLoaders) {
if (!v->initialize()) {
qWarning() << "init failed: " << v->fileName() << v->lastError();
continue;
}
qInfo() << "Inited ext plugin:" << v->fileName();
qInfo() << "Inited extension plugin:" << v->fileName();
doAppendExt(v->fileName(), v);
}
// TODO(zhangs): record plugin state
Expand Down
1 change: 0 additions & 1 deletion src/plugins/filemanager/core/dfmplugin-core/core.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@ void Core::initialize()

bool Core::start()
{
qDebug() << __PRETTY_FUNCTION__;
GlobalPrivate::kDFMApp = new Application; // must create it

connectToServer();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ void CoreEventReceiver::handleOpenWindow(const QUrl &url, const QVariant &opt)

void CoreEventReceiver::handleLoadPlugins(const QStringList &names)
{
qInfo("Start load plugins at runtime: ");
std::for_each(names.begin(), names.end(), [](const QString &name) {
Q_ASSERT(qApp->thread() == QThread::currentThread());
qInfo() << "About to load plugin:" << name;
Expand All @@ -64,6 +65,7 @@ void CoreEventReceiver::handleLoadPlugins(const QStringList &names)
qInfo() << "Load result: " << DPF_NAMESPACE::LifeCycle::loadPlugin(plugin)
<< "State: " << plugin->pluginState();
});
qInfo() << "End load plugins at runtime.";
}

void CoreEventReceiver::handleHeadless()
Expand Down

0 comments on commit 88a0f92

Please sign in to comment.