- 3 minutes to read

Flat File CSV Plugin

Easily extract unique values from delimited (CSV-style) string-based messages using the Nodinite Flat File CSV Search Field Expression Plugin. This page guides you through input, configuration, and result patterns with clear, actionable examples.

✅ Quickly extract single or multiple unique values from CSV or delimited messages
✅ Flexible configuration for delimiter, header rows, fields, and more
✅ Designed for small payloads and high performance in log event processing


What is the Flat File CSV Plugin?

The Nodinite Flat File CSV plugin lets you extract one or more unique values from the payload (Body) of Log Events. Use it to process messages where data is separated by a specific character (such as ; or ,). This plugin is ideal for:

  • String-based content with one or more lines
  • Data records separated by a delimiter (e.g., ;, ,)
  • Each line is a record, each record has fields separated by the delimiter
  • Optionally skipping commented lines or header rows

Use this plugin for extracting values from messages with a small payload.


How It Works: Input → Configuration → Result

Each example below clearly separates the Input (message body), the Configuration (plugin settings), and the Result (output values).


Quick Example

Input:

ORD;101;ACME;456;Company Name ACME ;...
ORD;102;Northwind;789;Company Name Northwind;...

Configuration:

Number of header rows = 0
Delimiter = ;
Fields = 1
Ignore missing fields = checked
Quote = "
Comment = #

Result:

101
102

Examples

Example 1: Extract Order IDs from Semicolon-Delimited File

Input:

ORD;101;ACME;456;Company Name ACME ;Dieselgate valley 1;123 45;Flameburg;
ORD;102;Northwind;789;Company Name Northwind;Radiator Spring 420;543 21;Apocalypsenburg;

Configuration:

Delimiter = ;
Fields = 1

Result:

101
102

Flat File Example #2
Example: Extract multiple order IDs from a semicolon-separated flat file.


Features

  • Extract single or multiple unique values from delimited strings (Payload/Body, Context, or previous Formula result)
  • Configure delimiter, header rows, fields, quote, and comment characters
  • Ignore missing fields or skip header/commented lines as needed
  • Designed for small payloads for optimal performance

Note: This plugin loads the entire message into RAM. Only use it for small payloads.


How to Use

  1. Select the 'Flat File CSV' expression type plugin when configuring a Search Field.
  2. Enter the configuration for the Flat File CSV plugin:
    • Number of header rows
    • Delimiter
    • Fields (comma-separated list of zero-based field indexes)
    • Ignore missing fields
    • Quote character
    • Comment character
  3. Finalize the configuration and select the Message Types to apply the expression.
  4. Optionally, perform a re-index operation (Add or manage Search Field).

Extracted values are stored for as long as the Message Type retention is configured.


Test Expression

You can test your configuration in the 'Test Expression' tab when setting up a Search Field:

  1. Enter a sample payload in the 'Message Body' tab
  2. Select the 'Flat File CSV' plugin
  3. Enter your configuration
  4. Review the output and adjust as needed

SelectPlugin
Select the Flat File CSV plugin in the configuration UI.

If the expression is valid, you will see the unique values and total count:

Test Expression
Valid expression with state output, unique values, and total count.

If the expression is invalid or does not match any data, you will see:

No Result
Example of an invalid expression yielding no result.



Mermaid Diagram: Search Field Expression Flow

This diagram shows how the Flat File CSV plugin fits into the overall search field expression process.

graph LR subgraph "Search Fields" sf(fal:fa-magnifying-glass-plus Order Number) end subgraph "Search Field Expressions" sfe(fal:fa-flask Flat File CSV plugin) end subgraph "MessageTypes" mt1(fal:fa-file Orders) end sf --- sfe sfe ---|Expression configuration| mt1

Next Step