应用平台 APPSTAGE-常见问题:常见问题

时间:2024-10-21 16:40:47

常见问题

  • SDK初始化失败

    SDK初始化失败,graysdk的run和debug日志会打印初始化失败原因,一般原因有如下几种:

    • ETCD服务器配置错误(检查conf/graysdk.properties文件中server配置是否正确)。
    • ETCD未启动或者网络原因不可用(检查网络以及ETCD是否正常)。
    • ETCD中不存在此微服务名称的灰度配置。
    • ETCD未启用用户名/密码认证方式,但是SDK配置了认证(检查conf/graysdk.properties文件是否配置了username)。
    • jsonRuleFilePath没有配置。
  • 灰度规则匹配失败

    调用SDK接口执行灰度规则匹配失败,一般原因有如下几种:

    • 实际传入的参数和值,不满足配置的微服务灰度规则。
    • 灰度开关关闭(检查conf/graysdk.properties文件graySwitch是否为1)。
    • 灰度规则执行异常(检查graysdk的debug日志)。
    • 联系灰度平台开发人员定位。
  • 灰度参数的设置

    消费端需要在 CS E的invocation设置想要进行灰度的参数,有两种方法:

    • 确定需要进行灰度的参数 ,在后端的接口中使用@RequestParam参数来指定。
    • 业务直接在消费端设置参数,例如:ContextUtils.getInvocationContext().addContext("x-is-gray", "1")。

    第一种方式直接在请求流量的URL中通过设置参数的值来标识灰度流量,第二种是业务在调用SDK之前改变invocation中参数的值来标识灰度。

  • 后端灰度节点的判断

    后端的节点在自己的microservice.yaml文件中设置参数描述(参照CSE开发网站)。

    • 按照版本筛选灰度节点,需要在yaml中的service_description中先定义版本号,然后在管理台上选择按照版本进行灰度,填入定义的版本。
    • 按照自定义参数筛选灰度节点,需要在yaml中的instance_description中先自定义灰度参数,并填入值,接着在管理台选择按照自定义参数进行灰度,填入自定义的参数。
support.huaweicloud.com/sdkreference-appstage/appstage_08_0016.html