1. A method for license management of virtual machines, comprising: receiving an event notification from a virtual machine manager configured to control the execution of a plurality of virtual machines, the event notification corresponding to a first virtual machine and indicating an event type associated with the first virtual machine; receiving a file from the virtual machine manager, the file being a snapshot of the first virtual machine; parsing a configuration file of the first virtual machine to determine a number of: a first plurality of applications installed on the first virtual machine and a second plurality of applications running on the first virtual machine; updating, with the determined number, an inventory indicating how many active instances of the first plurality of applications and the second plurality of applications are in the plurality of virtual machines based on the event notification; and determining compliance or non-compliance with a plurality of license policies based on the inventory, each license policy of the plurality of license policies corresponding to at least one application of: the first plurality of application and the second plurality of applications in the first virtual machine.