Examples of VmStatsEntry


Examples of com.cloud.agent.api.VmStatsEntry

                                    }
                                }
                            }
                        }
                    }
                    vmResponseMap.put(name, new VmStatsEntry(Integer.parseInt(maxCpuUsage), networkReadKBs, networkWriteKBs, Integer.parseInt(numberCPUs), "vm"));
                }
            }
        }
        return vmResponseMap;
    }
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

        List<String> vmNames = cmd.getVmNames();
        try {
            HashMap<String, VmStatsEntry> vmStatsNameMap = new HashMap<String, VmStatsEntry>();
            for (String vmName : vmNames) {
                Connect conn = LibvirtConnection.getConnectionByVmName(vmName);
                VmStatsEntry statEntry = getVmStat(conn, vmName);
                if (statEntry == null) {
                    continue;
                }

                vmStatsNameMap.put(vmName, statEntry);
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

        Domain dm = null;
        try {
            dm = getDomain(conn, vmName);
            DomainInfo info = dm.getInfo();

            VmStatsEntry stats = new VmStatsEntry();
            stats.setNumCPUs(info.nrVirtCpu);
            stats.setEntityType("vm");

            /* get cpu utilization */
            VmStats oldStats = null;

            Calendar now = Calendar.getInstance();

            oldStats = _vmStats.get(vmName);

            long elapsedTime = 0;
            if (oldStats != null) {
                elapsedTime = now.getTimeInMillis() - oldStats._timestamp.getTimeInMillis();
                double utilization = (info.cpuTime - oldStats._usedTime) / ((double)elapsedTime * 1000000);

                NodeInfo node = conn.nodeInfo();
                utilization = utilization / node.cpus;
                if (utilization > 0) {
                    stats.setCPUUtilization(utilization * 100);
                }
            }

            /* get network stats */

            List<InterfaceDef> vifs = getInterfaces(conn, vmName);
            long rx = 0;
            long tx = 0;
            for (InterfaceDef vif : vifs) {
                DomainInterfaceStats ifStats = dm.interfaceStats(vif.getDevName());
                rx += ifStats.rx_bytes;
                tx += ifStats.tx_bytes;
            }

            if (oldStats != null) {
                double deltarx = rx - oldStats._rx;
                if (deltarx > 0)
                    stats.setNetworkReadKBs(deltarx / 1024);
                double deltatx = tx - oldStats._tx;
                if (deltatx > 0)
                    stats.setNetworkWriteKBs(deltatx / 1024);
            }

            /* get disk stats */
            List<DiskDef> disks = getDisks(conn, vmName);
            long io_rd = 0;
            long io_wr = 0;
            long bytes_rd = 0;
            long bytes_wr = 0;
            for (DiskDef disk : disks) {
                DomainBlockStats blockStats = dm.blockStats(disk.getDiskLabel());
                io_rd += blockStats.rd_req;
                io_wr += blockStats.wr_req;
                bytes_rd += blockStats.rd_bytes;
                bytes_wr += blockStats.wr_bytes;
            }

            if (oldStats != null) {
                long deltaiord = io_rd - oldStats._ioRead;
                if (deltaiord > 0)
                    stats.setDiskReadIOs(deltaiord);
                long deltaiowr = io_wr - oldStats._ioWrote;
                if (deltaiowr > 0)
                    stats.setDiskWriteIOs(deltaiowr);
                double deltabytesrd = bytes_rd - oldStats._bytesRead;
                if (deltabytesrd > 0)
                    stats.setDiskReadKBs(deltabytesrd / 1024);
                double deltabyteswr = bytes_wr - oldStats._bytesWrote;
                if (deltabyteswr > 0)
                    stats.setDiskWriteKBs(deltabyteswr / 1024);
            }

            /* save to Hashmap */
            VmStats newStat = new VmStats();
            newStat._usedTime = info.cpuTime;
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

    } else {
      oldNetworkStat = new Pair<Long, Long>(rx, tx);
    }
    _vmNetworkStats.put(vmName, oldNetworkStat);
   
    VmStatsEntry e = new VmStatsEntry();
    e.setCPUUtilization(cpuUtil);
    e.setNumCPUs(nvcpus);
    e.setNetworkReadKBs(rx);
    e.setNetworkWriteKBs(tx);
    e.setEntityType("vm");
    return e;
  }
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

  protected GetVmStatsAnswer execute(GetVmStatsCommand cmd) {
    List<String> vmNames = cmd.getVmNames();
    HashMap<String, VmStatsEntry> vmStatsNameMap = new HashMap<String, VmStatsEntry>();
    for (String vmName : vmNames) {
      try {
        VmStatsEntry e = getVmStat(vmName);
        vmStatsNameMap.put(vmName, e);
      } catch (XmlRpcException e) {
        s_logger.debug("Get vm stat for " + vmName + " failed", e);
        continue;
     
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

    @Override
    public Answer getVmStats(GetVmStatsCommand cmd) {
        HashMap<String, VmStatsEntry> vmStatsNameMap = new HashMap<String, VmStatsEntry>();
        List<String> vmNames = cmd.getVmNames();
        for (String vmName : vmNames) {
            VmStatsEntry entry = new VmStatsEntry(0, 0, 0, 0, "vm");
            entry.setNetworkReadKBs(32768); // default values 256 KBps
            entry.setNetworkWriteKBs(16384);
            entry.setCPUUtilization(10);
            entry.setNumCPUs(1);
            vmStatsNameMap.put(vmName, entry);
        }
        return new GetVmStatsAnswer(cmd, vmStatsNameMap);
    }
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

                                    }
                                }
                            }
                        }
                    }
                    vmResponseMap.put(name, new VmStatsEntry(Integer.parseInt(maxCpuUsage), networkReadKBs, networkWriteKBs, Integer.parseInt(numberCPUs), "vm"));
                }
            }
        }
        return vmResponseMap;
    }
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

          {
              HashMap<Long, VmStatsEntry> vmStatsById = _userVmMgr.getVirtualMachineStatistics(host.getId(), host.getName(), vmIds);

              if(vmStatsById != null)
              {
                VmStatsEntry statsInMemory = null;

                Set<Long> vmIdSet = vmStatsById.keySet();
                for(Long vmId : vmIdSet)
                {
                  VmStatsEntry statsForCurrentIteration = vmStatsById.get(vmId);
                  statsInMemory = (VmStatsEntry) _VmStats.get(vmId);

                  if(statsInMemory == null)
                  {
                    //no stats exist for this vm, directly persist
                    _VmStats.put(vmId, statsForCurrentIteration);
                  }
                  else
                  {
                    //update each field
                    statsInMemory.setCPUUtilization(statsForCurrentIteration.getCPUUtilization());
                    statsInMemory.setNumCPUs(statsForCurrentIteration.getNumCPUs());
                    statsInMemory.setNetworkReadKBs(statsInMemory.getNetworkReadKBs() + statsForCurrentIteration.getNetworkReadKBs());
                    statsInMemory.setNetworkWriteKBs(statsInMemory.getNetworkWriteKBs() + statsForCurrentIteration.getNetworkWriteKBs());
                    statsInMemory.setDiskWriteKBs(statsInMemory.getDiskWriteKBs() + statsForCurrentIteration.getDiskWriteKBs());
                                                                                statsInMemory.setDiskReadIOs(statsInMemory.getDiskReadIOs() + statsForCurrentIteration.getDiskReadIOs());
                                                                                statsInMemory.setDiskWriteIOs(statsInMemory.getDiskWriteIOs() + statsForCurrentIteration.getDiskWriteIOs());
                                                                                statsInMemory.setDiskReadKBs(statsInMemory.getDiskReadKBs() + statsForCurrentIteration.getDiskReadKBs());

                    _VmStats.put(vmId, statsInMemory);
                  }
                }
              }
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

        List<String> vmNames = cmd.getVmNames();
        try {
            HashMap<String, VmStatsEntry> vmStatsNameMap = new HashMap<String, VmStatsEntry>();
            for (String vmName : vmNames) {
                Connect conn = LibvirtConnection.getConnectionByVmName(vmName);
                VmStatsEntry statEntry = getVmStat(conn, vmName);
                if (statEntry == null) {
                    continue;
                }

                vmStatsNameMap.put(vmName, statEntry);
View Full Code Here

Examples of com.cloud.agent.api.VmStatsEntry

        Domain dm = null;
        try {
            dm = getDomain(conn, vmName);
            DomainInfo info = dm.getInfo();

            VmStatsEntry stats = new VmStatsEntry();
            stats.setNumCPUs(info.nrVirtCpu);
            stats.setEntityType("vm");

            /* get cpu utilization */
            vmStats oldStats = null;

            Calendar now = Calendar.getInstance();

            oldStats = _vmStats.get(vmName);

            long elapsedTime = 0;
            if (oldStats != null) {
                elapsedTime = now.getTimeInMillis()
                        - oldStats._timestamp.getTimeInMillis();
                double utilization = (info.cpuTime - oldStats._usedTime)
                        / ((double) elapsedTime * 1000000);

                NodeInfo node = conn.nodeInfo();
                utilization = utilization / node.cpus;
                if(utilization > 0){
                    stats.setCPUUtilization(utilization * 100);
                }
            }

            /* get network stats */

            List<InterfaceDef> vifs = getInterfaces(conn, vmName);
            long rx = 0;
            long tx = 0;
            for (InterfaceDef vif : vifs) {
                DomainInterfaceStats ifStats = dm.interfaceStats(vif
                        .getDevName());
                rx += ifStats.rx_bytes;
                tx += ifStats.tx_bytes;
            }

            if (oldStats != null) {
                long deltarx = rx - oldStats._rx;
                if (deltarx > 0)
                    stats.setNetworkReadKBs(deltarx / 1024);
                long deltatx = tx - oldStats._tx;
                if (deltatx > 0)
                    stats.setNetworkWriteKBs(deltatx / 1024);
            }

            /* get disk stats */
            List<DiskDef> disks = getDisks(conn, vmName);
            long io_rd = 0;
            long io_wr = 0;
            long bytes_rd = 0;
            long bytes_wr = 0;
            for (DiskDef disk : disks) {
                DomainBlockStats blockStats = dm.blockStats(disk.getDiskLabel());
                io_rd += blockStats.rd_req;
                io_wr += blockStats.wr_req;
                bytes_rd += blockStats.rd_bytes;
                bytes_wr += blockStats.wr_bytes;
            }
           
            if (oldStats != null) {
                long deltaiord = io_rd - oldStats._io_rd;
                if (deltaiord > 0)
                    stats.setDiskReadIOs(deltaiord);
                long deltaiowr = io_wr - oldStats._io_wr;
                if (deltaiowr > 0)
                    stats.setDiskWriteIOs(deltaiowr);
                long deltabytesrd = bytes_rd - oldStats._bytes_rd;
                if (deltabytesrd > 0)
                    stats.setDiskReadKBs(deltabytesrd / 1024);
                long deltabyteswr = bytes_wr - oldStats._bytes_wr;
                if (deltabyteswr > 0)
                    stats.setDiskWriteKBs(deltabyteswr / 1024);
            }
           
            /* save to Hashmap */
            vmStats newStat = new vmStats();
            newStat._usedTime = info.cpuTime;
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.