Merge "Remove application package name from ContentCapture logging" into tm-dev am: 65f8aea175

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18281616

Change-Id: I5fc74677800fc808297eee8579b17ac108bdc971
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Joanne Chung
2022-05-13 08:58:28 +00:00
committed by Automerger Merge Worker
4 changed files with 27 additions and 54 deletions

View File

@@ -730,7 +730,7 @@ public final class ContentCaptureManagerService extends
String serviceName = mServiceNameResolver.getServiceName(userId);
ContentCaptureMetricsLogger.writeServiceEvent(
EVENT__DATA_SHARE_ERROR_CONCURRENT_REQUEST,
serviceName, request.getPackageName());
serviceName);
clientAdapter.error(
ContentCaptureManager.DATA_SHARE_ERROR_CONCURRENT_REQUEST);
} catch (RemoteException e) {
@@ -1303,8 +1303,7 @@ public final class ContentCaptureManagerService extends
private void logServiceEvent(int eventType) {
int userId = UserHandle.getCallingUserId();
String serviceName = mParentService.mServiceNameResolver.getServiceName(userId);
ContentCaptureMetricsLogger.writeServiceEvent(eventType, serviceName,
mDataShareRequest.getPackageName());
ContentCaptureMetricsLogger.writeServiceEvent(eventType, serviceName);
}
}
}

View File

@@ -34,72 +34,48 @@ public final class ContentCaptureMetricsLogger {
}
/** @hide */
public static void writeServiceEvent(int eventType, @NonNull String serviceName,
@Nullable String targetPackage) {
public static void writeServiceEvent(int eventType, @NonNull String serviceName) {
// we should not logging the application package name
FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS, eventType,
serviceName, targetPackage);
}
/** @hide */
public static void writeServiceEvent(int eventType, @NonNull ComponentName service,
@Nullable ComponentName target) {
writeServiceEvent(eventType, ComponentName.flattenToShortString(service),
ComponentName.flattenToShortString(target));
}
/** @hide */
public static void writeServiceEvent(int eventType, @NonNull ComponentName service,
@Nullable String targetPackage) {
writeServiceEvent(eventType, ComponentName.flattenToShortString(service), targetPackage);
serviceName, /* componentName= */ null);
}
/** @hide */
public static void writeServiceEvent(int eventType, @NonNull ComponentName service) {
writeServiceEvent(eventType, ComponentName.flattenToShortString(service), null);
writeServiceEvent(eventType, ComponentName.flattenToShortString(service));
}
/** @hide */
public static void writeSetWhitelistEvent(@Nullable ComponentName service,
@Nullable List<String> packages, @Nullable List<ComponentName> activities) {
final String serviceName = ComponentName.flattenToShortString(service);
StringBuilder stringBuilder = new StringBuilder();
if (packages != null && packages.size() > 0) {
final int size = packages.size();
stringBuilder.append(packages.get(0));
for (int i = 1; i < size; i++) {
stringBuilder.append(" ");
stringBuilder.append(packages.get(i));
}
}
if (activities != null && activities.size() > 0) {
stringBuilder.append(" ");
stringBuilder.append(activities.get(0).flattenToShortString());
final int size = activities.size();
for (int i = 1; i < size; i++) {
stringBuilder.append(" ");
stringBuilder.append(activities.get(i).flattenToShortString());
}
}
// TODO: log allow list count.
int packageCount = packages != null ? packages.size() : 0;
int activityCount = activities != null ? activities.size() : 0;
// we should not logging the application package name
// log the allow list package and activity count instead
FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS,
FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__SET_WHITELIST,
serviceName, stringBuilder.toString());
serviceName, /* allowListStr= */ null);
}
/** @hide */
public static void writeSessionEvent(int sessionId, int event, int flags,
@NonNull ComponentName service, @Nullable ComponentName app, boolean isChildSession) {
@NonNull ComponentName service, boolean isChildSession) {
// we should not logging the application package name
FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS, sessionId, event,
flags, ComponentName.flattenToShortString(service),
ComponentName.flattenToShortString(app), isChildSession);
/* componentName= */ null, isChildSession);
}
/** @hide */
public static void writeSessionFlush(int sessionId, @NonNull ComponentName service,
@Nullable ComponentName app, @NonNull FlushMetrics fm,
@NonNull ContentCaptureOptions options, int flushReason) {
@NonNull FlushMetrics fm, @NonNull ContentCaptureOptions options,
int flushReason) {
// we should not logging the application package name
FrameworkStatsLog.write(FrameworkStatsLog.CONTENT_CAPTURE_FLUSHED, sessionId,
ComponentName.flattenToShortString(service),
ComponentName.flattenToShortString(app), fm.sessionStarted, fm.sessionFinished,
/* componentName= */ null, fm.sessionStarted, fm.sessionFinished,
fm.viewAppearedCount, fm.viewDisappearedCount, fm.viewTextChangedCount,
options.maxBufferSize, options.idleFlushingFrequencyMs,
options.textChangeFlushingFrequencyMs, flushReason);

View File

@@ -330,7 +330,7 @@ final class ContentCapturePerUserService
writeSessionEvent(sessionId,
FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED,
STATE_DISABLED | STATE_NO_SERVICE, serviceComponentName,
componentName, /* isChildSession= */ false);
/* isChildSession= */ false);
return;
}
if (serviceComponentName == null) {
@@ -354,7 +354,7 @@ final class ContentCapturePerUserService
writeSessionEvent(sessionId,
FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED,
STATE_DISABLED | STATE_NOT_WHITELISTED, serviceComponentName,
componentName, /* isChildSession= */ false);
/* isChildSession= */ false);
return;
}
@@ -368,7 +368,7 @@ final class ContentCapturePerUserService
writeSessionEvent(sessionId,
FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED,
STATE_DISABLED | STATE_DUPLICATED_ID,
serviceComponentName, componentName, /* isChildSession= */ false);
serviceComponentName, /* isChildSession= */ false);
return;
}
@@ -385,7 +385,7 @@ final class ContentCapturePerUserService
writeSessionEvent(sessionId,
FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__SESSION_NOT_CREATED,
STATE_DISABLED | STATE_NO_SERVICE, serviceComponentName,
componentName, /* isChildSession= */ false);
/* isChildSession= */ false);
return;
}
@@ -740,7 +740,7 @@ final class ContentCapturePerUserService
@Override
public void writeSessionFlush(int sessionId, ComponentName app, FlushMetrics flushMetrics,
ContentCaptureOptions options, int flushReason) {
ContentCaptureMetricsLogger.writeSessionFlush(sessionId, getServiceComponentName(), app,
ContentCaptureMetricsLogger.writeSessionFlush(sessionId, getServiceComponentName(),
flushMetrics, options, flushReason);
}

View File

@@ -119,8 +119,7 @@ final class RemoteContentCaptureService
// Metrics logging.
writeSessionEvent(sessionId,
FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__ON_SESSION_STARTED,
initialState, getComponentName(), context.getActivityComponent(),
/* is_child_session= */ false);
initialState, getComponentName(), /* is_child_session= */ false);
}
/**
@@ -132,8 +131,7 @@ final class RemoteContentCaptureService
// Metrics logging.
writeSessionEvent(sessionId,
FrameworkStatsLog.CONTENT_CAPTURE_SESSION_EVENTS__EVENT__ON_SESSION_FINISHED,
/* flags= */ 0, getComponentName(), /* app= */ null,
/* is_child_session= */ false);
/* flags= */ 0, getComponentName(), /* is_child_session= */ false);
}
/**
@@ -158,7 +156,7 @@ final class RemoteContentCaptureService
scheduleAsyncRequest((s) -> s.onDataShared(request, dataShareCallback));
writeServiceEvent(
FrameworkStatsLog.CONTENT_CAPTURE_SERVICE_EVENTS__EVENT__ON_DATA_SHARE_REQUEST,
mComponentName, request.getPackageName());
mComponentName);
}
/**