24 Kasım 2022 Perşembe

HazelcastAPI HealthMonitor Sınıfı

Giriş
Şu satırı dahil ederiz
import com.hazelcast.internal.diagnostics.HealthMonitor;
MetricsRegistry sınıfından bir sürü şeyi okuyarak periyodik olarak loglar. 

run metodu
@Override
public void run() {
  try {
    while (node.getState() == NodeState.ACTIVE) {
      healthMetrics.update();
      switch (monitorLevel) {
        case NOISY:
          if (healthMetrics.exceedsThreshold()) {
            logDiagnosticsHint();
          }
          logger.info(healthMetrics.render());
          break;
        case SILENT:
          if (healthMetrics.exceedsThreshold()) {
            logDiagnosticsHint();
            logger.info(healthMetrics.render());
          }
          break;
        default:
          throw new 
            IllegalStateException("Unrecognized HealthMonitorLevel: " + monitorLevel);
       }
       try {
         SECONDS.sleep(delaySeconds);
       } catch (InterruptedException e) {
         currentThread().interrupt();
         return;
       }
     }
   } catch (OutOfMemoryError e) {
     OutOfMemoryErrorDispatcher.onOutOfMemory(e);
   } catch (Throwable t) {
     logger.warning("Health Monitor failed", t);
   }
 }
Eğer SILENT ise açıklaması şöyle
These logs are triggered when certain performance indicators exceed a threshold. 

Hiç yorum yok:

Yorum Gönder

THIRD-PARTY.txt Dosyası

Kullanılan harici kütüphanelerin sürümleri bu dosyada Dosyanın yolu şöyle hazelcast/licenses/THIRD-PARTY.txt