Class MetricsModule

  • All Implemented Interfaces:
    com.google.inject.Module

    public class MetricsModule
    extends Object
    implements com.google.inject.Module
    Sets up the MonitorScheduler to monitor things on a regular schedule. Monitors must be explicitly bound in order to be loaded.
    • Constructor Detail

      • MetricsModule

        public MetricsModule()
    • Method Detail

      • setNodeRoles

        @Inject
        public void setNodeRoles​(Set<NodeRole> nodeRoles)
      • register

        public static void register​(com.google.inject.Binder binder,
                                    Class<? extends org.apache.druid.java.util.metrics.Monitor> monitorClazz)
      • configure

        public void configure​(com.google.inject.Binder binder)
        Specified by:
        configure in interface com.google.inject.Module
      • getMonitorScheduler

        @Provides
        public org.apache.druid.java.util.metrics.MonitorScheduler getMonitorScheduler​(com.google.common.base.Supplier<org.apache.druid.java.util.metrics.DruidMonitorSchedulerConfig> config,
                                                                                       MonitorsConfig monitorsConfig,
                                                                                       Set<Class<? extends org.apache.druid.java.util.metrics.Monitor>> monitorSet,
                                                                                       org.apache.druid.java.util.emitter.service.ServiceEmitter emitter,
                                                                                       com.google.inject.Injector injector)
      • getJvmMonitor

        @Provides
        public org.apache.druid.java.util.metrics.JvmMonitor getJvmMonitor​(DataSourceTaskIdHolder dataSourceTaskIdHolder)
      • getJvmCpuMonitor

        @Provides
        public org.apache.druid.java.util.metrics.JvmCpuMonitor getJvmCpuMonitor​(DataSourceTaskIdHolder dataSourceTaskIdHolder)
      • getJvmThreadsMonitor

        @Provides
        public org.apache.druid.java.util.metrics.JvmThreadsMonitor getJvmThreadsMonitor​(DataSourceTaskIdHolder dataSourceTaskIdHolder)
      • getSysMonitor

        @Provides
        public org.apache.druid.java.util.metrics.SysMonitor getSysMonitor​(DataSourceTaskIdHolder dataSourceTaskIdHolder,
                                                                           Set<NodeRole> nodeRoles)
      • getOshiSysMonitor

        @Provides
        public org.apache.druid.java.util.metrics.OshiSysMonitor getOshiSysMonitor​(DataSourceTaskIdHolder dataSourceTaskIdHolder,
                                                                                   Set<NodeRole> nodeRoles)