Interface ReportingConfigChangeListener

All Superinterfaces:
ConfigChangeListener

public interface ReportingConfigChangeListener extends ConfigChangeListener
可上报重载结果的配置变更回调。

相对既有的 ConfigChangeListener,本接口让业务插件把「本次重载是否成功、为什么失败、 实际加载了什么」返回给 agent,从而让交付控制面拿到真实生效结果,而不是只看到「通知已派发」。

为什么要用子接口而不是改老接口:老插件只实现 ConfigChangeListener.onConfigChanged(java.util.Set<java.lang.String>, java.lang.String), 改签名会破坏其二进制兼容;本接口继承老接口并提供默认实现,故:

纪律:

  • 回调在 agent 异步线程触发,重活请自行切到业务线程;但**不要阻塞超过 配置重载超时**,否则本次重载按失败计。
  • 失败请**显式返回** ConfigReloadResult.failed(...) 并给可读原因; 抛异常虽由 agent 兜住并计为失败,但会丢失原因信息。
  • 已成功应用新配置时,建议用 withAppliedMd5/withAppliedVersion 回报实际加载内容,供控制面核对「回执成功但版本不符」。
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    onConfigChanged(Set<String> changedDataIds, String newMd5)
    默认实现委托给上报方法并丢弃结果,保证老式「只发通知」调用语义仍可工作。
    onConfigChangedReporting(Set<String> changedDataIds, String newMd5)
    配置已变更,请把新配置应用到运行态并返回结果。
  • Method Details

    • onConfigChangedReporting

      ConfigReloadResult onConfigChangedReporting(Set<String> changedDataIds, String newMd5)
      配置已变更,请把新配置应用到运行态并返回结果。
      Parameters:
      changedDataIds - 本次变更的 dataId 集合
      newMd5 - 变更后整体 md5(小写 hex)
      Returns:
      重载结果;返回 null 由 agent 按失败处置(缺结果不得被当作成功)
    • onConfigChanged

      default void onConfigChanged(Set<String> changedDataIds, String newMd5)
      默认实现委托给上报方法并丢弃结果,保证老式「只发通知」调用语义仍可工作。
      Specified by:
      onConfigChanged in interface ConfigChangeListener
      Parameters:
      changedDataIds - 本次变更的 dataId 集合
      newMd5 - 变更后整体 md5(小写 hex)