# Observo Onboarding Guide

## Overview

[Observo](https://www.observo.ai/) allows you to ingest logs from various sources, structure, optimize, and enrich them, then forward them to Panther using an [HTTP Source](https://docs.panther.com/~/changes/Cd1BxbxeaFl8dlynhNpt/data-onboarding/data-transports/http) or [S3 Source](https://docs.panther.com/~/changes/Cd1BxbxeaFl8dlynhNpt/data-onboarding/data-transports/aws/s3).

Observo can help you send your on-premises data to Panther. It has both cloud and self-hosted solutions, supporting a wide range of sources including S3, Kafka, Fluent, Logstash, HTTP, socket, and various GCP and Azure services.<br>

<figure><img src="https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fjadk4I2oBjPePsz38WaE%2Fimage.png?alt=media&#x26;token=e41d4b51-16ad-4227-a3ca-061903ec0ea1" alt="A flow diagram shows Sources > observo.ai > Panther" width="563"><figcaption></figcaption></figure>

## How to forward logs to Panther using Observo

### Prerequisite

* Within your environment in your VPC, you have deployed an Observo Site. An Observo Site is the data plane which communicates with the control plane (Observo Cloud).

### Step 1: Configure a source in Observo

1. In your [Observo console](https://app.observo.ai/), click **Sources**, then **Add a new Source**.
2. Complete the **Add Source** form.\
   ![An "Add Source" form has various fields like Source Type, Name, and Description.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FynWh0Tipqb4RDGqfAdMT%2Fimage.png?alt=media\&token=43a46903-53c1-473c-a9da-8504e853b0f2)
3. Click **Next** to continue configuring the source, then click **Save**.

### Step 2: Create a Data Transport source in Panther

To ingest Observo logs, create either a S3 Source or HTTP Source. Follow one of the instructions sets below:

* [Panther's instructions for configuring a S3 Source](https://docs.panther.com/~/changes/Cd1BxbxeaFl8dlynhNpt/data-transports/aws/s3#how-set-up-an-aws-s3-bucket-log-source-in-panther).\
  ![A page titled "Create AWS S3 source" is shown, with a form titled, "Configure your source." There are various fields, e.g., "Name, "AWS Account ID," etc.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FBGHeqsI0Qlj0BvycWMMU%2FScreenshot%202024-04-24%20at%209.59.38%20AM.png?alt=media\&token=e59f56df-8557-4b88-af4e-57807da60d37)
* [Panther's instructions for configuring an HTTP Source](https://docs.panther.com/~/changes/Cd1BxbxeaFl8dlynhNpt/data-onboarding/data-transports/http).
  * For the authentication method, use a [bearer token](https://docs.panther.com/~/changes/Cd1BxbxeaFl8dlynhNpt/data-transports/http#bearer). Copy the token value and store it in a secure location, as you will need it in the following steps.
  * Data sent to this source is subject to the [HTTP Source payload requirements](https://docs.panther.com/~/changes/Cd1BxbxeaFl8dlynhNpt/data-transports/http#payload-requirements).
  * After the HTTP Source has finished completing, copy its URL and store it in a secure location, as you will need it in the following steps.\
    ![A "Create HTTP source" header is above a form with various fields like Source Name, Schemas - Optional, and Auth method. the Source Name has a value of "Observo HTTP Source"](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2Fs1XYnfbFrCpXhw3lLwVy%2Fimage.png?alt=media\&token=de7cc0c9-19bd-4808-a96d-2cb96d29224a)

### Step 3: Create a destination for Panther in Observo

Set up a destination in Observo to send logs to whichever type of data transport source you configured in Step 2:

{% tabs %}
{% tab title="S3 destination" %}
To create a S3 destination in Observo:

* In your [Observo console](https://app.observo.ai/), click **Destinations**, then **Add a new Destination**.&#x20;
* Fill in the **Add Destination** form:
  * **Destination Type**: Select **AWS S3**.
  * **Name**: Enter a descriptive name.
  * **Bucket**: Enter the name of your S3 bucket.
  * **Encoding Codec**: Select **JSON**.
  * **Region**: Enter the AWS region your bucket is in.\
    ![](https://lh7-us.googleusercontent.com/ca8g1BnX4Yc-m7EC9-H1n01yP7fB1ep2RWKHQAiit2AZXbdD3HXhJmHxG0Bul_CaMTWJaaue6ci2u4r09hbCn70EBXm3GYcs9oZukRz3ThwjzEgd6N2O5WNQz6rChCQlBA28V9zg13Yk925lWEwPJ9E)
* Click **Save**.
  {% endtab %}

{% tab title="HTTP destination" %}
To create an HTTP destination in Observo:

* In your [Observo console](https://app.observo.ai/), click **Destinations**, then **Add a new Destination**.&#x20;
* Fill in the **Add Destination** form:
  * **Destination Type**: Select **HTTP**.
  * **Name**: Enter a descriptive name.
  * **URL/URI**: Enter the HTTP URL you generated in Step 2.&#x20;
  * **Encoding Codec**: Select **JSON**.
  * **Auth Strategy**: Choose **Bearer**.
  * **Auth Token**: Enter the bearer token you used in Step 2.\
    ![An "Add Destination" form is shown, with various fields, e.g., "Destination Type," "Name," "Bucket," etc. At the bottom are "Cancel" and "Save" buttons.](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FXPJnHJqI5aqvGouTM54p%2Fimage.png?alt=media\&token=11afdbb9-ca6f-42ae-a92e-71ecdbae3861)
* Click **Save**.
  {% endtab %}
  {% endtabs %}

### Step 4: Create a pipeline in Observo

In Observo, a pipeline connects a data source to a destination. You can optionally add transforms to your pipeline. Transforms can be used to structure, enrich, filter, mask, and redact personal information from your data.&#x20;

1. In your [Observo console](https://app.observo.ai/), click **Pipelines**, then **Add a new Pipeline**.&#x20;
2. Configure the pipeline:
   * For the source, select the source you created in Step 1.&#x20;
   * For the destination, select the destination you created in Step 3.
   * (Optional) Add any desired transforms.
3. Click **Save pipeline**, then **Deploy**.\
   ![A "Panther VPC Flow Logs" header is over a "Confirmation" sub-header. There are fields for Pipeline Name and Description (optional). At the bottom, a Save pipeline button is expanded, showing a menu with "Save as draft" and "Deploy"](https://4011785613-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LgdiSWdyJcXPahGi9Rs-2910905616%2Fuploads%2FJ4Qk0hePCQP4HI78htBy%2F2024-04-19_13-10-29.png?alt=media\&token=5452a2fb-dc55-4572-ad4b-382c147c25f0)
