144 lines
4.6 KiB
Protocol Buffer
144 lines
4.6 KiB
Protocol Buffer
syntax = "proto2";
|
|
|
|
package cuttlefish;
|
|
|
|
import "common.proto";
|
|
|
|
// Wrapper for Cuttlefish Metrics log events.
|
|
// Next index: 22
|
|
message MetricsEvent {
|
|
// High level event types for this message. This is the broadest
|
|
// category identifier for MetricsEvent and should be used to indicate
|
|
// which other fields will be populated. Only used in field event_type.
|
|
// Next index: 6
|
|
enum EventType {
|
|
// An unspecified, unhandled event.
|
|
CUTTLEFISH_EVENT_TYPE_UNSPECIFIED = 0;
|
|
|
|
// The device experienced an error.
|
|
CUTTLEFISH_EVENT_TYPE_ERROR = 1;
|
|
|
|
// The event type is the time the VM instance is instantiated.
|
|
CUTTLEFISH_EVENT_TYPE_VM_INSTANTIATION = 2;
|
|
|
|
// The event type is the time the device boot process is started.
|
|
CUTTLEFISH_EVENT_TYPE_DEVICE_BOOT = 3;
|
|
|
|
// The event type is the time the device lock screen is available.
|
|
CUTTLEFISH_EVENT_TYPE_LOCK_SCREEN_AVAILABLE = 4;
|
|
|
|
// The event type is the time the virtual device was stopped.
|
|
CUTTLEFISH_EVENT_TYPE_VM_STOP = 5;
|
|
}
|
|
|
|
// Defines the OS that this log was sourced from.
|
|
// This may not be the same OS which uploaded the log event.
|
|
// Next index: 5
|
|
enum OsType {
|
|
// The log event was sourced from an unspecified os type.
|
|
CUTTLEFISH_OS_TYPE_UNSPECIFIED = 0;
|
|
|
|
// The log event was sourced from Linux x86 os type.
|
|
CUTTLEFISH_OS_TYPE_LINUX_X86 = 1;
|
|
|
|
// The log event was sourced from Linux x86_64 os type.
|
|
CUTTLEFISH_OS_TYPE_LINUX_X86_64 = 2;
|
|
|
|
// The log event was sourced from Linux aarch32 os type.
|
|
CUTTLEFISH_OS_TYPE_LINUX_AARCH32 = 3;
|
|
|
|
// The log event was sourced from Linux aarch64 os type.
|
|
CUTTLEFISH_OS_TYPE_LINUX_AARCH64 = 4;
|
|
}
|
|
|
|
// Defines the VMM that this log was sourced from.
|
|
// This may not be the same VMM which uploaded the log event.
|
|
// Next index: 3
|
|
enum VmmType {
|
|
// The log event was sourced from an unspecified vmm type.
|
|
CUTTLEFISH_VMM_TYPE_UNSPECIFIED = 0;
|
|
|
|
// The log event was sourced from a CrOS VM vmm type.
|
|
CUTTLEFISH_VMM_TYPE_CROSVM = 1;
|
|
|
|
// The log event was sourced from a QEMU vmm type.
|
|
CUTTLEFISH_VMM_TYPE_QEMU = 2;
|
|
}
|
|
|
|
// High level error types for this message. Defines the error
|
|
// the device received when it experienced an error. This field
|
|
// should only be present when event_type is ERROR.
|
|
// Next index: 1
|
|
enum ErrorType {
|
|
// An unspecified, unhandled error.
|
|
CUTTLEFISH_ERROR_TYPE_UNSPECIFIED = 0;
|
|
}
|
|
|
|
// Defines the type of device event contained in this message.
|
|
// This is the highest level identifier for MetricsEvent messages.
|
|
optional EventType event_type = 1;
|
|
|
|
// Defines the error the device received when it experienced an error.
|
|
// The field should only be present when event_type is ERROR.
|
|
optional ErrorType error_type = 2;
|
|
|
|
// Time the event occurred in milliseconds since Unix epoch.
|
|
optional Timestamp event_time_ms = 3;
|
|
|
|
// Elapsed time for the event in milliseconds.
|
|
optional Duration elapsed_time_ms = 4;
|
|
|
|
// The type of OS this log event originated from.
|
|
optional OsType os_type = 5;
|
|
|
|
// OS version for the host/guest operating system.
|
|
// Ex. Android version (9.x, 10.x, etc.) or `uname -r` output
|
|
optional string os_version = 6;
|
|
|
|
// Android guest API level
|
|
optional int32 api_level = 7;
|
|
|
|
// The type of VMM this log event originated from.
|
|
optional VmmType vmm_type = 8;
|
|
|
|
// The version of the VMM that's sending the log event.
|
|
optional string vmm_version = 9;
|
|
|
|
// The company that's sending the log event.
|
|
optional string company = 10;
|
|
|
|
// The allowlist of launch_cvd flags attached to the launch_cvd command
|
|
// associated with this instance
|
|
repeated string launch_cvd_flags = 11;
|
|
|
|
// Exists a -system_image_dir specified in launch_cvd
|
|
optional bool exists_system_image_spec = 12;
|
|
|
|
// Exists a -boot_image specified in launch_cvd
|
|
optional bool exists_boot_image_spec = 13;
|
|
|
|
// Exists a -bootloader specified in launch_cvd
|
|
optional bool exists_bootloader_spec = 14;
|
|
|
|
// Exists a -composite_disk specified in launch_cvd
|
|
optional bool exists_composite_disk_spec = 15;
|
|
|
|
// Exists a -data_image specified in launch_cvd
|
|
optional bool exists_data_image_spec = 16;
|
|
|
|
// Exists a -metadata_image specified in launch_cvd
|
|
optional bool exists_metadata_image_spec = 17;
|
|
|
|
// Exists a -misc_image specified in launch_cvd
|
|
optional bool exists_misc_image_spec = 18;
|
|
|
|
// Exists a -qemu_binary specified in launch_cvd
|
|
optional bool exists_qemu_binary_spec = 19;
|
|
|
|
// Exists a -super_image specified in launch_cvd
|
|
optional bool exists_super_image_spec = 20;
|
|
|
|
// Exists a -vendor_boot_image specified in launch_cvd
|
|
optional bool exists_vendor_boot_image_spec = 21;
|
|
}
|