
# 查询服务监控信息
查询当前服务对象监控信息。
#### 示例代码
在ModelArts Notebook平台，Session鉴权无需输入鉴权参数。其它平台的Session鉴权请参见[Session鉴权](https://support.huaweicloud.com/sdkreference-modelarts/modelarts_04_0123.html)。
- **方式1** ：根据[部署在线服务](https://support.huaweicloud.com/sdkreference-modelarts/modelarts_04_0201.html)生成的服务对象进行查询服务监控
  ```
  from modelarts.session import Session
  from modelarts.model import Predictor
  session = Session()
  predictor_instance = Predictor(session, service_id="your_service_id")
  predictor_monitor = predictor_instance.get_service_monitor() 
  print(predictor_monitor)
  ```
  
- **方式2** ：根据[查询服务对象列表](https://support.huaweicloud.com/sdkreference-modelarts/modelarts_04_0206.html)返回的服务对象进行查询服务监控
  ```
  from modelarts.session import Session
  from modelarts.model import Predictor
  session = Session()
  predictor_object_list = Predictor.get_service_object_list(session)
  predictor_instance = predictor_object_list[0]                
  predictor_monitor = predictor_instance.get_service_monitor()
  print(predictor_monitor)
  ```
  
 
#### 参数说明
表1get_service_monitor返回参数说明 
| 参数           | 参数类型                        | 描述      |
|:---|:---|:---|
| service_id   | String                      | 服务ID。   |
| service_name | String                      | 服务名称。   |
| monitors     | 服务的infer_type对应的monitor结构数组 | 监控信息详情。 |
   
表2real-time monitor结构 
| 参数               | 参数类型    | 描述          |
|:---|:---|:---|
| model_id         | String  | 模型ID。       |
| model_name       | String  | 模型名称。       |
| model_version    | String  | 模型版本。       |
| invocation_times | Number  | 模型实例的总调用次数。 |
| failed_times     | Number  | 模型实例调用失败次数。 |
| cpu_core_usage   | Float   | 已使用CPU核数。   |
| cpu_core_total   | Float   | 总CPU核数。     |
| cpu_memory_usage | Integer | 已使用内存，单位MB。 |
| cpu_memory_total | Integer | 总内存，单位MB。   |
| gpu_usage        | Float   | 已使用GPU个数。   |
| gpu_total        | Float   | 总GPU个数。     |
   
表3edge monitor结构 
| 参数               | 参数类型    | 描述                               |
|:---|:---|:---|
| node_id          | String  | 待查询的边缘节点ID，仅当infer_type为edge时存在。 |
| node_name        | String  | 节点名称。                            |
| cpu_core_usage   | Float   | 已使用CPU核数。                        |
| cpu_core_total   | Float   | 总CPU核数。                          |
| cpu_memory_usage | Integer | 已使用内存，单位MB。                      |
| cpu_memory_total | Integer | 总内存，单位MB。                        |
| gpu_usage        | Float   | 已使用GPU个数。                        |
| gpu_total        | Float   | 总GPU个数。                          |
   
