Merge "Generate a logging ID incorporating the namespace." into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
9001a6e492
@@ -1598,7 +1598,7 @@ public class JobSchedulerService extends com.android.server.SystemService
|
|||||||
uId, null, jobStatus.getBatteryName(),
|
uId, null, jobStatus.getBatteryName(),
|
||||||
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__SCHEDULED,
|
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__SCHEDULED,
|
||||||
JobProtoEnums.INTERNAL_STOP_REASON_UNKNOWN, jobStatus.getStandbyBucket(),
|
JobProtoEnums.INTERNAL_STOP_REASON_UNKNOWN, jobStatus.getStandbyBucket(),
|
||||||
jobStatus.getJobId(),
|
jobStatus.getLoggingJobId(),
|
||||||
jobStatus.hasChargingConstraint(),
|
jobStatus.hasChargingConstraint(),
|
||||||
jobStatus.hasBatteryNotLowConstraint(),
|
jobStatus.hasBatteryNotLowConstraint(),
|
||||||
jobStatus.hasStorageNotLowConstraint(),
|
jobStatus.hasStorageNotLowConstraint(),
|
||||||
@@ -2026,7 +2026,7 @@ public class JobSchedulerService extends com.android.server.SystemService
|
|||||||
cancelled.getSourceUid(), null, cancelled.getBatteryName(),
|
cancelled.getSourceUid(), null, cancelled.getBatteryName(),
|
||||||
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__CANCELLED,
|
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__CANCELLED,
|
||||||
internalReasonCode, cancelled.getStandbyBucket(),
|
internalReasonCode, cancelled.getStandbyBucket(),
|
||||||
cancelled.getJobId(),
|
cancelled.getLoggingJobId(),
|
||||||
cancelled.hasChargingConstraint(),
|
cancelled.hasChargingConstraint(),
|
||||||
cancelled.hasBatteryNotLowConstraint(),
|
cancelled.hasBatteryNotLowConstraint(),
|
||||||
cancelled.hasStorageNotLowConstraint(),
|
cancelled.hasStorageNotLowConstraint(),
|
||||||
|
|||||||
@@ -465,7 +465,8 @@ public final class JobServiceContext implements ServiceConnection {
|
|||||||
job.getSourceUid(), null, job.getBatteryName(),
|
job.getSourceUid(), null, job.getBatteryName(),
|
||||||
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__STARTED,
|
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__STARTED,
|
||||||
JobProtoEnums.INTERNAL_STOP_REASON_UNKNOWN,
|
JobProtoEnums.INTERNAL_STOP_REASON_UNKNOWN,
|
||||||
job.getStandbyBucket(), job.getJobId(),
|
job.getStandbyBucket(),
|
||||||
|
job.getLoggingJobId(),
|
||||||
job.hasChargingConstraint(),
|
job.hasChargingConstraint(),
|
||||||
job.hasBatteryNotLowConstraint(),
|
job.hasBatteryNotLowConstraint(),
|
||||||
job.hasStorageNotLowConstraint(),
|
job.hasStorageNotLowConstraint(),
|
||||||
@@ -1521,7 +1522,8 @@ public final class JobServiceContext implements ServiceConnection {
|
|||||||
FrameworkStatsLog.write_non_chained(FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED,
|
FrameworkStatsLog.write_non_chained(FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED,
|
||||||
completedJob.getSourceUid(), null, completedJob.getBatteryName(),
|
completedJob.getSourceUid(), null, completedJob.getBatteryName(),
|
||||||
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__FINISHED,
|
FrameworkStatsLog.SCHEDULED_JOB_STATE_CHANGED__STATE__FINISHED,
|
||||||
loggingInternalStopReason, completedJob.getStandbyBucket(), completedJob.getJobId(),
|
loggingInternalStopReason, completedJob.getStandbyBucket(),
|
||||||
|
completedJob.getLoggingJobId(),
|
||||||
completedJob.hasChargingConstraint(),
|
completedJob.hasChargingConstraint(),
|
||||||
completedJob.hasBatteryNotLowConstraint(),
|
completedJob.hasBatteryNotLowConstraint(),
|
||||||
completedJob.hasStorageNotLowConstraint(),
|
completedJob.hasStorageNotLowConstraint(),
|
||||||
|
|||||||
@@ -231,6 +231,8 @@ public final class JobStatus {
|
|||||||
final String sourceTag;
|
final String sourceTag;
|
||||||
@Nullable
|
@Nullable
|
||||||
private final String mNamespace;
|
private final String mNamespace;
|
||||||
|
/** An ID that can be used to uniquely identify the job when logging statsd metrics. */
|
||||||
|
private final long mLoggingJobId;
|
||||||
|
|
||||||
final String tag;
|
final String tag;
|
||||||
|
|
||||||
@@ -568,6 +570,7 @@ public final class JobStatus {
|
|||||||
this.callingUid = callingUid;
|
this.callingUid = callingUid;
|
||||||
this.standbyBucket = standbyBucket;
|
this.standbyBucket = standbyBucket;
|
||||||
mNamespace = namespace;
|
mNamespace = namespace;
|
||||||
|
mLoggingJobId = generateLoggingId(namespace, job.getId());
|
||||||
|
|
||||||
int tempSourceUid = -1;
|
int tempSourceUid = -1;
|
||||||
if (sourceUserId != -1 && sourcePackageName != null) {
|
if (sourceUserId != -1 && sourcePackageName != null) {
|
||||||
@@ -804,6 +807,13 @@ public final class JobStatus {
|
|||||||
/*innerFlags=*/ 0, /* dynamicConstraints */ 0);
|
/*innerFlags=*/ 0, /* dynamicConstraints */ 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private long generateLoggingId(@Nullable String namespace, int jobId) {
|
||||||
|
if (namespace == null) {
|
||||||
|
return jobId;
|
||||||
|
}
|
||||||
|
return ((long) namespace.hashCode()) << 31 | jobId;
|
||||||
|
}
|
||||||
|
|
||||||
public void enqueueWorkLocked(JobWorkItem work) {
|
public void enqueueWorkLocked(JobWorkItem work) {
|
||||||
if (pendingWork == null) {
|
if (pendingWork == null) {
|
||||||
pendingWork = new ArrayList<>();
|
pendingWork = new ArrayList<>();
|
||||||
@@ -956,6 +966,11 @@ public final class JobStatus {
|
|||||||
return job.getId();
|
return job.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Returns an ID that can be used to uniquely identify the job when logging statsd metrics. */
|
||||||
|
public long getLoggingJobId() {
|
||||||
|
return mLoggingJobId;
|
||||||
|
}
|
||||||
|
|
||||||
public void printUniqueId(PrintWriter pw) {
|
public void printUniqueId(PrintWriter pw) {
|
||||||
if (mNamespace != null) {
|
if (mNamespace != null) {
|
||||||
pw.print(mNamespace);
|
pw.print(mNamespace);
|
||||||
|
|||||||
Reference in New Issue
Block a user