CN109905253B - Log information acquisition method and device - Google Patents
Log information acquisition method and device Download PDFInfo
- Publication number
- CN109905253B CN109905253B CN201711285254.2A CN201711285254A CN109905253B CN 109905253 B CN109905253 B CN 109905253B CN 201711285254 A CN201711285254 A CN 201711285254A CN 109905253 B CN109905253 B CN 109905253B
- Authority
- CN
- China
- Prior art keywords
- log
- information
- file
- configuration information
- application program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
The invention provides a method and a device for acquiring log information, which can be used for determining log acquisition configuration information in a configuration file in a user-defined manner, reading the log acquisition configuration information through a log generation application program, acquiring the log information according to the log acquisition configuration information and generating a log file. When the log information is collected, the log generation application program is not required to be adjusted, and only corresponding information is required to be adjusted in the file containing the log collection configuration information, so that the custom collection and output of the log information are realized, the log file types are unified, and the problems of log information and log file format diversity are solved.
Description
Technical Field
The invention relates to the field of computers, in particular to a log information acquisition method and device.
Background
A log collection system is a conventional information system, and is generally used to record the result of an operation or the cause of a failure, etc. For a middle-low performance embedded system, single-step debugging is not well supported in the development process, and the debugging of the embedded system is mostly completed by means of collected log information.
In the process of implementing the invention, the inventor finds that at least the following problems exist in the prior art:
1) almost all development systems need to design a corresponding log system for recording the running state of the system, so that the storage formats of log files and the log communication protocol modes of remote storage are also various, and the log acquisition systems have inconsistent styles and poor universality and need to be designed repeatedly;
2) in a tax-control invoicing system platform adopting an embedded server version, a low-medium performance embedded system is low in running speed, and the efficiency of a tax-control invoicing server can be influenced in the process of collecting log information.
Disclosure of Invention
In view of the above, one of the technical problems solved by the embodiments of the present invention is to provide a method and an apparatus for collecting log information, so as to overcome the defects of inconsistent style and poor universality of a log collection system in the prior art, and achieve the effects of unifying log file types, reducing log information format diversity, and improving log information output flexibility.
The embodiment of the invention provides a log information acquisition method, which comprises the following steps:
determining log acquisition configuration information in a configuration file;
reading the log acquisition configuration information through a log generation application program;
and the log generation application program acquires log information and generates a log file according to the log acquisition configuration information.
Optionally, in a specific embodiment of the present invention, the log collection configuration information includes a log output level threshold range, and the step of collecting the log information and generating the log file by the log generation application program according to the log collection configuration information includes:
the log generation application program judges whether the level of the log information is within the threshold range of the log output level;
and when the level of the log information is within the log output level threshold range, the log generation application program collects the log information and generates a log file.
Optionally, in a specific embodiment of the present invention, the log information is at least one of real-time log information and log information within a preset time duration.
Optionally, in a specific embodiment of the present invention, the log collection configuration information includes invoice information, and the log file includes the invoice information and the log information.
Optionally, in a specific embodiment of the present invention, the log collection configuration information includes a log content output parameter, and the log content output parameter is used to determine at least one of an output item and a format of the log information in the log file.
Optionally, in a specific embodiment of the present invention, the log collection configuration information includes a log file generation parameter, and the log file generation parameter is used to determine at least one of a storage address, a number threshold range, a size threshold range, and a naming rule of the log file.
Optionally, in a specific embodiment of the present invention, the log generation application is packaged as an application programming interface.
The embodiment of the invention provides a log information acquisition device, which comprises:
the configuration module is used for determining log acquisition configuration information in the configuration file;
the reading module is used for reading the log acquisition configuration information through a log generation application program;
and the output module is used for acquiring the log information and generating a log file according to the log acquisition configuration information through the log generation application program.
Optionally, in a specific embodiment of the present invention, the log collecting configuration information includes a log output level threshold range, and the output module includes:
the judging unit is used for judging whether the level of the log information is in the log output level threshold range or not through the log generation application program;
and the acquisition unit is used for acquiring the log information and generating a log file through the log generation application program when the level of the log information is within the threshold range of the log output level.
Optionally, in a specific embodiment of the present invention, the log information is at least one of real-time log information and log information within a preset time duration.
According to the technical scheme, the log information acquisition method and the log information acquisition device provided by the embodiment of the invention can be used for determining the log acquisition configuration information in the configuration file in a user-defined manner, reading the log acquisition configuration information through the log generation application program, acquiring the log information according to the log acquisition configuration information and generating the log file. When the log information is collected, the log generation application program is not required to be adjusted, and only corresponding information is required to be adjusted in the file containing the log collection configuration information, so that the custom collection and output of the log information are realized, the log file types are unified, and the problems of log information and log file format diversity are solved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments described in the embodiments of the present invention, and it is also possible for a person skilled in the art to obtain other drawings based on the drawings.
FIG. 1 is a schematic flow chart of a log information collection method according to an embodiment of the present invention;
FIG. 2 is a schematic flow chart of a log information collection method according to another embodiment of the present invention;
fig. 3 is a block diagram of a log information collection apparatus according to an embodiment of the present invention;
fig. 4 is a block diagram of a log information collection device according to another embodiment of the present invention.
Detailed Description
In order to make those skilled in the art better understand the technical solutions in the embodiments of the present invention, the technical solutions in the embodiments of the present invention will be described clearly and completely with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all embodiments. All other embodiments obtained by a person skilled in the art based on the embodiments of the present invention shall fall within the scope of the protection of the embodiments of the present invention.
Fig. 1 is a schematic flow chart of a log information collection method according to an embodiment of the present invention, and as shown in fig. 1, the log information collection method includes:
step S101, determining log collection configuration information in a configuration file.
In this embodiment, the log collection configuration information may be stored in a separate log collection configuration file, or may be stored in a file containing other information. For convenience of program processing, a file name containing log collection configuration information may be agreed in advance, for example, the file name is config.ini; the content and format of the log collection configuration information may also be agreed in advance, for example, the log collection configuration information includes a segment name, a comment and a configuration item, where the segment name is enclosed by [ ], the content of the comment begins with a semicolon (;), and the configuration item is assigned with an equal sign (═ for).
In this embodiment, the log collection configuration information is used to determine at least one of a collection and output rule of the log information and a generation rule of the log file. The collection rule of the log information includes but is not limited to at least one of a collection item of the log information, an output item of the log information in the log file, and an output format of the log information in the log file. The generation format of the log information and/or the log file can be controlled by determining the log collection configuration information, so that the problem of diversity of the log information and/or the log file is solved.
Step S102, reading log collection configuration information through a log generation application program.
In this embodiment, the software language type of the log generation application program is not limited, and the software language type may be selected according to the operating system platform.
In this embodiment, the log generation application program may first obtain a full path of a file containing log acquisition configuration information, and open the file; and acquiring the value of the configuration item required by the log generation application program for acquiring and outputting the log information from the log acquisition configuration information according to the segment name and the configuration item name in the file.
Step S103, the log generation application program collects log information and generates a log file according to the log collection configuration information.
In this embodiment, the log information output by the log generation application program to the log file may be all or a part of the collected log information. For example, the log generation application may collect the matched log information according to the values of the collection-related configuration items in the log collection configuration information; and then outputting all or part of the collected log information to the generated log file according to the value of the output related configuration item in the collection configuration information.
The embodiment of the invention can determine the log acquisition configuration information in the configuration file in a user-defined mode, read the log acquisition configuration information through the log generation application program, acquire the log information according to the log acquisition configuration information and generate the log file. Therefore, the embodiment of the invention does not need to adjust the log generation application program when collecting the log information, and only needs to adjust the corresponding information in the file containing the log collection configuration information to realize the custom collection and output of the log information.
Fig. 2 is a schematic diagram of a log information collection process according to another embodiment of the present invention, and as shown in fig. 2, a log information collection method includes:
step S201, determining log collection configuration information in the configuration file.
In this embodiment, the log collection configuration information includes a log content output parameter, and the log content output parameter is used to determine at least one of an output item and a format of the log information in the log file. Namely, the output item and/or format of the log information in the log file can be set by self-defining by adjusting the output parameter of the log content.
Specifically, the output format of multiple items of content (e.g., file name, function name, code line number) contained in the log information in the log file may be preset in the log collection configuration information; setting configuration items whether to output or not for the contents respectively; the assignment of value (0 or 1) to the configuration item controls which contents of the log information are output to the log file.
In this embodiment, the log collection configuration information includes a log file generation parameter, and the log file generation parameter is used to determine at least one of a storage address, a number threshold range, a size threshold range, and a naming rule of the log file. Namely, the storage address, the number range, the size range and the naming rule of the log file can be set by self-defining by adjusting the log file generation parameters. The method is convenient for unifying the log file types and reducing the problem of log format diversity.
Step S202, the log collection configuration information is read through the log generation application program.
In this embodiment, the log generation application program is packaged into an application programming interface for other programs that need to perform similar operations to call, which can save embedded system resources, thereby improving the performance of the server.
In step S203a, the log generation application determines whether the level of the log information is within the log output level threshold range.
In this embodiment, the log collection configuration information includes a log output level threshold range, which is used to determine a log information range collected and output to the log file. By adjusting the log output level threshold range, only log information with higher importance can be collected and output, and system auditing, tracking and error troubleshooting are facilitated.
Specifically, the configuration item of the log output level can be preset in the log collection configuration information, the configuration item is assigned to determine the threshold range of the log output level, and only the log information meeting the threshold range of the log output level is collected and output to the log file. For example, if the log level includes seven levels and the log output level threshold range is greater than 5, only log information with a log level not lower than 5 will be collected and output to the log file.
In this embodiment, the log information is at least one of real-time log information and log information within a preset time duration.
Specifically, a configuration item of a log information acquisition time range can be preset in the log acquisition configuration information, and the acquired log information is determined to be real-time log information and/or log information within a preset time length by assigning values to the configuration item of the log information time range. For example, for a tax-control billing server with medium-low performance, the collection and output of log information can be stopped in billing time, and the collection and output of the log information generated in the billing time can be supplemented in non-billing time.
In step S203b, when the level of the log information is within the threshold range of the log output level, the log generation application collects the log information and generates a log file.
In this embodiment, when collecting log information in the tax field, in order to facilitate tracking problems occurring in the system, the log collection configuration information may further include invoice information, and the generated log file includes the invoice information and the log information at the same time.
Specifically, the invoice information includes, but is not limited to, at least one of an invoice number and an invoice amount. For example, the configuration items related to the invoice information are set in the log collection configuration information, and the log generation application program can obtain the invoice number and/or the invoice amount and output the invoice number and/or the invoice amount to the log file by assigning values to the configuration items related to the invoice information in the log collection configuration information.
It can be seen from the above embodiments of the present invention that, by determining the log output level threshold range, the log information acquisition time range, the invoice information acquisition range, the log content output parameter, and the log file generation parameter in the log acquisition configuration information in the configuration file, the present invention can custom set the log information range and/or format output to the log file. And the log generation application program is packaged into an application programming interface for other programs needing similar operation to call, so that the resources of the embedded system can be saved, and the performance of the server can be improved.
Fig. 3 is a block diagram of a log information collection device according to an embodiment of the present invention, and as shown in fig. 3, a log information collection device includes:
a configuration module 301, configured to determine log collection configuration information in a configuration file;
a reading module 302, configured to read log collection configuration information through a log generation application;
and the output module 303 is configured to acquire configuration information according to the log through the log generation application program, acquire log information, and generate a log file.
The device can execute the method provided by the embodiment of the application, and has the corresponding functional modules and beneficial effects of the execution method. For technical details that are not described in detail in this embodiment, reference may be made to the methods provided in the embodiments of the present application.
It should be noted that the log information collecting device is not limited to the specific structure shown in fig. 3, and under the teaching of this embodiment, a person skilled in the art may also use other alternatives, which are not described in detail again.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and the parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Fig. 4 is a block diagram of a log information collection device according to an embodiment of the present invention, and as shown in fig. 4, a log information collection device includes:
a configuration module 401, configured to determine log collection configuration information in a configuration file;
a reading module 402, configured to read log collection configuration information through a log generation application;
and an output module 403, configured to collect configuration information according to the log through the log generation application, collect log information, and generate a log file.
In this embodiment, the log collection configuration information includes a log output level threshold range, and the output module includes:
a judging unit 403a for judging whether the level of the log information is within the log output level threshold range by the log generating application;
and the acquisition unit 403b is used for acquiring the log information and generating a log file through the log generation application program when the level of the log information is within the log output level threshold range.
In this embodiment, the log information is at least one of real-time log information and log information within a preset time duration.
In this embodiment, the log collection configuration information includes invoice information, and the log file includes invoice information and log information.
In this embodiment, the log collection configuration information includes a log content output parameter, and the log content output parameter is used to determine at least one of an output item and a format of the log information in the log file.
In this embodiment, the log collection configuration information includes a log file generation parameter, and the log file generation parameter is used to determine at least one of a storage address, a number threshold range, a size threshold range, and a naming rule of the log file.
In this embodiment, the log generation application is packaged as an application programming interface.
The device can execute the method provided by the embodiment of the application, and has the corresponding functional modules and beneficial effects of the execution method. For technical details that are not described in detail in this embodiment, reference may be made to the methods provided in the embodiments of the present application.
It should be noted that the log information collecting device is not limited to the specific structure shown in fig. 4, and under the teaching of this embodiment, a person skilled in the art may also use other alternatives, which are not described in detail again.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and the parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus (device), or computer program product. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
Embodiments of the present invention are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (devices) and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
Finally, it should be noted that: the above embodiments are only used for illustrating the technical solutions of the embodiments of the present application, and are not limited thereto; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.
Claims (7)
1. A log information collection method is characterized by comprising the following steps:
determining log acquisition configuration information in a configuration file;
reading the log collection configuration information through a log generation application program, and appointing a file name containing the log collection configuration information as Config. ini and the content and format of the log collection configuration information in advance, wherein the log collection configuration information comprises a segment name, an annotation and a configuration item, the segment name is enclosed by [ ], the annotated content starts with a semicolon (;), and the configuration item is assigned with an equal sign (═ to);
the log generation application program acquires log information and generates a log file according to the log acquisition configuration information, the log acquisition configuration information comprises invoice information or a log output level threshold range, important log information can be acquired and output only by adjusting the log output level threshold range, and the log generation application program acquires the log information and generates the log file according to the log acquisition configuration information, wherein the log generation application program comprises the following steps of:
the log generation application program judges whether the level of the log information is within the threshold range of the log output level;
and when the level of the log information is greater than the log output level threshold range, the log generation application program collects the log information and generates a log file.
2. The method according to claim 1, wherein the log information is at least one of real-time log information and log information within a preset time period.
3. The log information collection method as claimed in claim 1, wherein the log collection configuration information includes a log content output parameter, and the log content output parameter is used to determine at least one of an output item and a format of the log information in the log file.
4. The method according to claim 1, wherein the log collection configuration information includes log file generation parameters, and the log file generation parameters are used to determine at least one of a storage address, a number threshold range, a size threshold range, and a naming rule of the log file.
5. The method of claim 1, wherein the log generation application is packaged as an application programming interface.
6. An apparatus for collecting log information, the apparatus comprising:
the log collection configuration information comprises segment names, comments and configuration items, wherein the segment names are included by [ ], the comments begin with a semicolon (;) content, and the configuration items are assigned by equal numbers (═ for);
the reading module is used for reading the log acquisition configuration information through a log generation application program;
an output module, configured to collect log information and generate a log file according to the log collection configuration information through the log generation application program, where the log collection configuration information includes invoice information or a log output level threshold range, and only important log information can be collected and output by adjusting the log output level threshold range, and the output module includes:
the judging unit is used for judging whether the level of the log information is in the log output level threshold range or not through the log generation application program;
and the acquisition unit is used for acquiring the log information and generating a log file through the log generation application program when the level of the log information is within the log output level threshold range.
7. The apparatus according to claim 6, wherein the log information is at least one of real-time log information and log information within a preset time period.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711285254.2A CN109905253B (en) | 2017-12-07 | 2017-12-07 | Log information acquisition method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711285254.2A CN109905253B (en) | 2017-12-07 | 2017-12-07 | Log information acquisition method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109905253A CN109905253A (en) | 2019-06-18 |
CN109905253B true CN109905253B (en) | 2022-05-17 |
Family
ID=66939167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711285254.2A Active CN109905253B (en) | 2017-12-07 | 2017-12-07 | Log information acquisition method and device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109905253B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112783743B (en) * | 2021-01-26 | 2023-04-28 | 深圳融安网络科技有限公司 | Log generation method, terminal equipment and storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101087210A (en) * | 2007-05-22 | 2007-12-12 | 网御神州科技(北京)有限公司 | High-performance Syslog processing and storage method |
CN103577443A (en) * | 2012-07-30 | 2014-02-12 | 中国银联股份有限公司 | Log processing system |
CN103944761A (en) * | 2014-04-18 | 2014-07-23 | 深圳芯智汇科技有限公司 | Android log information filter method and system |
CN105553769A (en) * | 2015-12-15 | 2016-05-04 | 北京奇虎科技有限公司 | Data collecting-analyzing system and method |
CN106201848A (en) * | 2016-06-30 | 2016-12-07 | 北京奇虎科技有限公司 | The log processing method of a kind of real-time calculating platform and device |
CN106254109A (en) * | 2016-08-02 | 2016-12-21 | 深圳中兴网信科技有限公司 | Log collection method, Log Collect System and server |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103412893A (en) * | 2013-07-24 | 2013-11-27 | 广东电子工业研究院有限公司 | Collecting system and collecting method of logs |
-
2017
- 2017-12-07 CN CN201711285254.2A patent/CN109905253B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101087210A (en) * | 2007-05-22 | 2007-12-12 | 网御神州科技(北京)有限公司 | High-performance Syslog processing and storage method |
CN103577443A (en) * | 2012-07-30 | 2014-02-12 | 中国银联股份有限公司 | Log processing system |
CN103944761A (en) * | 2014-04-18 | 2014-07-23 | 深圳芯智汇科技有限公司 | Android log information filter method and system |
CN105553769A (en) * | 2015-12-15 | 2016-05-04 | 北京奇虎科技有限公司 | Data collecting-analyzing system and method |
CN106201848A (en) * | 2016-06-30 | 2016-12-07 | 北京奇虎科技有限公司 | The log processing method of a kind of real-time calculating platform and device |
CN106254109A (en) * | 2016-08-02 | 2016-12-21 | 深圳中兴网信科技有限公司 | Log collection method, Log Collect System and server |
Also Published As
Publication number | Publication date |
---|---|
CN109905253A (en) | 2019-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108319547B (en) | Test case generation method, device and system | |
CN104541247B (en) | System and method for adjusting cloud computing system | |
US9811443B2 (en) | Dynamic trace level control | |
CA2830237C (en) | High-level language for specifying configurations of cloud-based deployments | |
CN109448100B (en) | Three-dimensional model format conversion method, system, computer device and storage medium | |
CN104426713A (en) | Method and device for monitoring network site access effect data | |
CN107844518B (en) | Method for evaluating download quantity of specified APP, data server, packaging platform and system | |
US10701213B2 (en) | Dynamically generating an aggregation routine | |
CN108304192B (en) | Method and system for automatically generating CAN interaction layer code | |
CN109086090A (en) | A kind of method, apparatus, equipment and the storage medium of server B MC configuration | |
CN114398293A (en) | Interface test case generation method, electronic device and storage medium | |
CN109905253B (en) | Log information acquisition method and device | |
CN111190814A (en) | Software test case generation method and device, storage medium and terminal | |
CN109643240A (en) | Automatically generate the industrial control unit (ICU) and method of user interface | |
CN107704362A (en) | A kind of method and device based on Ambari monitoring big data components | |
CN112187509A (en) | Multi-architecture cloud platform execution log management method, system, terminal and storage medium | |
CN110188083B (en) | Interface information mining method and device | |
CN109933506A (en) | Server big data method of evaluating performance, system and electronic equipment and storage medium | |
CN114548448A (en) | Operation and maintenance service management method, device and system | |
CN113672222A (en) | Application program interface management device and construction method thereof | |
Lochmann et al. | Reproducible load tests for android systems with trace-based benchmarks | |
CN111858365A (en) | Method and equipment for testing performance of Flink K-Means | |
CN104363470B (en) | One kind stream service test method and system | |
CN104252409A (en) | Method and system for obtaining WebApp executing process | |
CN113450063B (en) | Task information processing method and device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |