Data tracking method, device and storage medium for publishing links

CN117909210BActive Publication Date: 2026-09-18SHANGHAI SOULGATE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311552333.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-11-20
Publication Date
2026-09-18
Estimated Expiration
2043-11-20

AI Technical Summary

Technical Problem

这种方案存在的问题是,需要梳理出关键节点然后再在这些关键节点处新增日志,但关键节点的梳理是比较费时费力的,导致成本比较高

Benefits of technology

[0008] According to a fourth aspect of the embodiments of the present disclosure, a computer program product is provided, including computer program instructions that, when executed by a processor, implement the data tracking method according to a first aspect of the embodiments of the present disclosure.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117909210B_ABST
    Figure CN117909210B_ABST
Patent Text Reader

Abstract

This disclosure relates to a data tracking method, apparatus, and storage medium for a release process. The data tracking method includes: creating a tracking number (TrackingID) for the current release process upon entering the release process; registering services that need to use the TrackingID, wherein a module name is passed during registration, and the registered services are stored in the tracking module cache; binding the TrackingID to a data entry point, and traversing the tracking module cache during data entry point injection to report data entry points; and canceling registration after the release process ends, wherein service modules that no longer use the TrackingID are unregistered to remove the unregistered service modules from the tracking module cache.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to data tracing methods, systems, and storage media for publishing links, and more particularly, to data tracing methods, systems, and storage media that combine a tracking number (TrackingID) with embedded points in the publishing link. Background Technology

[0002] In social applications with content publishing capabilities, the process from a user entering the publishing page to completing the post involves at least several steps, including text editing, image editing, video editing, compression and cropping, obtaining a token, uploading media resources, and calling the publishing API. This process is quite lengthy, making it difficult to pinpoint the exact stage where a problem occurs and / or what actions the user performed during the process. Traditional solutions involve tracing the process by examining in-app event tracking data. However, because the reported event tracking points are often scattered and unrelated, this approach is inefficient for troubleshooting. Therefore, a complete record of the user's entire posting process is needed to reconstruct the scenario where the problem occurred, help pinpoint the cause, and thus quickly resolve the issue.

[0003] One improved approach is to use a TrackingID in distributed services to chain together calls to various services for a single request. Specifically, when a request enters the deployment process from the inbound party, a unique TrackingID is created to identify it. In subsequent requests, this field is automatically passed to the next caller by the framework until the request ends, at which point the TrackingID is released. By combining the TrackingID with server log data, complex call chains can be linked together. The problem with this approach is that it requires identifying key nodes and adding logs at these nodes, which is time-consuming and labor-intensive, resulting in high costs. Summary of the Invention

[0004] This application proposes a data tracing method, apparatus, and storage medium for publishing links.

[0005] According to a first aspect of the embodiments of this disclosure, a data tracking method for a publishing link is provided, comprising: creating a tracking number TrackingID for the current publishing link when entering the publishing process; registering services that need to use TrackingID, wherein a module name is passed in during registration and the registered services are stored in a tracking module cache; binding TrackingID with event tracking points, and traversing the tracking module cache during event tracking point injection to report event tracking data; and canceling registration after the publishing process ends, wherein service modules that no longer use TrackingID are unregistered to remove the unregistered service modules from the tracking module cache.

[0006] According to a second aspect of the embodiments of this disclosure, a data tracking device for a publishing link is provided, running on a user terminal, comprising: a TrackingID creation module configured to create a TrackingID for the current publishing link when entering the publishing process; a service registration module configured to register services that need to use TrackingID, wherein a module name is passed in during registration, and the registered services are stored in a tracking module cache, and registration is cancelled after the publishing process ends, wherein service modules that no longer use TrackingID are unregistered to remove the unregistered service modules from the tracking module cache; and a tracking point data module configured to bind TrackingID with tracking points, and traverse the tracking module cache during tracking point injection to report tracking point data.

[0007] According to a third aspect of the embodiments of the present disclosure, a computer-readable storage medium having program instructions stored thereon, which, when executed, cause a computer to implement the data tracking method according to a first aspect of the embodiments of the present disclosure.

[0008] According to a fourth aspect of the embodiments of the present disclosure, a computer program product is provided, including computer program instructions that, when executed by a processor, implement the data tracking method according to a first aspect of the embodiments of the present disclosure.

[0009] The advantage of the embodiments according to this disclosure is that, unlike other methods that add logs at critical nodes, it makes full use of existing data points for tracking and investigating log data, which greatly reduces the implementation cost of the solution and shortens the implementation cycle.

[0010] Another advantage of the embodiments of this disclosure is that it overcomes the problems of the discreteness of existing tracking points for business release processes with long links and complex scenarios, thereby efficiently investigating the cause when anomalies occur in the release process, which helps to analyze user behavior on the product side, optimize functional processes, and improve user experience.

[0011] It should be recognized that the above advantages do not need to be concentrated in one or a few specific embodiments, but can be partially distributed in different embodiments according to this disclosure. Embodiments according to this disclosure may have one or some of the above advantages, or alternatively or additionally have other advantages.

[0012] Other features and advantages of the invention will become clearer from the following detailed description of exemplary embodiments of the invention with reference to the accompanying drawings. Attached Figure Description

[0013] Figure 1 This is a schematic diagram illustrating the lifecycle of TrackingID in a publishing chain according to an embodiment of this disclosure.

[0014] Figure 2 This is an exemplary configuration diagram of a data tracking apparatus for publishing links according to an embodiment of the present disclosure.

[0015] Figure 3 This is a schematic diagram illustrating the steps of a data tracing method for publishing links according to an embodiment of the present disclosure.

[0016] Figure 4 An exemplary configuration of a computing device that can implement embodiments of the present disclosure is shown. Detailed Implementation

[0017] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of the present disclosure.

[0018] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit the scope of this disclosure or its application or use. That is, the structures and methods herein are shown in an exemplary manner to illustrate different embodiments of the structures and methods in this disclosure. However, those skilled in the art will understand that they merely illustrate exemplary ways that can be used to implement this disclosure, and not exhaustive ways. Furthermore, the drawings are not necessarily drawn to scale, and some features may be enlarged to show details of specific components.

[0019] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0020] In summary, the technical solution disclosed herein primarily addresses situations in apps with long and complex workflows where simply relying on event tracking to check log data is insufficient for quickly locating problems. Therefore, it combines existing event tracking points in the app with TrackingIDs, which are unique to each business module. This connects disparate event tracking points into a complete workflow, allowing for efficient reporting of the corresponding log data and thus efficiently pinpointing the cause of the problem. Currently, this technical solution has been integrated into the release module of apps, such as social apps like Soul. The results since deployment show that problem-solving time has been reduced by nearly half, significantly improving efficiency. Furthermore, by establishing a Standard Operating Procedure (SOP) for problem-solving, user-reported issues can be addressed by linking event tracking points in the app's data platform based on TrackingIDs, improving the traceability of user behavior and achieving the technical effects of user scenario reconstruction and assisting in problem reproduction.

[0021] Please refer to Figure 1 , Figure 1 This diagram illustrates the lifecycle of a TrackingID in a publishing chain according to an embodiment of the present disclosure. Most current social apps include content publishing functionality, requiring a distributed service in the background to execute a publishing process on content edited by the user on the publishing interface. In a non-limiting embodiment, the entire publishing process is divided into two phases: an Editor Session 110 and an Uploader Session 120. First, the Editor Session 110 begins in step S1101 by entering the publisher page, where the user may edit text, images, or videos to be published. In step S1102, a TrackingID is created specifically for the current business; this TrackingID is unique to the current business. The event parameters 1110 of the current page include an EventID in addition to the TrackingID. Next, in step S1103, the TrackingID and the event tracking point are bound together with the event software development kit (SDK) of the current page, and the event tracking point is sent. When the user clicks the publish button after editing on the publishing page, the publishing page will exit (step S1104). At this point, the publisher editing process 110 ends, and the background executes the publish upload task. Simultaneously, in step S1106, the TrackingID will continue to be passed to subsequent processes. Additionally, after the use of this business module is completed, the aforementioned corresponding TrackingID will be cleared in step S1105.

[0022] Further, in step S1201, the publish / upload process 120 begins a publishing task in response to receiving the TrackingID from the publisher editing process 110. In some embodiments, the publishing task can be published by the publisher or published directly without going through the publisher editing process 110. In other embodiments, the publish / upload process 120 supports multiple publishing tasks to be performed simultaneously, that is, the method of data tracking based on the combination of instrumentation and TrackingID supports simultaneous triggering of multiple threads or multiple scenarios. In step S1202, for tasks published by the publisher, the TrackingID transmitted by the publisher editing process 110 is captured; while for tasks published directly, one or more TrackingIDs associated with the directly published task are created. In addition to TrackingID, the event parameter 1210 in the stage process 120 also includes EventID, Resource Source, Action, and Description, etc. Next, in S1203, the event SDK sends the tracking event bound to the TrackingID. If the publication fails (step S1204), the system returns to the sending of the tracking event in step S1203 while still holding the TrackingID, and the publication operation is retried (step S1205). If the publication is successful (step S1206), the publication and upload process 120 ends, and the module is no longer in use at step S1207. The corresponding TrackingID needs to be removed.

[0023] Figure 2 This is an exemplary configuration diagram illustrating a data tracing apparatus for publishing a link according to embodiments of the present disclosure. In some embodiments, the data tracing method may be implemented by a data tracing apparatus 2000, which may include a processor 2100. The processor 2100 of the data tracing apparatus 2000 may provide various functions for tracing log data in the link. The processor 2100 may refer to various implementations of digital circuit systems, analog circuit systems, or mixed-signal (analog and digital combination) circuit systems that perform functions in a computing system. The processing circuitry may include, for example, circuitry such as integrated circuits (ICs), application-specific integrated circuits (ASICs), portions or circuitry of a single processor core, an entire processor core, a single processor, programmable hardware devices such as field-programmable gate arrays (FPGAs), and / or systems including multiple processors.

[0024] In some embodiments, the data tracing device 2000 for publishing links may further include a memory (not shown). The memory of the data tracing device 2000 may store information generated by the processor 2100, as well as programs and data for processor operation. The memory may be volatile memory and / or non-volatile memory. For example, the memory may include, but is not limited to, random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), read-only memory (ROM), and flash memory. Generally, the processor may be configured to execute instructions stored in the memory to implement the data tracing method as described above.

[0025] Specifically, such as Figure 2 As shown, in some embodiments, the data tracking device 2000 for publishing links may include a TrackingID creation module 2010, a service registration module 2020, and a data tracking module 2030. It should be understood that... Figure 2 The functional modules of the data tracking device shown are logical modules divided according to their specific functions, and are not used to limit the specific implementation method. In actual implementation, the above modules can be implemented as independent physical entities, or they can be implemented by a single entity (e.g., a processor (CPU or DSP, etc.), integrated circuit, etc.).

[0026] In some embodiments, the TrackingID creation module 2010 is configured to create a TrackingID for the current release link when entering the release process. At the start of the process, the TrackingID creation module 2010 creates a unique TrackingID on the release interface, which is the value of the moduleIdentifiesValue for the release link. In a non-limiting embodiment, a Universally Unique Identifier (UUID) is used as the unique identifier. Additionally, a module identification keyword, moduleIdentifiesKey, is used to distinguish different business scenarios, and its generation rule is, for example, EventTrackingID_moduleName, i.e., generating the module identification keyword based on the event's TrackingID and the module name, moduleName.

[0027] Furthermore, the business registration module 2020 is configured to register businesses that require TrackingID. During registration, the module name is passed in, and the registered businesses are stored in the trackModuleCache collection for later use during event tracking. In other words, the TrackingID is bound to each page in the process, ensuring that each page in the publishing chain contains a unique TrackingID relative to the business module, thus preventing issues in case of exceptions. Additionally, the business registration module 2020 is also configured to deregister after the publishing process ends. This involves unregistering business modules that no longer use TrackingID, removing them from the tracking module cache so that the corresponding TrackingID parameter will not be reported during subsequent event tracking.

[0028] Furthermore, the event tracking data module 2030 is configured to bind TrackingID to event tracking points and traverse the tracking module cache during event tracking injection to report event tracking data. Generally, when an app product launches new features, it adds event tracking points at key functional processes to monitor the log data of these processes, enabling rapid troubleshooting of the corresponding functional processes in case of anomalies. The aforementioned binding of TrackingID to event tracking points involves three important parameters: module identifier keyword, module identifier value, and tracking module cache. Based on this, in this embodiment, the event tracking data module 2030, when using the injectTrack event tracking injection method, traverses the tracking module cache, extracts all registered scenarios, and reports event tracking data using the module identifier keyword as the key and the module identifier value as the value.

[0029] In a non-limiting embodiment, an error occurs in the first scenario of multiple scenarios in the release process. At this point, it's necessary to investigate the cause of the error, i.e., to determine which steps or stages in the entire release chain caused the error. In this case, the associated tracking points in the release chain for the first scenario are filtered based on the TrackingID of the current business module. These tracking points were originally preset based on product functions and were relatively discrete in the chain; however, because they are bound to unique TrackingIDs, these tracking points are correlated with each other, thus allowing for more efficient acquisition of all tracking points associated with the first scenario. Furthermore, since different steps or stages within the release process have an execution sequence, the associated tracking points filtered based on TrackingIDs also contain execution time data. In some embodiments, the associated nodes are sorted chronologically, such as from earliest to latest, or by working backward from the release process, thereby facilitating the investigation of the error cause for the first scenario according to the product's functional logic.

[0030] Figure 3 This is a schematic diagram illustrating the steps of a data tracking method for a publishing link according to an embodiment of the present disclosure. In step S301, a TrackingID for the current publishing link is created upon entering the publishing process. In step S302, services requiring the TrackingID are registered, wherein a module name is passed during registration, and the registered services are stored in the tracking module cache. In step S303, the TrackingID is bound to a data entry point, and the tracking module cache is traversed during data entry point injection to report data entry points. In step S304, registration is canceled after the publishing process ends, wherein service modules no longer using the TrackingID are unregistered to remove the unregistered service modules from the tracking module cache. Details of steps S301 to S304 above are available for reference. Figure 1 and Figure 2 The description is similar and will not be repeated here.

[0031] Figure 4 An exemplary configuration of a computing device that can implement embodiments of the present disclosure is shown. The computing device includes one or more processors 401, an input / output interface 405 connected to the processors 401 via a bus 404, and memories 402 and 403 connected to the bus 404. In some embodiments, memory 402 may be read-only memory (ROM), and memory 403 may be random access memory (RAM).

[0032] Processor 401 can be any kind of processor and may include, but is not limited to, one or more general-purpose processors or special-purpose processors (such as dedicated processing chips). Memory 402 and 403 can be any non-transitory storage device that can realize data storage and may include, but is not limited to, disk drives, optical storage devices, solid-state storage, floppy disks, flexible disks, hard disks, magnetic tapes or any other magnetic media, compact disks or any other optical media, cache memory and / or any other storage chip or module, and / or any other medium from which a computer can read data, instructions and / or code.

[0033] Bus 404 may include, but is not limited to, Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.

[0034] In some embodiments, the input / output interface 405 is connected to the following units: an input unit 406 configured with input devices such as a keyboard and mouse for user input of operation commands; an output unit 407 that outputs images of the processing operation screen and processing results to a display device; a storage unit 408 including a hard disk drive for storing programs and various data; and a communication unit 409 including a local area network (LAN) adapter and performing communication processing via a network such as the Internet. Additionally, a drive 410 is connected, which reads data from and writes data to the removable storage medium 411.

[0035] The various aspects, implementations, specific implementations, or features of the foregoing embodiments may be used individually or in any combination. The various aspects of the foregoing embodiments may be implemented by software, hardware, or a combination of hardware and software.

[0036] For example, the aforementioned embodiments can be embodied in computer-readable code on a computer-readable medium. A computer-readable medium is any data storage device capable of storing data that can subsequently be read by a computer system. Examples of computer-readable media include read-only memory, random access memory, CD-ROM, DVD, magnetic tape, hard disk drive, solid-state drive, and optical data storage devices. Computer-readable media can also be distributed across network-coupled computer systems, allowing the computer-readable code to be stored and executed in a distributed manner.

[0037] For example, the aforementioned implementation scheme can take the form of hardware circuits. Hardware circuits can include any combination of combinational logic circuits, clock storage devices (such as floppy disks, flip-flops, latches, etc.), finite state machines, memories such as static random access memory or embedded dynamic random access memory, custom-designed circuits, programmable logic arrays, etc.

[0038] In one implementation, the hardware circuit according to this disclosure can be implemented by coding and designing one or more integrated circuits or by combining discrete circuits using a hardware description language (HDL) such as Verilog or VHDL.

[0039] The terminology used herein is for the purpose of describing particular exemplary embodiments only and is not intended to limit the scope of this disclosure. Unless the context explicitly indicates otherwise, the singular forms “a” and “the” as used herein are intended to include the plural forms as well. It should also be understood that the word “comprising”, as used herein, indicates the presence of the indicated feature, integral, step, operation, unit, and / or component, but does not preclude the presence or addition of one or more other features, integrals, steps, operations, units, and / or components, and / or combinations thereof. Furthermore, in the description of this disclosure, the terms “first,” “second,” etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance or order. Additionally, in the description of this disclosure, unless otherwise stated, “a plurality of” means two or more.

[0040] In this specification, references to "embodiment" or similar expressions mean that a specific feature, structure, or characteristic described in connection with that embodiment is included in at least one specific embodiment of this disclosure. Therefore, the use of phrases such as "in an embodiment of this disclosure" and similar expressions in this specification does not necessarily refer to the same embodiment.

[0041] Those skilled in the art will understand that this disclosure can be implemented in various forms, such as a completely hardware embodiment, a completely software embodiment (including firmware, resident software, microprogram code, etc.), or a software and hardware embodiment, hereinafter referred to as a "circuit," "module," "unit," or "system." Furthermore, this disclosure can also be implemented in any tangible media as a computer program product having computer-usable program code stored thereon.

[0042] The description herein is based on flowcharts and / or block diagrams of systems, apparatuses, methods, and computer program products according to specific embodiments of this disclosure. It will be understood that each block in each flowchart and / or block diagram, and any combination of blocks in the flowcharts and / or block diagrams, can be implemented using computer program instructions. These computer program instructions are executable by a machine comprising a processor of a general-purpose computer or a special-purpose computer, or other programmable data processing means, and are processed by the computer or other programmable data processing means to perform the functions or operations described in the flowcharts and / or block diagrams.

[0043] The accompanying drawings illustrate flowcharts and block diagrams showing the architecture, functionality, and operation of systems, apparatuses, methods, and computer program products achievable according to various embodiments of the present disclosure. Thus, each block in a flowchart or block diagram may represent a module, segment, or portion of program code, including one or more executable instructions to implement a specified logical function. It should also be noted that in some other embodiments, the functions described in a block may not be performed in the order shown in the figures. For example, two blocks illustrated as connected may actually be executed simultaneously, or in some cases, depending on the functions involved, they may be executed in the reverse order shown in the figures. Furthermore, it should be noted that each block in a block diagram and / or flowchart, and combinations of blocks in block diagrams and / or flowcharts, may be implemented by a system based on dedicated hardware, or by a combination of dedicated hardware and computer instructions, to perform specific functions or operations.

[0044] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical applications, or technical improvements to market technology of the embodiments, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A data tracing method for publishing links, comprising: When entering the content publishing process of the application, a tracking number TrackingID is created for the current publishing chain, where TrackingID is the value of the module identifier value of the publishing chain; Register services that require TrackingID, passing the module name during registration and storing the registered services in the tracking module cache; Bind TrackingID to event tracking points, and traverse the tracking module cache during event tracking point injection to extract the scenarios of registered businesses, thereby reporting event tracking data for businesses using TrackingID; as well as After the deployment process is complete, registration is cancelled. Specifically, business modules that no longer use TrackingID are unregistered to remove them from the tracking module cache. Specifically, when an error occurs in the first scenario, the associated tracking points in the release process are filtered based on TrackingID, and these associated tracking points are sorted according to the time sequence in the release process. In the scenario where module identifier keywords are used to distinguish business operations, the generation rules for module identifier keywords are as follows: the module identifier keywords are generated based on TrackingID and module name, and the module identifier keywords are used as keywords for tracking parameters and the module identifier values ​​are used as values ​​for tracking parameters in the data reporting.

2. The data tracking method according to claim 1, wherein: TrackingID uses a unique identifier, UUID, as its identifier.

3. The data tracking method according to claim 1 or 2, wherein: TrackingID-based data tracing supports simultaneous triggering across multiple scenarios or multiple threads.

4. A data tracing device for publishing links, operating on a user terminal, comprising: The TrackingID creation module is configured to create the TrackingID for the current publishing chain when the application's content publishing flow begins, where TrackingID is the value of the module identifier value for the publishing chain; The business registration module is configured as follows: Register services that require TrackingID, passing the module name during registration, and store the registered services in the tracking module cache. After the release process is completed, the registration is cancelled, including unregistering business modules that no longer use TrackingID, so as to remove the unregistered business modules from the tracking module cache; as well as The event tracking data module is configured to bind TrackingIDs to event tracking points and, during event tracking injection, iterates through the tracking module cache to extract registered business scenarios, thereby reporting event tracking data for businesses using TrackingIDs. The tracking data module is further configured to, when an error occurs in the first scenario, filter out the associated tracking points in the release chain of the first scenario based on TrackingID, and sort the associated tracking points according to the time sequence of the release process. The business registration module is also configured to use module identifier keywords to distinguish business scenarios. The generation rule for these module identifier keywords is based on TrackingID and module name. The tracking data module is also configured to use the module identifier keyword as the keyword of the tracking parameter and the module identifier value as the value of the tracking parameter in the tracking data reporting.

5. A computer-readable storage medium having a computer program stored thereon, the computer program causing the processor to perform the data tracking method as described in any one of claims 1 to 3 when executed by a processor.

6. A computer program product comprising computer program instructions that, when executed by a processor, implement the data tracking method as described in any one of claims 1 to 3.

Citation Information

Patent Citations

  • Fault positioning system, method and device, electronic equipment and computer readable medium

    CN112491611A

  • Request link tracking method and service request processing method

    CN112910945A