Status Check Extension

Status Check Extension

Extension Description

Checks the status of various resources that the service depends on. This status check can be used for both telnet’s status command and hosting’s status page.

Extension Interface

org.apache.dubbo.common.status.StatusChecker

Extension Configuration

<dubbo:protocol status="xxx,yyy" />
<!-- Default value setting. When the <dubbo:protocol> does not have a status attribute configured, this configuration is used -->
<dubbo:provider status="xxx,yyy" />

Known Extensions

  • org.apache.dubbo.common.status.support.MemoryStatusChecker
  • org.apache.dubbo.common.status.support.LoadStatusChecker
  • org.apache.dubbo.rpc.dubbo.status.ServerStatusChecker
  • org.apache.dubbo.rpc.dubbo.status.ThreadPoolStatusChecker
  • org.apache.dubbo.registry.directory.RegistryStatusChecker
  • org.apache.dubbo.rpc.config.spring.status.SpringStatusChecker
  • org.apache.dubbo.rpc.config.spring.status.DataSourceStatusChecker

Extension Example

Maven project structure:

src
 |-main
    |-java
        |-com
            |-xxx
                |-XxxStatusChecker.java (implements StatusChecker interface)
    |-resources
        |-META-INF
            |-dubbo
                |-org.apache.dubbo.common.status.StatusChecker (plain text file, content: xxx=com.xxx.XxxStatusChecker)

XxxStatusChecker.java:

package com.xxx;
 
import org.apache.dubbo.common.status.StatusChecker;
 
public class XxxStatusChecker implements StatusChecker {
    public Status check() {
        // ...
    }
}

META-INF/dubbo/org.apache.dubbo.common.status.StatusChecker:

xxx=com.xxx.XxxStatusChecker