Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d8fb1ab4 authored by Daniel Perez's avatar Daniel Perez
Browse files

Report agent logging results after sending data to the transport

Change-Id: I787179da73d4e27018436db3b6eb96201276d86e
Bug: 431940257
Flag: com.android.server.backup.enable_kv_backup_logs_from_transport_with_proper_flow_id
Tested: tested manually
parent f44bdcbc
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -95,3 +95,11 @@ flag {
    bug: "399038494"
    is_fixed_read_only: true
}

flag {
    name: "enable_kv_backup_logs_from_transport_with_proper_flow_id"
    namespace: "onboarding"
    description: "Enables getting the backup manager monitor from the transport "
            "on KV backup and logging agent logs with the proper flow id."
    bug: "443738546"
}
 No newline at end of file
+5 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.server.backup.keyvalue;

import android.app.IBackupAgent;
import android.annotation.Nullable;
import android.app.backup.BackupManager;
import android.app.backup.BackupManagerMonitor;
@@ -403,4 +404,8 @@ public class KeyValueBackupReporter {
    void onTaskFinished() {
        Slog.i(TAG, "K/V backup pass finished");
    }

    void monitorAgentLoggingResults(PackageInfo packageInfo, IBackupAgent agent) {
        mBackupManagerMonitorEventSender.monitorAgentLoggingResults(packageInfo, agent);
    }
}
+11 −3
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ import com.android.server.AppWidgetBackupBridge;
import com.android.server.backup.BackupAgentTimeoutParameters;
import com.android.server.backup.BackupRestoreTask;
import com.android.server.backup.DataChangedJournal;
import com.android.server.backup.Flags;
import com.android.server.backup.KeyValueBackupJob;
import com.android.server.backup.OperationStorage;
import com.android.server.backup.OperationStorage.OpState;
@@ -699,10 +700,17 @@ public class KeyValueBackupTask implements BackupRestoreTask, Runnable {

        try {
            extractAgentData(mCurrentPackage);
            int status;
            if (Flags.enableKvBackupLogsFromTransportWithProperFlowId()) {
                status = sendDataToTransport(mCurrentPackage);
                mReporter.monitorAgentLoggingResults(mCurrentPackage, mAgent);
            } else {
                BackupManagerMonitorEventSender mBackupManagerMonitorEventSender =
                    new BackupManagerMonitorEventSender(mReporter.getMonitor());
            mBackupManagerMonitorEventSender.monitorAgentLoggingResults(mCurrentPackage, mAgent);
            int status = sendDataToTransport(mCurrentPackage);
                mBackupManagerMonitorEventSender.monitorAgentLoggingResults(
                        mCurrentPackage, mAgent);
                status = sendDataToTransport(mCurrentPackage);
            }
            cleanUpAgentForTransportStatus(status);
        } catch (AgentException | TaskException e) {
            cleanUpAgentForError(e);