Here is an alternative method of extracting the super useful information from VIN (vSphere Infrastructure Navigator) which I stumbled across while troubleshooting an earlier VIN 1.2 deployment. This method is much simpler from a data extraction point of view and has less prerequisites compared to the first method documented here and here, but it does require a bit more data processing.
Once VIN is up running, there are a set of zip files that are created in /var/log/vadm/results which are name with the virtual machines MoRef ID. We can quickly view the contents of one of these files (without needing to extract the zip file) by using zcat, here is the command to view one of the zip files: zcat /var/logs/vadm/vm-238.zip
From the screenshots above, we can see it contains the same set of information as displayed in the VIN UI. The information is broken down into several section including high level summary of the VM, individual processes running in the virtual machine, application/services known by VIN as well as a netstat table.
Instead of operating on these files directly, you should make a separate copy of the directory for further processing. Since the file name contains the VM's MoRef ID instead of the human readable VM display name, I wrote a quick script called extractVINData.sh which creates a copy of data and rename the files to VM display name.
To use the script, you just need to download it and upload it to your VIN appliance (make sure you set the execute permission on the script). Then just run the script and it will automatically copy the directory to /root/vin-results and translate the VM MoRef ID by correlating with the /var/log/vadm/engine.log file.
Here is a screenshot of the script output:
So if you do not mind some parsing, you can easily extract the data VIN is collecting by simply SSHing to the VIN appliance and periodically copying out /var/log/vadm/results directory. From my quick test, this directory is automatically updated as new VMs are brought online and inventoried by VIN.
Leon Scheltema says
Thanks for the script, I was looking for a way to create such a export as the GUI lacks of this. But when I run the script on a VIN version 5.8.3.140 Build 2170967 the script does not create / rename all the files. I only get a .zip file with one vm-MoRef ID XML file of a random VM. Is there still a way to export the dependencies for all VM's within a vCenter with the latest VIN build?
Leon Scheltema says
It looks like you need to make a small change to the script as there is a change in the engine.log file in the recent build of VIN. the script look for: VM_NAME=$(grep "Creating discovery task for ${VM_MOREF}" but in the latest build has to be changed to: VM_NAME=$(grep "Creating task for ${VM_MOREF}"
After the change the script runs perfectly, giving me all the data I need for mapping application / server dependencies !