Merge "Pull Keystore2CrashStats Atom." into sc-dev-plus-aosp
This commit is contained in:
committed by
Android (Google) Code Review
commit
1356aad7e7
@@ -133,6 +133,7 @@ import android.os.storage.StorageManager;
|
|||||||
import android.os.storage.VolumeInfo;
|
import android.os.storage.VolumeInfo;
|
||||||
import android.provider.DeviceConfig;
|
import android.provider.DeviceConfig;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
import android.security.metrics.CrashStats;
|
||||||
import android.security.metrics.IKeystoreMetrics;
|
import android.security.metrics.IKeystoreMetrics;
|
||||||
import android.security.metrics.KeyCreationWithAuthInfo;
|
import android.security.metrics.KeyCreationWithAuthInfo;
|
||||||
import android.security.metrics.KeyCreationWithGeneralInfo;
|
import android.security.metrics.KeyCreationWithGeneralInfo;
|
||||||
@@ -731,6 +732,7 @@ public class StatsPullAtomService extends SystemService {
|
|||||||
case FrameworkStatsLog.KEYSTORE2_KEY_OPERATION_WITH_PURPOSE_AND_MODES_INFO:
|
case FrameworkStatsLog.KEYSTORE2_KEY_OPERATION_WITH_PURPOSE_AND_MODES_INFO:
|
||||||
case FrameworkStatsLog.KEYSTORE2_KEY_OPERATION_WITH_GENERAL_INFO:
|
case FrameworkStatsLog.KEYSTORE2_KEY_OPERATION_WITH_GENERAL_INFO:
|
||||||
case FrameworkStatsLog.RKP_ERROR_STATS:
|
case FrameworkStatsLog.RKP_ERROR_STATS:
|
||||||
|
case FrameworkStatsLog.KEYSTORE2_CRASH_STATS:
|
||||||
return pullKeystoreAtoms(atomTag, data);
|
return pullKeystoreAtoms(atomTag, data);
|
||||||
default:
|
default:
|
||||||
throw new UnsupportedOperationException("Unknown tagId=" + atomTag);
|
throw new UnsupportedOperationException("Unknown tagId=" + atomTag);
|
||||||
@@ -927,6 +929,7 @@ public class StatsPullAtomService extends SystemService {
|
|||||||
registerKeystoreKeyOperationWithPurposeAndModesInfo();
|
registerKeystoreKeyOperationWithPurposeAndModesInfo();
|
||||||
registerKeystoreKeyOperationWithGeneralInfo();
|
registerKeystoreKeyOperationWithGeneralInfo();
|
||||||
registerRkpErrorStats();
|
registerRkpErrorStats();
|
||||||
|
registerKeystoreCrashStats();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initAndRegisterNetworkStatsPullers() {
|
private void initAndRegisterNetworkStatsPullers() {
|
||||||
@@ -4139,6 +4142,14 @@ public class StatsPullAtomService extends SystemService {
|
|||||||
mStatsCallbackImpl);
|
mStatsCallbackImpl);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void registerKeystoreCrashStats() {
|
||||||
|
mStatsManager.setPullAtomCallback(
|
||||||
|
FrameworkStatsLog.KEYSTORE2_CRASH_STATS,
|
||||||
|
null, // use default PullAtomMetadata values,
|
||||||
|
DIRECT_EXECUTOR,
|
||||||
|
mStatsCallbackImpl);
|
||||||
|
}
|
||||||
|
|
||||||
int parseKeystoreStorageStats(KeystoreAtom[] atoms, List<StatsEvent> pulledData) {
|
int parseKeystoreStorageStats(KeystoreAtom[] atoms, List<StatsEvent> pulledData) {
|
||||||
for (KeystoreAtom atomWrapper : atoms) {
|
for (KeystoreAtom atomWrapper : atoms) {
|
||||||
if (atomWrapper.payload.getTag() != KeystoreAtomPayload.storageStats) {
|
if (atomWrapper.payload.getTag() != KeystoreAtomPayload.storageStats) {
|
||||||
@@ -4271,6 +4282,19 @@ public class StatsPullAtomService extends SystemService {
|
|||||||
return StatsManager.PULL_SUCCESS;
|
return StatsManager.PULL_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int parseKeystoreCrashStats(KeystoreAtom[] atoms,
|
||||||
|
List<StatsEvent> pulledData) {
|
||||||
|
for (KeystoreAtom atomWrapper : atoms) {
|
||||||
|
if (atomWrapper.payload.getTag() != KeystoreAtomPayload.crashStats) {
|
||||||
|
return StatsManager.PULL_SKIP;
|
||||||
|
}
|
||||||
|
CrashStats atom = atomWrapper.payload.getCrashStats();
|
||||||
|
pulledData.add(FrameworkStatsLog.buildStatsEvent(
|
||||||
|
FrameworkStatsLog.KEYSTORE2_CRASH_STATS, atom.count_of_crash_events));
|
||||||
|
}
|
||||||
|
return StatsManager.PULL_SUCCESS;
|
||||||
|
}
|
||||||
|
|
||||||
int pullKeystoreAtoms(int atomTag, List<StatsEvent> pulledData) {
|
int pullKeystoreAtoms(int atomTag, List<StatsEvent> pulledData) {
|
||||||
IKeystoreMetrics keystoreMetricsService = getIKeystoreMetricsService();
|
IKeystoreMetrics keystoreMetricsService = getIKeystoreMetricsService();
|
||||||
if (keystoreMetricsService == null) {
|
if (keystoreMetricsService == null) {
|
||||||
@@ -4299,6 +4323,8 @@ public class StatsPullAtomService extends SystemService {
|
|||||||
return parseKeystoreKeyOperationWithGeneralInfo(atoms, pulledData);
|
return parseKeystoreKeyOperationWithGeneralInfo(atoms, pulledData);
|
||||||
case FrameworkStatsLog.RKP_ERROR_STATS:
|
case FrameworkStatsLog.RKP_ERROR_STATS:
|
||||||
return parseRkpErrorStats(atoms, pulledData);
|
return parseRkpErrorStats(atoms, pulledData);
|
||||||
|
case FrameworkStatsLog.KEYSTORE2_CRASH_STATS:
|
||||||
|
return parseKeystoreCrashStats(atoms, pulledData);
|
||||||
default:
|
default:
|
||||||
Slog.w(TAG, "Unsupported keystore atom: " + atomTag);
|
Slog.w(TAG, "Unsupported keystore atom: " + atomTag);
|
||||||
return StatsManager.PULL_SKIP;
|
return StatsManager.PULL_SKIP;
|
||||||
|
|||||||
Reference in New Issue
Block a user