- 3 minutes to read

Formula

You hide it, we find it! Learn how to extract and modify returned values from any data structure

The formula plugin helps you extract any value from any given message by applying one or more (nested) functions. The Nodinite formula plugin, works much like formulas in Microsoft Excel (with the functions as listed in the reference table below)

The Formula plugin supports many powerful functions, (Multilevel Nested Functions) which is the key feature of this search field expressions plugin. However, it is too early to consider it right away. We will demonstrate this as we move further with the examples (Test Expressions).


Where does the extracted values come from?

The extracted values comes from the Body and/or named Context property that was logged by the Nodinite Logging Agents or from custom logged Log Events.

The documentation for the Formula plugin uses the notion of Content meaning either the actual payload (Body) or a named Context property.

Content

The operations execute on data that comes any of the following

  • body

    • Flatfile and CSV structures
    • JSON
    • XML
  • context

    • Key/Value
  • Result from previous Formula operation

The Formula plugin, has different types of functions for example math, string, logical, base64 and these can all be nested like:

  • Function(Content)
  • Function(Expression,Content)
  • Function(1st Expression, 2nd Expression,Content)
  • Function(1st Expression,2nd Exp..,3rd...,Content)

Base64:

Function Description
base64decode(Content) Decode the provided data into a human-readable format
base64encode(Content) Encode text to base64

String:

Function Description
concat(param1,param2) Concat any two given text parameters
replace(1st Expression,2nd Expression,Content) Used to replace old text/letter with a new text.
substring(1st Expression,2nd Expression,Content) Extract specific text from any given statement/text
tolowercase(Content) Convert any given text to LowerCase
touppercase(Content) Convert any given text to UpperCase

Extract:

Function Description
[csv(1st Expression,2nd Expression,...,Content)][CSV] Extract data from any valid CSV file
jsonpath(Expression,Content) Used to extract value from JSON body structure
regex(Expression,Content) Use Regular Expression as it is implemented everywhere to extract values
xpath(Expression,Content) Retrieve values from XML body

Logical:

Function Description
equal(Expression,Content) Check the equality of two given texts
endswith(Expression,Content) Check if text ends with certain word/letter
notequal(Expression,Content) Check the inequality of two given texts
startswith(Expression,Content) Check if text starts with certain word/letter(s)

Math Functions :

Function Description
count(Content) Return the count of the extracted values, based on the result of any previous operation
sum(Content) Return the sum of the extracted values, based on the result of any previous operation

Next Step

How to Add or manage Search Fields
How to Add or manage Log Views

Expression Type Plugins are used in Search Fields.
What are Search Fields?
What are Search Field Expressions?
What are Message Types?
What are Log Views?

[csv(1st Expression,2nd Expression,...,Content)][CSV]:https://bitbucket.org/imdevelopers/products-documentation/src/v2/Integration%20Manager/Documentation/Administration/1.%20Log%20Management/2.%20Search%20Fields/Features/Search%20Field%20Expressions/Formula/Extract/csv.md