Copilot Pipeline Editor
One of Copilot's most powerful capabilities is helping you transform data from one format to another, or extract structured data from unstructured logs.
Now that we have our Palo Alto traffic logs flowing through our system, let's explore one of the most common and valuable uses of Cribl Copilot: transforming raw logs into more useful formats. In this example, we'll see how Copilot can help convert these logs into the Open Cybersecurity Schema Framework (OCSF) format.
Scenario: Palo Alto Traffic Logs to OCSF
Imagine you're receiving raw Palo Alto Traffic logs and need to convert them to the standardized OCSF format for better interoperability with your security tools. Without Copilot Pipeline Editor, this would involve creating a complex Pipeline with multiple Functions and understanding both formats in detail.
-
Navigate to the QuickConnect interface
-
Go ahead and click the passthru connection we created in the previous section
-
In the modal click
Build with Copilot Editor
-
In the Copilot Pipeline Editor interface:
-
select
Capture live events from source
-
select
Convert my input events to a specific target schema
-
select the recommended schema
OCSF@1.4-network-activity-4001
-
A pipeline plan is generated which you can edit and control.
- You can see the source and target schema
-
Since everything looks good to you, click
Confirm
-
You can now see the pipeline that has been created and the output of the pipeline
- You can see the functions that will be used to transform the data
- You can see the preview of the data before and after transformation
- We are re-affirming the human in the loop so you have control and flexibility.
- Review the suggested Pipeline to understand the transformation
- Copilot will create the Pipeline with all necessary Functions configured
- Click
Approve Pipeline
to save and apply the pipeline - Navigate to the newly created Pipeline to see the transformation ready to use
Copilot will analyze your request and generate a comprehensive transformation Pipeline. Let's take a look at what it provides:
- Explanation of the transformation: Copilot will explain what it's going to do and why
- Sample log example: It may show you what the logs look like before and after transformation
- Pipeline configuration: The specific Functions needed to accomplish the transformation
- Implementation options: Buttons to apply the changes directly or modify them
How It Works
Behind the scenes, Copilot is:
- Understanding your intent from your natural language request
- Identifying the source format (Palo Alto Traffic logs) and target format (OCSF)
- Determining the required transformations to map fields correctly
- Generating the appropriate Pipeline Functions with proper configuration
- Presenting the solution in a way that you can review before implementing
This process would typically take an expert considerable time to implement manually, but Copilot completes it in seconds while maintaining your ability to review and approve the changes.
If you want to see Copilot Pipeline Editor handle other log sources, try going to routes and selecting weblogs datagen:
- "Add pipeline to Quick Connect"
- Select
Save Connection
New Session
- Capture live events from source
- Where is your data coming from?
palo_traffic
- Click
confirm
- Apply transformations to my input events
- here is the pipeline plan feel free to edit and copy
### Assumptions:
> *Validate these assumptions made by Copilot*
- The Palo Alto library parser will correctly parse the `_raw` field into structured JSON format.
- The GeoIP enrichment will be applied to the correct fields representing source and destination IPs.
### Transformations:
> *Specify the tranformation steps to be applied to the input events*
- Parse the `_raw` field using the Palo Alto library parser to convert the CSV data into JSON format.
- Apply GeoIP enrichment to the parsed source and destination IP fields to add location data, such as country, region, and city.
- Drop the original `_raw` field after parsing.
### Keep Fields:
> *List field(s) from the input / target schema that should be kept*
- None Specified
### Drop Fields:
> *List field(s) from the input / target schema that should be dropped*
- `*`
- `__id`
- `__cloneCount`
- `__ctrlFields`
- `__eventId`
- `__final`
- `__inputId`
- `__criblEventType`
After making these changes, remember to commit and deploy them as we learned earlier.
Remember to commit and deploy your changes as explained in the setup section.
Now that we've seen how Copilot can transform our log data, let's explore another powerful capability in the next section: creating visualizations to gain insights from our data.