Record extraction is used as an editing callback to extract specific records and then assemble them into a new record.
The following figure provides an overview of record extraction.
Figure 10-13 Overview of record extraction
![[Figure]](figure/zs101200.gif)
Record extraction involves evaluating records to determine the records that satisfy conditions specified in the record extraction definition in the adaptor configuration definition file. The target records are extracted based on the specified criteria, such as record format, field values in records, and record input order, and the resulting records are joined to generate a new record, which is then output. The record that is generated by joining other records is called a retrieved record. For details about record extraction processing, see 10.5.2 Flow of data processing during record extraction.
- Format of input and output data for record extraction
- The format of the input and output data for record extraction is the common record.
- Timing of record extraction
- Record extraction is executed as an editing callback in the input adaptor. Record extraction is performed after data input or format conversion by the HTTP packet input connector.
- Note that an output adaptor cannot use record extraction.
- For the timing for performing the editing callback, see 2.5.2 Evaluating the data editing methods.
- Example of record extraction
- If you combine record extraction and the HTTP packet input connector described in 10.3 HTTP packet input, you can measure the elapsed time from HTTP packet request to response. In this case, the record extraction function extracts records with the request and response packets that have the same sending IP address and port number and the same receiving IP address and port number, then joins the extracted records. You can determine the time from request to response by comparing the time values in the request and response packets in the joined record.
- You can also perform record extraction on joined records to extract only the records with a specified URL, then join the records whose URL changes in a specified order. This would enable you to monitor a user's site change status from the URL information in the HTTP packets.