按条件查询微服务实例
功能介绍
实例注册后可以根据微服务字段条件发现该微服务的实例。
URI
GET /v4/{project_id}/registry/instances
| 参数 | 是否必选 | 参数类型 | 描述 | 
|---|---|---|---|
| project_id | 是 | String | 
 | 
| 参数 | 是否必选 | 参数类型 | 描述 | 
|---|---|---|---|
| appId | 是 | String | 应用app唯一标识。字符长度为1~160。 正则表达式为^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9_-.][a-zA-Z0-9]$。 | 
| serviceName | 是 | String | 微服务名称。字符长度为1~128。 正则表达式为^[a-zA-Z0-9]$|^[a-zA-Z0-9][a-zA-Z0-9_-.][a-zA-Z0-9]$。 | 
| tags | 否 | String | Tag标签过滤,多个时逗号分隔。 正则表达式为^[a-zA-Z][a-zA-Z0-9_-.]{0,63}$。 | 
| env | 否 | String | 实例的环境信息。 | 
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 | 
|---|---|---|---|
| X-ConsumerId | 否 | String | 微服务消费者的微服务唯一标识。 | 
| Authorization | 否 | String | 若微服务引擎专享版开启了安全认证,此参数必填。否则,无此参数。 开启了安全认证的微服务引擎专享版Token,格式为: Authorization:Bearer {Token}Token获取方法,请参考获取微服务引擎专享版用户Token。 | 
响应参数
状态码: 200
| 参数 | 参数类型 | 描述 | 
|---|---|---|
| instances | Array of MicroServiceInstance objects | 实例列表。 | 
| 参数 | 参数类型 | 描述 | 
|---|---|---|
| instanceId | String | 实例id,唯一标识。创建实例,instanceId由service-center产生。 | 
| serviceId | String | 微服务唯一标识,创建实例时,以url里面的为准,不用这里的serviceId。 | 
| version | String | 微服务版本号。 | 
| hostName | String | 主机信息。 | 
| endpoints | Array of strings | 访问地址信息。 | 
| status | String | 实例状态:UP、DOWN、STARTING、OUTOFSERVICE。默认值UP。 | 
| properties | Object | 微服务扩展属性,可以自定义KEY和相应的Value。长度最小1字节。 | 
| healthCheck | HealthCheck object | 健康检查信息。 | 
| dataCenterInfo | DataCenterInfo object | 数据中心信息。 | 
| timestamp | String | 实例创建时间戳,自动生成。 | 
| modTimestamp | String | 更新时间。 | 
| 参数 | 参数类型 | 描述 | 
|---|---|---|
| mode | String | 心跳模式push/pull。 | 
| port | Integer | 端口。 | 
| interval | Integer | 心跳间隔(秒),当值小于5秒时,按5秒注册。 | 
| times | Integer | 最大尝试请求次数。 | 
状态码: 400
| 参数 | 参数类型 | 描述 | 
|---|---|---|
| errorCode | String | 错误代码。 | 
| errorMessage | String | 错误信息。 | 
| detail | String | 详细定位信息。 | 
状态码: 500
| 参数 | 参数类型 | 描述 | 
|---|---|---|
| errorCode | String | 错误代码。 | 
| errorMessage | String | 错误信息。 | 
| detail | String | 详细定位信息。 | 
请求示例
查询符合应用ID为default,微服务名称为test的微服务的实例。
GET https://{endpoint}/v4/{project_id}/registry/instances?appId=default&serviceName=test
 响应示例
状态码: 200
查询成功。
{
    "instances": [
        {
            "instanceId": "4098483294bb42d8b3c27eee0c166c1c",
            "serviceId": "8aed80ea052ac04a64dfc79c24f2170224d074f5",
            "endpoints": [
                "rest:127.0.0.1:8080"
            ],
            "hostName": "hostNameTest",
            "status": "UP",
            "properties": {
                "engineID": "30c263e5-2eac-4da1-9c72-5abb9ac94550",
                "engineName": "cse-fkln1-HA"
            },
            "healthCheck": {
                "mode": "push",
                "interval": 30,
                "times": 3
            },
            "timestamp": "1650545431",
            "modTimestamp": "1650545442",
            "version": "1.0.0"
        }
    ]
}
 状态码
| 状态码 | 描述 | 
|---|---|
| 200 | 查询成功。 | 
| 400 | 错误的请求。 | 
| 500 | 服务内部错误。 | 
错误码
请参见ServiceComb错误码。
 
  