更新时间:2024-09-25 GMT+08:00

根据service_id查询微服务实例

功能介绍

实例注册后可以根据service_id发现该微服务的所有实例。

URI

GET /v4/{project_id}/registry/microservices/{service_id}/instances

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

  • 微服务引擎专业版,请填租户项目id,长度为1~64,获取方法请参考获取项目ID。也可以填固定值default。
  • 微服务引擎专享版,请填固定值:default。

service_id

String

微服务唯一标识。字符长度为1~64,正则表达式为^.*$。获取方法请参考查询所有微服务信息

表2 Query参数

参数

是否必选

参数类型

描述

tags

String

Tag标签过滤,多个时逗号分隔。 正则表达式为^[a-zA-Z][a-zA-Z0-9_-.]{0,63}$。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-ConsumerId

String

微服务消费者的微服务唯一标识。

Authorization

String

若微服务引擎专享版开启了安全认证,此参数必填。否则,无此参数。

开启了安全认证的微服务引擎专享版Token,格式为:

Authorization:Bearer {Token}

Token获取方法,请参考获取微服务引擎专享版用户Token

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

instances

Array of MicroServiceInstance objects

实例列表。

表5 MicroServiceInstance

参数

参数类型

描述

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

更新时间。

表6 HealthCheck

参数

参数类型

描述

mode

String

心跳模式push/pull。

port

Integer

端口。

interval

Integer

心跳间隔(秒),当值小于5秒时,按5秒注册。

times

Integer

最大尝试请求次数。

表7 DataCenterInfo

参数

参数类型

描述

name

String

区域名字。

region

String

区域。

availableZone

String

可用区。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

状态码: 500

表9 响应Body参数

参数

参数类型

描述

errorCode

String

错误代码。

errorMessage

String

错误信息。

detail

String

详细定位信息。

请求示例

查询指定service_id的微服务的实例信息。

GET https://{endpoint}/v4/{project_id}/registry/microservices/{service_id}/instances

响应示例

状态码: 200

查询成功。

{
    "instances": [
        {
            "instanceId": "8540bb8b693c4ad1a7fb6a756c415244",
            "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": "1650545035",
            "modTimestamp": "1650545035",
            "version": "1.0.0"
        }
    ]
}

状态码

状态码

描述

200

查询成功。

400

错误的请求。

500

服务内部错误。

错误码

请参见ServiceComb错误码