获取 VM 创建日期 [英] To Get the VM Created Date

查看:49
本文介绍了获取 VM 创建日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是 VMWare Sdk 编程的新手,我需要获取虚拟机 (VM) 部署日期.

I am new to the VMWare Sdk Programming,i have a requirement to get the Virtual Machine (VM) Deployed date.

我编写了以下代码来获取其他所需的详细信息.

I have written the below code to get the other required details.

package com.vmware.vim25.mo.samples;

import java.net.URL;

import com.vmware.vim25.*;
import com.vmware.vim25.mo.*; 


public class HelloVM {


     public static void main(String[] args) throws Exception
     {
     long start = System.currentTimeMillis();
     int i;
     ServiceInstance si = new ServiceInstance(new URL("https://bgl-clvs-vc.bgl.com/sdk"), "sbibi", "sibi_123", true);
     long end = System.currentTimeMillis();
     System.out.println("time taken:" + (end-start));
     Folder rootFolder = si.getRootFolder();
     String name = rootFolder.getName();
     System.out.println("root:" + name);
     ManagedEntity[] mes = new InventoryNavigator(rootFolder).searchManagedEntities("VirtualMachine");


     System.out.println("No oF vm:" + mes.length);
     if(mes==null || mes.length ==0)
     {
         return;
     }
     for(i=0;i<mes.length; i++){

         VirtualMachine vm = (VirtualMachine) mes[i];

         VirtualMachineConfigInfo vminfo = vm.getConfig();
         VirtualMachineCapability vmc = vm.getCapability();
         vm.getResourcePool();
         System.out.println("VM Name " + vm.getName());
         System.out.println("GuestOS: " + vminfo.getGuestFullName());
         System.out.println("Multiple snapshot supported: " + vmc.isMultipleSnapshotsSupported());
         System.out.println("Summary: " + vminfo.getDatastoreUrl()); 
     }


     si.getServerConnection().logout();

     } 


}

谁能帮助我如何获取 VM 创建日期?

Can anyone help me how I can get the VM created date?

推荐答案

我使用以下代码找到了 Vm 创建日期.

I have found the Vm Creation Date using the below codes.

EventFilterSpecByUsername uFilter =
new EventFilterSpecByUsername();
uFilter.setSystemUser(false);
uFilter.setUserList(new String[] {"administrator"});
Event[] events = evtMgr.queryEvents(efs);
// print each of the events
for(int i=0; events!=null && i<events.length; i++)  
{
      System.out.println("\nEvent #" + i); 
      printEvent(events[i]);
}

/**
* Only print an event as Event type.
*/
 static void printEvent(Event evt)
 {
    String typeName = evt.getClass().getName();
    int lastDot = typeName.lastIndexOf('.');
     if(lastDot != -1)
      {
           typeName = typeName.substring(lastDot+1);
       }
           System.out.println("Time:" + evt.getCreatedTime().getTime());
   }

希望此代码可以帮助其他人.

Hope this code might help others.

这篇关于获取 VM 创建日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆