Dynamic Command Generation for Computing Machine Telemetry

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Users report issues with applications crashing or malfunctioning, but feedback received by providers is often non-actionable due to lack of logs, and existing systems cannot collect telemetry information from affected machines without direct connection.

Innovation Solution

A server system generates and stores commands to collect telemetry information, which are queried and executed by computing machines, allowing for anonymous data collection and aggregation to improve application performance globally, even if the server cannot initially connect to the machine.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If the server system receives feedback reports from users about application issues, then the provider can identify problems, but the feedback is not actionable because no logs are received

Engineering Contradiction:
ImprovelogsVSAvoidactionability of feedback
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The server system generates and stores commands in advance that configure computing machines to collect specific telemetry information. These commands are prepared before the actual data collection occurs, enabling the machine to gather logs and telemetry data automatically when executed, thus resolving the information loss problem while maintaining ease of operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces commands as an intermediary mechanism between the server system and computing machines. These commands act as mediators that instruct the machines to collect and transmit telemetry information, bridging the gap between receiving feedback and obtaining actionable logs without requiring direct server-machine connection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If the server system attempts to connect directly to computing machines to collect telemetry information, then logs can be obtained, but connection failures occur when the server cannot initially connect to the machine

Engineering Contradiction:
Improvetelemetry informationVSAvoidconnection success rate
Core Design Contradiction:
Loss of informationVSReliability

Solution Approach 1:

The server system prepares and stores commands in advance that configure the computing machine to collect telemetry information locally. When the machine executes these commands, it gathers the necessary data without requiring the server to maintain a persistent connection, thus improving reliability while ensuring telemetry information is still collected.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The computing machine executes the commands autonomously to collect and transmit its own telemetry information to the server system. This self-service approach eliminates the need for the server to initiate connections to each machine, improving connection reliability while maintaining telemetry collection capability.

Inventive Principle:
Principle #25Self-service

3Productivity

If the server system pushes commands directly to computing machines, then telemetry collection is initiated, but the server cannot connect to machines that are experiencing issues

Engineering Contradiction:
Improvetelemetry collection efficiencyVSAvoidcommand delivery success
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The server system generates and stores commands in advance in a command list, preparing them before distribution. The computing machine then queries this list and executes the commands locally, initiating telemetry collection without requiring the server to maintain active connections, thus improving both productivity and reliability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of the server pushing commands directly to machines (traditional approach), the patent inverts the approach: machines query for and execute commands from the server's command list. This reversal eliminates the connection requirement for command delivery, improving reliability while maintaining telemetry collection efficiency.

Inventive Principle:
Principle #13The other way round (Inversion)

4Ease of repair

If the system collects telemetry information from individual machines, then specific issues can be troubleshooted, but user identities are revealed

Engineering Contradiction:
Improvetroubleshooting capabilityVSAvoiduser privacy exposure
Core Design Contradiction:
Ease of repairVSObject-affected harmful factors

Solution Approach 1:

The patent extracts and aggregates telemetry information from multiple computing machines into a centralized command list that the server system processes. By collecting data from multiple machines and analyzing patterns across the aggregate dataset, the system enables troubleshooting of systemic issues without exposing or associating data with individual user identities, thus protecting privacy while maintaining troubleshooting capability.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentEP3679471B1Dynamic command generation for automated control of computing machines
Publication Date: 2023.06.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP3679471B1 patent drawingFigure 1
  • EP3679471B1 patent drawingFigure 2
  • EP3679471B1 patent drawingFigure 3

AI summary

A system generates a command to cause a computing machine to collect information for an issue that occurred with an application. The command is stored in a command list and associated with a computing machine identifier for the computing machine. The system receives a query from the computing machine for the command list. The query includes the computing machine identifier and the system locates the command in the command list based on the command being associated with the computing machine identifier. The system then sends the command to the computing machine where the command dynamically causes the computing machine to collect the information for the issue with the application.