# US 2013/0159326 A1 · Solution monitoring system

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

- Number: US 2013/0159326 A1
- Document ID: US20130159326A1
- Status: Published application
- Kind: A1
- Application number: 13/569,166
- Filed: 2012-08-07
- Published: 2013-06-20
- Earliest claimed: 2011-12-15
- Assignees: Microsoft Corporation
- Inventors: Junko Kyomasu; Yu Kuratake; Jin Ho Jeon; Makoto Yamagishi; Daniel Moffitt; Fumiyuki Maeyama; Ryogo Kanatani; Hirokazu Sawada; Nobuko Miwa; Junko Tanaka; Yasufumo Shiraishi; Sachio Kono
- Web page: https://patentgrep.com/patent/US20130159326A1

## CPC

- G06F 8/61: Installation
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A solution monitoring system is provided for gathering, filtering, and analyzing information associated with solutions for managing monitoring, upgrades, and migrations. Telemetry may be recorded for various types of solution events and various properties of solutions as part of an add-in intelligence. Furthermore, add-in management tools are provided for administrators and end users.

## Claims

### Claim 1

A method executed in a computing device for providing solution monitoring in a multi-user system, the method comprising:
collecting inventory information associated with installed applications, add-ins, and solutions through inventory agents on individual client machines;
employing customizable tags to filter collected inventory information;
generating a record of associated with at least one from a set of: installed applications, add-ins, and solutions through inventory agents on individual client machines; and
providing a user interface for a user to review the record of events, wherein the user interface also provides information and links to address detected performance, errors, and compatibility issues.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
forwarding the collected inventory information to a central data store for aggregation and processing.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
providing a telemetry dashboard user interface for an administrator to review, analyze, and customize the aggregated and processed inventory information from a plurality of inventory agents.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
enabling an administrator to monitor one of an upgrade, a migration, and a maintenance of a system-wide solution through the administrator user interface.

### Claim 5 (depends on 2)

The method of claim 2, further comprising:
enabling scalability of the system by adding processing servers to aggregate and process the collected inventory information depending on a number of client machines.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
enabling filtering and analysis of the collected inventory information by selecting one or more tags.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
enabling filtering of the collected information employing a time slicer to select specific periods for viewing and analyzing the collected inventory information.

### Claim 8 (depends on 1)

The method of claim 1, further comprising:
enabling one of a user and an administrator to test and remediate one or more solutions addressing detected performance, errors, and compatibility issues.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
monitoring frequency of usage of the installed applications, add-ins, and solutions through each inventory agent.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
collecting the inventory information through a telemetry logging system, wherein the telemetry logging system includes one or more telemetry application programming interfaces (APIs) embedded within installed applications and solutions to capture events and properties.

### Claim 12

A solution monitoring system comprising:
at least one processing server configured to aggregate and process inventory data collected from a plurality of client machines;
a management server configured to provide an administrator tool to review and analyze the collected inventory data; and
a telemetry logging system configured to:
collect the inventory information associated with installed applications, add-ins, and solutions through one or more telemetry application programming interfaces (APIs) embedded within installed applications and solutions to capture events and properties;
employ customizable tags to filter collected inventory information;
forward the collected inventory information the at least one processing server for aggregation and processing; and
provide a telemetry dashboard user interface as the administrator tool for an administrator to review, analyze, and customize the aggregated and processed inventory information.

### Claim 13 (depends on 12)

The system of claim 12, wherein the captured events and properties include at least one from a set of: load events, close events, crash events, file names, document titles, file paths, authors, file sizes, user names, computer names, domain names, load times, and program identifiers.

### Claim 14 (depends on 12)

The system of claim 12, wherein the system further comprises a framework configured to monitor usage of applications' object models to detect potential compatibility issues of solutions.

### Claim 15 (depends on 12)

The system of claim 12, wherein the system further comprises logic configured to associate telemetry events with solutions and logic configured to record solution sessions and associate events with the sessions.

### Claim 16 (depends on 12)

The system of claim 12, wherein the telemetry APIs are configured to store collected inventory information to local storage files prior to forwarding to the at least one processing server.

### Claim 17

A computer-readable memory device with instructions stored thereon for providing solution monitoring in a multi-user system, the instructions comprising:
collecting inventory information associated with installed applications, add-ins, and solutions through inventory agents on individual client machines;
employing customizable tags to filter collected inventory information;
generating a record of associated with at least one from a set of: installed applications, add-ins, and solutions through inventory agents on individual client machines;
providing a user interface for a user to review the record of events, wherein the user interface also provides information and links to address detected performance, errors, and compatibility issues;
forwarding the collected inventory information to a central data store for aggregation and processing; and
providing a telemetry dashboard user interface for an administrator to review, analyze, and customize the aggregated and processed inventory information from a plurality of inventory agents.

### Claim 18 (depends on 17)

The computer-readable memory device of claim 17, wherein the instructions further comprise:
managing one or more add-ins using registry key in individual client machines.

### Claim 19 (depends on 18)

The computer-readable memory device of claim 18, wherein the instructions further comprise:
collecting add-in performance information associated with at least one from a set of:
usage, compatibility issues, and load behavior;
enabling an administrator to select which add-ins to manage based on the collected add-in performance information; and
enable the administrator to create a script to manage selected add-ins through a group policy object.

### Claim 20 (depends on 18)

The computer-readable memory device of claim 18, wherein the instructions further comprise:
providing the collected add-in performance information to a user to enable the user to manage selected add-ins directly.
