# US 11,308,280 B2 · Capture and search of virtual machine application properties using log analysis techniques

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,308,280 B2
- Document ID: US11308280B2
- Status: Granted
- Kind: B2
- Application number: 16/747,531
- Filed: 2020-01-21
- Published: 2021-07-22
- Granted: 2022-04-19
- Earliest claimed: 2020-01-21
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Itai Gordon; Kristin E. McNeil; Radha Mohan De; Miriam Nizri
- Web page: https://patentgrep.com/patent/US11308280B2

## CPC

- G06F 40/205: Parsing
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 40/279: Recognition of textual entities
- G06N 20/00: Machine learning
- G06F 8/63: {Image based installation; Cloning; Build to order}
- G06F 2009/45562: {Creating, deleting, cloning virtual machine instances}
- G06F 2009/4557: {Distribution of virtual machine instances; Migration and load balancing}
- G06F 2009/45591: {Monitoring or debugging support}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06N 5/025: Extracting rules from data
- G06V 30/40: Document-oriented image-based pattern recognition
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

The capture and search of application properties for applications installed on virtual machines, includes obtaining a plurality of logs on a plurality of virtual machine images coupled to a network. For each given virtual machine image of the plurality of virtual machine images, the method includes: obtaining one or more logs on the given virtual machine image of the plurality of virtual machine images; analyzing each given log of the one or more logs to identify one or more concepts related to a set of application properties for one or more applications installed on the given virtual machine image; associating the one or more concepts and the set of application properties with an identity of the given virtual machine image; and storing the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in a virtual machine catalogue.

## Claims

### Claim 1

A method for capture and search of application properties for applications installed on virtual machines, comprising:
locating, by a computer system, a plurality of virtual machine images coupled to a network;
for each given virtual machine image of the plurality of virtual machine images, comprising:
obtaining, by the computer system, one or more logs on the given virtual machine image of the plurality of virtual machine images, wherein the one or more logs include information on one or more applications installed on the given virtual machine image;
analyzing, by the computer system, each given log of the one or more logs to identify one or more concepts related to a set of application properties for the one or more applications installed on the given virtual machine image by using a machine learning model that receives each given log as input to:
parse, using the machine learning model, text in the given log to identify one or more text patterns;
identify, using the machine learning model, the one or more concepts contained in the one or more text patterns in the given log using an ontology database;
extract, using the machine learning model, from the one or more text patterns the set of application properties corresponding to the one or more concepts using the ontology database; and
calculate, using the machine learning model, a probability that the one or more concepts exist in the given virtual machine image when the one or more text patterns are found in the one or more logs;
associating, by the computer system, the one or more concepts and the set of application properties with an identity of the given virtual machine image; and
storing, by the computer system, the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in a virtual machine catalogue;
receiving, by the computer system, one or more search terms related to the plurality of virtual machine images;
locating, by the computer system, a stored virtual machine image for one virtual machine based on the one or more search terms; and
installing, by the computer system, the stored virtual machine image for another virtual machine.

### Claim 2 (depends on 1)

The method of claim 1, wherein the machine learning model is trained using the one or more text patterns and relationships configured in a rules engine.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
mapping, by the computer system, the one or more search terms to one or more second concepts;
searching the virtual machine catalogue, by the computer system, for one or more third concepts matching the one or more second concepts;
obtaining, from the virtual machine catalogue by the computer system, one or more virtual machine image identities associated with the one or more third concepts;
obtaining, from the virtual machine catalogue by the computer system, another set of application properties corresponding to the one or more third concepts; and
returning, as a search result, by the computer system, the one or more virtual machine image identities and the another set of application properties corresponding to the one or more third concepts.

### Claim 4 (depends on 1)

The method of claim 1, wherein the obtaining of the one or more logs on the plurality of virtual machine images further comprises:
performing, by the computer system, a crawl of the plurality of virtual machines to obtain the one or more logs on the plurality of virtual machines.

### Claim 5 (depends on 1)

The method of claim 1, wherein the obtaining of the one or more logs on the plurality of virtual machine images further comprises:
collecting, by a log capture component configured on the given virtual machine image, the one or more logs.

### Claim 6 (depends on 1)

The method of claim 1, wherein the storing of the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in the virtual machine catalogue further comprises:
sending, by the computer system to a server, the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image, wherein the server stores the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in the virtual machine catalogue.

### Claim 7

A computer program product for capture and search of application properties for applications installed on virtual machines, the computer program product comprising:
one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media and executable by one or more computer processors, the program instructions comprising:
locating a plurality of virtual machine images coupled to a network;
for each given virtual machine image of the plurality of virtual machine images, comprising:
obtaining one or more logs on the given virtual machine image of the plurality of virtual machine images, wherein the one or more logs include information on one or more applications installed on the given virtual machine image;
analyzing each given log of the one or more logs to identify one or more concepts related to a set of application properties for the one or more applications installed on the given virtual machine image by using a machine learning model that receives each given log as input to:
parse, using the machine learning model, text in the given log to identify one or more text patterns;
identify, using the machine learning model, the one or more concepts contained in the one or more text patterns in the given log using an ontology database;
extract, using the machine learning model, from the one or more text patterns the set of application properties corresponding to the one or more concepts using the ontology database; and
calculate, using the machine learning model, a probability that the one or more concepts exist in the given virtual machine image when the one or more text patterns are found in the one or more logs;
associating the one or more concepts and the set of application properties with an identity of the given virtual machine image; and
storing the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in a virtual machine catalogue;
receiving one or more search terms related to the plurality of virtual machine images;
locating a stored virtual machine image for one virtual machine based on the one or more search terms; and
installing the stored virtual machine image for another virtual machine.

### Claim 8 (depends on 7)

The computer program product of claim 7, wherein the machine learning model is trained using the one or more text patterns and relationships configured in a rules engine.

### Claim 9 (depends on 7)

The computer program product of claim 7, wherein the program instructions further comprise:
mapping the one or more search terms to one or more second concepts;
searching the virtual machine catalogue for one or more third concepts matching the one or more second concepts;
obtaining, from the virtual machine catalogue, one or more virtual machine image identities associated with the one or more third concepts;
obtaining, from the virtual machine catalogue, another set of application properties corresponding to the one or more third concepts; and
returning, as a search result, the one or more virtual machine image identities and the another set of application properties corresponding to the one or more third concepts.

### Claim 10 (depends on 7)

The computer program product of claim 7, wherein the program instructions for the obtaining of the one or more logs on the plurality of virtual machine images further comprise:
performing a crawl of the plurality of virtual machines to obtain the one or more logs on the plurality of virtual machines.

### Claim 11 (depends on 7)

The computer program product of claim 7, wherein the program instructions for the obtaining of the one or more logs on the plurality of virtual machine images further comprise:
collecting, by a log capture component configured on the given virtual machine image, the one or more logs.

### Claim 12 (depends on 7)

The computer program product of claim 7, wherein the program instructions for storing of the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in the virtual machine catalogue further comprise:
sending, to a server, the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image, wherein the server stores the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in the virtual machine catalogue.

### Claim 13

A system comprising:
one or more processors; and
one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media and executable by the one or more processors, the program instructions comprising:
locating a plurality of virtual machine images coupled to a network;
for each given virtual machine image of the plurality of virtual machine images, comprising:
obtaining one or more logs on the given virtual machine image of the plurality of virtual machine images, wherein the one or more logs include information on one or more applications installed on the given virtual machine image;
analyzing each given log of the one or more logs to identify one or more concepts related to a set of application properties for the one or more applications installed on the given virtual machine image by using a machine learning model that receives each given log as input to:
parse, using the machine learning model, text in the given log to identify one or more text patterns;
identify, using the machine learning model, the one or more concepts contained in the one or more text patterns in the given log using an ontology database;
extract, using the machine learning model, from the one or more text patterns the set of application properties corresponding to the one or more concepts using the ontology database; and
calculate, using the machine learning model, a probability that the one or more concepts exist in the given virtual machine image when the one or more text patterns are found in the one or more logs;
associating the one or more concepts and the set of application properties with an identity of the given virtual machine image; and
storing the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in a virtual machine catalogue;
receiving one or more search terms related to the plurality of virtual machine images;
locating a stored virtual machine image for one virtual machine based on the one or more search terms; and
installing the stored virtual machine image for another virtual machine.

### Claim 14 (depends on 13)

The system of claim 13, wherein the machine learning model is trained using the one or more text patterns and relationships configured in a rules engine.

### Claim 15 (depends on 13)

The system of claim 13, wherein the program instructions further comprise:
mapping the one or more search terms to one or more second concepts;
searching the virtual machine catalogue for one or more third concepts matching the one or more second concepts;
obtaining, from the virtual machine catalogue, one or more virtual machine image identities associated with the one or more third concepts;
obtaining, from the virtual machine catalogue, another set of application properties corresponding to the one or more third concepts; and
returning, as a search result, the one or more virtual machine image identities and the another set of application properties corresponding to the one or more third concepts.

### Claim 16 (depends on 13)

The system of claim 13, wherein the program instructions for the obtaining of the one or more logs on the plurality of virtual machine images further comprise:
performing a crawl of the plurality of virtual machines to obtain the one or more logs on the plurality of virtual machines.

### Claim 17 (depends on 13)

The system of claim 13, wherein the program instructions for the obtaining of the one or more logs on the plurality of virtual machine images further comprise:
collecting, by a log capture component configured on the given virtual machine image, the one or more logs.

### Claim 18 (depends on 13)

The system of claim 13, wherein the program instructions for the storing of the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in the virtual machine catalogue further comprise:
sending, to a server, the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image, wherein the server stores the association of the one or more concepts and the set of application properties with the identity of the given virtual machine image in the virtual machine catalogue.
