本文整理汇总了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;未经允许,请勿转载。 |
请发表评论