修改HisysEvent封装函数

Signed-off-by: wangyang2022 <wangyang412@huawei.com>
Change-Id: I418f0e6dad24586b61b2675a22458d828e5ff547
This commit is contained in:
wangyang2022
2022-06-27 16:45:49 +08:00
parent 08449818ac
commit d574e849e1
5 changed files with 77 additions and 85 deletions
+6 -6
View File
@@ -76,26 +76,26 @@ START_CONTINUATION:
START_ABILITY_FAILED:
__BASE: {type: FAULT, level: CRITICAL, tag: start, desc: start remote ability}
ERROR_TYPE: {type: INT32, desc: error type}
ERROR_TYPE: {type: STRING, desc: error type}
CONNECT_ABILITY_FAILED:
__BASE: {type: FAULT, level: CRITICAL, tag: connect, desc: connect remote ability}
ERROR_TYPE: {type: INT32, desc: error type}
ERROR_TYPE: {type: STRING, desc: error type}
DISCONNECT_ABILITY_FAILED:
__BASE: {type: FAULT, level: CRITICAL, tag: connect, desc: disconnect remote ability}
ERROR_TYPE: {type: INT32, desc: error type}
ERROR_TYPE: {type: STRING, desc: error type}
START_ABILITY_BYCALL_FAILED:
__BASE: {type: FAULT, level: CRITICAL, tag: start, desc: start remote ability by call}
ERROR_TYPE: {type: INT32, desc: error type}
ERROR_TYPE: {type: STRING, desc: error type}
RELEASE_ABILITY_FAILED:
__BASE: {type: FAULT, level: CRITICAL, tag: start, desc: release remote ability}
ERROR_TYPE: {type: INT32, desc: error type}
ERROR_TYPE: {type: STRING, desc: error type}
START_CONTINUATION_FAILED:
__BASE: {type: FAULT, level: CRITICAL, tag: continue, desc: start continuation}
ERROR_TYPE: {type: INT32, desc: error type}
ERROR_TYPE: {type: STRING, desc: error type}
@@ -43,12 +43,23 @@ namespace EventErrorType {
const std::string GET_ABILITY_MGR_FAILED = "GET_ABILITY_MGR_FAILED";
}
namespace EventCallingType {
const std::string LOCAL = "LOCAL";
const std::string REMOTE = "REMOTE";
}
struct BehaviorEventParam {
std::string callingType;
std::string eventName;
int32_t eventResult;
std::string bundleName = "";
std::string abilityName = "";
int32_t callingAppUid = -1;
};
class DmsHiSysEventReport {
public:
static int ReportBehaviorEvent(const std::string& eventName, const int32_t& eventResult,
const std::string& bundleName = "", const std::string& abilityName = "", const int32_t& callingAppUid = -1);
static int ReportBehaviorEventFromRemote(const std::string& eventName, const int32_t& eventResult,
const std::string& bundleName = "", const std::string& abilityName = "", const int32_t& callingAppUid = -1);
static int ReportBehaviorEvent(const BehaviorEventParam& param);
static int ReportFaultEvent(const std::string& eventName, const std::string& errorType);
};
} // namespace DistributedSchedule
@@ -37,34 +37,16 @@ namespace {
const std::string KEY_TARGET_BUNDLE = "TARGET_BUNDLE";
}
int DmsHiSysEventReport::ReportBehaviorEvent(const std::string& eventName, const int32_t& eventResult,
const std::string& bundleName, const std::string& abilityName, const int32_t& callingAppUid)
int DmsHiSysEventReport::ReportBehaviorEvent(const BehaviorEventParam& param)
{
int result = HiSysEvent::Write(DOMAIN_NAME, eventName, HiSysEvent::EventType::BEHAVIOR,
KEY_CALLING_TYPE, "local",
int result = HiSysEvent::Write(DOMAIN_NAME, param.eventName, HiSysEvent::EventType::BEHAVIOR,
KEY_CALLING_TYPE, param.callingType,
KEY_CALLING_UID, IPCSkeleton::GetCallingUid(),
KEY_CALLING_PID, IPCSkeleton::GetCallingPid(),
KEY_CALLING_APP_UID, callingAppUid,
KEY_TARGET_BUNDLE, bundleName,
KEY_TARGET_ABILITY, abilityName,
KEY_RESULT, eventResult);
if (result != 0) {
HILOGE("hisysevent report failed! ret %{public}d.", result);
}
return result;
}
int DmsHiSysEventReport::ReportBehaviorEventFromRemote(const std::string& eventName, const int32_t& eventResult,
const std::string& bundleName, const std::string& abilityName, const int32_t& callingAppUid)
{
int result = HiSysEvent::Write(DOMAIN_NAME, eventName, HiSysEvent::EventType::BEHAVIOR,
KEY_CALLING_TYPE, "remote",
KEY_CALLING_UID, IPCSkeleton::GetCallingUid(),
KEY_CALLING_PID, IPCSkeleton::GetCallingPid(),
KEY_CALLING_APP_UID, callingAppUid,
KEY_TARGET_BUNDLE, bundleName,
KEY_TARGET_ABILITY, abilityName,
KEY_RESULT, eventResult);
KEY_CALLING_APP_UID, param.callingAppUid,
KEY_TARGET_BUNDLE, param.bundleName,
KEY_TARGET_ABILITY, param.abilityName,
KEY_RESULT, param.eventResult);
if (result != 0) {
HILOGE("hisysevent report failed! ret %{public}d.", result);
}
@@ -159,8 +159,9 @@ int32_t DistributedSchedStub::StartRemoteAbilityInner(MessageParcel& data, Messa
return DMS_PERMISSION_DENIED;
}
int32_t result = StartRemoteAbility(*want, callerUid, requestCode, accessToken);
DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::START_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid);
BehaviorEventParam eventParam = { EventCallingType::LOCAL, BehaviorEvent::START_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("StartRemoteAbilityInner result = %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -208,8 +209,9 @@ int32_t DistributedSchedStub::StartAbilityFromRemoteInner(MessageParcel& data, M
HILOGD("parse extra info, accessTokenID = %u", accessToken);
}
int32_t result = StartAbilityFromRemote(*want, abilityInfo, requestCode, callerInfo, accountInfo);
DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::START_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerInfo.uid);
BehaviorEventParam eventParam = { EventCallingType::REMOTE, BehaviorEvent::START_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerInfo.uid };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result = %{public}d", result);
PARCEL_WRITE_HELPER(reply, Int32, result);
int64_t end = GetTickCount();
@@ -300,8 +302,9 @@ int32_t DistributedSchedStub::StartContinuationInner(MessageParcel& data, Messag
return DMS_PERMISSION_DENIED;
}
int32_t result = StartContinuation(*want, missionId, callerUid, status, accessToken);
DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::START_CONTINUATION, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid);
BehaviorEventParam eventParam = { EventCallingType::LOCAL, BehaviorEvent::START_CONTINUATION, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result = %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -361,8 +364,9 @@ int32_t DistributedSchedStub::ConnectRemoteAbilityInner(MessageParcel& data, Mes
return DMS_PERMISSION_DENIED;
}
int32_t result = ConnectRemoteAbility(*want, connect, callerUid, callerPid, accessToken);
DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::CONNECT_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid);
BehaviorEventParam eventParam = { EventCallingType::LOCAL, BehaviorEvent::CONNECT_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result = %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -383,7 +387,8 @@ int32_t DistributedSchedStub::DisconnectRemoteAbilityInner(MessageParcel& data,
return DMS_PERMISSION_DENIED;
}
int32_t result = DisconnectRemoteAbility(connect, callerUid, accessToken);
DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::DISCONNECT_REMOTE_ABILITY, result);
BehaviorEventParam eventParam = { EventCallingType::LOCAL, BehaviorEvent::DISCONNECT_REMOTE_ABILITY, result };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result = %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -431,8 +436,9 @@ int32_t DistributedSchedStub::ConnectAbilityFromRemoteInner(MessageParcel& data,
std::string deviceId = abilityInfo.deviceId;
int64_t begin = GetTickCount();
int32_t result = ConnectAbilityFromRemote(*want, abilityInfo, connect, callerInfo, accountInfo);
DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::CONNECT_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerInfo.uid);
BehaviorEventParam eventParam = { EventCallingType::REMOTE, BehaviorEvent::CONNECT_REMOTE_ABILITY, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerInfo.uid };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGW("result = %{public}d", result);
int64_t end = GetTickCount();
PARCEL_WRITE_HELPER(reply, Int32, result);
@@ -455,7 +461,8 @@ int32_t DistributedSchedStub::DisconnectAbilityFromRemoteInner(MessageParcel& da
string sourceDeviceId;
PARCEL_READ_HELPER(data, String, sourceDeviceId);
int32_t result = DisconnectAbilityFromRemote(connect, uid, sourceDeviceId);
DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::DISCONNECT_REMOTE_ABILITY, result);
BehaviorEventParam eventParam = { EventCallingType::REMOTE, BehaviorEvent::DISCONNECT_REMOTE_ABILITY, result };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -825,8 +832,9 @@ int32_t DistributedSchedStub::StartRemoteAbilityByCallInner(MessageParcel& data,
return DMS_PERMISSION_DENIED;
}
int32_t result = StartRemoteAbilityByCall(*want, connect, callerUid, callerPid, accessToken);
DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::START_REMOTE_ABILITY_BYCALL, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid);
BehaviorEventParam eventParam = { EventCallingType::LOCAL, BehaviorEvent::START_REMOTE_ABILITY_BYCALL, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerUid };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result = %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -842,8 +850,9 @@ int32_t DistributedSchedStub::ReleaseRemoteAbilityInner(MessageParcel& data, Mes
return ERR_INVALID_VALUE;
}
int32_t result = ReleaseRemoteAbility(connect, *element);
DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::RELEASE_REMOTE_ABILITY, result,
element->GetBundleName(), element->GetAbilityName());
BehaviorEventParam eventParam = { EventCallingType::LOCAL, BehaviorEvent::RELEASE_REMOTE_ABILITY, result,
element->GetBundleName(), element->GetAbilityName() };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result = %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -881,8 +890,9 @@ int32_t DistributedSchedStub::StartAbilityByCallFromRemoteInner(MessageParcel& d
return ERR_NULL_OBJECT;
}
int32_t result = StartAbilityByCallFromRemote(*want, connect, callerInfo, accountInfo);
DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::START_REMOTE_ABILITY_BYCALL, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerInfo.uid);
BehaviorEventParam eventParam = { EventCallingType::REMOTE, BehaviorEvent::START_REMOTE_ABILITY_BYCALL, result,
want->GetElement().GetBundleName(), want->GetElement().GetAbilityName(), callerInfo.uid };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result = %{public}d", result);
PARCEL_WRITE_HELPER(reply, Int32, result);
return ERR_NONE;
@@ -906,8 +916,9 @@ int32_t DistributedSchedStub::ReleaseAbilityFromRemoteInner(MessageParcel& data,
std::string extraInfo;
PARCEL_READ_HELPER(data, String, extraInfo);
int32_t result = ReleaseAbilityFromRemote(connect, *element, callerInfo);
DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::RELEASE_REMOTE_ABILITY, result,
element->GetBundleName(), element->GetAbilityName());
BehaviorEventParam eventParam = { EventCallingType::REMOTE, BehaviorEvent::RELEASE_REMOTE_ABILITY, result,
element->GetBundleName(), element->GetAbilityName() };
DmsHiSysEventReport::ReportBehaviorEvent(eventParam);
HILOGI("result %{public}d", result);
PARCEL_WRITE_REPLY_NOERROR(reply, Int32, result);
}
@@ -61,11 +61,9 @@ HWTEST_F(DmsHiSysEventReportTest, DmsHiSysEventReportTest_001, TestSize.Level1)
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_001 begin" << std::endl;
int32_t result = -1;
result = DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::START_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
EXPECT_TRUE(result == 0);
result = DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::START_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
BehaviorEventParam param = { EventCallingType::LOCAL, BehaviorEvent::START_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid };
result = DmsHiSysEventReport::ReportBehaviorEvent(param);
EXPECT_TRUE(result == 0);
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_001 end ret:" << result << std::endl;
}
@@ -80,11 +78,9 @@ HWTEST_F(DmsHiSysEventReportTest, DmsHiSysEventReportTest_002, TestSize.Level1)
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_002 begin" << std::endl;
int32_t result = -1;
result = DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::CONNECT_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
EXPECT_TRUE(result == 0);
result = DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::CONNECT_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
BehaviorEventParam param = { EventCallingType::LOCAL, BehaviorEvent::CONNECT_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid };
result = DmsHiSysEventReport::ReportBehaviorEvent(param);
EXPECT_TRUE(result == 0);
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_002 end ret:" << result << std::endl;
}
@@ -99,11 +95,9 @@ HWTEST_F(DmsHiSysEventReportTest, DmsHiSysEventReportTest_003, TestSize.Level1)
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_003 begin" << std::endl;
int32_t result = -1;
result = DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::START_CONTINUATION, eventResult,
bundleName, abilityName, callingAppUid);
EXPECT_TRUE(result == 0);
result = DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::START_CONTINUATION, eventResult,
bundleName, abilityName, callingAppUid);
BehaviorEventParam param = { EventCallingType::LOCAL, BehaviorEvent::START_CONTINUATION, eventResult,
bundleName, abilityName, callingAppUid };
result = DmsHiSysEventReport::ReportBehaviorEvent(param);
EXPECT_TRUE(result == 0);
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_003 end ret:" << result << std::endl;
}
@@ -118,11 +112,9 @@ HWTEST_F(DmsHiSysEventReportTest, DmsHiSysEventReportTest_004, TestSize.Level1)
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_004 begin" << std::endl;
int32_t result = -1;
result = DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::START_REMOTE_ABILITY_BYCALL, eventResult,
bundleName, abilityName, callingAppUid);
EXPECT_TRUE(result == 0);
result = DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::START_REMOTE_ABILITY_BYCALL, eventResult,
bundleName, abilityName, callingAppUid);
BehaviorEventParam param = { EventCallingType::LOCAL, BehaviorEvent::START_REMOTE_ABILITY_BYCALL, eventResult,
bundleName, abilityName, callingAppUid };
result = DmsHiSysEventReport::ReportBehaviorEvent(param);
EXPECT_TRUE(result == 0);
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_004 end "<< std::endl;
}
@@ -137,11 +129,9 @@ HWTEST_F(DmsHiSysEventReportTest, DmsHiSysEventReportTest_005, TestSize.Level1)
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_005 begin" << std::endl;
int32_t result = -1;
result = DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::DISCONNECT_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
EXPECT_TRUE(result == 0);
result = DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::DISCONNECT_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
BehaviorEventParam param = { EventCallingType::LOCAL, BehaviorEvent::DISCONNECT_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid };
result = DmsHiSysEventReport::ReportBehaviorEvent(param);
EXPECT_TRUE(result == 0);
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_005 end "<< std::endl;
}
@@ -156,11 +146,9 @@ HWTEST_F(DmsHiSysEventReportTest, DmsHiSysEventReportTest_006, TestSize.Level1)
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_006 begin" << std::endl;
int32_t result = -1;
result = DmsHiSysEventReport::ReportBehaviorEvent(BehaviorEvent::RELEASE_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
EXPECT_TRUE(result == 0);
result = DmsHiSysEventReport::ReportBehaviorEventFromRemote(BehaviorEvent::RELEASE_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid);
BehaviorEventParam param = { EventCallingType::LOCAL, BehaviorEvent::RELEASE_REMOTE_ABILITY, eventResult,
bundleName, abilityName, callingAppUid };
result = DmsHiSysEventReport::ReportBehaviorEvent(param);
EXPECT_TRUE(result == 0);
DTEST_LOG << "DmsHiSysEventReportTest DmsHiSysEventReportTest_006 end "<< std::endl;
}