• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java Statistics类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中com.github.dockerjava.api.model.Statistics的典型用法代码示例。如果您正苦于以下问题:Java Statistics类的具体用法?Java Statistics怎么用?Java Statistics使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



Statistics类属于com.github.dockerjava.api.model包,在下文中一共展示了Statistics类的17个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: statsContainer

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
public Statistics statsContainer(String id) throws IOException {
    this.readWriteLock.readLock().lock();

    try {
        StatsCmd statsCmd = this.dockerClient.statsCmd(id);
        CountDownLatch countDownLatch = new CountDownLatch(1);
        StatsLogsResultCallback statslogs = new StatsLogsResultCallback(countDownLatch);
        try {
            StatsLogsResultCallback statscallback = statsCmd.exec(statslogs);
            countDownLatch.await(5, TimeUnit.SECONDS);
            statscallback.close();
        } catch (InterruptedException e) {
            throw new IOException(e);
        }
        return statslogs.getStatistics();
    } finally {
        this.readWriteLock.readLock().unlock();
    }
}
 
开发者ID:arquillian,项目名称:arquillian-cube,代码行数:20,代码来源:DockerClientExecutor.java


示例2: onStats

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
public void onStats(Statistics statistics) {

    LOGGER.debug("Received Docker Statistics Event: " + statistics);

    final Exchange exchange = getEndpoint().createExchange();
    Message message = exchange.getIn();
    message.setBody(statistics);

    try {
        LOGGER.trace("Processing exchange [{}]...", exchange);
        getAsyncProcessor().process(exchange, new AsyncCallback() {
            @Override
            public void done(boolean doneSync) {
                LOGGER.trace("Done processing exchange [{}]...", exchange);
            }
        });
    } catch (Exception e) {
        exchange.setException(e);
    }
    if (exchange.getException() != null) {
        getExceptionHandler().handleException("Error processing exchange", exchange, exchange.getException());
    }

}
 
开发者ID:HydAu,项目名称:Camel,代码行数:26,代码来源:DockerStatsConsumer.java


示例3: getNetInfo

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
protected NetInfo getNetInfo() {
  NetInfo netInfo = new NetInfo();
  Statistics stats = docker.getStatistics(containerId);
  Map<String, Object> networksStats = stats.getNetworks();

  for (String key : networksStats.keySet()) {
    Map<String, Object> iface = (Map<String, Object>) networksStats.get(key);
    int rxBytes = (Integer) iface.get("rx_bytes");
    int txBytes = (Integer) iface.get("tx_bytes");

    netInfo.putNetInfo(key, rxBytes, txBytes);
  }
  return netInfo;
}
 
开发者ID:Kurento,项目名称:kurento-java,代码行数:17,代码来源:KmsDockerMonitor.java


示例4: onNext

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
public void onNext(Statistics stats) {
    if (stats != null) {
        this.stats = Optional.of(stats);
        completed.countDown();
        onComplete();
    }
}
 
开发者ID:vespa-engine,项目名称:vespa,代码行数:9,代码来源:DockerImpl.java


示例5: getStatistics

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
public Statistics getStatistics(String containerId) {
  FirstObjectResultCallback<Statistics> resultCallback = new FirstObjectResultCallback<>();

  try {
    return getClient().statsCmd(containerId).exec(resultCallback).waitForObject();
  } catch (InterruptedException e) {
    throw new KurentoException("Interrupted while waiting for statistics");
  }
}
 
开发者ID:Kurento,项目名称:kurento-java,代码行数:10,代码来源:Docker.java


示例6: getCpuUsage

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
@SuppressWarnings("unchecked")
protected double getCpuUsage() {
  double cpuUsage = 0;
  Statistics stats = docker.getStatistics(containerId);
  Map<String, Object> cpuStats = stats.getCpuStats();

  if (cpuStats != null) {
    Map<String, Object> cpuUsageMap = (Map<String, Object>) cpuStats.get("cpu_usage");
    long systemUsage = Long.parseLong(cpuStats.get("system_cpu_usage").toString());
    long totalUsage = Long.parseLong(cpuUsageMap.get("total_usage").toString());

    List<Object> perCpuUsage = (List<Object>) cpuUsageMap.get("percpu_usage");

    if (previousCpu != -1 && previousSystem != -1) {
      // Using same formula than
      // https://github.com/docker/docker/blob/master/api/client/stats.go

      float cpuDelta = totalUsage - previousCpu;
      float systemDelta = systemUsage - previousSystem;

      if (cpuDelta > 0 && systemDelta > 0) {
        cpuUsage = cpuDelta / systemDelta * perCpuUsage.size() * 100;
      }
    }

    previousCpu = totalUsage;
    previousSystem = systemUsage;
  }

  return cpuUsage;
}
 
开发者ID:Kurento,项目名称:kurento-java,代码行数:33,代码来源:KmsDockerMonitor.java


示例7: getMem

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
protected double[] getMem() {
  double[] out = { 0, 0 };

  Statistics stats = docker.getStatistics(containerId);
  Map<String, Object> memoryStats = stats.getMemoryStats();
  int usage = (Integer) memoryStats.get("usage");
  float limit = (Long) memoryStats.get("limit");
  double memPercent = usage / limit * 100;

  out[0] = usage;
  out[1] = memPercent;

  return out;
}
 
开发者ID:Kurento,项目名称:kurento-java,代码行数:16,代码来源:KmsDockerMonitor.java


示例8: callbackNotifier

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
protected AbstractCallbackNotifier<Statistics> callbackNotifier(StatsCmd command,
        ResultCallback<Statistics> resultCallback) {

    WebTarget webTarget = getBaseResource().path("/containers/{id}/stats").resolveTemplate("id",
            command.getContainerId());

    LOGGER.trace("GET: {}", webTarget);

    return new GETCallbackNotifier<Statistics>(new JsonStreamProcessor<Statistics>(Statistics.class),
            resultCallback, webTarget.request());
}
 
开发者ID:docker-java,项目名称:docker-java,代码行数:13,代码来源:StatsCmdExec.java


示例9: onNext

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
public void onNext(Statistics stats) {
    LOG.info("Received stats #{}: {}", countDownLatch.getCount(), stats);
    if (stats != null) {
        gotStats = true;
    }
    countDownLatch.countDown();
}
 
开发者ID:docker-java,项目名称:docker-java,代码行数:9,代码来源:StatsCmdIT.java


示例10: onNext

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
public void onNext(Statistics statistics) {
    if (statistics != null) {
        this.statistics = statistics;
        this.onComplete();
    }
    this.countDownLatch.countDown();
}
 
开发者ID:arquillian,项目名称:arquillian-cube,代码行数:9,代码来源:StatsLogsResultCallback.java


示例11: onNext

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
public void onNext(Statistics stats) {
	listCommands.refresh();
	BoxContainer boxContainer = listCommands
			.getBoxContainerWithID(containerID);
	Container container = listCommands.getFromAllWithName(boxContainer
			.getName());
	
	NumberFormat formatter = new DecimalFormat("#0.00");

	double memoryUsage = Double.parseDouble(formatter
			.format((((Integer) stats.getMemoryStats().get("usage"))
					.doubleValue() / ((Integer) stats.getMemoryStats().get(
					"limit")).doubleValue()) * 100D));
	Object totalUsage = ((LinkedHashMap) stats.getCpuStats().get(
			"cpu_usage")).get("total_usage");
	double totalUsageDouble = 0D;
	if (totalUsage instanceof Integer) {
		totalUsageDouble = ((Integer) totalUsage).doubleValue();
	} else if (totalUsage instanceof Long) {
		totalUsageDouble = ((Long) totalUsage).doubleValue();
	}
	double cpuUsage = Double.parseDouble(formatter.format(totalUsageDouble
			/ ((Long) stats.getCpuStats().get("system_cpu_usage"))
					.doubleValue() * 100D));

	boxContainer.setMemoryUsage(memoryUsage);
	boxContainer.setCpuUsage(cpuUsage);

	if (sendMessages) {
		basicCommands.printContainerInfo(boxContainer, container);
		sendMessage(EnumChatFormatting.RED + "" + EnumChatFormatting.BOLD
				+ "Memory Usage: " + EnumChatFormatting.RESET + memoryUsage
				+ "%");
		sendMessage(EnumChatFormatting.GRAY + "" + EnumChatFormatting.BOLD
				+ "CPU Usage: " + EnumChatFormatting.RESET + cpuUsage + "%");
	}

	try {
		super.close();
	} catch (IOException exception) {
		throw new MobycraftException(exception);
	}
}
 
开发者ID:AdityaGupta1,项目名称:mobycraft,代码行数:45,代码来源:StatisticsResultCallback.java


示例12: getStats

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
public Statistics getStats() {
	return stats;
}
 
开发者ID:iotracks,项目名称:iofabric,代码行数:4,代码来源:StatsCallback.java


示例13: onNext

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
public void onNext(Statistics stats) {
   	this.stats = stats;
}
 
开发者ID:iotracks,项目名称:iofabric,代码行数:5,代码来源:StatsCallback.java


示例14: getStatistics

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
public Statistics getStatistics() {
    return this.statistics;
}
 
开发者ID:arquillian,项目名称:arquillian-cube,代码行数:4,代码来源:StatsLogsResultCallback.java


示例15: updateStats

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
public static CubeStatistics updateStats(Statistics statistics) {

        CubeStatistics stats = new CubeStatistics();

        Map<String, Long> blkio = extractIORW(statistics.getBlkioStats());
        Map<String, Long> memory = extractMemoryStats(statistics.getMemoryStats(), "usage", "max_usage", "limit");

        stats.setIoBytesRead(blkio.get("io_bytes_read"));
        stats.setIoBytesWrite(blkio.get("io_bytes_write"));
        stats.setMaxUsage(memory.get("max_usage"));
        stats.setUsage(memory.get("usage"));
        stats.setLimit(memory.get("limit"));

        stats.setNetworks(extractNetworksStats(statistics.getNetworks()));


        return stats;
    }
 
开发者ID:arquillian,项目名称:arquillian-cube,代码行数:19,代码来源:ContainerStatsBuilder.java


示例16: testStats

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Test
public void testStats() throws Exception {

    MockEndpoint mock = getMockEndpoint("mock:result");
    mock.expectedMinimumMessageCount(1);

    callback.onStats(new Statistics());
            
    assertMockEndpointsSatisfied(10, TimeUnit.SECONDS);
}
 
开发者ID:HydAu,项目名称:Camel,代码行数:11,代码来源:DockerStatsConsumerTest.java


示例17: execute0

import com.github.dockerjava.api.model.Statistics; //导入依赖的package包/类
@Override
protected Void execute0(StatsCmd command, ResultCallback<Statistics> resultCallback) {

    WebTarget webTarget = getBaseResource().path("/containers/{id}/stats").resolveTemplate("id",
            command.getContainerId());

    LOGGER.trace("GET: {}", webTarget);

    webTarget.request().get(new TypeReference<Statistics>() {
    }, resultCallback);

    return null;
}
 
开发者ID:docker-java,项目名称:docker-java,代码行数:14,代码来源:StatsCmdExec.java



注:本文中的com.github.dockerjava.api.model.Statistics类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java ShortCircuitTestContext类代码示例发布时间:2022-05-23
下一篇:
Java Composition类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap