Edge Delta Base64 Decode

Decode logs using Base64.

Overview

The Base64 Decode Node decodes encoded body field contents using Base64. There are no configurable parameters.

Example Configuration

nodes:
- name: decode_base64
  type: base64_decode_test

Consider the following log:

eyJ0aW1lc3RhbXAiOiAiMjAyMy0wNC0xNVQxMjozNDo1Ni43ODlaIiwgImxldmVsIjogIklORk8iLCAic2VydmljZSI6ICJTZXJ2aWNlIEEiLCAibWVzc2FnZSI6ICJFcnJvciBlbmNvdW50ZXJlZCB3aXRoIGRldGFpbGVkIGRlc2NyaXB0aW9uIG9mIHRoZSBpc3N1ZS4ifQ==

It is a base64 encoded version of this log:

{"timestamp": "2023-04-15T12:34:56.789Z", "level": "INFO", "service": "Service A", "message": "Error encountered with detailed description of the issue."}%      

After processing the encoded log through a pipeline that includes a base64_decode node, the decoded log is output:

Tip: You can use this condition in a Route node to identify base64 encoded logs that need to be routed to a base64_decode node:

nodes:
- name: route
  type: route
  paths:
  - path: decode_base64
    condition: regex_match(item["body"], "^[A-Za-z0-9+/]+(?:={2}|={1})?$")

links:
- from: route
  path: decode_base64
  to: base64_decode_test

Required Parameters

name

A descriptive name for the node. This is the name that will appear in Visual Pipelines and you can reference this node in the yaml using the name. It must be unique across all nodes. It is a yaml list element so it begins with a - and a space followed by the string. It is a required parameter for all nodes.

nodes:
  - name: <node name>
    type: <node type>

type: base64_decode

The type parameter specifies the type of node being configured. It is specified as a string from a closed list of node types. It is a required parameter.

nodes:
  - name: <node name>
    type: <node type>