Dynamic Data Logging Framework for Application Lifecycle Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data-logging techniques in application programming are inefficient, particularly in mobile applications, as they require recompilation and redeployment for changes, consume excessive resources, and continue logging data regardless of the application's lifecycle stage, leading to resource wastage and potential errors.

Innovation Solution

A log framework that dynamically controls data sampling based on the application's lifecycle stages, allowing for adjustable sampling rates and parameters such as the number of users, events, and data volume, eliminating the need for code modifications and optimizing resource usage by adapting to changing user interactions and product stability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If data logging is configured to log all data items, then data collection completeness is improved, but computing resource consumption increases

Engineering Contradiction:
Improvedata collection completenessVSAvoidcomputing resource consumption
Core Design Contradiction:
Loss of informationVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic data logging where the sampling rate and logging parameters are adjusted based on the application's lifecycle stage. During development and testing phases, the system logs all or most data items with high sampling rates. When the application reaches production phase, the system automatically reduces the sampling rate and selects only critical data items for logging, thereby maintaining data completeness where needed while reducing overall resource consumption.

Inventive Principle:
Principle #15Dynamics

2Measurement precision

If data logging parameters are changed frequently, then monitoring accuracy is improved, but deployment time increases

Engineering Contradiction:
Improvemonitoring accuracyVSAvoiddeployment time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent incorporates data logging parameter configurations directly into the application binary during the build process. Different logging profiles (development, testing, production) are pre-configured and embedded within the application package. When deploying, the appropriate profile is selected based on the target environment, eliminating the need for separate compilation and deployment for each logging configuration. This allows frequent monitoring accuracy adjustments without incurring repeated compilation and deployment time costs.

Inventive Principle:
Principle #10Preliminary action

3Duration of action of stationary object

If data logging continues throughout product lifecycle, then long-term data availability is improved, but resource wastage increases

Engineering Contradiction:
Improvedata availability durationVSAvoidresource wastage
Core Design Contradiction:
Duration of action of stationary objectVSLoss of energy

Solution Approach 1:

The patent implements lifecycle-aware data logging where logging parameters such as sampling rate, data items selected, and log file retention are dynamically changed based on the application's lifecycle stage. In early stages (development, testing), the system maintains high logging intensity with comprehensive data capture. As the application transitions to production and stabilizes, the system automatically adjusts parameters to reduce logging intensity, capturing only essential operational data. This ensures long-term data availability for critical phases while preventing resource wastage during stable production operation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9983853B2Controlling data logging based on a lifecycle of a product
Publication Date: 2018.05.29 META PLATFORMS INC
  • US9983853B2 patent drawing
  • US9983853B2 patent drawing
  • US9983853B2 patent drawing

AI summary

The embodiments are related to a log framework for controlling data sampling at client devices based on a lifecycle of a product. A product can be an application executing on a client device and/or a feature of the application. The sampling of data depends on a lifecycle of the product. For example, data may be sampled at a higher rate during a launch phase of the product, e.g., as more data may be required to analyze the behavior of the product, and then may be decreased to a lower rate when the product matures. Similarly, for a product that is in an experiment phase for a specified duration, data may be logged during the experiment phase, e.g., at a constant sampling rate, and then the logging may be terminated at the expiry of the experiment phase, thereby saving resources, e.g., processing capacity, storage capacity of the client device.