LabResourceDeviceMonitor

public class LabResourceDeviceMonitor
extends LabResourceServiceGrpc.LabResourceServiceImplBase implements IDeviceMonitor

java.lang.Object
   ↳ com.google.dualhomelab.monitoringagent.resourcemonitoring.LabResourceServiceGrpc.LabResourceServiceImplBase
     ↳ com.android.tradefed.monitoring.LabResourceDeviceMonitor


實驗室資源監控器,可初始化/管理 LabResourceService 的 gRPC 伺服器。如要新增資源指標收集器,請在全域設定中新增 resource_metric_collector 代碼,以便載入收集器。

摘要

常數

int DEFAULT_PORT

int DEFAULT_THREAD_COUNT

float FIXED_METRIC_VALUE

欄位

public static final String DEVICE_SERIAL_KEY

public static final String HARDWARE_REVISION_RESOURCE_NAME

public static final String HARNESS_VERSION_KEY

public static final String HOST_GROUP_KEY

public static final String HOST_NAME_KEY

public static final String LAB_NAME_KEY

public static final String POOL_ATTRIBUTE_NAME

public static final String RUN_TARGET_ATTRIBUTE_NAME

public static final String STATUS_RESOURCE_NAME

public static final String TEST_HARNESS_KEY

公用建構函式

LabResourceDeviceMonitor()

公用方法

void getLabResource(LabResourceRequest request, StreamObserver<LabResource> responseObserver)

gRPC 要求處理程序。

void notifyDeviceStateChange(String serial, DeviceAllocationState oldState, DeviceAllocationState newState)

IDeviceMonitor 發出裝置狀態已變更的信號。

void run()

在設定完所有監控器的 @Option 欄位後,系統會呼叫這個方法。

void setDeviceLister(IDeviceMonitor.DeviceLister lister)

允許設定 DeviceLister

void stop()

當需要停止監控時,系統會呼叫這個方法。

受保護的方法

LabResource getCachedLabResource()

常數

DEFAULT_PORT

public static final int DEFAULT_PORT

常數值: 8887 (0x000022b7)

DEFAULT_THREAD_COUNT

public static final int DEFAULT_THREAD_COUNT

常數值: 1 (0x00000001)

FIXED_METRIC_VALUE

public static final float FIXED_METRIC_VALUE

常數值: 1.0

欄位

DEVICE_SERIAL_KEY

public static final String DEVICE_SERIAL_KEY

HARDWARE_REVISION_RESOURCE_NAME

public static final String HARDWARE_REVISION_RESOURCE_NAME

HARNESS_VERSION_KEY

public static final String HARNESS_VERSION_KEY

HOST_GROUP_KEY

public static final String HOST_GROUP_KEY

HOST_NAME_KEY

public static final String HOST_NAME_KEY

LAB_NAME_KEY

public static final String LAB_NAME_KEY

POOL_ATTRIBUTE_NAME

public static final String POOL_ATTRIBUTE_NAME

RUN_TARGET_ATTRIBUTE_NAME

public static final String RUN_TARGET_ATTRIBUTE_NAME

STATUS_RESOURCE_NAME

public static final String STATUS_RESOURCE_NAME

TEST_HARNESS_KEY

public static final String TEST_HARNESS_KEY

公用建構函式

LabResourceDeviceMonitor

public LabResourceDeviceMonitor ()

公用方法

getLabResource

public void getLabResource (LabResourceRequest request, 
                StreamObserver<LabResource> responseObserver)

gRPC 要求處理常式。

參數
request LabResourceRequest

responseObserver StreamObserver

notifyDeviceStateChange

public void notifyDeviceStateChange (String serial, 
                DeviceAllocationState oldState, 
                DeviceAllocationState newState)

IDeviceMonitor 發出裝置狀態已變更的信號。監控實作項目應限制在這個方法中執行的處理量和 IDeviceManager/DeviceLister 互動。

參數
serial String

oldState DeviceAllocationState

newState DeviceAllocationState

得分

public void run ()

在設定所有監控器的 @Option 欄位後,系統會呼叫這個方法。

setDeviceLister

public void setDeviceLister (IDeviceMonitor.DeviceLister lister)

允許設定 DeviceLister。設定 Lister 成功後,實作項目可能會捨棄所有後續嘗試。

參數
lister IDeviceMonitor.DeviceLister

轉機 1 次

public void stop ()

當需要停止監控時,系統會呼叫這個方法。

受保護的方法

getCachedLabResource

protected LabResource getCachedLabResource ()

傳回
LabResource