diff --git a/frameworks/native/backup_ext/BUILD.gn b/frameworks/native/backup_ext/BUILD.gn index 379f3c72b0d248cd51269d8ceba195bc1f740d83..eb044ee941024402744b702b845a89ec4965dbec 100644 --- a/frameworks/native/backup_ext/BUILD.gn +++ b/frameworks/native/backup_ext/BUILD.gn @@ -65,6 +65,7 @@ ohos_shared_library("backup_extension_ability_native") { "bundle_framework:appexecfwk_core", "c_utils:utils", "hilog:libhilog", + "hitrace:hitrace_meter", "ipc:ipc_core", "napi:ace_napi", ] diff --git a/frameworks/native/backup_ext/src/ext_extension.cpp b/frameworks/native/backup_ext/src/ext_extension.cpp index 2697e0413c6f57f5ea85a3a020d2adcf091c1d58..166c8fb19635661c15c5056327f05829efa588a8 100644 --- a/frameworks/native/backup_ext/src/ext_extension.cpp +++ b/frameworks/native/backup_ext/src/ext_extension.cpp @@ -44,6 +44,7 @@ #include "service_proxy.h" #include "tar_file.h" #include "untar_file.h" +#include "base/hiviewdfx/hitrace/interfaces/native/innerkits/include/hitrace_meter/hitrace_meter.h" namespace OHOS::FileManagement::Backup { const string DEFAULT_TAR_PKG = "1.tar"; @@ -93,6 +94,7 @@ static bool CheckIfTarSuffix(const string &fileName) UniqueFd BackupExtExtension::GetFileHandle(const string &fileName) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); try { if (extension_->GetExtensionAction() != BConstants::ExtensionAction::RESTORE) { HILOGI("Failed to get file handle, because action is %{public}d invalid", extension_->GetExtensionAction()); @@ -161,6 +163,7 @@ static ErrCode IndexFileReady(const TarMap &pkgInfo, sptr proxy) static ErrCode BigFileReady(sptr proxy) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); BJsonCachedEntity cachedEntity(UniqueFd(open(INDEX_FILE_BACKUP.data(), O_RDONLY))); auto cache = cachedEntity.Structuralize(); auto pkgInfo = cache.GetExtManageInfo(); @@ -214,6 +217,7 @@ static bool IsAllFileReceived(vector tars) ErrCode BackupExtExtension::PublishFile(const string &fileName) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); HILOGE("begin publish file. fileName is %{public}s", fileName.data()); try { if (extension_->GetExtensionAction() != BConstants::ExtensionAction::RESTORE) { @@ -333,6 +337,7 @@ static pair> GetFileInfos(const vector &includes, int BackupExtExtension::DoBackup(const BJsonEntityExtensionConfig &usrConfig) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); HILOGI("Do backup"); if (extension_->GetExtensionAction() != BConstants::ExtensionAction::BACKUP) { return EPERM; @@ -375,6 +380,7 @@ int BackupExtExtension::DoBackup(const BJsonEntityExtensionConfig &usrConfig) int BackupExtExtension::DoRestore(const string &fileName) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); HILOGI("Do restore"); if (extension_->GetExtensionAction() != BConstants::ExtensionAction::RESTORE) { return EPERM; @@ -563,6 +569,7 @@ static void RestoreBigFileAfter(const string& fileName, const string& filePath, static void RestoreBigFiles(bool appendTargetPath) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); // 获取索引文件内容 string path = string(BConstants::PATH_BUNDLE_BACKUP_HOME).append(BConstants::SA_BUNDLE_BACKUP_RESTORE); BJsonCachedEntity cachedEntity(UniqueFd(open(INDEX_FILE_RESTORE.data(), O_RDONLY))); diff --git a/services/backup_sa/BUILD.gn b/services/backup_sa/BUILD.gn index e89cb1f28dd16d72ad8f3b6427789ec36326b5eb..7902bd9bf7f9fd61df49e6b53a6122f9d1ea035b 100644 --- a/services/backup_sa/BUILD.gn +++ b/services/backup_sa/BUILD.gn @@ -60,6 +60,7 @@ ohos_shared_library("backup_sa") { "bundle_framework:appexecfwk_core", "c_utils:utils", "hilog:libhilog", + "hitrace:hitrace_meter", "init:libbegetutil", "ipc:ipc_core", "safwk:system_ability_fwk", diff --git a/services/backup_sa/src/module_ipc/service.cpp b/services/backup_sa/src/module_ipc/service.cpp index 5151796a3cd51f60db5a0aada505bc2d255437f8..1613d548d61c9b70b0b9c872a25f1cd48451020c 100644 --- a/services/backup_sa/src/module_ipc/service.cpp +++ b/services/backup_sa/src/module_ipc/service.cpp @@ -55,6 +55,7 @@ #include "module_ipc/svc_restore_deps_manager.h" #include "parameter.h" #include "system_ability_definition.h" +#include "base/hiviewdfx/hitrace/interfaces/native/innerkits/include/hitrace_meter/hitrace_meter.h" namespace OHOS::FileManagement::Backup { using namespace std; @@ -101,6 +102,7 @@ void Service::OnStop() UniqueFd Service::GetLocalCapabilities() { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); try { HILOGI("Begin"); /* @@ -417,6 +419,7 @@ ErrCode Service::PublishFile(const BFileInfo &fileInfo) ErrCode Service::AppFileReady(const string &fileName, UniqueFd fd) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); try { HILOGI("Begin"); string callerName = VerifyCallerAndGetCallerName(); @@ -495,6 +498,7 @@ ErrCode Service::AppDone(ErrCode errCode) ErrCode Service::LaunchBackupExtension(const BundleName &bundleName) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); try { HILOGE("begin %{public}s", bundleName.data()); IServiceReverse::Scenario scenario = session_->GetScenario(); @@ -570,6 +574,7 @@ ErrCode Service::GetFileHandle(const string &bundleName, const string &fileName) void Service::OnBackupExtensionDied(const string &&bundleName) { + HITRACE_METER_NAME(HITRACE_TAG_FILEMANAGEMENT, __PRETTY_FUNCTION__); try { string callName = move(bundleName); session_->VerifyBundleName(callName); diff --git a/tests/unittests/backup_ext/BUILD.gn b/tests/unittests/backup_ext/BUILD.gn index d41d18ddbf74a4bc70566ac65d9a7ec2caa002a5..11dc6e762c8cf22e6adda503d8a932dc096ef048 100644 --- a/tests/unittests/backup_ext/BUILD.gn +++ b/tests/unittests/backup_ext/BUILD.gn @@ -67,6 +67,7 @@ ohos_unittest("tar_file_test") { "ipc:ipc_core", "napi:ace_napi", "samgr:samgr_proxy", + "hitrace:hitrace_meter", ] defines = [ "private=public" ] @@ -127,6 +128,7 @@ ohos_unittest("untar_file_test") { "ipc:ipc_core", "napi:ace_napi", "samgr:samgr_proxy", + "hitrace:hitrace_meter", ] defines = [ "private=public" ] diff --git a/tests/unittests/backup_sa/module_ipc/BUILD.gn b/tests/unittests/backup_sa/module_ipc/BUILD.gn index f78d3da0d51ea33c1b90eb98708ab768960ece78..c3eed1bd93523b891596fa4c946376f2f179eb9b 100644 --- a/tests/unittests/backup_sa/module_ipc/BUILD.gn +++ b/tests/unittests/backup_sa/module_ipc/BUILD.gn @@ -99,6 +99,7 @@ ohos_unittest("backup_service_test") { "ability_runtime:ability_manager", "c_utils:utils", "hilog:libhilog", + "hitrace:hitrace_meter", "init:libbegetutil", "ipc:ipc_core", "safwk:system_ability_fwk",