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

查询微服务实例详细信息

功能介绍

实例注册后可以根据service_id和instance_id获取该实例的详细信息。

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

service_id

String

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

instance_id

String

微服务实例唯一标识。字符长度不超过64位, 正则表达式为^[A-Za-z0-9_.-]*$。获取方法请参考根据service_id查询微服务实例

表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参数

参数

参数类型

描述

instance

MicroServiceInstance object

微服务实例信息。

表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和instance_id的该实例的详细信息。

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

响应示例

状态码: 200

查询成功。

{
    "instance": {
        "instanceId": "4994929d6b8044b29462d4f7daa33c4f",
        "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": "1650545270",
        "modTimestamp": "1650545270",
        "version": "1.0.0"
    }
}

状态码

状态码

描述

200

查询成功。

400

错误的请求。

500

服务内部错误。

错误码

请参见ServiceComb错误码