IP Library Granted Patent US 11,169,833
Granted Patent B2
US 11,169,833 · App. 16/280,072 · Granted Nov 9, 2021

Applications discovery based on file system directories

Inventors: Divith Shetty (Bangalore, IN); Vipul Chaudhary (Bangalore, IN); Vinay Vivekananda (Bangalore, IN)
Assignee: VMWARE, INC.
G06F9/45545G06F9/45558G06F16/90344G06F2009/45591
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,169,833
App. No.
16/280,072
Granted
Nov 9, 2021
Kind
B2
Abstract

Techniques for discovering applications based on file system directories are disclosed. In one example, process information may be extracted from a file system directory of an application host executing a plurality of applications. Further, an expression match may be performed on the process information. Furthermore, a presence of an application running on the application host may be determined based on an outcome of the expression match.

Claims (55)

1. A method comprising:

extracting, by a processor of an application host, process information from a file system directory of the application host executing a plurality of applications, wherein the application host comprises a container running on a container host, and wherein extracting the process information from the file system directory comprises:

detecting a container identifier of the container running on the container host;

determining a process identifier associated with a process running on the container based on the container identifier;

determining the file system directory associated with the process identifier; and

extracting the process information associated with the process running on the container from the file system directory;

performing, by the processor, an expression match on the process information, wherein performing the expression match on the process information comprises:

determining command line parameters used to initiate the process using the process information; and

performing the expression match on the command line parameters; and

determining, by the processor, a presence of an application running on the application host based on an outcome of the expression match.

2. The method of claim 1 , further comprising:

real-time monitoring the application; and

determining health of the application based on the real-time monitoring.

3. The method of claim 1 , wherein performing the expression match comprises performing a regular expression match.

4. A method comprising:

extracting, by a processor of an application host, process information from a file system directory of the application host executing a plurality of applications, wherein the application host is one of a physical server and a virtual machine, and wherein extracting the process information from the file system directory comprises:

determining a process identifier associated with a process running on the application host;

determining the file system directory corresponding to the process identifier; and

extracting the process information associated with the process running on the application host from the file system directory;

performing, by the processor, an expression match on the process information, wherein performing the expression match on the process information comprises:

determining command line parameters used to initiate the process using the process information; and

performing the expression match on the command line parameters; and

determining, by the processor, a presence of an application running on the application host based on an outcome of the expression match.

5. An apparatus comprising:

a container host implementing a container, the container executing a plurality of applications;

a storage platform associated with the container host to store a plurality of file system directories associated with the plurality of applications and implementing storage resources for utilization by the container; and

an application discovery unit residing in the container host to:

extract process information from a file system directory of the plurality of file system directories corresponding to the container, wherein the application discovery unit is to:

detect a container identifier of the container running on the container host;

determine a process identifier associated with a process running on the container based on the container identifier;

determine the file system directory associated with the process identifier; and

extract the process information associated with the process running on the container from the file system directory;

perform an expression match on the process information, wherein the application discovery unit is to:

determine command line parameters used to initiate the process using the process information; and

perform the expression match on the command line parameters; and

determine a presence of an application running on the container based on an outcome of the expression match.

6. The apparatus of claim 5 , wherein the container host comprises an application monitoring unit to:

real-time monitor the application running on the container to collect metrics corresponding to the application; and

transmit the collected metrics to a cloud monitoring platform over a network, wherein cloud monitoring platform is to determine health of the application based on analyzing the collected metrics.

7. The apparatus of claim 6 , wherein the container host comprises a processor resource coupled to a memory resource, and wherein the application discovery unit and the application monitoring unit are implemented by the processor executing instructions stored in the memory.

8. The apparatus of claim 5 , wherein the file system directory comprises information characterizing one or more parameters of a container operating environment of the container including one or more of a network parameter, a port parameter, a storage parameter, and a command line parameter.

9. A non-transitory machine-readable storage medium encoded with instructions that, when executed by a processor of a container host, cause the processor to:

extract process information from a file system directory corresponding to a container executing a plurality of applications, the container running on the container host, wherein instructions to extract the process information from the file system directory comprises instructions to:

detect a container identifier of the container running on the container host;

determine a process identifier associated with a process running on the container based on the container identifier;

determine the tile system directory associated with the process identifier; and

extract the process information associated with the process running on the container from the file system directory;

perform an expression match on the process information, wherein instructions to perform the expression match on the process information comprises instructions to:

determine command line parameters used to initiate the process using the process information; and

perform the expression match on the command line parameters; and

determine a presence of an application running on the container based on an outcome of the expression match.

10. The non-transitory machine-readable storage medium of claim 9 , further comprising instructions that, when executed by the processor, cause the processor to:

real-time monitor the application running on the container to collect metrics corresponding to the application; and

transmit the collected metrics to a cloud monitoring platform over a network, wherein cloud monitoring platform is to determine health of the application based on analyzing the collected metrics.

11. The non-transitory machine-readable storage medium of claim 9 , wherein instructions to perform the expression match comprises instructions to perform a regular expression match.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2019
From: SHETTY, DIVITH; CHAUDHARY, VIPUL; VIVEKANANDA, VINAY
To: VMWARE, INC.
Reel/Frame 048377/0426 →