Merge "Add /metadata info on dumpsys diskstats and StatsPullAtomService" am: 31f779f949

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

Change-Id: Iebb35e4099506f05f73c59dd689e84e75ae8756d
This commit is contained in:
Sandro Montanari
2022-03-02 18:47:03 +00:00
committed by Automerger Merge Worker
4 changed files with 19 additions and 0 deletions

View File

@@ -101,6 +101,7 @@ public class Environment {
private static final File DIR_ANDROID_EXPAND = getDirectory(ENV_ANDROID_EXPAND, "/mnt/expand"); private static final File DIR_ANDROID_EXPAND = getDirectory(ENV_ANDROID_EXPAND, "/mnt/expand");
private static final File DIR_ANDROID_STORAGE = getDirectory(ENV_ANDROID_STORAGE, "/storage"); private static final File DIR_ANDROID_STORAGE = getDirectory(ENV_ANDROID_STORAGE, "/storage");
private static final File DIR_DOWNLOAD_CACHE = getDirectory(ENV_DOWNLOAD_CACHE, "/cache"); private static final File DIR_DOWNLOAD_CACHE = getDirectory(ENV_DOWNLOAD_CACHE, "/cache");
private static final File DIR_METADATA = new File("/metadata");
private static final File DIR_OEM_ROOT = getDirectory(ENV_OEM_ROOT, "/oem"); private static final File DIR_OEM_ROOT = getDirectory(ENV_OEM_ROOT, "/oem");
private static final File DIR_ODM_ROOT = getDirectory(ENV_ODM_ROOT, "/odm"); private static final File DIR_ODM_ROOT = getDirectory(ENV_ODM_ROOT, "/odm");
private static final File DIR_VENDOR_ROOT = getDirectory(ENV_VENDOR_ROOT, "/vendor"); private static final File DIR_VENDOR_ROOT = getDirectory(ENV_VENDOR_ROOT, "/vendor");
@@ -1097,6 +1098,15 @@ public class Environment {
return DIR_DOWNLOAD_CACHE; return DIR_DOWNLOAD_CACHE;
} }
/**
* Return the metadata directory.
*
* @hide
*/
public static @NonNull File getMetadataDirectory() {
return DIR_METADATA;
}
/** /**
* Unknown storage state, such as when a path isn't backed by known storage * Unknown storage state, such as when a path isn't backed by known storage
* media. * media.

View File

@@ -99,6 +99,8 @@ message DiskStatsFreeSpaceProto {
FOLDER_CACHE = 1; FOLDER_CACHE = 1;
// System folder // System folder
FOLDER_SYSTEM = 2; FOLDER_SYSTEM = 2;
// Metadata folder
FOLDER_METADATA = 3;
} }
// Which folder? // Which folder?
optional Folder folder = 1; optional Folder folder = 1;

View File

@@ -125,6 +125,8 @@ public class DiskStatsService extends Binder {
DiskStatsFreeSpaceProto.FOLDER_CACHE); DiskStatsFreeSpaceProto.FOLDER_CACHE);
reportFreeSpace(new File("/system"), "System", pw, proto, reportFreeSpace(new File("/system"), "System", pw, proto,
DiskStatsFreeSpaceProto.FOLDER_SYSTEM); DiskStatsFreeSpaceProto.FOLDER_SYSTEM);
reportFreeSpace(Environment.getMetadataDirectory(), "Metadata", pw, proto,
DiskStatsFreeSpaceProto.FOLDER_METADATA);
boolean fileBased = StorageManager.isFileEncryptedNativeOnly(); boolean fileBased = StorageManager.isFileEncryptedNativeOnly();
boolean blockBased = fileBased ? false : StorageManager.isBlockEncrypted(); boolean blockBased = fileBased ? false : StorageManager.isBlockEncrypted();

View File

@@ -2621,6 +2621,7 @@ public class StatsPullAtomService extends SystemService {
StatFs statFsData = new StatFs(Environment.getDataDirectory().getAbsolutePath()); StatFs statFsData = new StatFs(Environment.getDataDirectory().getAbsolutePath());
StatFs statFsSystem = new StatFs(Environment.getRootDirectory().getAbsolutePath()); StatFs statFsSystem = new StatFs(Environment.getRootDirectory().getAbsolutePath());
StatFs statFsCache = new StatFs(Environment.getDownloadCacheDirectory().getAbsolutePath()); StatFs statFsCache = new StatFs(Environment.getDownloadCacheDirectory().getAbsolutePath());
StatFs metadataFsSystem = new StatFs(Environment.getMetadataDirectory().getAbsolutePath());
pulledData.add(FrameworkStatsLog.buildStatsEvent(atomTag, pulledData.add(FrameworkStatsLog.buildStatsEvent(atomTag,
FrameworkStatsLog.DIRECTORY_USAGE__DIRECTORY__DATA, statFsData.getAvailableBytes(), FrameworkStatsLog.DIRECTORY_USAGE__DIRECTORY__DATA, statFsData.getAvailableBytes(),
@@ -2633,6 +2634,10 @@ public class StatsPullAtomService extends SystemService {
pulledData.add(FrameworkStatsLog.buildStatsEvent(atomTag, pulledData.add(FrameworkStatsLog.buildStatsEvent(atomTag,
FrameworkStatsLog.DIRECTORY_USAGE__DIRECTORY__SYSTEM, FrameworkStatsLog.DIRECTORY_USAGE__DIRECTORY__SYSTEM,
statFsSystem.getAvailableBytes(), statFsSystem.getTotalBytes())); statFsSystem.getAvailableBytes(), statFsSystem.getTotalBytes()));
pulledData.add(FrameworkStatsLog.buildStatsEvent(atomTag,
FrameworkStatsLog.DIRECTORY_USAGE__DIRECTORY__METADATA,
metadataFsSystem.getAvailableBytes(), metadataFsSystem.getTotalBytes()));
return StatsManager.PULL_SUCCESS; return StatsManager.PULL_SUCCESS;
} }