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

경유

public void stop ()

모니터를 중지해야 할 때 호출되는 메서드입니다.

보호된 메서드

getCachedLabResource

protected LabResource getCachedLabResource ()

반환 값
LabResource