Replace manual creation of StatsEvent objects with their appropriate buildStatsEvent() method

Currently, Java clients are manually creating the StatsEvent objects
which can lead to errors. Now that there is support for pulled atoms for
stats-log-api-gen for Java clients, use the appropriate buildStatsEvent
method that was auto generated by stats-log-api-gen.

Bug: 160368804
Test: Ran `m` and completed successfully
Test: Ran `atest statsd_test` and all CTS tests passed
Test: Ran `atest UidAtomTests` and all CTS tests passed except for the CTS tests related to a SIM card because the device does not have a SIM card

Change-Id: Id229ba5ca94203135a8a5e2607de9844e0432ce1
This commit is contained in:
Salud Lemus
2020-07-06 22:23:48 +00:00
parent 978d360e7b
commit 3d655ad09e
3 changed files with 264 additions and 628 deletions

View File

@@ -61,6 +61,7 @@ import android.util.proto.ProtoOutputStream;
import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.util.FrameworkStatsLog;
import com.android.internal.util.IndentingPrintWriter;
import com.android.internal.util.XmlUtils;
import com.android.server.blob.BlobStoreManagerService.DumpArgs;
@@ -496,14 +497,8 @@ class BlobMetadata {
final byte[] leaseesBytes = proto.getBytes();
// Construct the StatsEvent to represent this Blob
return StatsEvent.newBuilder()
.setAtomId(atomTag)
.writeLong(mBlobId)
.writeLong(getSize())
.writeLong(mBlobHandle.getExpiryTimeMillis())
.writeByteArray(committersBytes)
.writeByteArray(leaseesBytes)
.build();
return FrameworkStatsLog.buildStatsEvent(atomTag, mBlobId, getSize(),
mBlobHandle.getExpiryTimeMillis(), committersBytes, leaseesBytes);
}
}

View File

@@ -611,24 +611,18 @@ public class GnssMetrics {
if (atomTag != FrameworkStatsLog.GNSS_STATS) {
throw new UnsupportedOperationException("Unknown tagId = " + atomTag);
}
StatsEvent e = StatsEvent.newBuilder()
.setAtomId(atomTag)
.writeLong(mLocationFailureReportsStatistics.getCount())
.writeLong(mLocationFailureReportsStatistics.getLongSum())
.writeLong(mTimeToFirstFixMilliSReportsStatistics.getCount())
.writeLong(mTimeToFirstFixMilliSReportsStatistics.getLongSum())
.writeLong(mPositionAccuracyMetersReportsStatistics.getCount())
.writeLong(mPositionAccuracyMetersReportsStatistics.getLongSum())
.writeLong(mTopFourAverageCn0DbmHzReportsStatistics.getCount())
.writeLong(mTopFourAverageCn0DbmHzReportsStatistics.getLongSum())
.writeLong(mL5TopFourAverageCn0DbmHzReportsStatistics.getCount())
.writeLong(mL5TopFourAverageCn0DbmHzReportsStatistics.getLongSum())
.writeLong(mSvStatusReports)
.writeLong(mSvStatusReportsUsedInFix)
.writeLong(mL5SvStatusReports)
.writeLong(mL5SvStatusReportsUsedInFix)
.build();
data.add(e);
data.add(FrameworkStatsLog.buildStatsEvent(atomTag,
mLocationFailureReportsStatistics.getCount(),
mLocationFailureReportsStatistics.getLongSum(),
mTimeToFirstFixMilliSReportsStatistics.getCount(),
mTimeToFirstFixMilliSReportsStatistics.getLongSum(),
mPositionAccuracyMetersReportsStatistics.getCount(),
mPositionAccuracyMetersReportsStatistics.getLongSum(),
mTopFourAverageCn0DbmHzReportsStatistics.getCount(),
mTopFourAverageCn0DbmHzReportsStatistics.getLongSum(),
mL5TopFourAverageCn0DbmHzReportsStatistics.getCount(),
mL5TopFourAverageCn0DbmHzReportsStatistics.getLongSum(), mSvStatusReports,
mSvStatusReportsUsedInFix, mL5SvStatusReports, mL5SvStatusReportsUsedInFix));
return StatsManager.PULL_SUCCESS;
}
}